--- title: CTO Case Provider Admission Issues status: draft lifecycle_classification: sot owner: jp created: 2026-05-31 last_reviewed: 2026-05-31 core_promotion_status: not-promoted route: cto --- # CTO Case Provider Admission Issues Local planning SOT only. Not a Core Protocol. Not active Core authority. ## CTO-WORK-013 - Case Provider Admission PRD Status: validated. Register the provider-admission product requirement that separates discovery evidence from executable admission. Acceptance: - Records WorkOS Case source as `https://github.com/workos/case.git`. - Records pinned commit `7959ac917cdeb0983b4aaa20bb9f42021747fed8`. - Records that the CLI binary is `ca`. - Records that `case` on public npm is not WorkOS Case. - Records that Bun and `bun run build:binary` are required for `dist/ca`. - Records that Stage 2 must use `ca run --task `. ## CTO-WORK-014 - Hermes Case CLI Task Adapter Route Status: validated. Implement the smallest Hermes CTO harness change that converts the Stage 2 artificial fixture contract into a Case task file and invokes the admitted Case provider with the correct command shape. Acceptance: - `CTO_HARNESS_CASE_BIN` points to an admitted `ca` executable. - Stage 2 invokes `ca run --task `. - The adapter does not pass a raw prompt as argv. - Missing provider, wrong provider, wrong command shape, or wrong task contract blocks. - The Stage 2 pass report is produced only by real Case execution. - Provider-unavailable fail-closed behavior remains tested. - No Target Repository path is inspected or copied. ## Validation Evidence - 2026-05-31 - Hermes commit: `5d04515 Add Stage 2 Case task adapter contract`. - Adapter writes Case task state for the copied artificial fixture and invokes `ca run --task --mode unattended`. - `validate-case-provider-adapter.py` passed with a local test double for command shape and task contract. - `harness/evals/health.sh --json` passed after merge and includes `case_provider_adapter.passed: true`. - `validate-case-stage2.py` remains blocked without an admitted real Case provider; this is expected and preserves fail-closed behavior.