45 lines
2.1 KiB
Markdown
45 lines
2.1 KiB
Markdown
# M13-03F Status
|
|
|
|
status: done
|
|
task: sandbox resource disposal gate
|
|
updated: 2026-08-19 America/New_York
|
|
enablingTask: false
|
|
parityStateChange: false
|
|
|
|
## Scope
|
|
|
|
The sandbox Worker now owns an explicit disposal receipt. Both `MessagePort` endpoints, the timer,
|
|
`AbortController`, transferable buffer, pending request and cache reference are observed before
|
|
disposal and are all zero after the first dispose. A second dispose is accepted and reports
|
|
`idempotent=true`; the cleared timer produces no late message. Script execution remains
|
|
`DISABLED`, and this task does not claim same-session recovery or server isolation.
|
|
|
|
## Evidence
|
|
|
|
- `node --test web/tests/unit/script-sandbox-dispose.test.mjs` passed 2/2.
|
|
- `CHROME_PATH=/usr/bin/google-chrome-stable WEB_TEST_PORT=5534 npm --prefix web run test:script-sandbox-dispose` passed unit 2/2 and Chromium Worker E2E 1/1.
|
|
- `node tools/web/check-script-sandbox-dispose.mjs` passed:
|
|
`script-sandbox-dispose-ok ports=0 timers=0 abortControllers=0 buffers=0 pending=0 cacheReferences=0 idempotent=true next=M13-03G`.
|
|
- `npm --prefix web run typecheck`, `npm --prefix web run lint` and `git diff --check` passed.
|
|
|
|
## Artifact Hashes
|
|
|
|
- protocol: `f3d9f667c3809cfad0f52bc6028d93e36e25c4b639fb6081c9c933fbad0ebc0a`
|
|
- worker: `2a074b05d301c4083e60534eb9452aabf5d95aea0ab316fa657441ef4bcd5c96`
|
|
- checker: `6549bd10f588281d23c4bea705fd164252c9e3f44d8f4b93c893a2c410907135`
|
|
- unit: `6e00aa6286aae0eabc1345c04c7628dcc9acb32d51c1c27436a0e1b4c170b64c`
|
|
- e2e: `b240d92c90e0d81272cd9cb3c0eb4e7d77102ce2e49ad05c761f763d1812b18e`
|
|
- package: `0f06cd7ccdeed4213b6cb956aecf94e60dceff811ad8c3a2e239397685cfc1bf`
|
|
- report: `2dbd3e79939b500c0fc83216c51f258b88ead42a667ed1a6da755e893d7f73c6`
|
|
- manifest: `96abc7c7613ef4c18c64b84ffb8420c39369f9e4733bd1fa4d7d9ee9e53d6f89`
|
|
|
|
## Next Task
|
|
|
|
`M13-03G`: recover a small script in the same session with a new Worker generation while keeping
|
|
the Main revision/source hash stable and extending the audit hash chain.
|
|
|
|
## Rollback
|
|
|
|
Remove the dispose protocol, Worker, focused tests/checker, report, manifest, package command and
|
|
this status entry; restore M13-03E as the queue tail and move `nextTask` back to `M13-03F`.
|