# Audio classification coordinator
`AudioClassificationCoordinator` restores the durable audio-classification projection, connects callback effects to bounded independent driver lanes, and owns health and shutdown coordination.
## Public API
Projection-owned `FragmentId`, `FragmentStatus`, `OverallState`, `ResumePlan`, and `SpeakerLabelV1` are re-exported; transaction ordering owns the re-exported `TxId`. The coordinator exposes `open`, health-gated `status`, health-gated `resume_plan`, `validate_labels`, `ensure_healthy`, `fault_ambiguous_commitment`, and idempotent `shutdown`; `resume_plan(fragment_id)` returns the current ordered persisted artifacts without provider work. Feature `testkit` re-exports `EngineFuture` and `FragmentEngine` and adds `with_engine`, `inject_errors`, and `startup_replay_count`.
## Semantics
Opening restores Projection and its exact durable cursor, replays callbacks without effects, records replay count for tests, admits the unbounded projection work list, and verifies driver and coordinator health. Live Start admits work; Abort and LabelsCommitted cancel the addressed generation; terminal None effects cancel projected generations. Projection, callback-effect, driver, and reorganization failures permanently fault health and shut down work; reorganization requires reopen. The coordinator accepts an existing Analyzer and constructs no provider. It owns no fold/cache format, resume runner, driver lane, transaction codec, retry, network, daemon, UI, deployment, or adoption behavior.