open-standards/.github
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science e0e9fa7831 joulespec: a counter-artifact is an artifact state, not an edit
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]>
2026-11-02 04:51:59 -05:00
..
workflows joulespec: a counter-artifact is an artifact state, not an edit 2026-11-02 04:51:59 -05:00