Add two-sided authority-decision evidence binding vectors - #5
Conversation
Remove the unused counterfactual object from n27 and narrow the documentation: n27 covers the missing-commitment branch, while p19/n28 carry the executable A/B substitution contrast. Also state that Keccak/JCS is local to this suite.
|
Merged at 7963208. Review notes, for the record:
Thanks for bringing CG-DELTA-LOSS-01 here as an executable A/B contrast rather than prose — that is exactly what this suite is for. |
|
Thank you for authorizing the workflow, rerunning and reviewing the contribution, and merging it. I authenticated workflow Immutable AUEC receipt: https://github.com/mohammedmessaoudene-cmd/AUEC/blob/3cabb79e2a9c84db2dd256b64c97134c385d187d/evidence/upstream/tersign/ci-review-merge-receipt.json I am recording this as external CI, maintainer-reported rerun/review, and external merge for the narrow structural AI-assistance disclosure: ChatGPT and Codex assisted with verification and drafting. I reviewed the evidence and remain responsible. |
Property
A protected record presented as evidence of an authority decision must commit to
the exact canonical decision-evidence object it represents. The structural rule
tested here is deliberately narrow: a missing commitment rejects, a commitment
to the presented object accepts, and substitution of a distinct object rejects.
This adds the separate
decision_evidence_bindingkind while reusing the existingbinding_rejectreason and a private binding-arithmetic helper.offer_bindingcontinues to describe accepted payment terms;
boundary_bindingcontinues todescribe prefix, position and coverage. Their existing vectors, verdicts, reasons
and Python diagnostics remain unchanged.
Vectors
n27exercises only the missing-commitment branch: nodecisionEvidenceDigestis present, so the presented decision evidence isunbound and rejects;
p19carries the positive half of the executable A/B contrast: the recordcommits to reduction A and A is presented;
n28carries the substitution half: the record commits to reduction A whilereduction B is presented.
The suite's Keccak-256/JCS instantiation and illustrative
decisionEvidenceDigestlocation are local test-profile choices. They do notprescribe an MCP or AUEC field, digest, canonicalization, or extension shape.
This structural check does not validate the authority intersection, authenticate
the producer, prove policy correctness, establish historical position or
uniqueness, or constitute semantic or independent validation.
Executed validation
2f6bef0dc531ce9e1a8ae1dc3cef6704ec2b5df5;c23a985c51b99cf8ec71aebf5af9f53aa34747cc;a41b5c96c9804be55c02696d775634a3329e3186892c190bd82ab98fa11846a5;08890c3483b3e8dfee9e2fc9bb385414497c9112;divergences;
MANIFEST.json, 48 artifactsbyte-identical;
including the load-bearing p19/n28 pair;
git diff --check: pass.These are local/AUEC-Codex-controlled execution results. They are not external
CI, third-party review, merge approval, or independent validation. The current
external workflow run is 31337102263:
action_requiredwith zero jobs pending maintainer approval.I also cross-ran the exact Git blobs for existing Tersign vectors
p18,n25and
n26through a documented AUEC adapter without changing their expectations:3/3. Those fixtures are third-party-authored; the adapter execution remains
AUEC/Codex-controlled and is not independent validation.
Origin and traceability:
CG-DELTA-LOSS-01inMCP SEP-3004,
followed by the direct vector invitation in
this comment.
AUEC's implementation remains experimental, draft-aligned and non-conformant in
AUEC PR #2.
Disclosure
OpenAI ChatGPT and Codex assisted with implementation, testing, analysis and
drafting. Mohammed Messaoudene reviewed the executed evidence and remains
responsible for the contribution.