Repository navigation
A live five-session run, and the three things it found (v0.10.1) - #20
Merged
Merged
Conversation
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ran the whole storyline in a real
dsh webhost 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-apiwas announced to every peer asready-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:
…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: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.