Trial to Retired, Never to Live

Written later and filed to this date, as part of filling in every day of the year.

The leverage ledger has a status column with four values: idea, building, live, retired. The loop may write the first two and the last. It may never write the third.

That was the fourteenth decision in the file, recorded on the loop’s second day, the same night the first automation crossed the line. A watcher for the calendar had been built, tested, run once against the real calendar, fixed, and run again clean, and then a person decided to rely on it. The commit that records that is the one that writes live and logs the first win. The decision generalises it: an automation the loop has built and tested is building; it becomes live only when the human adopts it, by relying on it or by scheduling it. The loop’s constitution already forbade going live on its own. This gave the prohibition a column.

Two consequences follow. Report-only automations can be built freely, because building is not adoption. And only live items count against the maintenance cap, so the loop can fill the ledger with finished things without adding a minute of upkeep until someone flips one. The scheduler enforces the shape: by default it prints the unit it would install and writes nothing; --install is the system change, and a person types it.

The cost showed up in June. A review found the loop stuck not at building but at adopting: a dozen finished things waiting at gates nobody had pulled, heavy output and flat value. The gate was doing its job, and the queue behind it was the job’s price.

July’s answer did not move the switch. It added a rung below it. An agent may now install a routine as trial, under conditions the code checks rather than the agent: the routine produces only reports, drafts or status events, never a send, a publish, a spend or an actuation; it honours the pause lever and refuses protected hours; it is registered for the routine evaluator’s judgment; it evicts itself after a grace window in which it produced no value; at most two agent-installed trials run at once; and its unit carries a trial prefix, so a plain listing shows what the machine put there. The comment above the implementation states the limit in one line: the only status transition any code path below it writes is trial to retired. Promotion to live is still a person.

The rule, as the decisions file titles it: “building vs live is the human adopt gate.” The trial rung is the loop admitting it can carry a routine all the way to the door, and the gate is the door staying shut.


← all writing