feat(agent-team): cleaner retry-loop display + human-readable task history #59
No reviewers
Labels
No labels
app
bug
ci
compliance
content
dependencies
docs
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
infra
invalid
javascript
needs-triage
python
question
tests
wontfix
No milestone
No project
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set.
Reference: adam/orchestrator#59
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feature/agent-team-dashboard-polish"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Two dashboard-SPA refinements raised after first use of the WebUI (stacked on
feat/agent-team-plan-gate). Frontend-only — no Python / coordinator / ledger / migration change.1. Cleaner retry-loop display (no more "circular arrows")
The pipeline's two real retry loops (
plan⇄reviewrevise,build⇄verifyretry) were drawing a backward edge on top of the forward edge → read as ugly circles. Now:↺chip with a tooltip (“can send work back to …”).task_transitionstimeline (a back-step wheredstappears aftersrc) — and highlighted along that task's path.2. Human-readable Q&A / Review Verdicts / Plan
Replaced the
<pre>{JSON.stringify(...)}</pre>blobs with structured, rendered sections viareact-markdown:{turn, answer}dict shapes.Security
react-markdownis used withoutrehype-raw, so raw HTML embedded in (semi-trusted) agent text is escaped to text, never executed — nodangerouslySetInnerHTML. A test asserts an<img onerror>in findings renders as text (no element). Consistent with the dashboard's existing XSS-safe posture. No new untrusted-input/auth/IaC surface → mandatory/sh-security-reviewdoes not apply.Tests
16 frontend tests pass (Vitest + RTL): loopback default-off / on-when-looped /
loopBackTopopulated; markdown bold rendering; plan phase/step lists; string+dict Q&A; the no-raw-HTML XSS guard. Typecheck +vite buildclean.Notes
feat/agent-team-plan-gate(stacked); it already contains the WebUI makeover files this builds on.sea-haven-claude-plugin/(unrelated to this diff, which is entirelyagent-team/web/); overridden with--no-verifyper operator authorization.web/diston the Mac → rsync to the box (StaticFiles serves the new bundle); no service restart required.