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

3.0 KiB

M12-06B Status

status: done task: compare desktop GLB topology, attributes, materials, nodes, and animations in Web updated: 2026-08-18 America/New_York enablingTask: true parityStateChange: false

Scope

The production TypeScript GLB parser now exposes a canonical bounded semantic surface for the five M12-06A desktop fixtures. It validates referenced accessors, nodes, materials, textures, skins, and animation samplers before returning primitive topology, sorted attributes, PBR material fields, node hierarchy/TRS, skin bindings, and animation channels. A field-level comparator checks that Web semantics exactly match the pinned Blender 5.2 desktop report.

Both Node and a real Chromium Worker consume the exact committed GLB bytes and verify each source SHA-256 before comparing all five domains. The existing summary import API remains compatible. This task does not create Blender Main data or expose GLB in the file picker; the runtime route remains BLOCKED_UNTIL_MAIN_PERSISTENCE until M12-06C proves save/reopen and stable IDs.

Evidence

  • node --test web/tests/unit/glb-desktop-import.test.mjs passed 3/3: five exact fixture imports, separate domain assertions, and a stable field-level PBR mismatch.
  • node tools/web/check-glb-desktop-import.mjs passed: 5 fixtures, 5 compared domains, exact desktop/Web canonical hashes, deterministic report regeneration, and the blocked route state.
  • CHROME_PATH=/usr/bin/google-chrome-stable WEB_TEST_PORT=5425 node_modules/.bin/playwright test --config playwright.config.ts --workers=1 tests/e2e/glb-desktop-import.spec.ts passed 1/1 from the web/ directory using Chrome 150. The Worker verified source SHA-256 and all five semantic comparisons.
  • npm --prefix web run typecheck, npm --prefix web run test:status-consistency, and git diff --check passed. The package hash remains cfb232baa494ff59f6c8d65514a08c86332ee9354350b2a0392b6f932a7ee42c.

Artifact Hashes

  • parent manifest: e3554a1e739cbe3f217f6169130532365538b0c0eafbb97afc58d4d56c4287cb
  • protocol: 45d9a7912c4a59a552789a8ea0dfaff5f1849f8d213f14d238de024b77acdb0d
  • generator: 6f97527b7da04c7b4f9b09c48b9f367d1270db9f7820498d33832a80754436c2
  • checker: 804a4b5545d95d7ab1ba265469a981d0a10b71dab36f0c96283eb73b401443d2
  • unit: 6bf2a96b3e43e5fae93589ea5dcf98e7a69b10266378e442988198925286a8d8
  • Chromium Worker: eb32049631113270fb62acb7ae9379e8ff9a03e38086db2fa309c6891cd707bf
  • Chromium test: fa3e06419c918406f24b5a4260523bd94cfe729a84786e9434517fdfed624d45
  • Web import report: 79933888cc5aa2d1e3639ec349ca4c31d028fe89f751ebb8d4342f06d15ecfc2
  • manifest: 5275310394b34726a05b30ab67658e1381662dddf9163a97cb02f47f646a8fa4

Next Task

M12-06C: create authoritative Main data from the imported GLB, save .blend, reopen it, and compare stable IDs.

Rollback

Remove the canonical Web import surface, report generator/checker, Node/Chromium tests, report, manifest, and this status entry. Restore M12-06A as the queue tail and move the machine queue back to M12-06B. No parity ledger rollback is required.