fabro/lib/apps/fabro-cli/tests/it
Bryan Helmkamp 325fe0c4bb
Fix the twin-mode hook and arc e2e tests
The four hook tests and arc_e2e_with_real_llm in workflow/hooks.rs failed
in twin mode for three reasons, all in the test fixtures.

The hooked workflows were written as `<name>.toml` beside `<name>.fabro`.
Version packaging accepts a config only as `workflow.toml` beside its
graph (44dccfa3d), so `fabro run` failed at collection. Each hooked
workflow now lives in its own `<name>/` directory as `workflow.toml`.

The isolated server never learned the twin's base URL. The CLI command
carried `OPENAI_BASE_URL`, but the run executes in the server, which does
not see the test process environment, so it called the real OpenAI API
with the namespace as its key. The twin-mode server settings now repoint
the `openai` provider at the twin through the operator `[llm]` overlay,
the same way `run_uses_vault_credentials_for_worker_execution` does.

With the server reaching the twin, the hook scenarios were consumed by
the wrong request: the server asks the model for a run title in the same
namespace before the hook fires, and the scenarios had no matcher. The
block test then saw the twin's default response and the hook failed open,
so the run succeeded. Hook scenarios now match on the `Hook prompt:`
prefix of the evaluator's user message.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-14 09:41:05 -06:00
..
cmd Drop redundant create tests and reuse the production client in fixtures 2026-09-13 09:16:31 -06:00
scenario Fix CLI RunIntent producer CI failures 2026-09-01 16:14:34 -04:00
support Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
workflow Fix the twin-mode hook and arc e2e tests 2026-09-14 09:41:05 -06:00
main.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00