Skip to content

feat(mobile): show a thread's pair on a phone and keep executors out of its lists - #660

Merged
rynfar merged 4 commits into
pylonfrom
feat/pair-mobile-status
Sep 18, 2026
Merged

rynfar merged 4 commits into
pylonfrom
feat/pair-mobile-status

Conversation

@rynfar

@rynfar rynfar commented Sep 18, 2026 •

Copy link
Copy Markdown
Collaborator

What

The mobile app now shows a thread's pair, and keeps executors out of its thread lists.

  • A paired thread shows a notice above the composer: "Paired with · ", the executor's own line of activity when it has one (a plan step while running, the error when failed), and Open executor, which pushes the executor's thread. It renders nothing while the pair is off, so an unpaired thread looks exactly as before.
  • The home list and the navigation sidebar no longer list pair executors. They are reached from their lead.
  • The phase wording ("Waiting for a brief", "Working", "Needs your approval", …) moved from the web Pair control into client-runtime/state/pair.ts, with pairStatusLine, so web and phone say the same thing.

Turning a pair on or off from the phone is not in this change.

Verification

  • vp test run on packages/client-runtime/src/state, apps/mobile/src/features and the web Pair control tests: 1345 passed. Four tests were written first and seen failing: the shared wording, the status line, and the notice's content, accessibility label and empty rendering.
  • Typecheck @t3tools/client-runtime, @t3tools/mobile, @t3tools/web: 0 errors. Format and vp run knip:check clean; no new lint warnings.
  • Not run on a simulator or a device.

How it was built

Through pair mode on a real install: Claude lead, Antigravity executor, one shared worktree, three test files protected (checked 3, changed []). One executor turn, no corrections.

Part of #622.

Model: Claude Fable 5.1 (lead) with an Antigravity executor, paired in Pylon via the Claude Code harness.


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

@vercel

vercel Bot commented Sep 18, 2026

Copy link
Copy Markdown

Deployment failed for project pylon-marketing with the following error:

Resource is limited - try again in 24 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/pylon-code?upgradeToPro=build-rate-limit

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Sep 18, 2026
@github-actions

github-actions Bot commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.9 KiB 14.0 KiB +14 B (+0.1%) 15.1 KiB ✅
Codex Thread snapshot wire 7.2 KiB 7.2 KiB +2 B (+0.0%) 7.3 KiB ✅
Codex Live turn WebSocket wire 6.7 KiB 6.7 KiB +12 B (+0.2%) 7.8 KiB ✅
Codex Live turn WebSocket decoded 58.0 KiB 58.0 KiB 0 B (0.0%) 66.4 KiB ✅
Codex Live turn messages 9 9 0 (0.0%) 21 ✅
Claude Total thread wire 13.9 KiB 14.0 KiB +14 B (+0.1%) 15.1 KiB ✅
Claude Thread snapshot wire 7.2 KiB 7.2 KiB −2 B (−0.0%) 7.3 KiB ✅
Claude Live turn WebSocket wire 6.7 KiB 6.7 KiB +16 B (+0.2%) 7.8 KiB ✅
Claude Live turn WebSocket decoded 58.9 KiB 58.9 KiB 0 B (0.0%) 66.4 KiB ✅
Claude Live turn messages 9 9 0 (0.0%) 21 ✅

Baseline: 404c4a3 · PR result: 6dc8163 · 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: 115.7 KiB
  • Claude decoded thread snapshot: 116.4 KiB

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

@rynfar
rynfar force-pushed the feat/pair-mobile-status branch 2 times, most recently from 29d39aa to 1b8697a Compare September 18, 2026 22:46
@rynfar
rynfar force-pushed the feat/pair-mobile-status branch from 1b8697a to 6dc8163 Compare September 18, 2026 22:55
@rynfar

rynfar commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator Author

Merging with the Vercel preview check red: build-rate-limit (#655), from a run that started before #662 taught Vercel to skip builds that do not touch the marketing site. Every code check is green.

@rynfar
rynfar merged commit a3bb71b into pylon Sep 18, 2026
18 of 19 checks passed
@rynfar
rynfar deleted the feat/pair-mobile-status branch September 18, 2026 23:10
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.

1 participant