Files
workinf_Blender_Wasm/docs/status/M12-06G.md
mes123456 380cbed4ff
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
Checkpoint web parity through Chromium input tasks
2026-08-19 10:39:03 -04:00

58 lines
3.1 KiB
Markdown

# M12-06G Status
status: done
task: GLB import/export cancellation, Worker restart, and OPFS quota recovery
updated: 2026-08-18 America/New_York
enablingTask: false
parityStateChange: false
## Scope
Schema-1 GLB recovery receipts now bind operation, worker generation, source/output SHA-256,
revision, temporary bytes, live requests, commit state, and stable cancellation/restart/quota codes.
Both import and export cancellation release all temporary bytes and publish no result. A new Worker
repeats the same bounded GLB import with an identical semantic result hash.
The GLB asset persistence path uses the existing content-addressed OPFS store. A real Chromium
origin quota of 64 KiB rejects a 128 KiB candidate, while the previously committed GLB remains
readable after Storage Worker restart. Raising the quota allows a small follow-up asset to commit.
## Evidence
- `node --test web/tests/unit/glb-recovery.test.mjs` passed 2/2 for cancel, quota, commit, and
generation transition invariants.
- `CHROME_PATH=/usr/bin/google-chrome-stable WEB_TEST_PORT=5455 node_modules/.bin/playwright test
--config playwright.config.ts --workers=1 tests/e2e/glb-recovery.spec.ts` passed 2/2 in Chrome
150. The first real-quota run reached the expected browser failure but the assertion only accepted
the injected error wording; the final run accepts both native and injected quota messages.
- `node tools/web/check-glb-recovery.mjs` passed with
`glb-recovery-ok cancelled=2 workerGeneration=2 quota=GLB_OPFS_QUOTA smallRecovery=true next=M12-07A`.
- `npm --prefix web run typecheck`, `node --check tools/web/check-glb-recovery.mjs`, and
`git diff --check` passed. The package manifest remains unchanged.
## Artifact Hashes
- parent manifest: `27b42da0683dab11a884553440088c30cf58d51364268fdaac86668786aaedd4`
- recovery protocol: `da4e2a546d7598e80798cfebd105e52b7522c896acb545710c78bb8a5c3705aa`
- storage protocol/client/Worker: `2c8ce9e32fcae973e9262a024fd849221680104bcd427ec308f99ef25112d951` /
`00cd35e4632479e4cd153314113e201c822fd209ae6c8e9fbeff5f1399728565` /
`80bf4d2ac59cbf7998c2a72c8961ae38abe43685b60df564d0746e1a45e9e1bc`
- operation Worker/browser adapter: `947c4a768422725ff2f689b2eefa8068bee51bb7ff342af17e8d4a4d0a4a7ca2` /
`2c753a04c153471c2bf7691073b836d968a1a1300e3da038f493983b46738cdf`
- unit/Chromium: `6dd48f62a85c5aaf3a04b6e572a47a7986b23cbec84a099ea510af81e8dd3a3a` /
`7d95e992f44fb913f70c104f0d6b23bd76f47d48db4a21899e35ae1d188e2093`
- checker/report: `b185248fdcd6b3cee84252bd68fcb6921bb6385bfa4a00486e93c58e94755cce` /
`1a008a76590573468446ca6e5cbdfe0ea5a8b27493291590d937b90db90d6e42`
- package: `cfb232baa494ff59f6c8d65514a08c86332ee9354350b2a0392b6f932a7ee42c`
- manifest: `1c732b8d9f1a0bdb502f44e2e843e91efea12e93483a35658f8a9c70a69a2430`
## Next Task
`M12-07A`: OBJ single-Mesh positive fixture covering position, normal, UV, and material group.
## Rollback
Remove the GLB recovery receipt, quota fault option, Worker/browser adapter, tests, checker, report,
manifest, and this status entry. Restore M12-06F as the queue tail and move the machine queue back to
M12-06G. No parity ledger rollback is required.