Skip to content

fix(mobile): closed PR numbers match their red icon in the thread list - #29327

Merged
juliusmarminge merged 2 commits into
pingdotgg:mainfrom
tris203:fix/mobile-closed-pr-number-color
Nov 14, 2026
Merged

juliusmarminge merged 2 commits into
pingdotgg:mainfrom
tris203:fix/mobile-closed-pr-number-color

Conversation

@tris203

@tris203 tris203 commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Problem

In the mobile thread list, a thread with a single closed PR shows a red closed icon next to a grey number. Open, merged, and multiple-closed badges colour both the icon and the number, so the single closed case looks inconsistent.

Change

PR_STATE_TEXT_CLASS.closed now uses the same rose tone as the closed icon. That made the separate rose branch for multiple closed PRs redundant, so it is removed. Draft and pending badges stay muted.

Scope and approval

A one-line colour fix for an obvious inconsistency in an existing badge on mobile only. Web/desktop are unchanged.

Verification

Before After
before after

Claude Opus 5.5 via Claude Code in T3 Code.

🤖 Generated with Claude Code

@github-actions github-actions Bot added vouch:trusted Author is trusted by repo permissions or the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Nov 2, 2026
@macroscopeapp

macroscopeapp Bot commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 31e2b06

Macroscope's review found this PR approvable — Closed PR numbers in the mobile thread list now match their existing rose-colored icons. The change is limited to text styling; draft and pending badges retain their muted appearance.

You can add or adjust custom eligibility rules. Learn more.

@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

Closed pull requests now use an adaptive rose text class in direct presentations. Linked presentations use the mapped state text class for non-null states that are not drafts.

Changes: Pull-request state text

Layer / File(s) Summary
Map closed and linked states to text classes
apps/mobile/src/state/thread-pr-presentation.ts
The closed state uses text-adaptive-rose-600-400. Linked presentations use PR_STATE_TEXT_CLASS[state] for non-null states that are not drafts.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Bug fix

Suggested reviewers: juliusmarminge

Merge Risk: Minimal · up to cecbd

Closed pull request numbers in the mobile thread list now use the same red as their icon. This is a low-risk visual change, and drafts and pending states keep their muted color.

Pre-merge checks: Passed 4

Check name Status Explanation
Title check Passed The title names the main change: closed PR numbers in the mobile thread list now match the red closed icon. It is a conventional-commit title that is specific and accurate to the diff, which changes t…
Description check Passed The description follows the template. It has Problem, Change, Scope, and Verification sections. The problem and change are clear and specific. Scope explains that this is a one-line colour fix for an …
Linked Issues check Passed The only directly linked issue, #29110, is closed and completed. Per the assessment rules, it supplies background only, and no active directly linked targets remain. No linked-issue coding requirement…
Out of Scope Changes check Passed The whole-PR diff touches one file. It changes PR_STATE_TEXT_CLASS.closed from text-foreground-muted to text-adaptive-rose-600-400. It also removes the isMultiple && state === "closed" branch …
Full details: Title check

Explanation

The title names the main change: closed PR numbers in the mobile thread list now match the red closed icon. It is a conventional-commit title that is specific and accurate to the diff, which changes the closed-state text color and removes the redundant multiple-closed branch.

Full details: Description check

Explanation

The description follows the template. It has Problem, Change, Scope, and Verification sections. The problem and change are clear and specific. Scope explains that this is a one-line colour fix for an obvious inconsistency and that it is mobile-only, but it does not link an issue or state a maintainer request. Verification gives concrete emulator steps, data, and results, and it states that iOS was not checked. The before/after screenshots are included. The template's last line asks for the model and harness, and the description includes this. The missing issue link is a minor gap because the template allows a stated reason for no issue on small obvious fixes, and the author gave one.

Full details: Linked Issues check

Explanation

The only directly linked issue, #29110, is closed and completed. Per the assessment rules, it supplies background only, and no active directly linked targets remain. No linked-issue coding requirements apply to this pull request. The whole-PR diff (merge base to reviewed head) changes only apps/mobile/src/state/thread-pr-presentation.ts, which is the mobile PR badge colour mapping.

Full details: Out of Scope Changes check

Explanation

The whole-PR diff touches one file. It changes PR_STATE_TEXT_CLASS.closed from text-foreground-muted to text-adaptive-rose-600-400. It also removes the isMultiple && state === "closed" branch in presentThreadLinkedPullRequests, because the base mapping now supplies the same rose class. Draft and null states keep text-foreground-muted. Each change matches the current PR description, which states a mobile-only closed-badge colour fix. No server, desktop, or web changes are present. The closed linked issue #29110 concerns server performance and is not required here, so its absence is not a scope failure.

Finishing Touches

Generate unit tests (beta)

  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 31e2b06 and cecbd48.

Files selected for processing: 1

  • apps/mobile/src/state/thread-pr-presentation.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.

@juliusmarminge juliusmarminge added the takeover:in-progress A takeover lead is working on this PR label Nov 14, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@juliusmarminge

Copy link
Copy Markdown
Member

Evidence

Create a fresh project and thread, link exactly one closed, unmerged PR #36670 through the server command used by the UI, pair the Android client, and open Chats. Both captures use the same Pixel 9, Android API 36, portrait 1080×2424, light theme, and identical synthetic seed data. Base: rose icon (#EC003F), grey number (#6F6F79). Head: icon and number both #EC003F.

Before After
Before: rose closed icon beside grey number After: closed icon and number both rose
8a45c51d8b cecbd48c34

Seed script · Mobile driver

Not shown:

  • Dark theme and iOS were not captured; this proof covers the reported Android single-closed badge in light theme.
  • The multiple-closed comparison and open, merged, draft, and pending badges were not re-checked; captures focus on the single-closed mismatch.

@juliusmarminge juliusmarminge added takeover:ready Takeover done; auto-lands when gates pass and removed takeover:in-progress A takeover lead is working on this PR labels Nov 14, 2026
@juliusmarminge
juliusmarminge merged commit dafd053 into pingdotgg:main Nov 14, 2026
50 checks passed
@juliusmarminge juliusmarminge removed the takeover:ready Takeover done; auto-lands when gates pass label Nov 14, 2026
@tris203
tris203 deleted the fix/mobile-closed-pr-number-color branch November 14, 2026 12:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 0-9 changed lines (additions + deletions). vouch:trusted Author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants