sots-re/campaign/contracts/controls-bootstrap.json

115 lines
3.9 KiB
JSON

{
"acceptance": [
{
"axis": "control-tests",
"criterion": "Unit tests reject lifecycle bypass, stale handoff/end checkpoints, same-HEAD candidate/integrated source drift, missing immutable inputs and criterion outcomes, bad identity/model, worker entry with pending surprises, lease collision and WIP overflow; old intact recovery checkpoints and resolution-only Astra entry succeed; runner requires successful completion/session/checkpoint and rejects provider errors and config drift",
"id": "controls-negative-paths"
}
],
"baseline": {
"engine": {
"commit": "7741d42fc5e4e761e6449bdaf0e4a61d00036a23",
"path": "/home/alex/sots-engine"
},
"re": {
"commit": "3bfde5a70d874a723e797a695bbd847fd82c0aa7",
"path": "/home/alex/sots-re"
}
},
"checkpoint": "campaign/runtime/checkpoints/controls-bootstrap-5643d7cec1edd289b0465d5f.json",
"dependencies": [],
"effects": [
"Durable local contract controls and explicit-model worker launch"
],
"evidence": [
{
"axis": "control-tests",
"binaries": [
{
"path": "tools/campaign.py",
"sha256": "c7b7c7a30d907bba8e59386dee8704d7f3f5e978fcf709b686e37996fa465c31"
},
{
"path": "tools/run_agent.py",
"sha256": "0f5ccb53dcde59b64fe999768737b6cbd2dabcc1272e5605c1f1ecd86e5d5d2b"
}
],
"id": "controls-suite",
"inputs": [
{
"path": "verify/campaign/test_controls.py",
"sha256": "108460f4e90c4cb7036642e85de581e31fd70c478533c32364691260461814fc"
},
{
"path": "campaign/contract.schema.json",
"sha256": "a2c76ec042ca097a57c3c05c1e519e392d498d387a31808c7d0f70482d43c201"
},
{
"path": "campaign/rollout/controls_evidence.py",
"sha256": "bfaf4e523b2ca39c0ecdab94adf0b2b19a3da68aab8a0fcba69a613aed46588a"
}
],
"integrated": true,
"outcomes": [
{
"artifact": {
"path": "campaign/evidence/controls-suite-1788991911311171323.json",
"sha256": "bd6ae3eba3d3df606e0410676819db47a46094571d0680edbf9b907bf90d693e"
},
"criterion": "controls-negative-paths",
"status": "pass"
}
],
"path": "campaign/evidence/controls-suite-1788991911311171323.json",
"sha256": "bd6ae3eba3d3df606e0410676819db47a46094571d0680edbf9b907bf90d693e",
"source": {
"engine": {
"commit": "7741d42fc5e4e761e6449bdaf0e4a61d00036a23",
"path": "/home/alex/sots-engine"
},
"re": {
"commit": "3bfde5a70d874a723e797a695bbd847fd82c0aa7",
"path": "/home/alex/sots-re"
}
},
"source_binding": {
"engine": {
"commit": "7741d42fc5e4e761e6449bdaf0e4a61d00036a23",
"path": "/home/alex/sots-engine",
"sha256": "ccd8e02083e8d2e2b3e97976ace2273c8f924dfc02a39e919004eaf3544c50fd"
},
"re": {
"commit": "3bfde5a70d874a723e797a695bbd847fd82c0aa7",
"path": "/home/alex/sots-re",
"sha256": "6696fd5201e144843617cbf6d78b41b5287ad5dcc9fa1e8aaa861d52b64e72e8"
}
}
}
],
"id": "controls-bootstrap",
"inputs": [
"campaign/rollout/architecture-decision.md",
"campaign/rollout/controls-worker.md"
],
"original_dependencies": [
"No original game executable required for control tests"
],
"owner": {
"name": "controls-architect",
"role": "architecture-review"
},
"predictions": [
"All controls can run with Python standard library and Git without an external server"
],
"scope": [
"tools/campaign.py",
"tools/run_agent.py",
"campaign/",
"verify/campaign/"
],
"status": "accepted",
"stop_conditions": [
"Cross-cutting architecture changes require Astra resolution"
],
"title": "Bootstrap canonical contract controls and bounded worker launcher"
}