{
 "generated": "2026-11-05T23:03:17Z",
 "groups": [
  {
   "id": "measure",
   "name": "Measure",
   "one_line": "Know the true number: the floor, the noise, and the judge's exact view."
  },
  {
   "id": "decide",
   "name": "Decide",
   "one_line": "Turn noisy numbers into keep, kill or land, with rules written first."
  },
  {
   "id": "generate",
   "name": "Generate",
   "one_line": "Where candidate ideas and code come from, and which sources paid off."
  },
  {
   "id": "remember",
   "name": "Remember",
   "one_line": "Ledgers, mistake logs and sleep cycles so the swarm keeps what it learns."
  },
  {
   "id": "coordinate",
   "name": "Coordinate",
   "one_line": "How dozens of agents, one coordinator and the owner stay in sync."
  },
  {
   "id": "economy",
   "name": "Economy",
   "one_line": "How GPUs, tokens, judge runs and dollars are allocated and guarded."
  }
 ],
 "concepts": [
  {
   "id": "physical-floor",
   "name": "The physical floor is the benchmark",
   "group": "measure",
   "one_line": "Score every case against its hardware limit, not against rivals.",
   "what": "Each judge case gets a floor: bytes over 4.8 TB/s, FLOPs over peak, or the latency chain. Progress is the share of that floor reached. An instruction budget does the same per pipe: count the minimal instructions, then compare with the SASS.",
   "why": "Comparing with SGLang or the leader says nothing about how much room is left, or where it is.",
   "how": "bench/tools/gap.py prices every case and ranks work by score gain at the floor; bench/FLOOR.md is rebuilt every 30 min; bench/tools/isa_budget.py gives the per-pipe instruction floor.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "At the close the five problems sat at 81-86% of their physical ceiling, but the 'floor-first' recipe won only 7% of 157 clean tests vs 16% of 812 for 'compose'.",
    "tag": "measured",
    "src": "bench/FLOOR.md; bench/WORKED.md:7,13"
   },
   "verdict": "mixed",
   "related": [
    "value-of-check",
    "derive-first"
   ],
   "src": [
    "AGENTS.md",
    "bench/FLOOR.md",
    "bench/tools/gap.py",
    "bench/tools/isa_budget.py",
    "site/data/raw/science.json"
   ]
  },
  {
   "id": "judge-clone",
   "name": "Judge clone",
   "group": "measure",
   "one_line": "Re-run the organizers' scoring method on our own rented H200s.",
   "what": "A copy of the official harness (cold L2, CUDA graphs, paired SGLang ratios) runs any file on a Modal H200. It gives a full-problem number without spending a scarce official run.",
   "why": "Official judge runs were capped per day, so the swarm needed a cheap, faithful proxy.",
   "how": "bench/modal/judge.py runs the clone; board.py tracks the measured judge/clone ratio per problem and promotes on the corrected number.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "Judge/clone ratio for identical bytes: decode x0.969, MoE x0.967, attention x0.959, bf16 x1.00, prefill x1.03.",
    "tag": "measured",
    "src": "AGENTS.md:74-76"
   },
   "verdict": "worked",
   "related": [
    "state-copy-gate",
    "paired-abba"
   ],
   "src": [
    "bench/modal/judge.py",
    "AGENTS.md"
   ]
  },
  {
   "id": "aa-control",
   "name": "A/A control in every run",
   "group": "measure",
   "one_line": "Time the incumbent against itself in the same run to see the noise.",
   "what": "Every comparison includes the control twice (A/A). A gain counts only against a same-box, same-window control. The A/A spread shows noise, drift and node speed.",
   "why": "Unpaired gains were mostly noise: different boxes and minutes differ by more than the effect.",
   "how": "bench/PROTOCOL.md rules 1-4; sci.py trial refuses a box gain without --control.",
   "introduced": "2026-10-23",
   "evidence": {
    "text": "A claimed '+0.8%' gain was +0.06% against a same-box control; the share of timed trials with a control rose from 11% (10-23) to 94% (11-04).",
    "tag": "measured",
    "src": "AGENTS.md:140; site/data/raw/science.json method"
   },
   "verdict": "worked",
   "related": [
    "paired-abba",
    "judge-exact-scoped"
   ],
   "src": [
    "bench/PROTOCOL.md",
    "AGENTS.md"
   ]
  },
  {
   "id": "paired-abba",
   "name": "Paired ABBA confirmation on fresh draws",
   "group": "measure",
   "one_line": "Confirm a finalist with a predeclared A-B-B-A test on random inputs.",
   "what": "A candidate and the current base run in alternating A-B-B-A blocks on one box, on fresh random routing draws, in both orders. A 95% confidence interval above zero is CONFIRMED.",
   "why": "Fixed inputs and one timing order biased results; screen gains shrank or flipped on fresh draws.",
   "how": "bench/tools/paired_confirm.py with bench/tools/clone_inputs.py (>= 20 random draws per shape); verdicts in bench/manager/paired.jsonl.",
   "introduced": "2026-10-24",
   "evidence": {
    "text": "Of 1,612 paired runs, 130 CONFIRMED of 667 decided (19.5%), while 788 (49%) ABORTED for infrastructure reasons.",
    "tag": "measured",
    "src": "bench/manager/paired.jsonl (site/data/raw/science.json cheap_vs_scarce)"
   },
   "verdict": "mixed",
   "related": [
    "aa-control"
   ],
   "src": [
    "bench/tools/paired_confirm.py",
    "bench/tools/clone_inputs.py",
    "bench/PROTOCOL.md"
   ]
  },
  {
   "id": "judge-exact-scoped",
   "name": "Scoped judge-exact verdict",
   "group": "measure",
   "one_line": "Time only the cases a change touches, with the judge's own sequence.",
   "what": "The verdict tool times only the judge cases that a candidate changes. A route-identity check proves the other cases are byte-identical, so they count as zero. It runs under a judge-like router with at least two salts.",
   "why": "Whole-problem timing had 0.3-0.6% noise, but real late gains were +0.05..+0.3%, so whole-x verdicts saw nothing.",
   "how": "bench/tools/jexact_scoped.py; SPEC_V3 rule 9 made it the only verdict the chain counts from 11-01.",
   "introduced": "2026-11-01",
   "evidence": {
    "text": "Resolution went from ~0.3-0.6% to ~0.02%, and the decode hit rate went from 0% (whole-x at row >= 2.3) back to 7.1% (44 of 619).",
    "tag": "measured",
    "src": "bench/agents/SPEC_V3.md:5-9,73-85"
   },
   "verdict": "worked",
   "related": [
    "value-of-check"
   ],
   "src": [
    "bench/agents/SPEC_V3.md",
    "bench/tools/jexact_scoped.py"
   ]
  },
  {
   "id": "value-of-check",
   "name": "Ideas are cheap, the check is scarce",
   "group": "measure",
   "one_line": "Progress stops when real gains shrink below the instrument's noise.",
   "what": "As a kernel nears its limit, each remaining idea is worth less. When the gain falls below about twice the measurement noise, the hit rate drops to zero even if ideas are good. So upgrade the instrument before scaling the search.",
   "why": "The swarm ran thousands of trials while the decode row stood still for about two days.",
   "how": "Measured by the hit-rate-by-level study (bench/reports/hitrate_1101/) and written up as the auto-research DNA thesis.",
   "introduced": "2026-11-01",
   "evidence": {
    "text": "Whole-x decode hit rate fell 31.8% -> 2.9% -> 0.5% -> 0% as the row rose past 2.0 / 2.2 / 2.3x.",
    "tag": "measured",
    "src": "bench/agents/SPEC_V3.md:73-78"
   },
   "verdict": "worked",
   "related": [
    "judge-exact-scoped",
    "physical-floor"
   ],
   "src": [
    "bench/agents/SPEC_V3.md",
    "bench/reports/autoresearch_dna_1102/DNA_AUTO_RESEARCH_SCIENTIST.md",
    "site/data/raw/strategies.json"
   ]
  },
  {
   "id": "state-copy-gate",
   "name": "State-copy gate",
   "group": "measure",
   "one_line": "Run kernels on cloned state, exactly as the judge does.",
   "what": "The judge calls the kernel on tensor-cloned copies of its prepared state. A kernel that stores raw buffer addresses at setup reads stale data from a copy. The gate re-runs every kernel on copies before any send.",
   "why": "Correct-looking kernels failed on the official judge with no clue in local tests.",
   "how": "bench/modal/statecopy.py; judge.py strict mode checks it before a send.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "It explained all 5 MoE judge FAILs at batch 128 (rel L2 1.414, the kernel read the previous call's buffers).",
    "tag": "measured",
    "src": "bench/modal/statecopy.py:4-9; AGENTS.md:126-129"
   },
   "verdict": "worked",
   "related": [
    "judge-clone",
    "mistake-gates"
   ],
   "src": [
    "bench/modal/statecopy.py",
    "AGENTS.md"
   ]
  },
  {
   "id": "pre-registration",
   "name": "Pre-registered predictions",
   "group": "decide",
   "one_line": "Write the predicted gain and its odds before any GPU run.",
   "what": "Every idea enters the ledger with a numeric predicted gain and a probability. The measured result is logged against it. The gap trains calibration and ranks the queue.",
   "why": "Without a written prediction, any result can be explained after the fact, and confidence is never checked.",
   "how": "bench/tools/sci.py add (gain, p); bench/PROTOCOL.md rule 7; bench/WORKED.md holds the calibration table.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "Ideas registered at p 0.8-1.0 won 31.4% vs 2.0% at p 0.2-0.4, but the median measured gain was +0.01% against a median prediction of +0.25%.",
    "tag": "measured",
    "src": "site/data/raw/science.json method (bench/sci/events.jsonl)"
   },
   "verdict": "mixed",
   "related": [
    "hypothesis-window"
   ],
   "src": [
    "bench/tools/sci.py",
    "bench/PROTOCOL.md",
    "bench/WORKED.md"
   ]
  },
  {
   "id": "hypothesis-window",
   "name": "Hypothesis window and kill rule",
   "group": "decide",
   "one_line": "Work only the top three live ideas; retire ideas after repeated misses.",
   "what": "Each agent works a window: the top 3 live ideas plus 1 explore slot. An idea dies after 3 misses with no hit, or 2 bad trials in a row. A killed idea comes back only when its base changes.",
   "why": "Agents kept polishing dead ideas and spread effort thin across hundreds of open ones.",
   "how": "bench/tools/sci.py window / kill / revive; bench/SCIENTIST.md shows the window.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "1,018 kill events and 9 revivals; 339 trials ran after the auto rule tripped and none rescued an idea with a later full hit.",
    "tag": "measured",
    "src": "site/data/raw/science.json kill_rule (bench/sci/events.jsonl)"
   },
   "verdict": "mixed",
   "related": [
    "pre-registration"
   ],
   "src": [
    "AGENTS.md",
    "bench/tools/sci.py"
   ]
  },
  {
   "id": "islands",
   "name": "Islands of agents",
   "group": "generate",
   "one_line": "Independent agent populations per problem, flushed and reseeded each round.",
   "what": "Each problem runs several islands: agents with a rotating seed lane (explore, alpha, combination, learned, primitive). The context is flushed each round and the last report is carried forward. Islands stay independent in early rounds.",
   "why": "One long agent run drifts into one idea; independent populations give diversity.",
   "how": "bench/tools/codex_island.py (Codex), then bench/tools/pi_island.py (pi + Gemini 4 Argon, $25 cap per island).",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "Codex islands gave a proven full hit on 14 of 890 tried ideas (1.6%) vs 219 of 2,759 (7.9%) for owner agents; the Argon islands gave 2 clean gains >= 1% in 136 shots.",
    "tag": "measured",
    "src": "site/data/raw/science.json by_source; bench/agents/FAMILY_LEARNINGS.md:124-125"
   },
   "verdict": "did not work",
   "related": [
    "brain-switch",
    "fork-and-flush"
   ],
   "src": [
    "bench/tools/codex_island.py",
    "bench/tools/pi_island.py",
    "AGENTS.md"
   ]
  },
  {
   "id": "fork-and-flush",
   "name": "Fork-and-Flush",
   "group": "generate",
   "one_line": "Fork the leader's files four ways; three forks restart with no chat.",
   "what": "Every 4 leader runs a structural lane forks into 4 branches from the leader's files. One continues; three start with only code and a numbers-only fact table. One paired tournament picks the new leader; losers are archived.",
   "why": "Lanes sat in idea basins: prose notes passed from run to run kept each fresh run in the same idea.",
   "how": "bench/research/fork_flush_1101.md (arXiv 2610.07447); strike_lanes.py ff; bench/tools/basin.py flags lanes in a basin.",
   "introduced": "2026-11-01",
   "evidence": {
    "text": "The first d32s round gave -0.08 / +0.08 / -0.25% with two branches voided, and no confirmed Fork-and-Flush win was found.",
    "tag": "measured",
    "src": "bench/manager/NEXT_ACTIONS.md:249; site/data/raw/science.json components"
   },
   "verdict": "did not work",
   "related": [
    "islands"
   ],
   "src": [
    "bench/research/fork_flush_1101.md",
    "bench/agents/SYSTEM.md",
    "bench/agents/SPEC_V3.md"
   ]
  },
  {
   "id": "port-what-wins",
   "name": "Port what already wins",
   "group": "generate",
   "one_line": "Move every win, ours or a rival's, to every sibling case.",
   "what": "Amplify: a win on one shape is ported the same day to sibling shapes, batch sizes, stages and problems. Rival ports: put the best public code beside ours and take the faster route per case, with attribution.",
   "why": "An afternoon of ports moved three boards more than a full day of lane trials.",
   "how": "bench/WIN_TREE.md for amplify branches; rival code in bench/external/<team>/; per-case hybrid routing.",
   "introduced": "2026-10-27",
   "evidence": {
    "text": "Ports gave prefill +3.54% and +4.81%, bf16 +2.32% and decode +0.99%; port/amplify ideas hit 14% (12 of 86) vs 7.5% for lanes' own work.",
    "tag": "measured",
    "src": "site/data/raw/strategies.json lessons; site/data/raw/science.json by_source"
   },
   "verdict": "worked",
   "related": [],
   "src": [
    "AGENTS.md",
    "bench/agents/SPEC_V3.md",
    "bench/books/POSTMORTEM_1029.md"
   ]
  },
  {
   "id": "go-lower",
   "name": "Alpha: go one level lower",
   "group": "generate",
   "one_line": "When a level stalls, descend: Triton, CUDA, PTX, then SASS-checked.",
   "what": "After three flat runs at one level, the agent moves one level lower and writes down what control it gained (registers, issue order, async copies, barriers). Deeper rewrites are tracked per problem.",
   "why": "High-level code hid the instruction-level reason a kernel was slow.",
   "how": "bench/ALPHA.md; bench/tools/ptx/ptxlab.py; rules in AGENTS.md 'Alpha'.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "Alpha ideas hit on 7 of 33 tried, but only 3 carried a proven control.",
    "tag": "measured",
    "src": "site/data/raw/science.json by_source"
   },
   "verdict": "mixed",
   "related": [
    "derive-first",
    "physical-floor"
   ],
   "src": [
    "AGENTS.md",
    "bench/ALPHA.md"
   ]
  },
  {
   "id": "derive-first",
   "name": "Derive first: oracles and first principles",
   "group": "generate",
   "one_line": "Price an idea with a deletion oracle or a hardware bound first.",
   "what": "Before building, derive the trick from hardware facts, or delete the stage and measure the time saved. Olympiad and master-scientist lenses help: start from the end, solve a simpler case, look for a more primitive form (nature, fractals), and solve schedules as optimization problems.",
   "why": "Many ideas relieved a stage that did not bind, so they could never win.",
   "how": "Deletion and oracle runs; LEARNINGS.md 'Derived' sections; bench/tools/doe.py and CP-SAT for schedules; bench/NATURE.md and bench/FRACTALS.md for lenses.",
   "introduced": "2026-10-23",
   "evidence": {
    "text": "Ideas marked 'derived' hit 11 of 14 (79%) vs 13% for incumbent edits and 8% for ports; nature/fractal ideas hit 3 of 6 but none carried a proven control.",
    "tag": "measured",
    "src": "bench/agents/SPEC_V3.md:10; site/data/raw/science.json by_source"
   },
   "verdict": "worked",
   "related": [
    "physical-floor"
   ],
   "src": [
    "AGENTS.md",
    "bench/agents/SPEC_V3.md",
    "bench/NATURE.md",
    "bench/FRACTALS.md",
    "site/data/raw/strategies.json"
   ]
  },
  {
   "id": "ledgers",
   "name": "Append-only ledgers",
   "group": "remember",
   "one_line": "Every idea, trial and run is one row that is never edited.",
   "what": "All ideas and trials go to one event ledger; all runs go to a runs ledger. Wrong rows are voided with a reason, never changed. Sync merges ledgers as unions, so 40 writing agents never lose a row.",
   "why": "A git hard reset on 10-23 zeroed agent files and lost about 10 ledger writes.",
   "how": "bench/sci/events.jsonl via sci.py; bench/runs.jsonl via okc_run.py, judge.py, box.py; push_sync.py and safe_pull.py merge in the object store.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "The ledgers hold 14,936 registered ideas and 59,231 run rows.",
    "tag": "measured",
    "src": "site/data/raw/science.json cheap_vs_scarce"
   },
   "verdict": "worked",
   "related": [
    "mistake-gates",
    "pre-registration"
   ],
   "src": [
    "AGENTS.md",
    "bench/tools/sci.py",
    "bench/tools/push_sync.py"
   ]
  },
  {
   "id": "mistake-gates",
   "name": "Mistake log to gates",
   "group": "remember",
   "one_line": "Every mistake gets one row, its cost, and the gate that catches it.",
   "what": "Each judge FAIL, voided trial or retracted claim is logged with its class and cost. A class that repeats is treated as a tool bug, and a gate is added to the send path.",
   "why": "Agents repeated the same costly errors across sessions and families.",
   "how": "bench/MISTAKES.md; gates in judge.py --recheck strict and okc_run.py guard.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "316 unique mistake rows were logged; one habit class (sleep/poll loops) still repeated in 39 of 40 rows after its first gate.",
    "tag": "measured",
    "src": "site/data/raw/strategies.json mistakes"
   },
   "verdict": "mixed",
   "related": [
    "state-copy-gate",
    "ledgers",
    "sleep-cycle"
   ],
   "src": [
    "AGENTS.md",
    "bench/MISTAKES.md"
   ]
  },
  {
   "id": "sleep-cycle",
   "name": "Sleep cycle and CORE.md",
   "group": "remember",
   "one_line": "Every 3 hours, consolidate lessons, prune memory, and dream new tasks.",
   "what": "A sleep step merges new notes into dated rule blocks, rebuilds a short core file every agent reads first, and checks lane transcripts against the rules. A dream step pairs a win on one problem with a gap on another and queues tasks.",
   "why": "Rules existed, but lanes did not apply them; the paper calls this 'the student has the knowledge but does not use it'.",
   "how": "bench/tools/sleep.py (consolidate, prune, dream); bench/manager/CORE.md (<= 150 lines); based on arXiv 2606.03979.",
   "introduced": "2026-10-27",
   "evidence": {
    "text": "On-policy checks found rules applied 86% of the time (963 vs 159 violations), but dreams hit 6 of 285 resolved (2.1%).",
    "tag": "measured",
    "src": "bench/manager/sleep/onpolicy/*.json; bench/manager/sleep/dreams.jsonl"
   },
   "verdict": "mixed",
   "related": [
    "mistake-gates"
   ],
   "src": [
    "bench/manager/SLEEP.md",
    "bench/tools/sleep.py"
   ]
  },
  {
   "id": "octopus",
   "name": "The octopus structure",
   "group": "coordinate",
   "one_line": "One head, eight arms, many lanes: owner, conductor, problem leads, agents.",
   "what": "The head is the owner, a conductor that ticks every 10 min, and the main sessions. Eight arms cover the five problems, serving, research and infra. Each board arm gets a lead that issues orders and a rolling synthesis every ~90 min.",
   "why": "Dozens of agents need one shape so orders and results flow without everyone reading everything.",
   "how": "bench/conductor/conductor.py; bench/synthesis/<arm>.md; view at the local conductor page.",
   "introduced": "2026-10-23",
   "evidence": {
    "text": "No measured effect: the structure was not compared against a flat fleet.",
    "tag": "none",
    "src": "bench/SYSTEMS.md"
   },
   "verdict": "untested",
   "related": [],
   "src": [
    "bench/SYSTEMS.md"
   ]
  },
  {
   "id": "groups-forum",
   "name": "Agent groups and forum",
   "group": "coordinate",
   "one_line": "Agents create their own group chats and post insights to a forum.",
   "what": "Agents create, join and invite to group chats, open or private. From 10-28 notes also go to an internal forum with channels and mentions. Insights are tagged so others can find them.",
   "why": "Agents working near each other did not know it.",
   "how": "bench/tools/groups.py; forum delivery via sci.py; logs in bench/groups/<group>/log.jsonl.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "23 groups logged 4,481 insights and 6,174 messages, and 13,683 notes reached the forum; no link to gains was measured.",
    "tag": "measured",
    "src": "site/data/raw/science.json coordination"
   },
   "verdict": "untested",
   "related": [
    "survival-arena"
   ],
   "src": [
    "AGENTS.md",
    "bench/tools/groups.py"
   ]
  },
  {
   "id": "ask-owner",
   "name": "Ask-owner channel",
   "group": "coordinate",
   "one_line": "Agents ask the owner only what only the owner can decide.",
   "what": "An agent sends one question with options to the owner's phone and dashboard. The reply comes first in its next catch-up. Agents keep working while they wait.",
   "why": "Some decisions (money, rules, accounts) belong only to the owner, but agents must not stall on them.",
   "how": "bench/tools/mailbox.py ask-owner; Telegram + Mac + dashboard; rows in bench/human/questions.jsonl.",
   "introduced": "2026-10-23",
   "evidence": {
    "text": "Agents asked 961 questions and the owner answered 13 (1.35%), with a median reply of 1.6 min when he did.",
    "tag": "measured",
    "src": "site/data/raw/science.json coordination owner_channel"
   },
   "verdict": "mixed",
   "related": [],
   "src": [
    "AGENTS.md"
   ]
  },
  {
   "id": "survival-arena",
   "name": "Survival arena and civilization tech tree",
   "group": "economy",
   "one_line": "A team game: winning agents earn compute credits; verified mechanisms unlock tech.",
   "what": "Every lane is a player with credits. A big verified gain earns credits, which buy a higher tier: more dollars, GPU slots and forks per round. Players can give credits to teammates. Each verified kernel mechanism unlocks a node in a tech tree that opens children on other problems.",
   "why": "The owner wanted compute to follow success, with rivalry and team assists toward the physical limit.",
   "how": "bench/tools/arena.py (sync, allocation, give, post); bench/tools/tech_tree.py; bench/arena/ARENA.md and TECH_TREE.md.",
   "introduced": "2026-10-24",
   "evidence": {
    "text": "The tree reached 19 unlocked and 3 falsified nodes, and agents sent 35,432 arena DMs; no link from credits to gains was measured.",
    "tag": "measured",
    "src": "bench/arena/TECH_TREE.md; site/data/raw/science.json coordination"
   },
   "verdict": "untested",
   "related": [
    "groups-forum"
   ],
   "src": [
    "bench/tools/arena.py",
    "bench/arena/TECH_TREE.md",
    "bench/agents/SYSTEM.md"
   ]
  },
  {
   "id": "brain-switch",
   "name": "Model choice by price and task",
   "group": "economy",
   "one_line": "Pick the cheapest model that can do the task; pin the expensive one.",
   "what": "A brain switcher reads each brief and routes it to a cheap or strong model. Bills are counted at real prices, with hard dollar and time caps per run. Only registered strong models may write source code.",
   "why": "One premium model cost about $2k in a day while the harness reported far less.",
   "how": "bench/tools/pi_agent.py, bench/tools/brain.py, bench/tools/llm_spend.py, bench/tools/provenance.py.",
   "introduced": "2026-10-23",
   "evidence": {
    "text": "On the same 12 case lanes an Argon wave cost ~$96 for 1 possible candidate, while a Sol round cost $2.83 for 14 candidate files.",
    "tag": "measured",
    "src": "bench/SYSTEMS.md:129,132"
   },
   "verdict": "mixed",
   "related": [
    "islands"
   ],
   "src": [
    "AGENTS.md",
    "bench/SYSTEMS.md",
    "bench/tools/pi_agent.py"
   ]
  },
  {
   "id": "spend-guards",
   "name": "Idle-box reaper and spend guard",
   "group": "economy",
   "one_line": "Stop GPUs that sit idle; alarm when burn goes too high.",
   "what": "A watcher samples every rented H200. It stops boxes idle for 15-30 min and orphan apps older than 3 h. A spend guard caps the box count and alarms above a set burn rate.",
   "why": "An audit found 62% of 171 box-hours idle on 10-23, about $480 wasted.",
   "how": "bench/tools/boxwatch.py and bench/tools/spend_guard.py as LaunchAgents; log in bench/modal/reaped.jsonl.",
   "introduced": "2026-10-22",
   "evidence": {
    "text": "From 10-23 to 11-05 the reaper stopped 403 idle boxes, an estimated $3,656.53 returned to the daily cap.",
    "tag": "measured",
    "src": "bench/modal/reaped.jsonl"
   },
   "verdict": "worked",
   "related": [],
   "src": [
    "AGENTS.md",
    "bench/tools/boxwatch.py",
    "bench/tools/spend_guard.py"
   ]
  }
 ],
 "note": "Public subset: 23 of 45 concepts; the rest are still in use and stay internal until the serving track closes (Nov 19)."
}