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
|
|
@ -334,7 +334,9 @@ class ApproachOutcome:
|
|||
|
||||
id: str
|
||||
label: str
|
||||
status: Literal["validated", "rejected", "not_evaluated"]
|
||||
#: ``unsupported`` (row 6): the numbers held but the approach declared no binding requirement,
|
||||
#: so it is neither a success nor a numeric rejection. Never counted as validated.
|
||||
status: Literal["validated", "rejected", "unsupported", "not_evaluated"]
|
||||
detail: str = ""
|
||||
saving_nok: float | None = None
|
||||
|
||||
|
|
@ -471,6 +473,8 @@ def settle(
|
|||
lines.append(f" {row.id:<20} VALIDATED {amount:>14} {row.label}")
|
||||
elif row.status == "rejected":
|
||||
lines.append(f" {row.id:<20} REJECTED {row.detail}")
|
||||
elif row.status == "unsupported":
|
||||
lines.append(f" {row.id:<20} UNSUPPORTED {row.detail}")
|
||||
else:
|
||||
lines.append(f" {row.id:<20} NOT EVALUATED {row.detail}")
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue