Phase 1 slice 6b: Route inference updates through the OpenShell adapter
- Dominant language
- TypeScript
- Stars
- 22.5k
- Forks
- 3.1k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 715
Description
Parent Epic: #9802
Read-only predecessor: #9809
## Product scope decision
**Decision:** Accept
**Reason and placement:** Route existing inference updates through NemoClaw's typed, asynchronous OpenShell interface. Keep command construction, timeout handling, verification intent, error mapping, rollback, and ambiguous-write recovery private to the CLI implementation under `src/lib/adapters/openshell/`.
**Accountable maintainer:** @rsliter
**Validation plan:** Use deterministic adapter and consumer tests before merge. Retain the existing `inference-routing`, `openclaw-inference-switch`, and `hermes-inference-switch` live E2E as mutation-delivery evidence.
## Outcome
Valid inference route updates preserve current named-gateway targeting, verification, `--no-verify`, timeout, rollback, and state-publication behavior through one typed adapter contract.
## Acceptance criteria
- A valid update passes the intended gateway, provider, model, timeout, and verification intent to the adapter.
- Successful verification publishes state once.
- Definite command or verification failure follows the current rollback contract and does not publish successful state.
- Timeout or transport loss remains an ambiguous possible remote write. NemoClaw does not retry it automatically.
- Recovery rereads the same named gateway before any later mutation.
- Missing provider, invalid route, authentication, transport, timeout, verification, and schema failures remain distinct typed results when trusted evidence supports the distinction.
- Migrated consumers do not inspect argv, exit status, stdout, or stderr.
## Explicit exclusions
- Read-only route observation from #9809.
- Plugin migration from #9813.
- Generated gRPC transport from #9828.
- New providers, models, API families, verification semantics, retries, or routing behavior.
## Stop conditions
Stop and request a planning update if current CLI evidence cannot support a required distinction, rollback cannot establish the prior state, or a proposed retry cannot prove whether the remote mutation took effect.
Contributor guide
Assessment
This issue has not been assessed yet.