fabro/lib/apps/fabro-server/tests/it/api
Bryan Helmkamp 34139b1936
Prove the checkpoint hooks and the recovery protocol
In-process tests over the memory store: every finish is committed on the
run branch with its identity trailers and recorded with its commit, the
run-end hooks reach Petri's local service through Fabro's wrapper, a
stage that fails on its own terms is committed and its failure route runs
on the committed files, a failed checkpoint records `checkpoint_failed`
with no route taken and a restart reports the run failed, and a
`[[run.hooks]]` hook blocks an agent's tool call through the forwarded
service, with the model told why.

Real-binary scenarios crash the server and its worker with SIGKILL: after
a durable finish the stage's commit is not repeated and the interrupted
stage reruns on its snapshot; a crash held before the commit reruns the
stage once; a crash held after the commit but before its record
reconciles the record from the snapshot repository; a deleted workspace
is restored; a failure route sees the same committed files after a
crash; a failed checkpoint fails the run and a restart leaves it failed.

Recovery selects the executions `inspect_run` reports incomplete, and a
run whose coordinator log is still empty is left to the worker's resume.
The worker's platform record endpoints get an API test and the generated
TypeScript client.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-18 00:25:10 -04:00
..
auth_sessions.rs Remove stale auth-session test import 2026-08-24 14:40:38 -04:00
automations.rs Align remote workflow selectors with run targets 2026-08-31 17:13:20 -04:00
cli_auth_token.rs Keep retired Slate helpers test-only 2026-08-24 17:31:15 -04:00
compression.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
docs.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
environments.rs Require a server-managed environment for automations 2026-08-30 09:58:13 -04:00
events.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
install.rs Merge origin/main into the sandbox-driver adoption 2026-09-10 13:37:11 -06:00
install_openai_compatible.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
mcp_servers.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
mod.rs Check the HTTP run store against a loopback server 2026-09-17 20:12:20 -04:00
petri_store.rs Prove the checkpoint hooks and the recovery protocol 2026-09-18 00:25:10 -04:00
routing.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_files.rs Add the engine flag and record the engine on the run spec 2026-09-17 20:02:47 -04:00
runs.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
sandbox_vnc.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
sessions.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
settings.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
system.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00
tcp.rs Add the engine flag and record the engine on the run spec 2026-09-17 20:02:47 -04:00
variables.rs Retire legacy manifest run creation 2026-09-13 08:49:50 -06:00