Warden plan
tier: hermetic requires: []
Pending stub — GATED criterion. The precondition below is not built; this plan reports the criterion as pending (skip, never fail) until it lands. When it does, replace this stub with a real plan in the shape of
25-cr-18/26-cr-25/27-cr-20.
Register: ~/.studio/master.withrobin.ai/project/rfc.one/criteria-register.md (status there: PENDING OWNER ACCEPTANCE; accepted by the 2026-08-31 proxy screen).
### CR-04 — Claims-layer artifact quality - Statement: Artifacts rendered from persisted Claims are preferred over per-request reasoning with persistence disabled (baseline (c)), at comparable citation fidelity. - Metric: Primary: blinded pairwise preference vs baseline (c), exact binomial test. Secondary: preference vs Signal-only generation (a) and GraphRAG-style (b); ALCE citation recall and precision (NLI-computed, 20% human check); precondition check; cost per artifact per arm (reported, judged in CR-14's ledger). - Dataset/inputs: 55 artifact requests per pilot workspace, ≥10 Initiatives each, audience specified; ≥150 decided pairs per baseline comparison after tie exclusion; two raters per pair, third adjudicates. - Threshold: Preference vs (c) significant, design effect 60% vs 50% null (~86+ wins of 150); ALCE citation precision and recall no lower than the best baseline; precondition check at 100% (renderer requirement — any miss is a defect). - Drop condition: Result at or below 50%, or failing after extension: the Claim layer contributes nothing to artifacts that per-request reasoning does not; thesis then decided by the ledger alone. A tie with (a) is the Chen et al. outcome: drop the Claim layer in favor of Signal extraction investment. Preference win with citation-precision loss is a renderer redesign signal. - Source: Anchor §10.2. - Tier: gated — requires Claims layer, slow path, renderer.
Precondition: requires the Claims layer, the slow path, and the renderer. Not built at HEAD 7f379974 (verified 2026-08-31: no 'claims', 'dimensions', or 'initiatives' tables in server/src/db/schema.ts, and no conflicts_with edges anywhere in server/src or packages/). The slow path and renderer have no code marker to probe.
set -uo pipefail
source "$WARDEN_LIB/assert.sh"
cd "${PROJECT_ROOT:-$(git rev-parse --show-toplevel)}"
SCHEMA=server/src/db/schema.ts
MISSING=""
grep -q "'claims'" "$SCHEMA" || MISSING="$MISSING claims-tables"
if [ -n "$MISSING" ]; then
warden_skip "CR-04 — Claims-layer artifact quality" "pending: requires the Claims layer, the slow path, and the renderer — gated criterion, precondition not built (probes missing:$MISSING)"
else
warden_skip "CR-04 — Claims-layer artifact quality" "schema probes now pass — upgrade this pending stub to a real plan before CR-04 can bind (probes are heuristic, not proof)"
fi
Pending stub, hermetic on purpose: the guard reads the checkout only and emits skip in every branch, so this plan can never red a run — the criterion surfaces in every summary as pending with its precondition named. The probes are heuristic activation bells, not proof: quoted table names (and conflicts_with where the contradiction check is a precondition) flip the detail text when the machinery lands. The real plan must quote the criterion verbatim, turn its thresholds into warden_pass/warden_fail gates, and follow the conventions the three runnable plans set: machine-local fixtures (25-cr-18), NLI probe and versioned judge prompts (26-cr-25), data-keyed guard activation (27-cr-20).