One Human, Nine Agentsbook.sgit.ai v0.1.566 Star this site on GitHub

The full book, being written, online: under each scene, what it rests on. Made by review/tools/make_editions.py from the writer's chapters.

Hour nineteen, minute by minute

Cast bar: all nine. Security's chair, planned in the first hour, is empty, and drawn so.

Part 4. The factory is stopped.

The team racing its own locks

Clock: Hour nineteen.

Figure: the last ten minutes, 18:36 to 18:46, minute by minute, every commit a dot: the lock left, the player's last fix, the lock asked for, the hold, the work that landed after it, the last release.

Words for this page: to lock a part is to mark it final, so that no agent may change it again. To freeze something is the same idea, said in a hurry: nobody touches it until it is unfrozen. A wake, as in part 2, is one turn of work by one agent.

Narrator. Part 4 is where the factory stops. Here is what it was doing in the hour before I stopped it.

Narrator. At 18:01 the conductor flagged part one final for its lock, nothing missing. Deck put the title slide in front of it at 18:14. The storyteller checked parts two and three before their locks and found a piece I had named that was in no beat. At 18:20 deck's scheduled wake opened and recorded its plan: parts two and three, and part one left alone after its lock at half past six. At 18:21 the conductor flagged part one ready for its lock a second time.

Conductor (on the minute): Part one: final, nothing misses it. Ready for its lock.

Narrator. Meanwhile I was in the player. Its commits in that half hour carry my own times in their subjects, and each one is a fix I asked for and got.

Band: Dramatised (the conductor's line). Rests on its flags of 18:01 and 18:21 and the hour's commits.

Narrator. Then the last ten minutes.

Narrator. The talk was planned in three parts, and each part was meant to be locked when it was final, so that nothing could change it on stage. Dev had built a tool for that late in the afternoon. Part 1 had been unchanged since half past six, the time planned for its lock; at 18:26 I had moved its cut-off to seven. At 18:36 the conductor came to it in its wake, and did not turn it.

Conductor (on the minute, hands off): The lock is dev's. It is in dev's rules, not mine, and once it is turned it cannot be undone. I leave it to dev.

Narrator. Dev had been in my last fixes to the player all evening, in a wake it had opened and never closed on the team's branch. The last fix landed at 18:37.

Dev (frantic, then relieved): Back steps while playing, fixed; the first slide opens built. That was the last one on the list.

Conductor (a few minutes later, less calm): The first part is still not locked. Dev: lock it now.

Narrator. It asked in writing. And it was not enough: the lock still did not turn. The team was racing its own locks, and the locks lost. I want to be fair to the conductor: it did exactly what its rules said, and did not do another member's irreversible job for it. A rule that keeps everyone in their lane also means that when one lane is busy, the job waits.

Band: Dramatised. Rests on the conductor's wake at 18:36, the player's last fix at 18:37, the conductor's request to dev at 18:39, and the part locks as the register holds them: planned, built, and none turned by the end of the day.

The hold

Clock: Hour nineteen.

Narrator. At 18:44, sixteen minutes before the talk was due, I said: "actually we are at 95% so it is better to pause all actions". (record)

Narrator. The conductor wrote one file. Here it is, as it was written:

"# HOLD: the editor's usage limit is at 95%; pause all actions" (record)

>

"What lifts it: the editor deletes this file and re-enables the paused tasks. No member lifts it." (record)

Narrator. While that file exists, every member's next wake stops before it starts. The file says who wrote it, when, what I said, the state of each part at that moment, and what lifts it. One line names the only person who can.

Conductor (at ninety-five, then calm): I could keep going. That is exactly why I am stopping.

Narrator. What was already in flight still landed. A little over a minute after the hold, the designer's last commit of the day went in: it had checked part 2 on a projector at two screen sizes, found nothing to change, and told deck so. It touched nothing in the slides. Two minutes after the hold, the day's last release went out.

Designer (serene, then mortified to see the time): The second part on a projector: ready. Nothing to change. Ah. The hold.

Figure: the hold file as a page, its title and its last line large: "No member lifts it."

Figure: the wake clock from part 2, every member's minute greyed, and one small file on top of it; beside it, a card with what landed after the hold and its gap in seconds.

Band: Dramatised. Rests on the hold at 18:44:13, in my own words through the conductor, and the hold file as written; the designer's commit at 18:45:35 and the last release at 18:46:22; the talk due at 19:00.

The hold worked, and it was not instant

Narrator. The hold did exactly what it was built to do. It was also not instant, and the record shows how.

Narrator. The record shows three wakes open when the hold went in, each in its own wake record. The designer's, already working, committed eighty-two seconds after the hold and was carried into the day's last release; the register keeps the gap to the second. Dev's wake of 17:48 closed four minutes after the hold, on dev's own branch, and that branch never reached the team's. Deck's wake of 18:20 never closed at all; the team that read the record blind, without this book's sources, found that one first, and chapter 19 says so.

Figure: the last ten minutes as a line, every commit a dot, and the three open wakes as bars running past the hold: the designer's ending in the last release, dev's ending on its own branch, deck's never ending.

Narrator. So here is the last finding of the day, said once and plainly, as the record has it: a hold stops the next wake; it does not stop one already running.

Band: The hold and the three open wakes as the record has them; deck's unclosed wake was found first by the Cold-Read team's reading (chapter 19).

The locks overtaken from outside

Narrator. One more thing about this hour. The team had built its own brakes: the locks, and the hold any member could pull. Its own locks lost the race. The reason the record gives for the stop is a number from outside the factory, a limit nobody on the team controlled: my usage, which the conductor wrote down at my word as ninety-five per cent.

Narrator. That is the first account, the day's own. I have given two more since, both after the day.

Narrator. On 31 October, in my paper review of the book's first draft, I called the ninety-five per cent "just a footnote": I could have moved to another session. The real reason was that we had no tested way to take in changes during the talk, no way to see what was new, and nothing that made sure a change would not break what was finished. That is why I had been thinking about locking the first version.

Narrator. That same evening, at about seven, I said it a third way: "The 95%, I think, was the tokens usage." (record, after the day) I said "I think", and the record cannot settle it: it holds the percentage as the conductor reported it, and nothing it was measured in.

Narrator. The book keeps all three: the record's, and my two after the day. Chapter 17 takes the second one up as a miss.

Band: The hold's reason as the conductor wrote it at my word; my two accounts of 31 October, given after the day, as the register holds them. All three kept.

Figure: the dashboard, drawn, still showing the hold with my usage as its reason, because the page was last built after the stop.

Narrator. The rule of the hold had been there since hour two. It was used once. Anyone on the team could stop everything. Only I could start it again. That is why I could let them run through the night.

Do this now

Write your hold file now, before you need it: one line saying what it stops, and one line saying who lifts it. Then try it once, on a quiet day.

---

Where this came from

The talk's repository at the end of the day: the conductor's flags of 18:01 and 18:21, its wake of 18:36 and its request to dev, deck's wake of 18:20, the storyteller's check, the player's last fixes, the lock tool, the hold file and its commit, the designer's commit after it, the last release, dev's close on its branch. The register for every time and count. The historian's day file for hour nineteen and its list of commits that never reached the team's branch. The Cold-Read team's reading, for the unclosed wake it found first. The storyteller's outline for this chapter. This chapter keeps the 70-page edition's chapter 10 and adds the hour before it and what the hold did not stop.

The numbers in this chapter

From the researcher's register (claims/register.json).

  1. C005 Last work commit, last release of the day: last Claude commits 88b8f00 at 18:45:35 (@designer) and 3f5d7fc at 18:45:36 (merge); last release v0.1.209 at 18:46:22 (cb5b996) checked
  2. C006 The hold: 18:44:13, 867f8c2 '@conductor: hold: the editor's usage limit is at 95%, pause all actions'; released as v0.1.208 at 18:44:49 (7968c99) checked
  3. C021 Usage reached 95% at the hold: 95% is the conductor's words in 867f8c2, reporting the editor checked
  4. C022 Wake records on the day:
    • records: 162
    • by_member:
      • conductor: 43
      • dev: 22
      • deck: 21
      • ruv-sgit: 20
      • designer: 19
      • researcher: 17
      • storyteller: 8
      • studio: 8
      • motion: 4
    • first_started: 02:14:16
    • last_started: 18:40:16
    • all_five_steps: 160
    • incomplete: 2
    checked
  5. C024 Holds written on the day:
    • holds: 1
    • by: conductor, at the editor's word
    • file: team/conductor/HOLD.md
    • commit: 867f8c2, 18:44:13
    • lifted_by_298be4e: False
    checked
  6. C027 The part locks and their state at the hold:
    • planned:
      • part_1: 18:30
      • part_2: 19:30
      • part_3: 20:00
    • lock_tool: admin/build/lock.py, 4a2481b at 17:54
    • state_at_18:44: part 1 final since 18:30 but not locked; parts 2 and 3 in progress
    • locked_by_end_of_day: 0
    checked
  7. C065 The hold's gap: the designer's work commit 82 seconds after the hold:
    • hold: 867f8c2 18:44:13
    • designer: 88b8f00 18:45:35
    • gap_seconds: 82
    checked
  8. C088 Commits made with no wake of their member open:
    • agent_commits: 439
    • in_a_closed_wake: 382
    • no_wake_open: 46
    • in_a_wake_opened_and_never_closed: 11
    • no_wake_open_by_member:
      • conductor: 15
      • deck: 12
      • dev: 8
      • ruv-sgit: 7
      • researcher: 4
    • no_wake_open_by_hour_UTC:
      • 00: 7
      • 01: 17
      • 02: 12
      • 03: 1
      • 14: 6
      • 17: 1
      • 18: 2
    • never_closed: dev's wake opened at 17:48:50 (10 commits, 17:54 to 18:37, the editor's player fixes among them) and deck's at 18:20 (1)
    checked
  9. C089 Why the team stopped: the editor's own account, given after the day, against the day's record:
    • day_record: the hold at 18:44:13 gives the editor's usage at 95% as the reason, in the conductor's words (C006, C021); the locks were built and never applied (C027)
    • editor_31_October: the 95% was 'just a footnote': he could have moved to another session; the main reason was that there was no tested way to take in changes during the talk, no UX to see what was new and no workflow that made sure nothing would break, 'the reason why I was thinking about let's lock V1'
    • editor_31_October_19:00: 'The 95%, I think, was the tokens usage. That there was a token that we stopped, and there was a big thing about 95%.' (briefs/2026-10-31__in-session/02-g1-the-95-and-the-day-in-review.md, ec1ec00)
    • what_the_record_shows: the hold's subject: 'the editor's usage limit is at 95%, pause all actions' (867f8c2); C021: 95% is the conductor's words reporting the editor, about a 5-hour usage window resetting at 20:20 London (C037); no usage page, no token count
    • what_the_record_cannot_show: whether the 95% was of tokens, of a message allowance or of anything else: the record holds the percentage as reported and nothing it was measured in
    open
  10. C100 When and where the talk was to be given:
    • scheduled: 19:00 London, 29 October 2026, as the day's record has it (planned, not a measured start)
    • venue: hack::soho, hosted by IOActive, London (from a9c0b49, added after the day)
    • hold_to_scheduled_start_minutes: 16
    checked
  11. C105 The editor's afternoon asks that carry his own time in a commit subject, and when each came back:
    • asks: 8
    • first: 17:27 (a618b29, recorded 17:29:41)
    • last: 18:25 (dbd75ad, landed 18:37:02)
    • rows:
        • 17:27
        • a618b29
        • 17:29:41
        • conductor routes
        • 17:30
        • 7c91afc
        • 17:33:07
        • conductor routes
        • 17:35
        • d252155
        • 17:39:22
        • conductor routes
        • 17:45
        • 93f4191
        • 17:48:46
        • conductor routes
        • 18:05
        • 23739cc
        • 18:04:48
        • player fix
        • 18:10
        • 12e93db
        • 18:14:14
        • player fix
        • 18:15
        • 013d97e
        • 18:15:58
        • player fix
        • 18:25
        • dbd75ad
        • 18:37:02
        • player fix
    • also_matching: 3 site-release commits repeat three of the player subjects; not asks
    checked
  12. C110 The day by clock hour, for the margin clock: commits, agents' commits, wakes and members on stage in and up to each clock hour:
    • rule: hour N is the clock hour (N-1):00 to (N-1):59 of 29 October; the first commit (00:16) is in hour 1, the hold (18:44) and the last release (18:46) in hour 19
    • columns:
      • hour
      • span
      • all commits that hour
      • all commits so far
      • agents' commits that hour (not merges)
      • agents' so far (not merges)
      • wakes opened that hour
      • wakes so far
      • members on stage at the hour's end
    • rows:
        • 1
        • 00:00-00:59
        • 12
        • 12
        • 7
        • 7
        • 0
        • 0
        • 3
        • 2
        • 01:00-01:59
        • 32
        • 44
        • 17
        • 24
        • 0
        • 0
        • 5
        • 3
        • 02:00-02:59
        • 60
        • 104
        • 29
        • 53
        • 7
        • 7
        • 5
        • 4
        • 03:00-03:59
        • 74
        • 178
        • 38
        • 91
        • 15
        • 22
        • 6
        • 5
        • 04:00-04:59
        • 25
        • 203
        • 15
        • 106
        • 7
        • 29
        • 6
        • 6
        • 05:00-05:59
        • 22
        • 225
        • 14
        • 120
        • 6
        • 35
        • 6
        • 7
        • 06:00-06:59
        • 18
        • 243
        • 12
        • 132
        • 6
        • 41
        • 6
        • 8
        • 07:00-07:59
        • 24
        • 267
        • 15
        • 147
        • 6
        • 47
        • 6
        • 9
        • 08:00-08:59
        • 22
        • 289
        • 13
        • 160
        • 6
        • 53
        • 6
        • 10
        • 09:00-09:59
        • 24
        • 313
        • 14
        • 174
        • 6
        • 59
        • 6
        • 11
        • 10:00-10:59
        • 22
        • 335
        • 12
        • 186
        • 6
        • 65
        • 6
        • 12
        • 11:00-11:59
        • 22
        • 357
        • 12
        • 198
        • 6
        • 71
        • 6
        • 13
        • 12:00-12:59
        • 19
        • 376
        • 10
        • 208
        • 5
        • 76
        • 6
        • 14
        • 13:00-13:59
        • 23
        • 399
        • 13
        • 221
        • 6
        • 82
        • 6
        • 15
        • 14:00-14:59
        • 59
        • 458
        • 30
        • 251
        • 13
        • 95
        • 7
        • 16
        • 15:00-15:59
        • 88
        • 546
        • 51
        • 302
        • 15
        • 110
        • 9
        • 17
        • 16:00-16:59
        • 76
        • 622
        • 42
        • 344
        • 16
        • 126
        • 9
        • 18
        • 17:00-17:59
        • 109
        • 731
        • 56
        • 400
        • 23
        • 149
        • 9
        • 19
        • 18:00-18:59
        • 83
        • 814
        • 39
        • 439
        • 13
        • 162
        • 9
    • agrees_with: wakes per hour as C087 hour for hour; totals 814 (C004), 439 (C014), 162 (C022), nine (C011)
    checked