Skip to content

fix(chat): smooth worktree setup and keep live activity visible - #239

Merged
rynfar merged 3 commits into
pylonfrom
upstream/2026-09-01-live-activity
Sep 2, 2026
Merged

fix(chat): smooth worktree setup and keep live activity visible#239
rynfar merged 3 commits into
pylonfrom
upstream/2026-09-01-live-activity

Conversation

@rynfar

@rynfar rynfar commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator

Third PR of the 9b2d04317..b883fc066 batch. Three upstream commits, hand-merged — worktree setup no longer shows a jumping "Working for 0s", agent activity stays visible between actions, and a finished command stays live until the next one starts.

  • #8922 smooth worktree setup status
  • #8984 keep agent activity visible between actions
  • #9098 keep the latest command live between messages

Skipping a commit upstream reverted

#9062 landed this behaviour and upstream reverted it 8 minutes later in #9096; #9098 is the corrected re-land. Both #9062 and its revert are skipped — only #9098 is here. The delta shows the original bug: it reused the stable LIVE_ACTIVITY_ROW_ID even when the group was not live, so the indicator vanished once a command finished.

Pylon features kept

#8922 and #9098 both rewrite the working-indicator row that carries Pylon's workingStepLabel — the same field that was silently stripped once before and restored in #221. Upstream's version of that JSX has no equivalent and would have dropped it again.

Resolved by taking upstream's structure (they remove an outer wrapper) and keeping Pylon's step-label span inside it. workingStepLabel 8 refs, activeTurnInProgress 6, reportedCostLabel 3 — all unchanged. ChatView keeps both its own props and upstream's new isPreparingWorktree; session-logic keeps Pylon's three skip conditions alongside upstream's isWorktreeSetupActivity guard.

Three test corrections, and one I got wrong

  • #8922 pins the working row to h-6 so the label swap cannot change row height. Pylon's assertion predated it — updated rather than loosened.
  • #8984 replaced the working row's showThinking flag with a separate thinking row. My keep-both merge left a stale assertion on a property that no longer exists.
  • #9098 gives the Thinking row a brain glyph and tightens its padding to px-0.5, so the test named "aligns the iconless Thinking row" was asserting a premise that no longer holds. Renamed, and it now asserts the actual alignment contract: the size-6 icon box matching the working row's h-6.

I also briefly added a lucide-x assertion to a test whose entire point is that the icon stays neutral on a trailing failure. The suite caught it immediately and it is reverted — the failure path is still covered at three other sites via tool call failed.

Verification

@t3tools/web typecheck clean, lint 0 errors, 642 tests passing. Zero T3 Code in any added line.

Reviewed and integrated with Claude Opus 5 in Claude Code.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

juliusmarminge and others added 3 commits September 1, 2026 17:56
(cherry picked from commit ef84bc9873a6c4565fbeb64dce3f552570e95a2d)
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
(cherry picked from commit 9ecfc07a8b3acadd1612665b6e24425f625480de)
Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
(cherry picked from commit 590a579f2e9292ce314c69e459e19620004578fe)
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Sep 2, 2026
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.8 KiB 13.6 KiB −203 B (−1.4%) 15.1 KiB
Codex Thread snapshot wire 6.9 KiB 6.9 KiB −4 B (−0.1%) 7.3 KiB
Codex Live turn WebSocket wire 6.8 KiB 6.6 KiB −199 B (−2.9%) 7.8 KiB
Codex Live turn WebSocket decoded 58.7 KiB 57.2 KiB −1.5 KiB (−2.5%) 66.4 KiB
Codex Live turn messages 11 10 −1 (−9.1%) 21
Claude Total thread wire 13.8 KiB 13.6 KiB −171 B (−1.2%) 15.1 KiB
Claude Thread snapshot wire 6.9 KiB 6.9 KiB +2 B (+0.0%) 7.3 KiB
Claude Live turn WebSocket wire 6.8 KiB 6.6 KiB −173 B (−2.5%) 7.8 KiB
Claude Live turn WebSocket decoded 59.5 KiB 58.1 KiB −1.5 KiB (−2.5%) 66.4 KiB
Claude Live turn messages 11 10 −1 (−9.1%) 21

Baseline: 03defac · PR result: f41b667 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 109.5 KiB
  • Claude decoded thread snapshot: 110.2 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@rynfar
rynfar merged commit d4444c3 into pylon Sep 2, 2026
18 checks passed
@rynfar
rynfar deleted the upstream/2026-09-01-live-activity branch September 2, 2026 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 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.

3 participants