Expand description
Decision-surface extractor (stage 6 / 6.G): the apex of the review brief.
Public so the schema-emit binary can derive the DecisionSurface types.
Structs§
- Boundary
Anchor - A representative boundary violation used to anchor a coupling/boundary
decision to a file + line. Decoupled from the
fallow_typesfinding type so the extractor unit-tests without constructing full findings. - Coordination
Anchor - A coordination gap projected onto the public-API/contract decision shape: a changed contract consumed by a module outside the diff.
- Decision
- One consequential structural decision, framed as a judgment question for a human with taste, anchored to a fallow-emitted signal.
- Decision
Inputs - All inputs the extractor needs, gathered from the assembled brief data.
- Decision
Surface - The ranked, capped decision surface plus the set of signal_ids the deterministic layer emitted (the anti-hallucination allowlist).
- Truncation
Note - A note for decisions collapsed below the cap.
Enums§
- Decision
Category - The exactly-three shippable decision categories (the SOLID-3). No cut category (abstraction / deletion / convention / irreversibility) is representable: this enum is the structural guarantee that confirmed-noise categories never ship.
Constants§
- DEFAULT_
DECISION_ CAP - Default decision-surface cap (the working-memory limit). The surface holds at most this many ranked decisions; the rest collapse into a truncation note.
- MAX_
DECISION_ CAP - Upper bound on the configurable cap (4 plus 1).
- MIN_
DECISION_ CAP - Lower bound on the configurable cap (4 minus 1).
Functions§
- build_
decision_ surface_ output - Project a
DecisionSurfaceinto the separable, action-bearing envelope. - derive_
signal_ id - Derive a deterministic, content-addressed
signal_idfrom a category tag plus the fallow-emitted candidate key. The tag namespaces the key so a boundary key and a public-API key sharing text never collide. Pure: same inputs always yield the same id (byte-identical across runs). - extract_
decision_ surface - Extract the full decision surface from the assembled brief inputs: classify
the SOLID-3 candidates, anchor each
signal_id, rank by consequence, cap to the working-memory limit, collapse the rest, and drop suppressed decisions.