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
|
|
@ -362,7 +362,7 @@ def test_the_requirement_gate_reads_the_second_bases_own_opened_list(tmp_path: P
|
|||
opened_1.append(explore.ToolCall(name="read_file", bundle_id=bundle_1, path=doc_1))
|
||||
assert not opened_2, "the two bases shared one opened sink"
|
||||
|
||||
refusal = tools_2["declare_requirement"].func(bundle_2, doc_1, "Krav 1")
|
||||
refusal = tools_2["declare_requirement"].func(bundle_2, doc_1, "Krav 1", "a1")
|
||||
assert refusal["refusal"] == "RequirementNotRead", refusal
|
||||
assert not reqs_2, "base 2 recorded a requirement it never read"
|
||||
|
||||
|
|
@ -371,7 +371,7 @@ def test_the_requirement_gate_reads_the_second_bases_own_opened_list(tmp_path: P
|
|||
for name in [f.name for f in okf.navigate_bundle(second).context_files][:3]:
|
||||
tools_2["read_file"].func(bundle_2, name)
|
||||
opened_2.append(explore.ToolCall(name="read_file", bundle_id=bundle_2, path=name))
|
||||
accepted = tools_2["declare_requirement"].func(bundle_2, doc_2, "Krav 1")
|
||||
accepted = tools_2["declare_requirement"].func(bundle_2, doc_2, "Krav 1", "a1")
|
||||
assert accepted.get("declared") is True, accepted
|
||||
assert [r.path for r in reqs_2] == [doc_2]
|
||||
assert not reqs_1, "the two bases shared one requirements sink"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue