Skip to content

fix(prime): recover completed tool cycles after reconnecting - #521

Merged
rynfar merged 2 commits into
pylonfrom
fix/prime-recovered-transcript-tail
Sep 12, 2026
Merged

rynfar merged 2 commits into
pylonfrom
fix/prime-recovered-transcript-tail

Conversation

@rynfar

@rynfar rynfar commented Sep 12, 2026 •

Copy link
Copy Markdown
Collaborator

A native Prime tool call and its matching result can reach a complete reconnect snapshot before their live events. Pylon rejected this valid completed cycle and failed the turn.

Recover ordered, uniquely matched completed cycles for the same delivered prompt, while retaining exact transcript overlap, connection/proof fences, and the no-queued-input requirement. Reject unmatched or reused calls, wrong names, duplicate results, and extra user messages. Resolve delayed assistant starts and deltas against their exact completion before publishing them, within the existing event bounds. New prompt IDs stream normally. Suppress exact recovered completions so recovery cannot duplicate output or transcript progress.

Validation: the focused regression failed before the fix; all 483 adapter/runtime/event tests pass, scoped lint passes, and the server typecheck passes. The bounded adversarial checkpoint passed after verifying complete delayed assistant event sequences. Fresh real web/mobile acceptance is underway under #114. The original acceptance snapshot was not retained; this regression proves the specific valid schedule, without claiming the failed snapshot's exact shape was recovered.

Model: GPT-6 Codex. Harness: Pylon/Codex API.

@vercel

vercel Bot commented Sep 12, 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 12, 2026 10:13am UTC

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Sep 12, 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 −124 B (−0.9%) 15.1 KiB ✅
Codex Thread snapshot wire 7.2 KiB 7.2 KiB −4 B (−0.1%) 7.3 KiB ✅
Codex Live turn WebSocket wire 6.8 KiB 6.7 KiB −120 B (−1.7%) 7.8 KiB ✅
Codex Live turn WebSocket decoded 58.8 KiB 58.0 KiB −866 B (−1.4%) 66.4 KiB ✅
Codex Live turn messages 9 8 −1 (−11.1%) 21 ✅
Claude Total thread wire 14.1 KiB 14.1 KiB +24 B (+0.2%) 15.1 KiB ✅
Claude Thread snapshot wire 7.2 KiB 7.2 KiB +8 B (+0.1%) 7.3 KiB ✅
Claude Live turn WebSocket wire 6.9 KiB 6.9 KiB +16 B (+0.2%) 7.8 KiB ✅
Claude Live turn WebSocket decoded 59.7 KiB 59.7 KiB 0 B (0.0%) 66.4 KiB ✅
Claude Live turn messages 10 10 0 (0.0%) 21 ✅

Baseline: 5a09b2f · PR result: 4f32510 · 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 4859f95 into pylon Sep 12, 2026
19 checks passed
@rynfar
rynfar deleted the fix/prime-recovered-transcript-tail branch September 12, 2026 10:27

This branch was successfully deployed

1 active deployment
Preview — 4f32510f Deployed Sep 12, 2026 by vercel[bot]
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