Repository navigation
perf(provider): guide safe read-only shell batching (#28589) - #29979
Closed
MattRiddell wants to merge 13 commits into
Closed
MattRiddell wants to merge 13 commits into
MattRiddell wants to merge 13 commits into
Conversation
Ports gfsaaser24/t3code PRs 77, 78, 79, 80 (all merged in that fork) onto our fork of pingdotgg/t3code. Upstream pingdotgg#4125 was closed; the fork port is restructured so orchestrator v2 cannot kill it. - provider/openrouter/: self-contained transport module (env ownership, base-URL normalization, live catalog fetch with fallback list). - Drivers/OpenRouterDriver.ts: the V1 driver registration, the only part that retires at the v2 cutover. - ClaudeAdapter.ts is NOT modified; driver identity is re-stamped by a decorator so the churn-heavy file stays merge-clean against upstream. - Web: OpenRouter icon, picker option, settings form, contracts. - PR 78: translate the provider on startSession input. - PR 79: disable Claude Code tool search for OpenRouter sessions. - PR 80: live settings on status checks, API key in the secret store. The fork's turbo-only files were deliberately excluded: .t3-turbo/, SEAM.md, scripts/turbo-customization-manifest.test.ts, and the release.yml TURBO_RELEASE_BRANCH plumbing. Our fork keeps OpenRouter on main so the daily upstream merge has one branch to maintain. Board pingdotgg#7907. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…-sync # Conflicts: # apps/server/src/provider/builtInDrivers.ts # apps/web/src/components/chat/providerIconUtils.ts # apps/web/src/components/settings/providerDriverMeta.ts # apps/web/src/lib/contextWindow.ts # apps/web/src/session-logic.ts # packages/contracts/src/model.ts # packages/contracts/src/settings.ts
Upstream removed makeStaticProviderMaintenanceResolver and moved makeManagedServerProvider from a resolved `maintenanceCapabilities` value to a `resolveMaintenance` thunk. OpenRouterDriver still called the deleted helper, so importing builtInDrivers threw at module load and ProviderRegistry.test.ts failed. OpenRouter runs on the Claude Agent CLI and never owns an install, so its capabilities are constant. Use the same manual-only constant that GrokDriver uses and hand it to resolveMaintenance. Board pingdotgg#9630.
Carry the persisted turn into provider recovery and reconcile it against live OpenCode status before changing lifecycle state. Cover provider exits and idle, busy, and unknown resume states. Board: pingdotgg#11564
fix(server): settle stale turns when OpenCode resumes
MattRiddell
marked this pull request as ready for review
November 3, 2026 06:37
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Internal change: Shared provider instructions only; no visible UI or live install
Problem and change
Separate shell tool calls for already-known independent reads add provider shell starts. Shared runtime instructions now prefer one shell call for those reads, while keeping dependent commands, mutations, approvals and different permissions separate. The guidance preserves command output identity and individual failure reporting. It does not automatically coalesce tool calls or change provider execution.
Board #28589; Matt q6206:1 assigned isolated MattRiddell/t3code source work. Live T3 state, service changes and deployment remain outside this lane's authorization.
Validation
Passive 60-second BEFORE census: 97.6 starts/s; running/ready lanes 22 to 21, mean 21.5; 4.539 starts/s/lane; system+irq+softirq 3.0292%. Raw JSON is attached to #28589 (53993), #19810 (53996) and #24236 (53999), SHA256 8adcc75691f671b7d62470e65e07601b45bc06c6746f21f184cfae662867e0a2. The baseline already meets the absolute target before this change; no reduction is proven.
POST-DEPLOY OWED: controller deploys the accepted source revision; owning lane repeats the passive 60-second census with endpoint lane counts, normalized starts/s/lane and the retained absolute under150 target. Post the result on #28589, #24236 and #19810. These tickets remain open until the required evidence exists.
Rollback: controller reverts this commit and deploys the reverted source revision through the normal T3 delivery process. No lane install or service restart.
Model: GPT-6.1 Sol. Harness: Codex through T3 Code.
Ticket: #28589