Skip to content

fix(server): select an available provider for delegated tasks - #11154

Closed
kiiwee wants to merge 443 commits into
pingdotgg:t3code/codex-turn-mappingfrom
kiiwee:fix/v2-delegation-provider-selection
Closed

kiiwee wants to merge 443 commits into
pingdotgg:t3code/codex-turn-mappingfrom
kiiwee:fix/v2-delegation-provider-selection

Conversation

@kiiwee

@kiiwee kiiwee commented Sep 11, 2026

Copy link
Copy Markdown

A driver-only delegation could fail on an unavailable inherited provider instance even when another instance of that driver was healthy. Prefer the inherited instance only when it passes the existing availability checks, then fall back to a healthy instance. Explicit instance selection remains strict.

The regression failed before the fix. All 5 MCP service tests pass afterward, covering healthy inheritance, unavailable-account fallback, and explicit-account rejection. Targeted type-aware lint, type checking, and formatting pass for both changed files.

Targets Orchestrator V2 in #2829.

Engineering: Grok 4.6 through Grok Build CLI; review, small test-fixture refinements, and verification: Codex through the Codex harness.

@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Sep 11, 2026
@macroscopeapp

macroscopeapp Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 8d8eb20

Macroscope's review found this PR approvable — This is a small, self-contained fix to delegated-provider selection, backed by tests for inheritance, fallback, and explicit selection. It does not alter schemas, product defaults, deployment behavior, or static-analysis configuration.

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

@juliusmarminge
juliusmarminge force-pushed the t3code/codex-turn-mapping branch 3 times, most recently from 8489fe1 to e03e376 Compare September 11, 2026 23:47
juliusmarminge and others added 23 commits September 12, 2026 00:06
The thread-panel mapping change replaced the compact className on the
Run and Add controls with the isPanel conditional and dropped the
non-panel icon-compact classes that the responsive test asserts.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Ports the deleted v1 ProviderCommandReactor title coverage onto the v2
service: marker arming/clearing via thread.metadata.update, superseded
requestId no-ops, digest-driven regeneration, the "New thread" and
unchanged-title fallbacks, generation failure, and missing initial
messages, plus unit tests for formatThreadTitleContext.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Hoist inline Schema compiles to module scope, drop unused
imports/vars, stabilize react-markdown component identities via a
module-scope factory, remove useless spreads, and use data-derived
keys for release-note bullets. No behavior changes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The codex resume test was the only replay scenario without a
runtimePolicyOverride, so its checkpoint scope cwd fell back to
process.cwd() and baseline capture ran real git over the entire
checkout. Locally the capture short-circuits on checkpoint refs left
behind by earlier runs; on a fresh CI checkout it is a cold multi-second
capture that outlives the scenario wait budget, failing await_thread_idle
while the run is still mid-checkpoint. Point the fixture's turn/start
frames at the <workspace> placeholder and checkpoint a throwaway git
workspace like every other replay test.

Scenario waits are also wall-clock-bounded now: the iteration budget
counts event-loop turns, which burn at full speed while git/fixture IO
is in flight, so exhaustion additionally requires a 60s real-time
deadline to pass.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…r's scope (pingdotgg#5406)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
- Keep the git action control disabled when the branch is up to date
- Omit open PR menu entries and remove their link-opening behavior
- Update logic tests for the new states
…sPinned

Main owns migration numbering: 036_ProjectionThreadsPinned landed on main,
so the v2 migrations shift from 036-044 to 037-045. Release path runs all
of main's migrations first, then the v2 stack.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Port thread pinning (pingdotgg#5312) into the orchestration-v2 command pipeline:
  thread.pin/unpin commands, thread.pinned/unpinned events, pinnedAt on the
  v2 thread state and projected shells, promotion semantics (pin clears
  settle/snooze, settle clears pin) matching the v1 decider, and client
  pin/unpin operations in the v2 dispatch style.
- Port the regenerated-title context anchoring (pingdotgg#5365) into
  ThreadTitleRegenerationService: pin the first user message ahead of the
  retained tail when the digest is truncated.
- Re-apply the right-panel controls positioning from pingdotgg#5260 to the v2
  ChatView title bar controls.
- Repair merge artifacts: committed conflict markers in BranchToolbar,
  duplicate capability keys, duplicate CommandPalette import, v1 turn
  naming in DiffPanel's focus-refresh effect, onSend signature merge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Match progress button spacing and single-line height to static git actions
rerere replayed stale resolutions during the rebase and committed nested
conflict markers in several files. Restore the branch-intended v2 shapes
and re-graft main's compatible additions (pending-card opacity comments,
theme-editor keybinding test, mobile scroll re-arm effects from pingdotgg#5566).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…eysetIndex

Main owns migration numbering: 037_ProjectionTurnsKeysetIndex landed on
main (pingdotgg#5493), so the v2 migrations shift from 037-045 to 038-046.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Native subagent observability (pingdotgg#5219), wired per its spec's v2 merge plan:
- getWorkflowScript RPC re-homed onto the v2 WS surface (contracts, rpc
  group, ws handler, auth scope, client atom).
- AgentsPanel fed by the spec's mapper swap: projectedSubagentsToRuntime
  maps orchestration-v2 subagent entities into the panel model;
  deriveAgentPanelModel's v2Projection leg is now live and the v1 fold
  never runs. Agents surface wired into ChatView + RightPanelTabs.
Other ports and reconciliations:
- Shell reconnect-loop fix (pingdotgg#5561) ported into the v2 shell sync
  (same-session resubscribes resume from the in-memory cursor), with the
  cursor-resume regression test adapted to v2 fixtures.
- Mobile end-follow latch (pingdotgg#5566) ported onto the v2 ThreadFeed.
- Claude ede_diagnostic interrupt classification (pingdotgg#5557) ported into
  ClaudeAdapterV2 (aborted_tools/aborted_streaming => interrupted; CLI
  telemetry never becomes the failure banner). pingdotgg#5559 needs no v2 port
  (unknown system subtypes are already ignored).
- Plan sidebar removed from the v2 ChatView/ChatComposer per main's
  plans-fold-into-chat rework (pingdotgg#5558); rightPanelStore stays at main's
  surface set.
- SettingsPanels rebuilt as main's refactored version plus the branch's
  composer-context setting; sidebar snooze respects the time format
  (pingdotgg#4438 follow-through).
- v1-only leftovers deleted: zombie v1 adapters/ingestion/tests the v2
  rewrite removes, the v1-bound transfer-budget CI harness (pingdotgg#5350, needs
  a v2 rebuild), and main's v1 client pagination machinery (pingdotgg#5493 client
  side; the 037 keyset migration is kept — server-side v2 windowing is a
  follow-up).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The rebase kept the LegendList 3.3.3 upgrade and patch from pingdotgg#5449 and the
mobile end-follow latch from pingdotgg#5566, but the v2 MessagesTimeline/ChatView
still carried the branch's blunt any-gesture-breaks-follow listeners.
Port main's pingdotgg#5566 web mechanics onto the v2 follow architecture:

- resolveTimelineIsAtEnd measures the 40px follow re-arm band from real
  geometry (contentLength/scroll/scrollLength minus the composer inset),
  keeping the isNearEnd fallback for older state shapes.
- Follow now breaks only on gestures that can actually leave the live
  edge: upward wheel with overflowing content, touch drags that exited
  the end band, scrollbar drags vs content clicks, and keyboard
  navigation (PageUp/Home/ArrowUp) — previously keyboard scrolling never
  broke follow and the next stream chunk yanked the view back down.
- Listener attach retries across frames so a thread switch cannot mount
  the list without its opt-out listeners.

Deliberately not ported: pingdotgg#5449's shouldRestorePosition disclosure
anchoring and follow-gated maintainScrollAtEnd — the v2 timeline keeps
maintainScrollAtEnd={false} with its own follow scrolls and anchor
system; flipping that core is a separate change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…gdotgg#5449)

Complete the pingdotgg#5449 architecture on the v2 timeline, following the
LegendList author's direction to lean on the list's native mechanisms
instead of app-side scroll layers:

- maintainScrollAtEnd is enabled and owned by LegendList, gated off only
  while the user reads history (liveFollowEnabled), while a sent turn
  anchors near the top (anchoredEndSpace), or during the two-frame settle
  of a fold toggle.
- maintainVisibleContentPosition compensates size changes natively
  ({data, size, shouldRestorePosition}); fold toggles anchor compensation
  to the toggled row via a disclosure anchor key, so the trigger stays
  under the pointer instead of the viewport chasing the end.
- ChatView's hand-rolled streaming follow (double-rAF scrollToEnd on
  every data change) is gone; the app now only owns streaming
  adjustments during anchored-end-space mode, mirroring main.
- timelineLiveFollowEnabled state mirrors the follow refs so the
  render-visible gate switches native follow off when a gesture breaks
  follow and back on when the viewport returns to the end band.

Timeline tests updated to assert the native-ownership invariants.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Keep success feedback visible in the Git action control for 10 seconds
- Move the running elapsed timer into the panel menu slot
…s with v2

Post-rebase reconciliation sweep:
- Sidebar: main's folded Sidebar.tsx/Sidebar.logic.ts adapted to v2 shells
  (latestRun/runtime naming, waiting status instead of monitoring), with
  subagent-thread filtering and main's pinned-reorder helpers re-exported
- Pinned drag reorder (pingdotgg#5581) ported into v2: thread.pin orderKey +
  thread.pin.reorder command, thread.pin-reordered event, Orchestrator fold,
  ProjectionStore/Maintenance, client-runtime commands and shell mapping
- Project favicon (pingdotgg#4849-era) and defaultThreadEnvMode flowed through v2
  contracts (OrchestrationProjectShell, application event payloads)
- ChatView: main's pingdotgg#5592 header props, pull-request right-panel surfaces,
  liveAgentCount badge (pingdotgg#5745) wired into the v2 panel layout
- enableAssistantStreaming -> enableLegacyTokenStreaming rename applied to
  v2 RunExecutionService and replay testkit
- Removed v1 zombies resurrected by the rebase (provider service/reaper/
  ingestion + v1 layer tests, server.test.ts, integration harness)
- routeTree: main's tree + branch's /settings/scheduled-tasks route
- Misc marker-sweep syntax repairs (rpc.ts, entities.ts, localApi.test.ts,
  rightPanelStore.test.ts, GitManager.test.ts, mobile model menu helpers)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… 038-040

Main released ProjectionThreadsPinOrderKey (038),
ProjectionProjectsDefaultThreadEnvMode (039) and
ProjectionProjectFaviconPath (040), so the branch-private v2 stack shifts
up by three. Registry ids were already 41-49; this renames the files and
identifiers to match and updates the ledger expectations and through-id
boundaries in the migration tests (released boundary 37 -> 40).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- a6c9b41 (agents open pasted images): ClaudeAdapterV2 now grants the
  attachments dir alongside cwd via additionalDirectories and appends
  '[Attached ... is saved at: path]' lines to the turn text so tools can
  dereference pasted images (pixels alone are not tool-readable).
- 5bb8c03 (settle leaves monitors running): thread.settle now joins
  archive/delete in the provider-session detach set, so PR monitors, dev
  servers and subagent fleets stop when the user parks the thread. The
  settle guard already rejects active runs, and serialized dispatch closes
  the re-engage race the v1 fix handled with onlyIfSettled.
- e70cdb4 (Claude resume handshakes) and 2c7267a (reaper vs live
  background subagents) are already covered structurally in v2: results
  are turn-scoped with explicit zero-turn handshake drops, and idle
  release is pinned while background work is pending.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…e panel-visibility merge

The keep-both merge nested main's plan-surface migration test inside a
branch popover test and dropped the threadPanelVisibilityByThreadKey key
from the migration results. Restore main's test body and include the
branch's (empty) visibility map in the expected persisted shape.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 15, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 16, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 17, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 18, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 19, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 19, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 19, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
saphid pushed a commit to saphid/t3code that referenced this pull request Sep 19, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
juliusmarminge pushed a commit to saphid/t3code that referenced this pull request Sep 21, 2026
A driver-only delegation target could fail on an unavailable inherited
provider instance even when another instance of that driver was healthy.
Prefer the inherited instance only when it passes the availability checks,
then fall back to a healthy peer. Explicit instance selection remains
strict.

Adapted from the proposal in pingdotgg#11154 onto the
adapter-registry capability lookup.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 0-9 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.

5 participants