Skip to content

Add compact Overview layouts - #2616

Open
Zihao-Qi wants to merge 4 commits into
steipete:mainfrom
Zihao-Qi:codex/compact-overview
Open

Add compact Overview layouts#2616
Zihao-Qi wants to merge 4 commits into
steipete:mainfrom
Zihao-Qi:codex/compact-overview

Conversation

@Zihao-Qi

@Zihao-Qi Zihao-Qi commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add four Overview layouts: Detailed, Providers/metrics/bars, Providers/bars, and Bars only
  • preserve provider navigation, variable metric counts, reset markers, pace markers, and live usage refreshes in reduced layouts
  • keep bars-only spacing visually grouped while retaining symmetric row hover geometry
  • provide live VoiceOver summaries for reduced rows
  • localize the new preference and document the Overview layout options

Why

Overview can become very tall when several providers expose multiple usage windows. These layouts let people choose how much detail the combined Overview displays without changing the existing detailed provider views.

Validation

  • make check
  • make test — 812 selections across 68 groups passed with zero failures, retries, or timeouts
  • swift test --filter CompactOverview — 29 tests passed on the final branch
  • swift test --filter ProviderArchitectureGatekeeperTests — 4 tests passed on the final branch
  • manual visual checks across all four layouts

Screenshots

Overview layouts

Providers, metrics & bars Providers & bars Bars only
Providers, metrics and bars Overview layout Providers and bars Overview layout Bars only Overview layout

Preference

Overview layout preference

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. labels Aug 3, 2026
@clawsweeper

clawsweeper Bot commented Aug 3, 2026

Copy link
Copy Markdown

Codex review: needs maintainer review before merge. Reviewed August 12, 2026, 7:04 AM ET / 11:04 UTC.

ClawSweeper review

What this changes

This PR adds four persisted compact layouts for the merged Overview menu, with accessibility support, localization, documentation, and focused tests.

Merge readiness

⚠️ Ready for maintainer review - 4 items remain

Keep open for maintainer product approval and a rebase review: this is a coherent, proof-backed feature, but it adds a durable four-value user preference and GitHub reports the branch as dirty/non-mergeable. Likely related people: Peter Steinberger (medium-confidence current menu/settings history).

Priority: P2
Reviewed head: 1c42622a4e3dd35620f439f6c62564fe18728242
Owner decision: Required. See Decision needed.

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) Strong visual proof and focused coverage support a coherent feature, with product approval and a current-main rebase still required.
Proof confidence 🦞 diamond lobster (5/6) ✨ media proof bonus Sufficient (screenshot): The PR includes after-fix screenshots of all three reduced layouts and the preference, which directly demonstrate this native menu UI change.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Verified Sufficient (screenshot): The PR includes after-fix screenshots of all three reduced layouts and the preference, which directly demonstrate this native menu UI change.
Evidence reviewed 6 items Current main lacks the requested layout surface: Current main's Overview builder creates only detailed OverviewMenuCardRowView rows; the checked-out tree has no compact-layout setting or renderer.
Branch implements the proposed projection: The branch's compact projection keeps provider identity, drawable metric lanes, fallback states, accessibility summaries, and the reviewed Doubao plan-family distinction.
Persistent preference expands the settings contract: The submitted settings enum defines detailed, compact, provider-bars, and bars-only values, and the branch persists a raw layout value with a legacy boolean migration path.
Findings None None.
Security None None.

How this fits together

The merged Overview menu turns enabled providers' usage models into interactive menu rows. The new preference selects how much provider and metric detail those rows display while preserving navigation to each provider.

flowchart LR
    A[Provider usage models] --> B[Merged Overview menu]
    C[Overview layout preference] --> D[Layout selection]
    B --> D
    D --> E[Detailed or compact row projection]
    E --> F[Interactive menu rows]
    F --> G[Provider detail navigation]
Loading

Decision needed

Question Recommendation
Should CodexBar permanently expose and persist these four merged-Overview layout choices as a supported user preference? Approve the persisted layouts: Confirm the four-layout preference is desired, then require a rebase and refreshed validation against current main.

Why: The implementation is coherent, but accepting a new durable settings contract and its UI complexity is a product choice rather than a mechanical correctness decision.

Before merge

  • Resolve merge risk (P1) - GitHub reports this branch as dirty/non-mergeable, so its current-main merge result needs a rebase and refreshed review.
  • Resolve merge risk (P1) - The four persisted layout values become part of the user-settings contract; maintainers should explicitly accept their long-term product shape and upgrade behavior before landing.
  • Complete next step (P2) - A maintainer must decide whether the new persisted Overview-layout contract belongs in the product, then request a rebase because the current branch is dirty.
Agent review details

Security

None.

Review metrics

Metric Value Why it matters
Changed surface 50 files; +2,780 / -115 lines The feature crosses menu rendering, persisted settings, accessibility, localization, documentation, and tests, so a refreshed integration review matters after rebase.

Merge-risk options

Maintainer options:

  1. Approve and refresh the branch (recommended)
    If the persistent layout preference is wanted, have the contributor rebase the dirty branch and rerun the focused settings and menu checks before merge.
  2. Keep one Overview presentation
    Decline or defer the new persisted modes if their long-term settings and support cost is not justified.

Technical review

Best possible solution:

Adopt the feature only if maintainers want a permanent Overview-layout preference, then rebase it onto current main and revalidate the detailed default plus each reduced layout.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this is a new UI capability rather than a report of broken behavior; the supplied screenshots directly show the proposed layouts and preference.

Is this the best way to solve the issue?

Unclear until product approval: the projection and migration are focused, but a durable four-choice preference should be accepted explicitly before it becomes supported behavior.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against a90dfed5c264.

Labels

Label justifications:

  • P2: This is a user-visible Overview usability improvement, not an urgent regression or availability problem.
  • merge-risk: 🚨 compatibility: The PR adds persisted layout values and a legacy-preference migration path that become an upgrade-facing settings contract.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (screenshot): The PR includes after-fix screenshots of all three reduced layouts and the preference, which directly demonstrate this native menu UI change.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR includes after-fix screenshots of all three reduced layouts and the preference, which directly demonstrate this native menu UI change.
  • proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. The PR includes after-fix screenshots of all three reduced layouts and the preference, which directly demonstrate this native menu UI change.

Evidence

What I checked:

Likely related people:

  • Peter Steinberger: Current-main blame on the central Overview and menu-preference surfaces resolves to the current release boundary authored by Peter Steinberger; local history is shallow. (role: recent menu and settings contributor; confidence: medium; commits: 330ae4384b18; files: Sources/CodexBar/StatusItemController+Menu.swift, Sources/CodexBar/SettingsStore+MenuPreferences.swift)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Obtain explicit approval for the permanent four-layout settings contract.
  • Rebase the dirty branch onto current main and rerun the focused compact-overview and settings checks.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (7 earlier review cycles)
  • reviewed 2026-08-03T18:52:00.379Z sha c8fa050 :: needs real behavior proof before merge. :: none
  • reviewed 2026-08-03T19:00:02.318Z sha c8fa050 :: needs real behavior proof before merge. :: none
  • reviewed 2026-08-03T19:17:51.331Z sha c8fa050 :: needs changes before merge. :: [P2] Preserve Doubao plan-family labels in compact rows
  • reviewed 2026-08-03T19:53:52.524Z sha 81f1ed2 :: needs maintainer review before merge. :: none
  • reviewed 2026-08-03T22:38:38.273Z sha 81f1ed2 :: needs maintainer review before merge. :: none
  • reviewed 2026-08-04T04:13:45.132Z sha 1c42622 :: needs maintainer review before merge. :: none
  • reviewed 2026-08-11T07:11:39.477Z sha 1c42622 :: needs maintainer review before merge. :: none

@clawsweeper clawsweeper Bot added the merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. label Aug 3, 2026
@Zihao-Qi
Zihao-Qi marked this pull request as ready for review August 3, 2026 19:04
@clawsweeper clawsweeper Bot added the proof: sufficient Contributor real behavior proof is sufficient. label Aug 3, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c8fa050f48

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

guard metric.statusText == nil else { return nil }
return Lane(
id: metric.id,
title: UsageMenuCardView.popupMetricTitle(provider: model.provider, metric: metric),

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Preserve Doubao plan identity in reduced rows

When a Doubao account exposes both Coding Plan and Agent Plan windows, the plans share titles such as “5-hour”, “Weekly”, and “Monthly”; the detailed renderer explicitly separates them into plan-family groups in UsageMenuCardUsageContentView. Flattening every metric to popupMetricTitle here therefore produces duplicate, indistinguishable labels in the compact layout and in all reduced-layout VoiceOver summaries, so users cannot determine which plan a bar represents. Include the Doubao plan family in the projected title or otherwise preserve that grouping.

Useful? React with 👍 / 👎.

@clawsweeper clawsweeper Bot added proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. P2 Normal priority bug or improvement with limited blast radius. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. and removed rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. labels Aug 3, 2026
@Zihao-Qi
Zihao-Qi force-pushed the codex/compact-overview branch from 81f1ed2 to 1c42622 Compare August 4, 2026 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. P2 Normal priority bug or improvement with limited blast radius. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant