Skip to content

Dashboard UI polish (heading, Title Case, named strategies, row clarity)#143

Merged
junaidtitan merged 1 commit into
mainfrom
feat/prune-metrics-dashboard
Jun 18, 2026
Merged

Dashboard UI polish (heading, Title Case, named strategies, row clarity)#143
junaidtitan merged 1 commit into
mainfrom
feat/prune-metrics-dashboard

Conversation

@junaidtitan

Copy link
Copy Markdown
Contributor

Follow-up to #141. Heading -> 'Cozempic Dashboard'; distinguishes the Lifetime band vs Recorded-Prunes section; Title Case + named strategies; regenerate hint in footer. 1745 tests passing.

…ection clarity

- Heading is now 'Cozempic Dashboard'.
- Distinguish the two top sections: 'Lifetime — All Time' band (from
  ~/.cozempic_savings.json, all-time) vs 'Recorded Prunes' (from receipts, per-prune),
  with an explanatory note so the rows are no longer ambiguous.
- Title Case throughout; strategy / tier / agent slugs render as readable names
  (tool-output-trim -> Tool Output Trim, claude -> Claude).
- Footer shows how to regenerate (cozempic dashboard) — a static HTML file can't
  run a command itself, so this is the honest equivalent of a regenerate link.

1745 tests passing; ledger/receipts untouched.
Copilot AI review requested due to automatic review settings June 18, 2026 05:23
@junaidtitan
junaidtitan merged commit 57d54b9 into main Jun 18, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Polishes the static dashboard HTML (D3/D4) by updating the page title/heading, clarifying the distinction between lifetime totals vs receipt-backed “Recorded Prunes”, and rendering strategy/tier/agent labels in a Title Case display form.

Changes:

  • Add a _pretty_label() helper and apply it to strategy/tier bars and agent labels/pills.
  • Refresh lifetime band wording/structure (“Lifetime — All Time”) and add a Recorded-Prunes explainer note.
  • Update dashboard title/heading/footer copy and adjust tests to match the new rendered strings.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
src/cozempic/dashboard/render.py Updates dashboard copy/structure and introduces Title Case rendering for slugs/agent names.
tests/test_dashboard_render.py Updates renderer expectations for Title Case labels and updated headings.
tests/test_dashboard_lifetime.py Updates lifetime band string assertions to match new wording.
tests/test_codex_inherit.py Updates HTML assertions to match Title Case agent rendering (but leaves one isolation assertion case-sensitive).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 112 to +114
html = render_dashboard(base, generated_ts="now")
self.assertIn("codex", html)
self.assertIn("claude", html)
self.assertIn("Codex", html) # agent name rendered Title Case
self.assertIn("Claude", html)
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.

2 participants