restore-explicit-claude

Restore explicit Claude and Codex execution adapters

Metadata

Statusabandoned
Created2026-07-26T07:31:05.102458273+00:00
Failure reasonReplaced by a Codex-first restoration task; the auto-generated Claude-leading slug was misleading even though the description covered both adapters.

Description

Objective

Replace the over-broad Pi-only executor policy with a Pi-first policy. Pi remains the default and owns its provider/model/auth plane, but users may explicitly select the existing native Claude CLI and Codex CLI runtimes as executors.

Requirements

  • Re-enable explicit handler-first claude:<model> and codex:<model> routes through the existing Claude/Codex adapters for supported worker/task dispatch. Restore chat selection too where the existing handler is production-safe; otherwise preserve Pi chat as the default and document the precise remaining chat blocker.
  • Keep pi:<provider>:<model> as the default/recommended path and preserve the current Pi Codex profile.
  • Never introduce implicit cross-executor fallback. A selected Pi, Claude, or Codex route must fail within that execution system unless the user explicitly configures a same-system fallback.
  • Do not revive WG-owned provider catalogs, endpoint/auth ownership, or model-family guessing. Claude/Codex CLIs own their authentication and accept their explicit native model IDs as opaque adapter input.
  • Restore consistent advanced profile/task/config surfaces for direct Claude and Codex, exact execution identity/provenance, streaming, usage accounting, retry, evaluation, and session behavior. Remove contradictory output where executor discovery advertises adapters that central validation refuses.
  • Preserve fail-closed behavior for missing/unselected routes and all Pi-only migrations.

Validation

  • Failing regression tests first demonstrate that explicit codex:* and claude:* routes are currently rejected despite installed adapters.
  • Explicit Codex worker dispatch reaches the Codex adapter; explicit Claude worker dispatch reaches the Claude adapter.
  • Supported chat routing is covered for both adapters, or an explicit tested Pi-only chat boundary is documented with a follow-up task.
  • Pi remains the fresh/default profile and pi:* behavior is unchanged.
  • No implicit fallback crosses Pi/Claude/Codex execution systems.
  • Fake-CLI integration tests validate invocation, stream translation, usage/provenance, and failure propagation without external credentials.
  • User-facing profile/config/help output is internally consistent.
  • cargo fmt --check, cargo clippy, focused tests, and a permanent smoke scenario pass.

Depends on

Required by

Log