Skip to content

perf(provider): guide safe read-only shell batching (#28589) - #29979

Closed
MattRiddell wants to merge 13 commits into
pingdotgg:mainfrom
MattRiddell:t3code/todo-28589
Closed

MattRiddell wants to merge 13 commits into
pingdotgg:mainfrom
MattRiddell:t3code/todo-28589

Conversation

@MattRiddell

Copy link
Copy Markdown

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

  • Targeted RuntimeInstructions tests: 12 passed, including negative boundaries across six provider harness names.
  • Scoped TypeScript check: exit 0.
  • Vite+ lint: two changed files, exit 0, no parse errors.
  • One-pass lane self-review: no findings, score 9, head d5da70d.

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

MattRiddell and others added 13 commits August 28, 2026 03:34
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
MattRiddell marked this pull request as ready for review November 3, 2026 06:37
@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:XXL 1,000+ changed lines (additions + deletions). labels Nov 3, 2026
@MattRiddell MattRiddell closed this Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL 1,000+ changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant