Repository navigation
frontend: live agent cards, keep the new-run form, explain kinds of work, named nav tabs - #84
Merged
Merged
Conversation
The live Agents page was a six-column table: names, hex addresses and model ids
wrapped mid-word, and the record column showed the prior ("50% pass ...
(0 validated)") while the note under it said no figures are shown until an
agent has validated outcomes.
Each agent is now a card on the registry's grid (3, 2, then 1 across): name,
id and model; ENS name and verdict with the reason when not verified; owner
and receipt-signing key; and only categories with counted outcomes. An agent
with none says "No validated outcomes yet". A test guards that rows with
counted_outcomes 0 never show figures.
Typing a goal, going to another tab and coming back emptied the form. The goal, repository, branch, budget and kind of work are now kept in this browser tab (sessionStorage), keyed on the signed-in address so another account never sees them, and are dropped once the plan is drafted or the form is cleared. "Start again" still fills the form from the earlier plan instead. A stored draft that is malformed, too long or names an unknown kind is ignored.
The kind-of-work chips (Fix failing tests, Fix a bug, Security, Performance, Refactor, Docs) gave no hint of what they meant or what picking one changes. Each kind now has a one-line meaning, shown under the chips for the one picked (and as the chip's tooltip), followed by what the kind changes: the tasks the planner drafts, which agents are suggested (by their record in this category) and which record the result counts toward. The line is the fieldset's accessible description.
Below 1100px shell.css hides .tab-label, which left each primary nav tab as a link with no accessible name. Each tab now carries its label as aria-label and title.
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.
Summary
Four small fixes to the live dashboard, one commit each:
counted_outcomes > 0are shown now; otherwise "No validated outcomes yet".sessionStorage), keyed on the signed-in address, and dropped once the plan is drafted or "Clear the form" is pressed. "Start again" still fills the form from the earlier plan instead. A stored draft that is malformed, too long or names an unknown kind is ignored.planner.pyputs the category in its prompt), which agents are suggested (routing readsagent_posteriorsfor the plan's category) and which record the result counts toward.shell.csshides.tab-label, which left each primary nav tab as a link with no accessible name. Each tab now hasaria-labelandtitle.Type of change
paper— correction, derivation, or new section in the researchdocs— requirements, README, or other prosefeat— new functionalityfix— bug fixcontracts— Soliditychore— dependencies, tooling, CIWhat I verified
npm run lint,npm run format:check,npm run buildandnpm test(526 unit tests) pass on the branch, rebased on66b80a5.npx playwright test --project=live: 118 passed, 2 skipped (the two that need the WASM verifier built).tsc -b).newRunDraft.test.ts(9 cases: restore, per-address keys, cleared when empty or after drafting, private mode, malformed or oversized drafts, unknown kind); e2e for typing, leaving for Agents and coming back, Clear the form, reload, and an empty form after drafting; e2e that the kind hint follows the chip picked and is the group's accessible description; e2e that an agent whose rows all havecounted_outcomes: 0shows no figures.main. They do not touch these files.Checklist
.envfiles, mnemonics)Evidence
Agents page: before / after (same fake data: coder-a has only prior rows, coder-b has 7 and 3 validated outcomes)
Before:

After:

New run: after typing, going to Agents and coming back. Before / after
Before:

After:

Breaking changes / follow-ups
None. Test ids
record-<id>andens-<id>are unchanged; the overview e2e now looks for agent cards instead of table rows.