Extraction v2

Extraction v2 #

Classification: Internal-Only

Design documentation for the Extraction v2 pipeline — the Rust extraction service that runs as the second arm of a live A/B against the current hinoki pipeline, on AP bill only.

Page What it settles
Overview The flow end to end, stage boundaries, what v2 replaces in hinoki and what stays, the cost budget
Stages What each stage does: inputs, outputs, model, cost, failure behaviour
Routing & A/B Router, arm assignment, stickiness, shadow fan-out, kill switch
Measurement Accuracy definitions tied to the extraction_accuracy view, harness usage, dataset provenance

The ops runbook is deliberately not here. It cannot be written honestly until the ops surface exists, and lands alongside it.

These pages describe behaviour and the reasoning behind it, and are kept current as the implementation lands — a design document written once and never touched again is worse than no document.

This is the design as it stands before the code exists, and some of it will not survive contact with the code. Expect adjustments as stages are built and measured: a budget that turns out wrong, a failure mode nobody anticipated, a rule whose value only measurement can set. Where the implementation and these pages disagree, the implementation is right and the page is stale — correct it rather than working around it.

Types, schemas and file layout are deliberately not here. They live in the implementation and in the Linear issues that track it, they change far more often than the design does, and duplicating them here just produces two versions that disagree.

Pages default to Internal-Only. One that describes database structure or customer data is marked Restricted in its own header.