The subject, and the contract
Throughline is a Git-native requirements tool: one YAML file per item, a permanent UID, typed links, composition of other graphs by reference, and a validator that fails on an orphan, a dangling link or an unaccepted item. The first example's technical page sets out the working contract. Here the subject is a talk, and the contract ran in two halves that never met: a story graph shaped and written on 7 October, whose structure the person ratified a week later in a working copy that has not been committed and whose claims he did not; and a deck graph begun on 14 October, built into a deck by the product of the sixth example, which the person chose not to ratify at all. Everything in all three graphs is of AI origin or hybrid; the person's contribution to the graphs was signatures, corrections, and the words of three claims.
Three graphs, and what they compose
| Graph | What it holds | Live | Ratified | Composes |
|---|---|---|---|---|
| content/idd/shape | Sources read, the domain, five needs, eight register decisions, four registers refused | 23 | 0 committed, 23 in the working copy | story, uncited |
| content/idd/story | One intent, five acts, twenty claims, thirteen pieces of evidence, five assumptions, six constraints, five non-goals | 55 | 0 committed, 20 in the working copy | — |
| deck | One series, three interests, two topics, two editions, fifteen threads, 55 slides, 50 claims, 40 sources | 168 | 1 | the product's rules |
A story graph, shaped for a talk
The shape pass read five sources, named the domain as "a talk that argues one case to leaders through one story", and wrote down what such a record needs: every claim rests on recorded evidence; the order of the story is held once; what the talk rests on is stated and can be withdrawn; what must not be said or shown is binding; left-out material is recorded as left out. Seven registers followed, each with a decision saying why, and four were refused in writing: no requirements, no non-functional rules, no tests and no risks, because a talk is verified by giving it and not by a suite.
The structure was not signed that night. The 23 shape items and 20 story items took the person's signature on 15 October at 03:38, a week after they were written, in the working copy of the repository, where the files have sat modified and uncommitted since; the committed graphs hold no signature at all. The claims and the evidence are proposed in both; the account says why three of the claims carry his words. The non-goal refusing a comparison with other tools is ratified, and the deck now has a slide of alternatives: the story graph was not amended to match, which is one of the seams below. The sixth constraint, the agreed title and pitch, was added on 14 October when the organisers' wording arrived, after the first deck had been written to the story's own opening.
The deck graph, and the product's rules
On 14 October the talk became a series for the product to build: a graph in the same repository, shaped like every series the product builds, composing the product's rules graph as a source so that the rules every deck must pass, a slide that states a number shows its claim, a claim rests on a source, the same graph gives the same deck, are written once and cited. Two of the series' items derive from those rules. The product's builder reads the graph on every push, checks each slide against the rules, renders the slides, writes the speaker notes, and hands the deck to the worker for narration, subtitles and video.
Two editions sit on the graph. The first, written from the story's own opening question, has seven threads and nineteen slides. The second, written the same afternoon to the title and pitch agreed with the organisers, has eight threads and thirty-six written slides resting on 36 claims and 37 sources, and is the deck that was built, narrated and sent. Twelve titles are shared between them as twins, a slide item in each edition, kept in step by hand when one is changed, their words differing where the two decks' framing differs; the person asked on 16 October how one slide could have two UIDs, and that is the answer. The layouts are the product's: ten rows, ten screenshots, seven cards, three takeaways, three stats, two compares and one video.
Comments become commits
The person's way of working on the deck was to comment on it by slide number, in a session given a brief that named the graph, the worktree to use and the item types, and the AI's way was one commit per comment, naming the slide in the subject and the items in the body. Thirty-nine of the ninety-five commits name a slide number in the subject, and ten more name a slide in words; fourteen name an item in the subject, which is what the assessment script reads, so the citing ratio reads 14.7 per cent against a body that cites every time. "Old slide" in a subject marks a comment made against a numbering that two new slides had since moved; the graph's own order is by thread and position, and the numbers the person used were the deck's at the time he looked at it.
The deck rebuilt itself behind him: the product's builder watches the repository and rebuilds a deck when its graph moves, only the changed slides, and the worker re-speaks only the notes that changed. The cost of that is in the sixth example: a long narration pass read files a newer build had renumbered, and a deck refused at a newer revision dropped off the site.
The demonstration's graphs
The demonstration the audience sees is a branch of the third example's graph. On 14 October the person held that graph, signed in September with no standard composed, to the security and accessibility standards from the catalogue, signed the four new items in his terminal, and then had the AI do on the branch the two things the slides show: a proposal of AI origin that crosses a ratified non-goal and waits, and a ratified requirement reworded after its signature so that the fingerprint no longer matches. The branch is thirteen minutes of commits. The browser tools show it as a proposal that cannot ship, a stale signature, and every requirement traced to its intent and out to the clause it satisfies; the slide that reports it leads with the forty decisions of September, none of them held to the accessibility standard, and the gap closed the same evening.
The first demonstration, built on the evening of 7 October, was a tax calculator in a repository of its own: eight graphs, 2,100 items, of which 511 are the tax rules, all proposed; a calculator graph of 76 items the person ratified that night; a transform tool's graph of 611 items, ratified; a challenge pass that read the rules against the legislation and found the personal-allowance rule did not give the greatest reduction; and a finding that a signature did not cover an item's links, which went to the tool as a change before anything else. It was set aside for the calculator that already existed, and its graphs stand as they were on 8 October.
Ratification, and the decision not to
One item is ratified in the committed record: the deck's series item, on 14 October at 19:17, which is the signature that lets the product publish a series' decks. Forty-three more, the shape's 23 and the story's 20, were signed on 15 October at 03:38 and have not been committed; a reader of the repository sees them proposed. The 169 warnings are the 167 proposed items of the deck and two unstamped citations into the rules graph. Under the strict check they are errors, and the graph does not meet the assessment's gate; the product's own check is non-strict, so a proposed item waits and does not fail the build.
The product's rule of 9 October is that a deck of a series whose decks wait for a person is listed only when every item it shows is ratified; an unsigned deck is built as a draft and watermarked. The person did not want the talk to wait, and the product gained, on 16 October, a deck-level approval setting that overrides the series': a deck that does not wait is published, marked nowhere, with no line on its cover. The talk's edition carries that setting. So the deck the audience sees is built from 167 proposed items, and the record says so plainly, which is what a deliberate decision not to sign looks like on a graph.
One signature was given by accident and withdrawn. On 14 October at 19:16 the person meant to sign the series alone and found he had signed everything; the AI reverted the rest and he signed the one item. That accident is also in the sixth example, where it is one of the reasons the list form of ratification was retired.
Seams the graphs leave open
- The story and the deck are not joined. No slide cites the claim of the argument it carries, and no claim of the story cites the slide that makes it; the deck's claims are its own register, built for sources rather than for the argument. The story's order of five acts and the deck's order of eight threads agree by reading, not by link.
- A ratified non-goal is contradicted by a slide. The story refuses a comparison with other requirements tools; the deck has a slide of alternatives, asked for on 17 October. The story graph was not amended, so the signed non-goal stands against a built slide.
- The story's claims were never signed, and three of them are the person's own words. The record marks their origin as hybrid; nothing marks that he agrees with them, because he never ratified them. The signatures he did give, on the structure, are a week late and uncommitted.
- The old slide numbers in the commit subjects are the deck's numbering at the moment of the comment, which two inserted slides moved; a reader following them needs the date.
The assessment
None of the three graphs is at the assessment's "done": the story holds 35 proposed items, the deck 167, and the working tree carries 43 uncommitted signatures. No record is filed. The figures below are the script's measures taken on 17 October 2026 at the repository's last commit that morning.
| Measure | The talk | Taken from |
|---|---|---|
| Items, live local | 246: shape 23, story 55, deck 168 | graph |
| Accepted by a human | 1 committed; 44 (0.18) in the working copy: 23, 20, 1 | graph, and the working tree |
| Origin | AI 243, hybrid 3 | graph |
| Links, local | 379: 22, 56, 301 | graph |
| Sources composed; citations into them | the product's rules; 2 | graph |
| Commits · span | 95 · 9.6 days | git |
| Commits naming a slide number in the subject | 39 | git |
| Commits naming an item in the subject | 14 (14.7%) | git |
| Lines added / removed | 5,461 / 412 | git |
| Items amended after ratification | 1, in 5 amending commits | git |
| Wall clock / active, the story session | 22.9 h / 3.4 h | 2 overlapping session records, merged |
| Wall clock / active, the main session from the talk's start | 71.4 h / 26.2 h | 1 session record, shared with the product |
| Wall clock / active, the comment sessions | 60.4 h / 3.9 h | 3 session records |
| Human turns / AI turns | 448 / 7,707 | session records |
| Tool calls | 3,661 | session records |
| Tokens out (of which thinking) | 6,103,778 (2,081,240) | session records |
| Done | no | strict check, proposed items |
The main session's hours are the same hours the sixth example counts from 14 October onward; the two examples share one session record and the figure is not additive across the two pages. The story session's record exists twice with the same first forty-eight messages; the two copies were merged on their entry identifiers before measuring.
What the tooling taught
The account. What happened, who did what, what it cost and what went wrong is on the account for a general reader.