44 lines
1.9 KiB
Markdown
44 lines
1.9 KiB
Markdown
# M13-04C Status
|
|
|
|
status: done
|
|
task: server job resource budget gate
|
|
updated: 2026-08-19 America/New_York
|
|
enablingTask: false
|
|
parityStateChange: false
|
|
|
|
## Scope
|
|
|
|
Server jobs now have fixed CPU, memory, process, file, wall-time and output-byte limits. Budget
|
|
parsing rejects undeclared fields and out-of-range values. A usage receipt is marked
|
|
`enforced=true` only when every measured value is within its corresponding limit; each of the six
|
|
over-limit cases returns `SERVER_JOB_BUDGET_EXCEEDED` and remains `execution=DISABLED`.
|
|
|
|
This is the resource contract and usage gate. OS/container enforcement is proven by the later real
|
|
process task and is not claimed here.
|
|
|
|
## Evidence
|
|
|
|
- `node --test web/tests/unit/server-job-resource-budget.test.mjs` passed 2/2.
|
|
- `npm --prefix web run test:server-job-resource-budget` passed unit 2/2 and the independent checker.
|
|
- `node tools/web/check-server-job-resource-budget.mjs` passed:
|
|
`server-job-budget-ok cpu=bounded memory=bounded process=bounded files=bounded wall=bounded output=bounded overages=6 execution=DISABLED next=M13-04D`.
|
|
- `npm --prefix web run typecheck`, `npm --prefix web run lint` and `git diff --check` passed.
|
|
|
|
## Artifact Hashes
|
|
|
|
- protocol: `9746f0aef9dd76411320792dee1213c03755a3c03a87bbc4cbf88d4324c728d6`
|
|
- checker: `5599f4e25fc3ceca18e04be322450a4dc5bb6ce9c72c3abe9f1afc9c81851ff8`
|
|
- unit: `05212b2aa639f4c37e37e1cac0597d9b367a1280e519240f073762394914dc63`
|
|
- package: `3df02b6049ac5d7185c23aef7764933ee460fedeb6595b3861272b0d49da5ecd`
|
|
- report: `76ba684966bf7e680b0ebfc630ae9e080f04dd6daa6dd744bbb22dcff43f8eb1`
|
|
- manifest: `d00fff709b57909ec418ff0e476dca97281fc39456f674c63b51248377fc6ab2`
|
|
|
|
## Next Task
|
|
|
|
`M13-04D`: default-deny network policy with explicit declared-origin admission.
|
|
|
|
## Rollback
|
|
|
|
Remove the resource budget protocol, focused tests/checker, report, manifest, package command and
|
|
this status entry; restore M13-04B as the queue tail and move `nextTask` back to `M13-04C`.
|