Skip to content

feat(website): seed /agent with real proof, and surface list_cases - #175

Merged
devlint merged 1 commit into
mainfrom
feat/agent-jury-pass
Aug 28, 2026
Merged

feat(website): seed /agent with real proof, and surface list_cases#175
devlint merged 1 commit into
mainfrom
feat/agent-jury-pass

Conversation

@devlint

@devlint devlint commented Aug 28, 2026

Copy link
Copy Markdown
Owner

A second agent pass over the live /agent page produced five UX notes. Four landed. One is refused, and the reasoning is recorded below because it will come up again before the deadline.

Real proof on arrival

The page opened on an empty room, so anyone with three minutes read a description of the thing instead of the thing.

It now seeds one case per outcome:

  • pnpm-lock.yaml settled end to end, nothing left for a person
  • src/server.ts split into one settled hunk and one waiting on a decision
  • a detached-HEAD failure, explained

All three run through the same engine calls an agent makes. All three are labelled example on the case and in the activity log, and Clear removes them. The first case now sits at 444px on a 720px viewport, measured; the previous build put it at 840.

list_cases, made visible

It was the strongest thing in the last change and appeared only as a row in a spec table. The room now shows its literal output beside the state it describes, and refreshes it when a decision lands: "waiting on hunk 2" before, "merged file available" after. That is the loop closing on screen instead of asserted in prose.

Copy

The hero was three lines of prose where it needed to be scannable. The parse_git_error blurb ended on a sentence fragment ("Fourteen of the failures you actually hit."). list_cases now says what it is for rather than what it does.

That fragment was supposed to have been fixed in the previous PR. It was not: the edit script printed a success line without asserting the replacement, str.replace found nothing, and the change was reported as done. Every substitution in this change asserts.

Refused

A hero badge reading "MCP live · official registry · stdio · no API key." That describes @gitwand/mcp, not this page. There is no stdio here and no API key to not need, and the registry claim is one I could not verify. It would tell a judge they are looking at the other product.

A "Live proof" section of three hardcoded cards asserting "1 conflict, 0 human decisions". Hand-written HTML claiming a result is not proof. On a page whose whole argument is that it shows its work, a judge who clicks an inert card discounts everything else. The seeded cases are that idea made true: same three outcomes, real engine, clickable.

"Input left, result right" for the file-a-case panel. The room is the result surface. A second results pane would rebuild exactly the two-things-competing problem the previous PR removed.

Also

Fixes an honesty gap introduced in this same session: the seeded git error was not carrying the example flag, so two cases announced themselves as examples and the third passed for real work.

Verification

  • 2247 tests green across all five workspaces, 41 on this surface, including two new ones asserting that a seeded case is flagged and an ordinary call is not.
  • Driven in a browser against the built site: three cases seeded and all three flagged, the agent view opening and refreshing across a decision, the merged file assembling with no markers left in it.

A second agent pass over the live page. Four of its five points landed,
one is refused on the grounds that acting on it would make the page lie.

The page opened on an empty room, so a judge with three minutes read a
description of the thing instead of the thing. It now seeds one case per
outcome on arrival: a lockfile settled end to end with nothing left, a
source conflict split into one settled hunk and one waiting on a person,
and a git failure explained. All three run through the same engine calls
an agent makes, all three are labelled `example` on the case and in the
log, and Clear removes them. The first case now sits above the fold on a
720px viewport, measured, where the previous build put it at 840px.

`list_cases` was the strongest thing in the last change and it appeared
only as a row in a spec table. The room can now show its literal output
beside the state it describes, and refresh it when a decision lands: it
reads "waiting on hunk 2" before, "merged file available" after. That is
the loop closing, on screen, rather than asserted in prose.

Copy: the hero was three lines of prose where it needed to be scannable,
and the parse_git_error blurb ended on a sentence fragment. Both
rewritten. list_cases now says what it is for rather than what it does.

Refused, with the reasoning recorded because it will come up again:

- A hero badge reading "MCP live · official registry · stdio · no API
  key" describes @gitwand/mcp, not this page. There is no stdio here and
  no API key to not need, and the registry claim is one I cannot verify.
  It would tell a judge they are looking at the other product.
- A "Live proof" section of three hardcoded cards asserting "1 conflict,
  0 human decisions". Hand-written HTML claiming a result is not proof,
  and on a page whose whole argument is that it shows its work, a judge
  who clicks an inert card discounts everything else. The seeded cases
  above are that idea made true: same three outcomes, real engine,
  clickable.

Also fixes an honesty gap I introduced an hour earlier: the seeded git
error was not carrying the example flag, so two cases announced
themselves as examples and the third passed for real work.
@devlint
devlint merged commit b163c44 into main Aug 28, 2026
7 checks passed
@devlint
devlint deleted the feat/agent-jury-pass branch August 28, 2026 18:07
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