Skip to content

test(provider-pi): cover continuation offers through the driver - #17407

Merged
juliusmarminge merged 1 commit into
mainfrom
t3/pi-continuation-driver-test
Oct 9, 2026
Merged

juliusmarminge merged 1 commit into
mainfrom
t3/pi-continuation-driver-test

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Oct 9, 2026 •

Copy link
Copy Markdown
Member

CodeRabbit flagged this on #17381 after it merged. That PR moved Pi's continuation tests from PiAdapterV2Driver.create to calling makePiAdapterV2 directly. As a result, if the driver stopped forwarding ProviderContinuationRequests, those tests would still pass.

This sends the continuation cases back through PiAdapterV2Driver.create, with the continuation queue provided as a service the way production does it. Tests that don't need continuations keep calling the factory directly.

Verification: all 98 Pi tests pass. I also removed the driver's continuationRequests forwarding as a check, and 14 continuation tests failed. Without this change, those same 14 would still pass.

Done by Claude Opus 5.5 in Claude Code.

🤖 Generated with Claude Code


Devin Review

#17381 moved the continuation tests onto makePiAdapterV2 directly, so a
driver that stopped forwarding ProviderContinuationRequests would no
longer fail them. They go through PiAdapterV2Driver.create again.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@github-actions github-actions Bot added the vouch:trusted Author is trusted by repo permissions or the VOUCHED list. label Oct 9, 2026
@juliusmarminge juliusmarminge added the macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews label Oct 9, 2026
@github-actions github-actions Bot added the size:S 10-29 changed lines (additions + deletions). label Oct 9, 2026
@macroscopeapp

macroscopeapp Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 2c3630a

Macroscope's review found this PR approvable — The PR is confined to ignored, test-only changes that exercise continuation offers through the provider driver without modifying production behavior or product defaults. No security, billing, schema, deployment, or static-analysis suppression changes are involved.

Notes:

  • No code objects were reviewed. Approvability was decided on eligibility alone.

You can add or adjust custom eligibility rules. Learn more.

@github-actions

github-actions Bot commented Oct 9, 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 4.9 KiB 5.0 KiB +23 B (+0.5%) 6.8 KiB ✅
Codex Thread snapshot wire 3.8 KiB 3.8 KiB 0 B (0.0%) 4.9 KiB ✅
Codex Live turn WebSocket wire 1.2 KiB 1.2 KiB +23 B (+1.9%) 2.0 KiB ✅
Codex Live turn WebSocket decoded 20.8 KiB 20.9 KiB +41 B (+0.2%) 29.3 KiB ✅
Codex Live turn messages 1 2 +1 (+100.0%) 8 ✅
Claude Total thread wire 5.0 KiB 5.0 KiB +24 B (+0.5%) 6.8 KiB ✅
Claude Thread snapshot wire 3.8 KiB 3.8 KiB 0 B (0.0%) 4.9 KiB ✅
Claude Live turn WebSocket wire 1.2 KiB 1.2 KiB +24 B (+2.0%) 2.0 KiB ✅
Claude Live turn WebSocket decoded 21.2 KiB 21.2 KiB +41 B (+0.2%) 29.3 KiB ✅
Claude Live turn messages 1 2 +1 (+100.0%) 8 ✅

Baseline: 563645c · PR result: 2c3630a · 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: 108.5 KiB
  • Claude decoded thread snapshot: 108.8 KiB

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

@coderabbitai

coderabbitai Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Path: .coderabbit.config.ts
  • Review profile: CHILL
  • Plan: Team
  • Run ID: 4f7dd96b-ef65-4780-958b-787f731a394a
📥 Commits

Reviewing files that changed from the base of the PR and between 563645c and 2c3630a.

📒 Files selected for processing (1)
  • packages/provider-pi/src/server/adapter.test.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

The test adapter helper now uses PiAdapterV2Driver.create when continuation requests are supplied. Without continuation requests, it continues to use makePiAdapterV2.

Changes

Pi adapter test setup

Layer / File(s) Summary
Conditional adapter construction
packages/provider-pi/src/server/adapter.test.ts
The helper creates the adapter through the v2 driver when continuation requests are supplied, with a spawner, an empty HostProcessEnvironment, and a continuation service whose take effect is Effect.never. Other calls still use makePiAdapterV2.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 2c363

The changed tests exercise continuation forwarding through the driver; no merge-blocking risk was identified in the reviewed change.

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main change: testing continuation offers through the provider driver.
Description check Passed The description explains the problem, the change, and focused verification results. It identifies the related issue and explains why the driver path must be tested. Although it does not use the templa…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@juliusmarminge
juliusmarminge merged commit cb46c62 into main Oct 9, 2026
32 of 33 checks passed
@juliusmarminge
juliusmarminge deleted the t3/pi-continuation-driver-test branch October 9, 2026 06:07
adampeterhiggins added a commit to adampeterhiggins/t3code that referenced this pull request Oct 9, 2026
* fix(web): link pull requests to threads in folders that aren't Git repos (pingdotgg#15946)

Co-authored-by: PR Batch Tester <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* feat(web): find messages and plans in the current thread (pingdotgg#10439)

Co-authored-by: Yash Singh <[email protected]>
Co-authored-by: Julius Marminge <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* feat(web): improve terminal scrollback navigation and snapshots (pingdotgg#17091)

* docs(internals): add a checklist for adding a provider (pingdotgg#17229)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(mobile): keep native screens ordered during stack pops (pingdotgg#17231)

* fix(server): pairing tokens work on Node versions that cannot bind booleans (pingdotgg#16730)

* fix(mobile): HTML pages in a thread no longer trap scrolling on Android (pingdotgg#17211)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(web): centered scrollers no longer shift when the scrollbar appears (pingdotgg#17077)

Co-authored-by: maria-rcks <[email protected]>

* fix(web): distinguish thread search matches from code tints (pingdotgg#17263)

* fix(server): Pi extension wakes get an owned continuation turn (pingdotgg#17214)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(server): Pi discovers optional T3 tools on demand (pingdotgg#17220)

* fix(web): stack merge dialog closes as soon as you confirm (pingdotgg#17116)

* fix(server): Pi editor dialogs prefill the answer composer (pingdotgg#17206)

* fix(desktop): generate valid User-Agent that follows RFC 9110 guidelines (pingdotgg#17264)

* fix(server): Pi discovers workspace skills and commands (pingdotgg#17190)

* fix(mobile): preserve navigation after native swipe back (pingdotgg#17268)

* fix(server): keep newly discovered models out of legacy groups (pingdotgg#14314)

Co-authored-by: PR Batch Tester <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* feat(editors): open remote projects in JetBrains IDEs over SSH (pingdotgg#17271)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* test(desktop): expect JetBrains IDEs among remote editors (pingdotgg#17291)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(server): recognize authenticated GitHub Enterprise hosts (pingdotgg#11059)

Co-authored-by: Claude Code <[email protected]>
Co-authored-by: Julius Marminge <[email protected]>

* fix(connect): relay client updates itself and skips incompatible cloudflared (pingdotgg#17275)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(shared): relay client install waits out a brief Windows file lock (pingdotgg#16998)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(shared): release relay install locks on cancellation (pingdotgg#10585)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* chore(shared): bump managed cloudflared to 2026.10.0 (pingdotgg#11184)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(shared): bound cloudflared download with 10-minute timeout (pingdotgg#14139)

Co-authored-by: Kevin Rajan <[email protected]>

* refactor(provider-core): add provider-core and provider-testing packages (pingdotgg#17299)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(settings): drop the legacy per-driver providers map (pingdotgg#17300)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-pi): move Pi into its own provider package (pingdotgg#17302)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* feat(models): tell users when a CLI update unlocks a new model (pingdotgg#17307)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(web): collapsed composer reserves room for wide send actions (pingdotgg#17016)

* fix(muse): workflow subagents no longer stall on hidden approvals (pingdotgg#17329)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-core): share attachment prompts, notifications, and event loggers (pingdotgg#17330)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(web): file previews handle downloads, in-page links, and repo paths, and favicons stop leaking internal hosts (pingdotgg#16950)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(server): environment-hosted browser tabs behave like a normal browser (pingdotgg#16963)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(desktop): browser tab fixes for fullscreen, shortcuts, links, reload and hidden tabs (pingdotgg#16961)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(web): desktop opens remote environments' browser tabs locally (pingdotgg#17316)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(desktop): the t3 command warns instead of installing behind another t3 (pingdotgg#17351)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(web): images, video, HTML and PDF preview in a thread before its first message (pingdotgg#17352)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-muse): move Muse Code into its own provider package (pingdotgg#17331)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(web): semantic branch naming hint lines up with its setting (pingdotgg#16972)

* fix(mobile): restore chat image previews in the v5 stack (pingdotgg#17361)

* feat(mobile): fade working threads and match web's status labels (pingdotgg#17368)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(server): agent browser tools stop bloating history, fall back sensibly, and respect ownership (pingdotgg#16956)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* fix(web): add room for thread timeline markers (pingdotgg#17372)

* fix(web): drop sidebar context before cancelling pointer drag (pingdotgg#17373)

* refactor(providers): namespace-import service modules in core, Muse, Pi, and testing (pingdotgg#17375)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(auth): show connection permissions and enforce session lifetime (pingdotgg#17370)

Co-authored-by: Bear Huddleston <[email protected]>

* refactor(provider-opencode): move OpenCode into its own provider package (pingdotgg#17345)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-cursor): move Cursor into its own provider package (pingdotgg#17349)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-acp): move the shared ACP adapter into its own package (pingdotgg#17354)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* refactor(provider-grok): move Grok into its own provider package (pingdotgg#17357)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(server): speed up long thread message sync (pingdotgg#17387)

* fix(desktop): cancel backend pipe reads to avoid slow shutdown (pingdotgg#17386)

* refactor(providers): adapter factories yield their services (pingdotgg#17381)

* fix(web): show a row spinner instead of a banner when expanding a folder (pingdotgg#17378)

* fix(server): a timed-out browser drag no longer exits the server (pingdotgg#17360)

Co-authored-by: Claude Opus 5.5 <[email protected]>

* fix(server): a logged-out Claude CLI no longer reports as authenticated (pingdotgg#15459)

* fix(server): Pi loads every selected skill without losing prompt text (pingdotgg#17194)

* fix(server): keep the Claude MCP token out of process arguments (pingdotgg#17408)

* fix(server): reconcile Pi native session rewinds (pingdotgg#13839)

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>

* test(provider-pi): cover continuation offers through the driver (pingdotgg#17407)

* refactor(provider-acp-registry): move the ACP Registry into its own package (pingdotgg#17405)

* fix(server): relay client updates no longer drop the host off T3 Connect (pingdotgg#17366)

Co-authored-by: Claude Opus 5.5 <[email protected]>

---------

Co-authored-by: shivam <[email protected]>
Co-authored-by: PR Batch Tester <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
Co-authored-by: Jono Kemball <[email protected]>
Co-authored-by: Yash Singh <[email protected]>
Co-authored-by: Julius Marminge <[email protected]>
Co-authored-by: Wout Stiens <[email protected]>
Co-authored-by: Julius Marminge <[email protected]>
Co-authored-by: chise <[email protected]>
Co-authored-by: Dara Adedeji <[email protected]>
Co-authored-by: maria <[email protected]>
Co-authored-by: maria-rcks <[email protected]>
Co-authored-by: oliver <[email protected]>
Co-authored-by: jztmanyl <[email protected]>
Co-authored-by: Bilal Bakr <[email protected]>
Co-authored-by: Grzegorz Mandziak <[email protected]>
Co-authored-by: Scott Norteman <[email protected]>
Co-authored-by: Aditya Garud <[email protected]>
Co-authored-by: Aaron Queen <[email protected]>
Co-authored-by: Kevin Rajan <[email protected]>
Co-authored-by: Kevin Rajan <[email protected]>
Co-authored-by: Theo Browne <[email protected]>
Co-authored-by: Daniel Alvim <[email protected]>
Co-authored-by: Bear Huddleston <[email protected]>
Co-authored-by: Yordis Prieto <[email protected]>
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Oct 9, 2026
## What's Changed
* fix(server): keep the Claude MCP token out of process arguments by @juliusmarminge in pingdotgg/t3code#17408
* fix(server): reconcile Pi native session rewinds by @StiensWout in pingdotgg/t3code#13839
* test(provider-pi): cover continuation offers through the driver by @juliusmarminge in pingdotgg/t3code#17407
* refactor(provider-acp-registry): move the ACP Registry into its own package by @juliusmarminge in pingdotgg/t3code#17405
* fix(server): relay client updates no longer drop the host off T3 Connect by @t3dotgg in pingdotgg/t3code#17366
* fix(connect): Cloudflare and other VPN addresses no longer show as Tailscale by @shivamhwp in pingdotgg/t3code#17158


**Full Changelog**: pingdotgg/t3code@v0.0.46-nightly.20261009.2861...v0.0.46-nightly.20261009.2873

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.0.46-nightly.20261009.2873
github-actions Bot added a commit to davidvanderklay/t3code-flake that referenced this pull request Oct 9, 2026
## What's Changed
* fix(server): keep the Claude MCP token out of process arguments by @juliusmarminge in pingdotgg/t3code#17408
* fix(server): reconcile Pi native session rewinds by @StiensWout in pingdotgg/t3code#13839
* test(provider-pi): cover continuation offers through the driver by @juliusmarminge in pingdotgg/t3code#17407
* refactor(provider-acp-registry): move the ACP Registry into its own package by @juliusmarminge in pingdotgg/t3code#17405
* fix(server): relay client updates no longer drop the host off T3 Connect by @t3dotgg in pingdotgg/t3code#17366
* fix(connect): Cloudflare and other VPN addresses no longer show as Tailscale by @shivamhwp in pingdotgg/t3code#17158


**Full Changelog**: pingdotgg/t3code@v0.0.46-nightly.20261009.2861...v0.0.46-nightly.20261009.2873

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.0.46-nightly.20261009.2873
incognitojam pushed a commit to incognitojam/styal that referenced this pull request Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews size:S 10-29 changed lines (additions + deletions). vouch:trusted 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