43 lines
1.8 KiB
Markdown
43 lines
1.8 KiB
Markdown
# M12-03I Status
|
|
|
|
status: done
|
|
task: missing library preserves placeholder and original source reference
|
|
updated: 2026-08-17 America/New_York
|
|
enablingTask: false
|
|
parityStateChange: false
|
|
|
|
## Scope
|
|
|
|
Schema-1 missing-library requests match a linked source library by source identity, generation, and
|
|
revision. Marking a matching reference missing changes only its status and adds a
|
|
`MISSING_LIBRARY` placeholder. The original locator, source SHA-256, generation, revision, and every
|
|
data-block ID remain attached to the reference; unrelated libraries remain unchanged.
|
|
|
|
Stale generation/revision and source hash drift return a stable conflict without deleting or replacing
|
|
the reference. Malformed fields, duplicate identities, and inconsistent placeholder data fail closed.
|
|
|
|
## Evidence
|
|
|
|
- `npm --prefix web run test:library-linked-missing` passed 4/4 unit tests.
|
|
- The matching case preserves original source metadata and data-block IDs while publishing only the
|
|
placeholder status transition.
|
|
- Stale, source-drift, undeclared-field, duplicate-identity, and invalid-placeholder cases publish no
|
|
partial state.
|
|
|
|
## Artifact Hashes
|
|
|
|
- protocol: `5833e8c943ef6bd866a93a0e1666c9521fa6d3e8358861df57b628874b679ec2`
|
|
- unit: `4ab6d6ff4845b4ca963399e7eea214ceb412871dc1fdef5bac1ed0333596da4f`
|
|
- manifest: `f5fa606161b93e9ee42e7ca8144d2a83379acf601c5045eb8cc76732f8dba431`
|
|
- package commands: `cfb232baa494ff59f6c8d65514a08c86332ee9354350b2a0392b6f932a7ee42c`
|
|
|
|
## Next Task
|
|
|
|
`M12-03J`: desktop override fixture records reference, local owner, and property override path.
|
|
|
|
## Rollback
|
|
|
|
Remove the missing-library protocol, unit suite, manifest, package command, and this status entry.
|
|
Restore M12-03H to pending and move the machine queue back to `M12-03I`. No parity ledger rollback
|
|
is required.
|