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

60 lines
3.2 KiB
Markdown

# M12-06C Status
status: done
task: import desktop GLB results into authoritative Main, save `.blend`, reopen, and compare stable IDs
updated: 2026-08-18 America/New_York
enablingTask: false
parityStateChange: false
## Scope
The pinned Blender 5.2 desktop runtime imports each M12-06A GLB fixture and saves a `.blend`; the
generator reopens every saved file and requires the complete stable Object/Mesh/Material/Image/
Armature/Action ID set to remain unchanged. Chromium then opens those authoritative Main fixtures
through the production WebEngine, applies one Main-owned visibility edit, saves the resulting
`.blend`, reopens it in a fresh isolated open transaction, and compares the stable IDs with the
desktop baseline. The saved edit is checked after reopen and the open resource counters are zero for
input, staging, and active requests.
This task does not expose GLB in the normal `.blend` file picker, claim arbitrary glTF extensions,
or change the N-023 full-parity ledger. M12-06B remains the bounded Web GLB semantic parser and
M12-06D owns export loss reporting.
## Evidence
- `node tools/web/check-glb-main-persistence.mjs` passed the parent manifest, all artifact hashes,
five desktop GLB/Main fixture bindings, stable-ID shape checks, and a fresh Blender regeneration
with exact semantic report/stable-ID comparison.
- `CHROME_PATH=/usr/bin/google-chrome-stable WEB_TEST_PORT=5437 node_modules/.bin/playwright test
--config playwright.config.ts --workers=1 tests/e2e/glb-main-persistence.spec.ts` passed 1/1.
Every fixture opened in the production WebEngine, performed one authoritative visibility edit,
serialized a changed `.blend`, reopened it, preserved all stable IDs, restored visibility=false,
and returned zero active requests/input/staging resources.
- `npm --prefix web run typecheck` and `git diff --check` passed. The existing package manifest was
left unchanged so prior M12 evidence remains bound to its frozen package hash.
## Artifact Hashes
- parent manifest: `5275310394b34726a05b30ab67658e1381662dddf9163a97cb02f47f646a8fa4`
- generator: `8989d6ce4196f140a7bfb44b863dc530a6aa462ca4a57fa7b77c468e06ab61ad`
- checker: `5bbbbeaf2d20ff9bbdeb74c8dd10fa6ffc421d1d59f86540e95f29c2cfd10903`
- desktop report: `76b000454a9073ef762d25fa546d5c65a004659a93eb6ec82fad1e679b2e81be`
- Chromium test: `7c97877f1cbbfd0166e106c80faee53f474f78816cca68ea924df5aa3c47776d`
- package: `cfb232baa494ff59f6c8d65514a08c86332ee9354350b2a0392b6f932a7ee42c`
- mesh `.blend`: `66e29adc016f07e220019b6f24eb7e5016c684dca4b3102b20c8e836968d422d`
- PBR `.blend`: `ba08aeb2876d82ddf731abe81d3a42041a1be36617d0b6324c870d5bcd4cc771`
- UV `.blend`: `1270cb452d34d2fd7a19181a2b20f70b7a028bdd2db7cf1bba4e1003f7de0f48`
- skin `.blend`: `23f175e44ec588c75db99d3f9134863fc3d7d1f192bbd815d5d1c4e3218bce0c`
- animation `.blend`: `fa6baf3a67ff11fe3d2922210089a7c508e4ee28bfaabe4cf628ba6addee1ff5`
- manifest: `e3a57636a47591e3b02dff5a07e8a0aec5e0dc43bf6b4829bffc811035dbbb31`
## Next Task
`M12-06D`: Web export generates a machine loss report.
## Rollback
Remove the M12-06C generator/checker, manifest, desktop Main fixtures, report, Chromium test, and
this status entry. Restore M12-06B as the queue tail and move the machine queue back to M12-06C. No
parity ledger rollback is required.