Skip to content

feat(pair): let Codex lead a pair - #644

Merged
rynfar merged 2 commits into
pylonfrom
feat/pair-codex-lead
Sep 18, 2026
Merged

rynfar merged 2 commits into
pylonfrom
feat/pair-codex-lead

Conversation

@rynfar

@rynfar rynfar commented Sep 18, 2026 •

Copy link
Copy Markdown
Collaborator

What

Codex can lead a pair again. #638 refused it because a paired Codex lead handed work to its own subagents every time. #642 found and fixed the cause: Pylon's instructions were not reaching Codex at all, so the lead had never been told about the executor or the pair tools.

  • isPairLeadSupported on the server and in client-runtime refuses only Antigravity again, so pair_start and the composer's Pair control both accept a Codex thread.
  • The internals and user docs say what is true now: for Codex the protocol is the only control, because its collaboration.* tools cannot be removed.

Evidence

Isolated server, fresh Codex thread (codex-cli 0.153.4, GPT-6-Astra) paired with a Claude executor, on a build with #640 and #642, task "brief your executor to create a file, wait, verify":

Verification

  • vp test run on the pair and delegation toolkits, client-runtime pair state, the web Pair control tests and RuntimeInstructions.test.ts, on this branch rebased over test(pair): advance the clock by the whole await cap #643: 193 passed. The two lead-support tests were changed first and seen failing.
  • Typecheck t3 and @t3tools/client-runtime: 0 errors. Format clean.

Known limits

  • One clean run, not a rate. A Codex lead can still choose its own subagents, since nothing prevents it; if that shows up in use, the refusal is two lines to restore.
  • Prime Agent, Cursor and OpenCode leads are allowed and still not run end to end.

Part of #622.

Model: Claude Fable 5.1, 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

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
pylon-marketing Ready Ready Preview Sep 18, 2026 6:01pm UTC

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

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 14.0 KiB 13.9 KiB −28 B (−0.2%) 15.1 KiB ✅
Codex Thread snapshot wire 7.2 KiB 7.2 KiB −12 B (−0.2%) 7.3 KiB ✅
Codex Live turn WebSocket wire 6.7 KiB 6.7 KiB −16 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 +39 B (+0.3%) 15.1 KiB ✅
Claude Thread snapshot wire 7.2 KiB 7.2 KiB +3 B (+0.0%) 7.3 KiB ✅
Claude Live turn WebSocket wire 6.7 KiB 6.8 KiB +36 B (+0.5%) 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: 463be37 · PR result: 5b6bd14 · 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.6 KiB
  • Claude decoded thread snapshot: 116.3 KiB

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

@rynfar
rynfar merged commit f2a9637 into pylon Sep 18, 2026
19 checks passed
@rynfar
rynfar deleted the feat/pair-codex-lead branch September 18, 2026 19:49

This branch was successfully deployed

1 active deployment
Preview — 5b6bd14b Deployed Sep 18, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 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