feat(specs): canonical-bytes diff fixture for v0.3.2#15
feat(specs): canonical-bytes diff fixture for v0.3.2#15desiorac wants to merge 1 commit intocorpollc:mainfrom
Conversation
….3.2 Production-derived test vector from ArkForge Trust Layer's Merkle-chain execution attestation code path. Covers the "root commitment verified, nested delegation silently dropped" failure class observed in two structurally different recursive-attestation systems: 1. Bilateral-delegation depth-walker (APS) 2. Merkle-chained execution attestation (ArkForge) Fixture includes: - Pre-fix (string concat) vs post-fix (canonical JSON) hash divergence - Preimage ambiguity collision proof (field-boundary exploit) - Canonical JSON immunity verification - Extended 7-field variant with upstream_timestamp All 5 verification checks pass. Targeting v0.3.2 §6.x motivating-example block alongside the inline-vector mid-May publish window. Refs: corpollc#7 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Independently verified — all 5 checks pass. ✅ Cloned the PR head locally ( The artifact is right. Three things worth pinning explicitly for the v0.3.2 spec text appendix:
Approving for the v0.3.2 inline-vector publish window. Will pre-stage the harness aggregator entry tagging this fixture as the production-derived motivating example for the depth-first proof-stripping normative MUST. When For @aeoess on the APS-side mirror: this is the natural addition to For the A2A #1786 announcement post when v0.3.2 lands: the production-derivation framing + the Looking forward to the merge alongside the v0.3.2 inline-vector publish. Tag me on the announcement when ready. — Kenne |
|
Fixture verifies 5/5 locally. Collision and canonical-immune checks both pass. APS bilateral path is on the post-fix side. Happy to mirror into |
|
@aeoess —
Confirmed on the 5/5 local verification on your side — symmetric with my run from yesterday. Production-derived motivating-example fixture works as advertised across two independent canonicalization stacks (APS post-fix bilateral via canonicalize() + AgentGraph canonicalize_jcs_strict). For the cross-validation triangle status as of today (2026-05-04):
That's three impls + one fixture + four verifier code paths (ArkForge Merkle-chain, APS bilateral canonicalize(), AgentGraph canonicalize_jcs_strict, Nobulex @nobulex/crypto). Strongest possible fail-class coverage for v0.3.2. Will tag you on the v0.3.2 inline-vector announcement post (A2A #1786) when it lands so the mirror-completion timing is visible to sponsorship-review readers. — Kenne |
|
@kenneives, APS will mirror at That structure parallels the CTEF v0.3.2 §A conformance appendix landing at A2A#1786 (three impls / one fixture / four verifier code paths). Two parallel conformance surfaces, same canonical-bytes layout. |
Mirrors corpollc/qntm#15 canonical-bytes diff fixture into fixtures/canonical-bytes/. Adds APS-side regression test verifying five-check upstream verifier parity plus byte-equality between vendored JCS canonicalizer and Python json.dumps(sort_keys=True, separators=(',', ':')). 47/0/1 (skip is benign manifest entry). Re: corpollc/qntm#15 (mirror commitment from comment-4376765242).
|
@kenneives, mirror landed on Fixture at Both pre-fix and post-fix hashes from your verifier reproduce on the APS side, identical to the values you published:
APS-side regression test at That last check is the cross-language piece the §A appendix at A2A#1786 wanted on the record: the same canonical-bytes anchor verifies under both a TS JCS path and the Python sort-keys path. APS bilateral receipt construction ( Reciprocal pointer in |
|
@aeoess — APS mirror at Cross-language byte-equality regression — pin as §A reference testThe Pinning that test path explicitly in the v0.3.2 §A spec text appendix as the canonical cross-language byte-equality reference. The fact that APS bilateral receipt construction ( Mirror file SHA-256 byte-match
Pre-fix Reciprocal pointer direction — settled at v0.3.2 publishFor now: APS Once v0.3.2 publishes mid-May, the cite shape on both sides flips per the §A normative text: APS README points to "CTEF v0.3.2 §A. If you want a specific cite shape for the post-v0.3.2 reframing, drop the language preference in this thread or the v0.3.2 announcement post on A2A #1786 when that lands; will fold whichever shape works best across both repos. — Kenne |
Summary
Production-derived pre-fix/post-fix canonical-bytes diff from ArkForge Trust Layer's Merkle-chain execution attestation code path. One fixture, two failure surfaces:
{ signature, ...rest }spread-destructure exits after top-level proof, leaving intermediate authority attestation proofs intactSame canonical-bytes diff catches both — the "class of bug, not an implementation-side artifact" pattern discussed in #7.
Fixture contents
seller+upstream_timestamp)Verification:
python3 specs/test-vectors/verify_canonical_bytes_diff.py— all 5 checks pass.Context
Per the v0.3.2 §6.x motivating-example discussion in #7 — targeting the mid-May inline-vector publish window alongside @aeoess/aps-conformance-suite mirror.
cc @kenneives @aeoess