Skip to content

A live five-session run, and the three things it found (v0.10.1) - #20

Merged
happyren merged 1 commit into
masterfrom
feat/live-scenario-readme
Aug 15, 2026
Merged

happyren merged 1 commit into
masterfrom
feat/live-scenario-readme

Conversation

@happyren

Copy link
Copy Markdown
Owner

Ran the whole storyline in a real dsh web host with real models — identity, a refused collision, a real edit steered mid-task, a refuted claim, a deadlock, and a newcomer reading a decision it was never told about — and rebuilt the README around what actually happened. Every screenshot is from that run.

What the run found

1 · Sessions were called by the wrong name. A session that published the alias payments-api was announced to every peer as ready-57a1 — folded from its title, which happened to be its first reply. That name says nothing and moves when the title is refolded. There is now one rule (peerAddress) and every surface goes through it: the listing, the sender stamped on a message, the holder named in a refused claim, the party in a wait.

2 · A wait was shown as a raw session id. The id is what makes a deadlock cycle walkable; it is not something a reader can act on. The listing resolves it back to an address, and shows an unresolvable one as recorded rather than hiding it.

3 · The accounting caught the plugin's own cost. The first run spent 20 receiver turns to catch 3 problems. The transcripts said why — once the work was done, the sessions kept going:

"Noted, thanks." → "Anytime — good luck." → "Thanks, will keep you posted." → "Perfect — I'm here."

…until loop control dropped a duplicate. One sentence in peer_send's description telling models not to send acknowledgements, and the same scenario ran again:

before after
messages delivered 20 7
dropped by loop control 2 0
problems caught 3 3

65% less traffic, identical catches. In the re-run a model declines a courtesy reply in its own words, on screen: "sending a 'noted' back would just cost them a turn."

That guidance is now under test (tests/tool-guidance.test.ts) — a tool description is exactly the kind of thing an edit trims without noticing.

README

Rebuilt around the run: the transcript card up front, then the six moments of the storyline with the screenshots that show them, then what it cost. Stale demo images removed; the media set is this run. peer_list's example output is now copied from a real call rather than hand-written.

367 tests.

Ran the whole storyline in a real dsh web host with real models — identity,
a refused collision, a real edit steered mid-task, a refuted claim, a
deadlock, and a newcomer reading a decision it was never told about — and
rebuilt the README around what actually happened. Every screenshot is from
that run.

Three things the run found, each fixed here:

Sessions were referred to by names folded from their titles, so a peer that
published `payments-api` was announced to everyone as `ready-57a1` — an
address that says nothing and moves when the title is refolded. There is
now one rule, `peerAddress`, and every surface goes through it: the
listing, the sender stamped on a message, the holder named in a refused
claim, the party in a wait.

A wait was displayed as the raw session id it is stored as. The id is what
makes a cycle walkable; it is not something a reader can act on, so the
listing resolves it back to an address and shows an unresolvable one as
recorded rather than hiding it.

The accounting caught the plugin's own cost. The first run spent 20
receiver turns to catch 3 problems, and the transcripts said why: once the
work was done the sessions kept going — "Noted, thanks." / "Anytime — good
luck." / "Perfect — I'm here." — until loop control dropped a duplicate.
One sentence in peer_send's description telling models not to send
acknowledgements took the same scenario to 7 delivered, 0 dropped, and the
same 3 catches: 65% less traffic, no loss of value. In the re-run a model
declines a courtesy reply in its own words, on screen.

Guidance that a live run proves load-bearing is now under test
(tests/tool-guidance.test.ts) — a description is exactly what an edit trims
without noticing.

367 tests. Stale demo screenshots removed; the media set is this run.
@happyren
happyren merged commit 25f9936 into master Aug 15, 2026
1 check passed
@happyren
happyren deleted the feat/live-scenario-readme branch August 15, 2026 10:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant