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
19
CLAUDE.md
19
CLAUDE.md
|
|
@ -3112,6 +3112,25 @@ Python ≥3.10. MAF (`agent-framework-core` 1.16.0, `-orchestrations` 1.1.1 —
|
|||
`r761-2025` uten `index.md`) — `--bundle-root` peker da på en utpakket kopi; bevisene for type 1, 3
|
||||
og 7 er EKSISTERENDE tester registrert ved node-id, så en omdøping gjør typen rød til registeret
|
||||
rettes (gatet av en egen arm).
|
||||
- **Et forslag uten tilnærmingens EGEN erklæring kan ikke bære `validated` (rad 6, 17.09):** målt
|
||||
på stressrunde 6 hadde alle 10 validerte tilnærmingene bare kjørings-erklæringer, som ingen kan
|
||||
knytte til én tilnærming — og tre falsifiseringsarmer validerte. `declare_requirement` tar derfor
|
||||
et PÅKREVD `approach_id` (mandatets id-er + `own-proposal`; ukjent id → `UnknownApproach`, en
|
||||
returnert nekt som navngir de gyldige), og `DeclaredRequirement`/`requirement_payload` bærer det.
|
||||
I `_evaluate_mandate` blir en `ValidatedProposal` hvis tilnærming verken har `requirement` i
|
||||
mandatet eller en erklæring under sin egen id til `validator.Unsupported` — en `Rejection`-
|
||||
SUBKLASSE med validatorens egen `ValidatedProposal` på seg, så hver `isinstance(...,
|
||||
ValidatedProposal)` sier nei uten å røres, mens de som NAVNGIR statusen (coverage `unsupported`,
|
||||
`outcome_payload` `outcome_type: "unsupported"` med persentilene, `settle` `UNSUPPORTED`,
|
||||
`rejection_stage` `unsupported`, dommeren) sjekker klassen FØRST. `validator_decision` forblir
|
||||
`validated` (den speiler kun validatoren). **Regelen er aktiv nøyaktig når debatten hadde
|
||||
erklæringsverktøyet** — også på mikro-basen, som har 0 kravnumre (PM-rettelse: ingen
|
||||
spesialbehandling); veg-stien og pre-pass-stien har ingen trapp og er urørt. Erklæringens
|
||||
KVALITET dømmes ikke (P22 § 4), så regelen kan spilles ved å erklære et hvilket som helst lest
|
||||
dokument — uttalt svakhet. Dommeren leser en erklæring under tilnærmingens id som `approach`, en
|
||||
uten `approach_id` (eldre artefakter) som `run`; v1-gatens rad 6 sier da «IKKE MÅLT», og IKKE
|
||||
MÅLT feller exit-koden (aldri grønn). Load-bearing MÅLT
|
||||
(`tests/test_row6_declaration_rule_loadbearing.py` + rad 6-probene), ti mutasjoner alle røde.
|
||||
- **STATE.md er local-only** (gitignored). Voyage session-state er efemert; STATE.md er kanonisk kontinuitet.
|
||||
- Prosess: Voyage-plugin (`/trekbrief → /trekplan → /trekexecute → /trekreview`) per større fase.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue