Files
workinf_Blender_Wasm/docs/status/M12-01C.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

2.4 KiB

M12-01C Status

status: done task: define Web catalog schema v2, stable identities, and budgets updated: 2026-08-17 America/New_York enablingTask: true parityStateChange: false

Scope

Schema v2 represents Blender catalogs with canonical RFC4122 UUIDs and cleaned slash paths; hierarchy is derived from parentPath, matching CDF semantics instead of retaining the Web v1 parentId graph. Asset identity binds Blender's AssetWeakReference fields (asset_library_identifier, relative_asset_identifier) into a SHA-256 Web ID. A Blender rename changes the relative identifier and therefore the stable ID, matching Blender's weak reference behavior rather than promising an identity Blender does not provide.

All text budgets use UTF-8 bytes. Catalog/tag recovery strings keep Blender's 63-byte payload limit, dynamic metadata permits empty strings, and catalog, asset, tag, custom-property, custom-array, per-string, and aggregate-text counts are bounded. The positive schema fixture is generated from the verified M12-01B desktop canonical report through production protocol code. This task does not implement v1 migration, legacy-reader policy, IndexedDB migration, or catalog mutation.

Evidence

  • npm --prefix web run test:asset-catalog-v2 passed 4/4.
  • The suite binds the desktop canonical report and Blender 5.2 weak-reference source, regenerates schema v2 from the desktop report, parses the generated golden, and verifies deterministic local/external identity hashes and exposed UTF-8/collection budgets.
  • npm --prefix web run typecheck, npm --prefix web run lint, and git diff --check passed.

Artifact Hashes

  • protocol: 0949838efb2f69466368185b80bb1d2e851672d78311fcd5270eb0814576e5d7
  • generator: b20e7dbd8508ca8ecf17d7da507b45b1225315bac7759c55c7b324683d660881
  • unit suite: 73038022124ddc7e683602b47a4804297b3a64ecd4819160c7ec086d2f6190ae
  • schema golden: 2abe279cebbffd1341dc61b1fdc5366dd1f6f42769ba36171782019ca61fb929
  • manifest: 612892b03a689ebe19804e495bd29744634ab43a3b29fff41adc2d7a5d0b67b9
  • Blender weak-reference source: ace3d6468bcdb2f6190431e967495794b7afa35758fd82fc3941b1ce7d374635

Next Task

M12-01D: define and verify schema v1 to v2 forward migration.

Rollback

Remove the schema v2 protocol, generator, unit suite, M12-01C golden/manifest, package command, and this status entry. Restore M12-01C to pending and nextTask to M12-01C. No parity ledger rollback is required.