···7676#### ingestion control
77777878- `GET /ingestion`: get the current ingestion status.
7979- - returns `{ "crawler": bool, "firehose": bool }`.
7979+ - returns `{ "crawler": bool, "firehose": bool, "backfill": bool }`.
8080- `PATCH /ingestion`: enable or disable ingestion components at runtime without restarting.
8181- - body: `{ "crawler"?: bool, "firehose"?: bool }` — only provided fields are updated.
8282- - when disabled, the component pauses at the next idle point and resumes immediately when re-enabled.
8181+ - body: `{ "crawler"?: bool, "firehose"?: bool, "backfill"?: bool }` — only provided fields are updated.
8282+ - when disabled, each component finishes its current task before pausing (e.g. the backfill worker completes any in-flight repo syncs, the firehose finishes processing the current message). they resume immediately when re-enabled.
83838484#### database operations
85858686-- `POST /db/train`: train zstd compression dictionaries for the `repos`, `blocks`, and `events` keyspaces. dictionaries are written to disk; a restart is required to apply them. ingestion is paused for the duration and restored on completion.
8787-- `POST /db/compact`: trigger a full major compaction of all database keyspaces in parallel. ingestion is paused for the duration and restored on completion.
8686+- `POST /db/train`: train zstd compression dictionaries for the `repos`, `blocks`, and `events` keyspaces. dictionaries are written to disk; a restart is required to apply them. the crawler, firehose, and backfill worker are paused for the duration and restored on completion.
8787+- `POST /db/compact`: trigger a full major compaction of all database keyspaces in parallel. the crawler, firehose, and backfill worker are paused for the duration and restored on completion.
88888989#### filter mode
9090