# M13-03E Status status: done task: sandbox cancellation result gate updated: 2026-08-19 America/New_York enablingTask: false parityStateChange: false ## Scope Cancellation now has an explicit terminated-job receipt. The receipt preserves the Main revision, publishes no result, releases temporary bytes and remains `execution=DISABLED`. The production Chromium Worker schedules a late message containing a cache key; the host cancels and terminates it before publication, then observes a bounded late window with zero messages and zero cache writes. Late results supplied after cancellation are rejected with `SCRIPT_SANDBOX_LATE_RESULT`. This task does not claim Worker/port/timer disposal or same-session recovery; those remain M13-03F/G. ## Evidence - `node --test web/tests/unit/script-sandbox-cancellation.test.mjs` passed 2/2. - `CHROME_PATH=/usr/bin/google-chrome-stable WEB_TEST_PORT=5533 npm --prefix web run test:script-sandbox-cancellation` passed unit 2/2 and Chromium Worker E2E 1/1. - `node tools/web/check-script-sandbox-cancellation.mjs` passed: `script-sandbox-cancellation-ok status=CANCELLED late=SCRIPT_SANDBOX_LATE_RESULT lateMessages=0 cacheWrites=0 next=M13-03F`. - `npm --prefix web run typecheck`, `npm --prefix web run lint` and `git diff --check` passed. ## Artifact Hashes - protocol: `6699fc0a19e0736823f164e707a420655803e36019cf0071f7ff9c760d25e9f2` - worker: `0feb70c8c491cc24ebfe6c3e267b92522d616b6f260efcecfa57cf489d0742c0` - checker: `b6fbe7102b7d0808673931c66797f8976e79b21bd4c32e429f21832c6090708e` - unit: `374cc87f66bd42226b750e387663ef8c86bef92348fa7cbc6ed7f0027945204d` - e2e: `b233d9cafa1f70798ec19d76ca936abb610681522264a12237f532eb98e09fca` - package: `6499a70fc4a93c925053ddf5009c74d9c10754b443afc9d58e898fe20d7f1b05` - report: `066d9f19716b8229f2cf7755ec3009a3edef942ebab5f70159bec7f2afbaf71f` - manifest: `0cdf625e6bd3ed7aca43318a3b04353cb806c51cfa4cf3c5dae9a65a0eae2e69` ## Next Task `M13-03F`: dispose Worker, MessagePort, timers, abort controllers and buffers to zero. ## Rollback Remove the cancellation Worker, focused tests/checker, report, manifest, package command and this status entry; restore M13-03D as the queue tail and move `nextTask` back to `M13-03E`.