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

2.3 KiB

M12-04C Status

status: done task: reject absolute paths, UNC/drive paths, controls, and origin escape updated: 2026-08-18 America/New_York enablingTask: false parityStateChange: false

Scope

The project-asset path gate rejects absolute POSIX paths, UNC and drive-shaped paths, NUL/control characters, malformed or residual percent encoding, and URI/origin-shaped escapes before a locator is accepted. HTTPS source policy entries are now strict credential-free origins: path, query, fragment, encoded controls, and backslash smuggling are rejected instead of being silently reduced to URL.origin. HTTPS resource paths retain the declared-origin check and reject unsafe decoded bytes.

Evidence

  • npm --prefix web run test:library-path-security passed 4/4 unit tests.
  • Absolute, UNC, drive, raw/encoded NUL and control characters, and origin-style project paths return stable ASSET_PATH_OUTSIDE_PROJECT/ASSET_PATH_INVALID errors.
  • Raw and encoded backslashes, controls, malformed percent sequences, credentials, undeclared origins, and policy origin smuggling return IO_EXTERNAL_URI_BLOCKED.
  • Declared https://assets.example.test/library/main.blend remains accepted; policy declarations with a path, query, fragment, encoded control, or duplicate canonical origin fail closed.
  • WEB_TEST_PORT=5323 npm --prefix web run test:asset-library passed the N-023 Chromium asset/IO gate 1/1.
  • npm --prefix web run typecheck passed.

Artifact Hashes

  • parent manifest: 8cd29c3f5281082584fc6aefe2ec385a2eedf8116e837a4db54c391391ff8f98
  • path normalizer: 6109d05251fc7355ac32d4c0d8298f85ea8b731767c76c394577c4e44652a6bf
  • source-origin protocol: 67a1808f225194a09a72987c5340c7494c5fa8d99dffde40664a11a779caedeb
  • unit: ab302cacb24634a3225dda5cb8f5282cb80b3bd81ed5c8900ddf4ff18267b7e2
  • manifest: a7f3a45eb7f68d022f38185a1c1409e1db1b27647fef587d66d2ffa52d78f98e
  • package commands: cfb232baa494ff59f6c8d65514a08c86332ee9354350b2a0392b6f932a7ee42c

Next Task

M12-04D: resolve symlink/hardlink entries before writing and constrain them to the temporary root.

Rollback

Remove the C path-security assertions, manifest, status entry, and strict origin validation. Restore M12-04B to pending and move the machine queue back to M12-04C. No parity ledger rollback is required.