fabro/lib/crates/fabro-cli/tests
Bryan Helmkamp e2f884df23 Fix resume command bugs, remove --ssh flag, simplify EventEmitter
Fix three bugs from PR review in the new `fabro resume` command:

1. RunArgs.workflow lost its required constraint when --run-branch was
   removed — add #[arg(required = true)] so clap enforces it.

2. run_resumed ignored --preserve-sandbox (hardcoded false),
   --verbose (no ProgressUI), and --ssh (no listener). Wire
   preserve_sandbox through resolve_preserve_sandbox, create a
   ProgressUI registered on the emitter, and handle SSH access.

3. prepare_from_checkpoint unconditionally created a LocalSandbox,
   ignoring --sandbox. Add the same sandbox resolution logic used by
   prepare_from_branch (Local, Docker, Ssh, Exe, Daytona).

Remove --ssh from `fabro run` and `fabro resume` since `fabro ssh`
is the dedicated command now. Remove the flag from RunArgs, ResumeArgs,
RunSpec, and all docs/changelogs.

Simplify EventEmitter: change on_event to take &self (via
Mutex<Vec<Arc<...>>>) instead of &mut self, removing the need for
the late_listeners workaround. emit() snapshots the listener list
before dispatching to prevent deadlocks from reentrant emit calls.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 13:07:58 -04:00
..
cmd Add node-level model validation + missing catalog aliases (#110) 2026-03-19 22:48:08 -04:00
cli.rs Fix resume command bugs, remove --ssh flag, simplify EventEmitter 2026-03-21 13:07:58 -04:00
scenario.rs Add fabro secret CLI subcommands for managing ~/.fabro/.env 2026-03-18 18:02:38 -04:00
trycmd.rs Rename init to repo init with backwards-compat shim 2026-03-18 17:41:49 -04:00