feat(row6): a proposal whose approach declared no requirement is unsupported
Stress round 6 validated three falsification arms, and every validated approach rested only on run-level declarations nobody can attribute to one approach. declare_requirement now takes a required approach_id (a mandate id or own-proposal; an unknown id is refused naming the valid ones), and a ValidatedProposal whose approach has neither a mandate requirement nor a declaration under its own id becomes validator.Unsupported - a Rejection subclass carrying the validator's own ruling, reported as `unsupported` in coverage, the outcome artefact, the settlement and the judge, and never counted or summed. The rule is active whenever the debate held the declaration tool, the micro base included; the road and pre-pass paths are untouched. Declaration quality is not judged, so the rule can be satisfied by declaring any document the run read. The v1 gate's row 6 probes pass; its artefact half reads IKKE MÅLT because stress round 6 predates approach-addressed declarations, and IKKE MÅLT is never green - it fails the exit code. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
9847e014e7
commit
938a1ca30e
23 changed files with 718 additions and 115 deletions
14
README.md
14
README.md
|
|
@ -495,9 +495,17 @@ when the seam is detached, so the loop cannot silently degrade into theater.
|
|||
**Naming the requirement that binds a direction.** Whoever navigates a knowledge base — the
|
||||
exploration's hypothesiser and, since the debate started navigating, the proposer — is asked to
|
||||
name the ONE requirement that binds the direction it commits to, and to declare it with
|
||||
`declare_requirement(bundle_id, path, ref)` after reading it. A declaration naming a document
|
||||
the run never opened is **refused by name** (`RequirementNotRead`) and comes back as a turn the
|
||||
model can correct by going and reading it; nothing is recorded until it has. A marked hypothesis
|
||||
`declare_requirement(bundle_id, path, ref, approach_id)` after reading it. A declaration naming
|
||||
a document the run never opened is **refused by name** (`RequirementNotRead`) and comes back as a
|
||||
turn the model can correct by going and reading it; nothing is recorded until it has.
|
||||
`approach_id` names the approach the requirement binds — one of the mandate's ids, or
|
||||
`own-proposal` — and an id the run was not commissioned with is refused with the valid ones named
|
||||
(`UnknownApproach`). **A proposal whose approach declared nothing cannot be `validated`:** when
|
||||
the debate held the declaration tool, a candidate whose numbers pass every stage but whose
|
||||
approach has neither a requirement written into the mandate nor a declaration filed under its
|
||||
own id is reported `unsupported` — not rejected (the numbers held), not validated (nothing was
|
||||
named as its ground), never counted or summed. The declaration's *quality* is not judged; a run
|
||||
can satisfy the rule by declaring any document it read, and that is a known weakness. A marked hypothesis
|
||||
therefore carries `"requirement": {"path": ..., "ref": ...}`, or an explicit `null` together with
|
||||
`"why_none"` — a base that holds no requirement for a direction is a finding worth stating, and
|
||||
the field is never simply omitted. Where an approach carries one, the proposer's prompt names it
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue