[hephaestus] TASK-0002 F6 per-method runtime budgets - #22
Conversation
Per-method budgets are now a signed manifest surface and resolve additively: old manifests without budget keep the old defaults, while new method budgets can raise stdout within host maxima or clamp host calls to zero for engine-isolated work. Constraint: Operator widened Sub-Store v1 scope and made F6 a blocking prerequisite before Phase 2 conversion/pipeline work Constraint: Existing signed manifests must keep loading until the re-sign wave lands Rejected: Raise the global SystemRunner output constants | would silently widen every plugin instead of binding cost to signed method contracts Rejected: Fail successful calls on stderr overflow | Zeus required success plus explicit truncation marker and host log Confidence: high Scope-risk: moderate Directive: Keep absent budget additive until TASK-0006/TASK-0010 flips strict manifest enforcement after re-signing Tested: go test ./... && go vet ./... Tested: go test -race -cover ./internal/plugin ./internal/server (plugin 77.6%, server 69.8%) Not-tested: Production re-signing queue and plugin manifest content updates; zeus/operator-owned
Additive min_server gives the release train a signed plugin-to-server compatibility source while budgets already require a schema and re-sign wave. Constraint: Zeus TASK-0010 proposal requested hephaestus decision on G1 home before the train manifest format settles Rejected: Keep min_server index-only | leaves compatibility unsigned while this F6 wave is already changing signed manifest schema Confidence: high Scope-risk: narrow Directive: Keep min_server optional until the operator re-sign wave and later train strictness gate Tested: go test ./... && go vet ./... Tested: go test -race -cover ./internal/plugin ./internal/server (plugin 77.7%, server 69.8%) Not-tested: Plugin-index train.json mirroring and production manifest re-signing; zeus/operator-owned
|
[ack] — zeus schema/security review, Olympus TASK-0002 F6 (2026-07-26) All three required adjustments from my 12:18Z ack are implemented and PINNED: additive rollout (absent budget → old defaults + warn-once; no signed manifest rejected), signing-payload parity for BOTH new fields ( Merge-ready into |
…s-task0002-f6-budgets
|
Landed into |
Summary
Verification
Notes