Files
workinf_Blender_Wasm/docs/status/M12-03B.md
mes123456 5a11045ca5
Some checks are pending
M6 deployable RC / quick (push) Waiting to run
M6 deployable RC / chromium (push) Blocked by required conditions
M6 deployable RC / release (push) Blocked by required conditions
Advance Blender 5.2 web parity through M12-03D
2026-08-17 17:30:27 -04:00

48 lines
2.2 KiB
Markdown

# M12-03B Status
status: done
task: define source library identity, owner, read-only state, and invalidation tokens
updated: 2026-08-17 America/New_York
enablingTask: true
parityStateChange: false
## Scope
Schema 1 derives `sourceLibraryId` from a canonical source locator and source `.blend` SHA-256.
Each operation binding then fixes one source data-block, its operation-specific owner and read-only
state, source generation/revision, dependency-closure SHA-256, and a hash-derived invalidation token.
APPEND owns a writable local Main ID. LINK remains owned by the matching source library and is
fully read-only. LIBRARY_OVERRIDE owns a writable local override while retaining a read-only linked
reference and hierarchy root. This is a pure protocol task and does not mutate Blender Main.
## Evidence
- `npm --prefix web run test:library-operation-identity` passed 6/6.
- Stable source identity changes when either locator or source bytes change.
- APPEND/LINK/LIBRARY_OVERRIDE produce distinct invalidation tokens for the same source root and
reject owner substitution, read-only drift, reference substitution, unknown fields, and forgery.
- Source library/hash, generation, revision, and dependency closure drift each return
`REVISION_CONFLICT`; the unchanged state revalidates the original binding exactly.
- The one initial test expectation was corrected to the actual fail-fast exact-schema code, then
the complete suite was rerun successfully.
## Artifact Hashes
- protocol: `5371133bd98e05935cd75bab582abedec32a36559af8d212f0bc8a534ef19451`
- golden bindings: `b39c0f26697ac688c1203ae4e3e27d8a02686c7c9da9afc438c89a0b4d69370f`
- unit suite: `0e5b2c82d481180eb8eb22de16ad8cdef5e58fa7423c26011faaffbac788e547`
- manifest: `f388aedb9c0901932cf90c058f2f2b83259d9797cd6b144566a25e37a348c64b`
- package commands: `48cf41f0d0041bf4f497bc2a454cfa9469874eded1775cea50fe3249d4e0b59e`
## Next Task
`M12-03C`: create a desktop single-Object append fixture and record stable Object, Mesh, Material,
and Image mappings.
## Rollback
Remove the library operation identity protocol, golden, unit suite, manifest, package command, and
this status entry. Restore M12-03B to pending and the queue to M12-03B. No parity ledger rollback is
required.