[Bug]: iOS Live Activity compact status text wraps onto two lines when another Live Activity shares the Dynamic Island
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 84/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- ios, typescript
- Lĩnh vực
- mobile
Hướng nghiên cứu
Bắt đầu trong apps/mobile/src/widgets/AgentActivity.tsx tại compactTrailing Text và so sánh các modifier của nó với các text của banner, watch card và row. Tái hiện bằng cách để AgentActivity chia sẻ Dynamic Island với một Live Activity khác, sau đó xác minh rằng các trạng thái đang hoạt động, đã hoàn tất, phê duyệt, nhập liệu và các trạng thái compact khác vẫn nằm trên một dòng và thu nhỏ hoặc sử dụng dạng ngắn hơn phù hợp.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/mobile
Steps to reproduce
- Enable Live Activities in the T3 Code iOS app and start an agent turn so the
AgentActivityLive Activity appears. - Start a Live Activity from any other app (e.g. a podcast/now-playing, timer, or sports activity) so the Dynamic Island shows two activities side by side.
- Look at the T3 pill while the agent is running ("1 active"), then again after it finishes ("Done").
Expected behavior
The compact trailing status stays on one line, e.g. T3 1 active / T3 Done. If space is tight, it should shrink or fall back to a shorter form, not break across lines.
Actual behavior
The compact trailing label wraps onto a second line:
1 activeshows as1aboveact…Donebreaks in the middle of the word, asDonabovee
The T3 pill still has plenty of empty horizontal space, so the label is wrapping inside a narrow trailing slot, not because the pill is full.
Likely cause
apps/mobile/src/widgets/AgentActivity.tsx (main @ 4ee6bfd5), compactTrailing:
compactTrailing: (
<Text modifiers={[font({ weight: "semibold", size: 11 }), foregroundStyle(tint)]}>
{attentionRow
? attentionRow.phase === "waiting_for_approval"
? "Approval"
: "Input"
: activeLabel}
</Text>
),
This is the only status Text in the file without lineLimit(1); the banner, watch card, and row texts all have it. When iOS gives the trailing region a narrow proposed width (as it does when the island is shared), SwiftUI wraps the text instead of truncating it.
Suggested fix
- Add
lineLimit(1)to thecompactTrailingtext, plusminimumScaleFactor(...)orfixedSize()so it shrinks or takes its natural width instead of truncating or wrapping. - Optionally use a terser compact label: the count only (
1) while running, and the existing phase glyph (checkmark / cross) for Done/Failed, matching whatminimalalready does.Approval/Input/Out of datecan hit the same problem.
Impact
Cosmetic issue
Version or commit
T3 Code iOS 2.0.0; code reference main @ 4ee6bfd5
Environment
iPhone 18 Pro Max, iOS 27.2. Reproduced whenever a second app's Live Activity shares the Dynamic Island.
Screenshots
Running — 1 active wraps to 1 / act… (the other app's activity is blurred):

Finished — Done breaks as Don / e:

- Ngôn ngữ chính
- TypeScript
- Star
- 24.8k
- Fork
- 6.4k
- Merge trung bình
- 10 giờ 8 phút
- Pull request đã merge (30 ngày)
- 323
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của pingdotgg/t3code
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: open project shortcutĐang mởbug needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của pingdotgg/t3code
Issue tương tự
-
Sequências em espanhol: «Atualizado em», a aba «Fila» e o valor 'pause' ainda saem em portuguêsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
melgarafael/DeskcommCRM#3104 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
🐛 [Bug] Mobile: on the login and registration pages the footer sits below the visible screenĐang mởbug service: webapp
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Ocelot-Social-Community/Ocelot-Social#10684 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
nicobailon/pi-subagents#2978 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
getsentry/sentry-conventions#732 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
status:in-linear status:team-assigned team:nodes
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
n8n-io/n8n#41548 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày