Documentation
¶
Overview ¶
Package verdict is the replication-gated outcome-eval verdict (SPEC-ADDITIONS §18.2): a pure decision core that layers a trust taxonomy over the cheap strict-`>` gate. A single held-out comparison cannot separate signal from noise, so a change is ELEVATE only when its primary gain is meaningful AND replicates significantly on an independent split; otherwise the verdict refuses to elevate and says why. It performs no I/O and reads no clock — the caller supplies the measured outcomes.
Index ¶
Constants ¶
const DefaultMinEffect = 0.05
DefaultMinEffect is the smallest score delta (on the 0..1 rule-judge scale) that counts as a meaningful effect for ELEVATE — a smaller gain is real but not worth elevating on without more evidence (§18.2).
Variables ¶
This section is empty.
Functions ¶
func ValidateSplits ¶
func ValidateSplits(assignments []SplitAssignment) error
ValidateSplits guards against split leakage (§18.2): a task id assigned to more than one split makes the held-out replication a proxy for the primary rather than an independent check. It returns EINVALID naming the first leaked id. It is pure.
Types ¶
type Outcome ¶
Outcome is one condition's measured result: the score delta (candidate − baseline) and whether a paired significance test found the change significant.
type SplitAssignment ¶
SplitAssignment pairs a task id with the split it was assigned, for the leakage guard.
type Verdict ¶
type Verdict string
Verdict is the replication-gated adoption verdict.
const ( Elevate Verdict = "ELEVATE" Directional Verdict = "DIRECTIONAL-NOT-REPLICATED" ReplicationMissing Verdict = "REPLICATION-MISSING" Kill Verdict = "KILL" )
Verdict values: the outcome-eval taxonomy (§18.2). ELEVATE requires a primary gain AND an independent replication; the rest refuse to elevate, honestly.
func Decide ¶
Decide maps a primary and a replication outcome to a verdict (§18.2): KILL on a primary regression; REPLICATION-MISSING when there was no held-out replication to check; ELEVATE only when the primary gain clears minEffect AND the replication held without regressing and is significant; DIRECTIONAL otherwise — a primary gain that did not replicate. It is pure.
func Replicate ¶
Replicate is the fresh-replication verdict (§18.2): a single held-out comparison (Decide) can still be a fluke, so ELEVATE here requires at least two *independent* runs — a primary and a fresh replication — that each clear minEffect and are significant. Any run that regressed is KILL; fewer than two runs is REPLICATION-MISSING (there is no fresh replication to trust); otherwise DIRECTIONAL. It is pure — the caller supplies each independent run's outcome.