fabro/lib/apps/fabro-server/src
Bryan Helmkamp 60b503322c
Delete the legacy run event log, its reducer and its types
Step 4 of the legacy executor deletion, fourth commit: with no writer
and no reader left, the legacy event log goes.

- `fabro-types`: `run_event` (`EventBody`, `RunEvent` and every props
  struct), `EventEnvelope` and the `RunEventDetail*` types are deleted.
  What the projection and the API still use moves out of the event
  vocabulary: `AgentEventProps`, `AgentSessionActivatedProps`,
  `AgentToolsAvailableProps`, `StagePromptProps`, `SessionCapability`
  and the coding event names to `agent_props`; `RunNoticeLevel` and
  `RunNoticeCode` to `notice`; `InterviewOption` beside the question
  types; `RunRunnableSource` beside the run status. `Checkpoint` is
  what Fabro records for a Petri run: `timestamp`, `current_node`,
  `git_commit_sha`; the conclusion's stage summaries derive from the
  projection's stages instead of the checkpoint's node maps.
- `fabro-store`: the Slate bridge (`RunDatabase`, the Slate `Database`,
  `keys`, `record`, `EventPayload`) and the reducer (`run_state`) are
  deleted. `Database` is the blob table and the run summary store over
  one pool; the blob store is SQLite only; the run summary store keeps
  the `runs` row a projector writes and lists, and finds the pull
  request creation candidates over `platform_records`; `build_summary`
  and `projected_usage` live in `run_summary`. The SlateDB dependency
  is gone. Test fixtures build the store from its two SQLite stores.
- `fabro-workflow`: the `event` module (the `Event` enum, its
  conversion, sink, emitter, redaction, stored fields and names),
  `runtime_store`, `StageScope` and the legacy seeding test helpers are
  deleted; the tests that seeded legacy runs read platform records or
  a projection instead.
- `fabro-sandbox` owns `GitRetryReason`.
- The server builds the store without an object store; the legacy
  `POST /runs/{id}/events` tests go, an interrupt answers
  `interrupt_unsupported` in the tests as it does in the handler, and
  the tests that read a run back through the Slate handle read its
  projection or its platform records. The projection folds a block
  that lands while the run is paused as the pause's prior block, and a
  pause or unpause clears the pending control it answers; a control
  request's check-and-append holds a per-run lock so two concurrent
  cancels record one request.
- The CLI's final output is the response of the last stage that
  produced one; the workflow tests read completed nodes from the
  succeeded stages.
- The spec's `RunCheckpoint` carries the three fields the type keeps.

Still failing until the next commits: the CLI tests that seed runs
through `POST /runs/{id}/events` or wait for legacy event names, and
the two Ask Fabro resume tests (the sandbox instance gap).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-18 14:09:17 -04:00
..
auth Keep auth code store naming consistent 2026-08-24 17:26:17 -04:00
demo Serve the run stream as the only run event API 2026-09-18 13:36:00 -04:00
prompts Render the run title prompt with Jinja instead of string replacement 2026-07-27 17:23:16 -04:00
server Delete the legacy run event log, its reducer and its types 2026-09-18 14:09:17 -04:00
worker_control refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
automation_materializer.rs Delete the legacy run event log, its reducer and its types 2026-09-18 14:09:17 -04:00
canonical_host.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
canonical_origin.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
csp.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
diagnostics.rs Read the Daytona scopes fabro needs from the provider's health 2026-09-11 12:36:29 -06:00
error.rs Add the Petri run store endpoints to the API 2026-09-17 20:12:20 -04:00
git_checkout.rs Consolidate server Git subprocess ownership 2026-09-11 17:36:40 -06:00
github_webhooks.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
install.rs Hold Daytona credentials as the SDK's configuration 2026-09-10 16:53:20 -06:00
interp.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
jwt_auth.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
lib.rs Run the server's lifecycle over platform records instead of run_events 2026-09-18 12:32:06 -04:00
manifest_validation.rs Delete fabro-validate and fabro-acp; validate on Petri's check 2026-09-18 11:32:04 -04:00
petri_check.rs Delete fabro-validate and fabro-acp; validate on Petri's check 2026-09-18 11:32:04 -04:00
petri_runs.rs Run the server's lifecycle over platform records instead of run_events 2026-09-18 12:32:06 -04:00
principal_middleware.rs Serve the Petri run store to workers 2026-09-17 20:12:20 -04:00
request_id.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_compiler.rs Delete fabro-validate and fabro-acp; validate on Petri's check 2026-09-18 11:32:04 -04:00
run_files.rs Remove the engine flag: every run is a Petri run 2026-09-18 09:58:21 -04:00
run_files_security.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_intent.rs Return 404 when a worker's originating run is missing 2026-09-12 10:58:05 -06:00
run_manifest.rs Delete fabro-validate and fabro-acp; validate on Petri's check 2026-09-18 11:32:04 -04:00
run_selector.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_title_generation.rs Import lithos-llm types directly instead of through fabro-types 2026-09-10 10:03:08 -06:00
run_tool_create.rs Carry usage as lithos-llm's Usage and rename billing to usage 2026-09-14 12:31:34 -06:00
security_headers.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
serve.rs Delete the legacy run event log, its reducer and its types 2026-09-18 14:09:17 -04:00
server.rs Delete the legacy run event log, its reducer and its types 2026-09-18 14:09:17 -04:00
server_secrets.rs Expose lithos request and response shapes through the API, server, CLI, and web 2026-09-09 17:26:57 -06:00
spawn_env.rs Forward the Docker daemon selection and Daytona credentials to Petri workers 2026-09-18 09:10:29 -04:00
startup.rs Remove expired startup secret migrations 2026-09-05 14:05:48 -04:00
static_files.rs feat(web): tell open tabs when a new build ships 2026-07-25 14:45:26 -04:00
test_support.rs Delete the legacy run event log, its reducer and its types 2026-09-18 14:09:17 -04:00
web_auth.rs Serve CLI auth sessions from SQLite 2026-07-26 00:00:15 -04:00
worker_runtime.rs Forward the Docker daemon selection and Daytona credentials to Petri workers 2026-09-18 09:10:29 -04:00
worker_token.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00