Skip to content

fix(mobile): Dynamic Island status no longer wraps next to other Live Activities - #23327

Merged
t3dotgg merged 1 commit into
mainfrom
t3/takeover-pr-23035
Oct 22, 2026
Merged

t3dotgg merged 1 commit into
mainfrom
t3/takeover-pr-23035

Conversation

@t3dotgg

@t3dotgg t3dotgg commented Oct 22, 2026

Copy link
Copy Markdown
Member

When another Live Activity shares the Dynamic Island, the T3 status text wraps inside its narrow slot. Done breaks into Don / e, and 3 active wraps across two lines.

Fixes #15682. Takes over #23035 by @onlydole, rebased onto current main with their commit and authorship kept.

Fix

  • While agents run, the compact slot shows the count as bold black digits in a 28 pt circle with the phase tint. It caps at 99+. The accessibility label keeps the full count, for example 123 active agents.
  • Input, Approval, Done, Failed, and Out of date stay on one line with lineLimit(1) and scale down when needed.

One file: apps/mobile/src/widgets/AgentActivity.tsx.

Proof

Native captures by @onlydole on an iPhone 18 Pro simulator (iOS 27.0) with a real second Live Activity. The full method, fixtures, and accessibility results are in #23035.

State Before After
Input Before: Input wraps onto two lines After: Input stays on one line
3 active Before: 3 active wraps and truncates After: black 3 inside the phase-colored circle

123 active agents shows 99+:

After: 99+ circle for 123 active agents

vp run check:changed passes on the rebased commit. Not verified: physical device, single-activity layout, Always On and tinted modes, VoiceOver speech, and the Out of date state.

Reviewed with sol-loop: 1 round with GPT-6.1 Sol. Sol verdict: approved.

Original change made by @onlydole with GPT-6.1 Sol in Codex (T3 Code). Takeover by Claude Opus 5.5 in Claude Code (T3 Code).

🤖 Generated with Claude Code

Keep compact status labels on one line and show active counts in a phase-colored circle capped at 99+. Preserve the actual count in the native accessibility label.

Fixes #15682.
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Oct 22, 2026
@macroscopeapp

macroscopeapp Bot commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at c8b809b

Macroscope's review found this PR approvable — This narrowly fixes Dynamic Island compact rendering by replacing wrapping-prone active-count text with a bounded count badge and constraining remaining labels to one line. Runtime impact is limited to the existing mobile Live Activity presentation, with no API, schema, workflow, or infrastructure changes.

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

@coderabbitai

coderabbitai Bot commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Path: .coderabbit.config.ts
  • Review profile: CHILL
  • Plan: Team
  • Run ID: 0576ecd3-dd6d-441d-b3f4-91979b3bf329
📥 Commits

Reviewing files that changed from the base of the PR and between defb7e6 and c8b809b.

📒 Files selected for processing: 1
  • apps/mobile/src/widgets/AgentActivity.tsx

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

📝 Walkthrough

AgentActivity now displays a capped active count in a tinted circle for eligible compact states. Other compact trailing labels remain text and can scale to fit.

Changes: AgentActivity compact status

Layer / File(s) Summary
Compact trailing status display
apps/mobile/src/widgets/AgentActivity.tsx
When there is no attention row, the activity is unfinished, and the environment is not stale, compactTrailing displays the active count, capped at "99+", in a tinted circle. Otherwise, it displays the attention or activity text. Both display paths include accessibility labels and text scaling modifiers.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Bug fix · Severity of issue fixed: Low

Suggested reviewers: fixfon

Merge Risk: ⚪ Minimal · up to c8b80

The compact status uses a count badge and keeps fallback labels on one line. No material user-facing risk is established; the change appears ready for normal checks.

Pre-merge checks: Passed 4
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main mobile Dynamic Island wrapping fix and uses a conventional commit format.
Description check Passed The description explains the problem, implementation, scope, linked issue, screenshots, test results, unverified cases, and agent attribution. It uses different headings from the template but includes…
Linked Issues check Passed Issue #15682 requires the compact trailing status to remain on one line when another Live Activity shares the Dynamic Island. The change adds lineLimit(1) and minimumScaleFactor(0.5) to the text fallb…
Out of Scope Changes check Passed The diff changes only apps/mobile/src/widgets/AgentActivity.tsx. The added count presentation, accessibility label, and text scaling directly support issue #15682's compact AgentActivity status behavi…
Full details: Description check

Explanation

The description explains the problem, implementation, scope, linked issue, screenshots, test results, unverified cases, and agent attribution. It uses different headings from the template but includes the required information.

Full details: Linked Issues check

Explanation

Issue #15682 requires the compact trailing status to remain on one line when another Live Activity shares the Dynamic Island. The change adds lineLimit(1) and minimumScaleFactor(0.5) to the text fallback for Input, Approval, Done, Failed, and Out of date. While agents run, the compact slot uses a fixed 28 pt circle with a one-line count capped visually at 99+. The accessibility label uses agentsLabel and preserves the full count. These changes address the linked issue's coding requirements.

Full details: Out of Scope Changes check

Explanation

The diff changes only apps/mobile/src/widgets/AgentActivity.tsx. The added count presentation, accessibility label, and text scaling directly support issue #15682's compact AgentActivity status behavior. No unrelated product area or unrelated behavior is changed.

✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@t3dotgg
t3dotgg merged commit 96bae54 into main Oct 22, 2026
28 checks passed
@t3dotgg
t3dotgg deleted the t3/takeover-pr-23035 branch October 22, 2026 07:40
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Oct 22, 2026
## What's Changed
* chore(typecheck): typescript is the tsc-rs drop-in, no effect-tsgo patch by @t3dotgg in pingdotgg/t3code#23023
* fix(mobile): Dynamic Island status no longer wraps next to other Live Activities by @t3dotgg in pingdotgg/t3code#23327
* perf(web): streamed reply text no longer re-renders ChatView by @juliusmarminge in pingdotgg/t3code#23117
* perf(web): visit marks during a reply no longer re-render ChatView by @juliusmarminge in pingdotgg/t3code#23124
* fix(server): a Claude agent stops when the server that started it dies by @shivamhwp in pingdotgg/t3code#23389
* fix(server): SSH hosts no longer keep every old 300 MB runtime after desktop updates by @shivamhwp in pingdotgg/t3code#23113
* fix(settings): older clients connect again after idle compaction modes by @juliusmarminge in pingdotgg/t3code#23454
* fix(mobile): unify draft and thread navigation and composer behavior by @juliusmarminge in pingdotgg/t3code#23467
* ci: setup survives npm registry outages by @t3dotgg in pingdotgg/t3code#23582
* feat(web,mobile): messages from other agents fold into one-line rows by @shivamhwp in pingdotgg/t3code#23135


**Full Changelog**: pingdotgg/t3code@v0.1.2-nightly.20261022.3512...v0.1.2-nightly.20261022.3526

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.1.2-nightly.20261022.3526
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: iOS Live Activity compact status text wraps onto two lines when another Live Activity shares the Dynamic Island

2 participants