"""Page 3: Agent Performance — "Who's contributing what?" Slim version v2 per Cory feedback (2026-04-03): - Hero: total merged, rejection rate, claims/week — 3 numbers - Table: agent, merged, rejection rate, last active, inbox depth — 5 columns - One chart: weekly contributions by agent (stacked bar) - No CI scores, no yield (redundant with rejection rate), no top issue (too granular) Fetches /api/agents-dashboard + /api/agent-state, merges client-side. """ from datetime import datetime from shared_ui import render_page def render_agents_page(contributors_principal: list, contributors_agent: list, now: datetime) -> str: """Render the slim Agent Performance page.""" body = """
Loading...
Agent Breakdown (30d)
Agent Merged Rejection Rate Last Active Inbox
Loading...

Claims Merged per Week by Agent

Agent Scorecard (Structured Reviews)
Loading...
Latest Session Digests
Loading...
""" scripts = """""" return render_page( title="Agent Performance", subtitle="Who's contributing what?", active_path="/agents", body_html=body, scripts=scripts, timestamp=now.strftime("%Y-%m-%d %H:%M UTC"), )