Metadata
| Status | abandoned |
|---|---|
| Created | 2026-07-26T07:31:05.102458273+00:00 |
| Failure reason | Replaced 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>andcodex:<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:*andclaude:*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
- 2026-07-26T07:31:05.089800733+00:00 Task paused
- 2026-07-26T07:31:10.387969196+00:00 Task published
- 2026-07-26T07:57:29.652494087+00:00 Task abandoned: Replaced by a Codex-first restoration task; the auto-generated Claude-leading slug was misleading even though the description covered both adapters.