Rulvar API reference / @rulvar/core / selfTestFinishValidation
Function: selfTestFinishValidation()
function selfTestFinishValidation(options): FinishSelfTestReport;Defined in: packages/core/src/orchestrator/output-contract.ts:859
Runs a configured validator set against golden fixtures BEFORE any provider call exists (the v1.71 experiment review, P0.3): the accept fixture must pass every validator (a stale validator rejecting a correct skeleton is exactly the drift the experiment died of, three renamed sections deep into a paid run), and the reject fixture must fail at least one (a set that accepts the known-bad input validates nothing). A validator that THROWS here is a host defect and the ConfigError propagates, the same posture the live loop takes. Deterministic and free: validators are pure synchronous host code by contract, so this costs zero provider calls. rejects (cycle 74) carries the contract's per validator reject goldens: for each one the CONFIGURED validator of that name must exist and must reject the fixture, so a same-name replacement weaker than the contract's own validator fails here instead of silently accepting what the journaled contract hash forbids.
Parameters
| Parameter | Type |
|---|---|
options | { accept?: FinishValidationInput; reject?: FinishValidationInput; rejects?: readonly FinishContractGoldenReject[]; validators: readonly FinishValidator[]; } |
options.accept? | FinishValidationInput |
options.reject? | FinishValidationInput |
options.rejects? | readonly FinishContractGoldenReject[] |
options.validators | readonly FinishValidator[] |