fabro/lib/crates/fabro-cli/tests/it/scenario
Bryan Helmkamp 48eb5efed6
refactor(archive): consolidate helpers after review
Three cleanups from `/simplify` review:

- Promote `archived_rejection_message` and `ensure_not_archived` to `pub`
  via operations/mod.rs and reuse them from `resume`, the CLI rewind
  caller, and the server's `reject_if_archived` guard so the canonical
  error string lives in exactly one place.
- Tighten `RewindInput.current_status` from `Option<RunStatus>` to
  `RunStatus`. The runtime check for None was enforcing a compile-time
  invariant. CLI callers already load the projection and now surface a
  clean error up-front if it's missing. Drop the None-branch test that
  existed only to cover the removed runtime check.
- Collapse `archive_run` / `unarchive_run` HTTP handlers into a shared
  `run_archive_action` body with an `ArchiveAction` enum, mirroring the
  CLI pattern. Removes ~20 lines of copy-paste and unifies error-mapping.

Also drop narrative comments that referenced plan unit numbers in the
scenario tests, and clean up the convoluted `ps_runs` helper pattern
that built an empty-slot arg vec before filling it in.

No behavior change. Full workspace: 4185 tests pass, clippy clean.
2026-04-19 18:14:16 -04:00
..
archive.rs refactor(archive): consolidate helpers after review 2026-04-19 18:14:16 -04:00
artifacts.rs refactor(storage): unify scratch paths and key schema 2026-04-06 10:13:37 -04:00
exec.rs ci: switch clippy to pinned nightly, clean up workspace lints 2026-04-16 18:59:11 -04:00
lifecycle.rs fix(tests): isolate CLI integration tests from repo project config 2026-04-15 11:18:19 -04:00
mod.rs test(cli): add end-to-end archive lifecycle scenario 2026-04-19 17:42:43 -04:00
recovery.rs refactor(async): lint std::process::Command across all targets 2026-04-12 13:35:57 -04:00
server_lifecycle.rs feat(cli): show Web UI URL and auth methods in server start output 2026-04-16 07:21:55 -04:00
smoke.rs feat(runs): canonicalize paginated run list responses 2026-04-19 10:37:31 -04:00