| Filename | Latest commit message | Latest commit date |
|---|---|---|
Applying the producer to a second standard found something about the `E3` mechanism rather than about that standard. `map/conformance/v1/joulespec.toml` maps every conformance item of the map standard's §8 to a named check with a counter-artifact, and all of them reach `E3`. Four did immediately. The fifth did not, and the reason is the point. That standard's `verify_envelope` enforces its steward twice: once as the envelope's key identifier, and again because the steward sits inside the signed core the envelope commits to, so a wrong steward also fails the payload comparison. Disabling either check alone leaves the other standing, and the test keeps passing. The harvester reported that the check could not see its subject — true, and misleading, because the check is strong and the mutation was well aimed. Neither of the two readings the producer's own documentation offers fits. It is a third case: the artifact state in which the check should fail is not one edit away from the state in which it passes. So a counter-artifact may now declare several edits. They are applied before anything runs and reverted together, in reverse order, including on a panic; if any fails to apply, those already applied revert as the partial vector drops, so the tree is never left half-mutated. The witness's report records how many were applied, because a state several edits away is a different claim from one edit away and a reader should not have to open the manifest to tell. The single-edit form is unchanged and the proof standard's manifest, which uses it throughout, still reaches `E3`. SPEC §2.5 states the rule: nothing in the rung says the failing state is one edit away, and a conforming producer must accept several and record the count. The schema refuses a counter-artifact that declares both forms, or part of the single-edit form, or no edit at all: the first is ambiguous about what the artifact state is, and the others claim to be a counter-artifact while describing nothing. Co-Authored-By: Claude Opus 5 <[email protected]> |
||
| .. | ||
| joulespec | ||
| cell_key_vectors.json | ||
| joulespec.toml | ||
| README.md | ||
| receipt_vectors.json | ||
| tileset_vectors.json | ||
Map conformance vectors — v1
Deterministic wire vectors emitted by cargo run -p map-conformance --bin gen-vectors.
Fixed Ed25519 test key (seed [7u8; 32]); not for production.
| File | Suite | Contents |
|---|---|---|
cell_key_vectors.json |
C1 | Cell keys with their canonical CBOR (hex) and content id. |
tileset_vectors.json |
C2, C3 | The sample directory, its Merkle root, a signed manifest, and a revision. |
receipt_vectors.json |
C5 | A receipt, its map/1 JCR-1 wire JSON, signed-core bytes, and COSE_Sign1 envelope (all hex). |
To certify a third-party implementation: reproduce the canonical CBOR / content
ids in cell_key_vectors.json, verify the manifest + revision signatures in
tileset_vectors.json, and verify the COSE_Sign1 envelope in
receipt_vectors.json against publisher_pubkey.