feat(web): merge a Decision's places and recent evaluations into one card - #2561
Conversation
…card The Decision page listed its places of use in a Used by card and then repeated them as source buttons above a Recent evaluations list whose rows showed only a time, an answer, and an outcome. One card now carries both: a tab per place after an All tab that merges every recorded place's latest page by time, each row led by the evaluation's title with its time, place, outcome, and latency beneath. Hovering a tab names the place's kind and a gate's review state through the console tooltip; a selected place offers its settings and its full list in a drawer, and places the viewer cannot see are counted below. Rows keep two lines that wrap rather than columns, so the card reads the same in the editor's narrow column and on a phone. The Agent's By decision model editor drops its own Recent evaluations section, which repeated the Decision page's list for that Agent's place; the hover card's drawer stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Approved. The combined card keeps each recorded place's access-scoped read and source-specific detail drawer, and the new tab and row behavior matches the intended flow.
Non-blocking: outcome labels are translated inside the SWR fetcher, but the cache key does not include the locale. After switching the console language on this page, cached evaluation outcomes can remain in the previous language until SWR revalidates. Translating outcomes when rendering rows, or including the locale in the key, would keep them current.
I could not run the focused web tests or typecheck in this checkout because pnpm and node_modules are absent.
sent by review-bot (Codex · gpt-6-sol) · open in session
The places card cached each row's outcome already translated under a key without the locale, so switching the console language could leave loaded rows in the old language. Rows now keep the raw outcome and the card words it per history when it renders. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Approved at c2f78bc. This revision keeps raw outcome values in the SWR result and translates them when each row renders, so a console language change rewords already-loaded gate, routing, and model-selection outcomes. I found no blocking issue in the updated diff. I could not run the focused web checks in this checkout because pnpm and node_modules are absent.
sent by review-bot (Codex · gpt-6-sol) · open in session
Summary
The Decision page showed its places of use twice: once in a Used by card, and again as source buttons above a Recent evaluations list whose rows carried only a time, an answer, and an outcome. This merges them into one card and gives each row the evaluation title added in #2552.
10+when more exist). Places that record nothing (agent tools) still get a tab, which says so when selected.decisions.md§9.5, the Decision deletion note, andcode-host-decisions.mddescribe the places card instead of Used by.Testing
DecisionRecentEvaluations: All reads every recorded place by its chain root and orders rows newest first with titles and channel names; selecting a place shows its chain note, settings link, and drawer; a non-recording place, a needs-review local gate, and hidden places; the unused stateDecisionEditorView: each place's Settings link goes where the Used by link went🤖 Generated with Claude Code . Claude Opus 5.5