Skip to content

feat: reviewer execution-speed (Codex Fast mode) config, host-surfaced - #8

Merged
windaddict merged 1 commit into
mainfrom
feat/reviewer-speed-config
Aug 9, 2026
Merged

feat: reviewer execution-speed (Codex Fast mode) config, host-surfaced#8
windaddict merged 1 commit into
mainfrom
feat/reviewer-speed-config

Conversation

@windaddict

Copy link
Copy Markdown
Owner

Impasse already lets you set the reviewer model and reasoning effort; this adds the third independent Codex control — service tier / Fast mode ("execution speed") — mirroring the effort pattern exactly.

What

  • --speed {standard,fast} per run, IMPASSE_CODEX_SPEED env, set-speed to persist. Precedence: per-run > env > persisted > default standard (Fast OFF).
  • Codex-only (the claude backend reports speed: null; set_default_speed refuses a non-null claude write) and independent of effort (high effort + fast is valid).
  • build_codex_argv adds -c service_tier="fast" -c features.fast_mode=true only when fast. The value is allowlisted at every entry (argparse choices, set-speed, persisted read, review() per-run/env guard, and build_codex_argv itself) so no value can smuggle codex -c config syntax. Fast trades ~1.5× serving for higher credit cost.
  • Rides the run-result metadata alongside model/effort.

Host-surfaced (the key requirement)

Users drive Impasse through the host, not the raw CLI. SKILL.md now generalizes the interactive model-picker guidance to model + effort + speed (AskUserQuestion), documents the natural-language mapping (per-run request → flag; "always …" → set-* to persist), and states the precedence + codex-only rule. Mirrored in README and docs/backends/codex.md, with a doc-consistency test asserting the docs match the CLI surface.

Verification

  • ~23 new tests (argv flags on/off, precedence, invalid-env structured failure, set-speed persist/clear/reject, codex-only handling, injection guard, metadata) + the doc-consistency test. Three gates green.
  • Dogfooded through Impasse — ran live with --speed fast --effort high; result metadata confirmed speed=fast reaching the real Codex backend. Two review findings fixed (the clean set-speed --backend claude exit is here; the mixed-case report footer is in the report: show renders "Nothing needed you" for runs the operator actually decided #5 PR).

Reference: codex-openai-options-summary.md (the Codex model/effort/speed options this implements).

🤖 Generated with Claude Code

…faced

Impasse already lets you set the reviewer model and reasoning effort;
this adds the third independent Codex control — service tier / Fast mode
("execution speed") — mirroring the effort pattern exactly.

- `--speed {standard,fast}` per run, `IMPASSE_CODEX_SPEED` env, `set-speed`
  to persist. Precedence: per-run > env > persisted > default `standard`
  (Fast OFF). Codex-only (the claude backend reports speed null and
  set_default_speed refuses a non-null claude write); independent of effort.
- build_codex_argv adds `-c service_tier="fast" -c features.fast_mode=true`
  only when fast. The value is allowlisted at every entry (argparse choices,
  set-speed, persisted read, review() per-run/env guard, and build_codex_argv
  itself) so no value can smuggle codex `-c` config syntax. Fast trades
  ~1.5x serving speed for higher credit cost.
- Rides the run-result metadata alongside model/effort.

Host-surfaced (users drive Impasse THROUGH the host, not the raw CLI):
SKILL.md generalizes the interactive model-picker guidance to model +
effort + speed (AskUserQuestion), documents the natural-language mapping
(per-run request -> flag; "always ..." -> set-*), and states the
precedence + codex-only rule. Mirrored in README and docs/backends/codex.md,
with a doc-consistency test asserting the docs match the CLI surface.

Dogfooded through Impasse (ran live with --speed fast --effort high;
result metadata confirmed speed=fast reaching the real Codex backend); two
review findings fixed (mixed-case report footer belongs to #5; a clean
`set-speed --backend claude` exit here).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X8XaW2bqgYnp7oRVgfHXid
@windaddict
windaddict merged commit 13d7848 into main Aug 9, 2026
2 checks passed
@windaddict
windaddict deleted the feat/reviewer-speed-config branch August 9, 2026 18:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant