open-standards/wai/pack-conformance/mutations/expected.json
Transaction Science 9b5854aa4c Corpora: weak-key cases in every receipt family's corpus
Each family whose corpus lacked them gets the three signatures a verifier that
checks only the equation accepts and WAI's rule refuses (wai_sig::forgeries):
the identity as the key with (R, S) = (B, 1), the identity spelled y = p + 1,
and R of small order under the base point. Every case is new; no existing
vector's expectation changes.

- jwp: group_signer_key_identity_forged, group_signer_key_identity_y_not_reduced
  (step 1, bad_signer_key), group_signature_r_small_order (step 2).
- signer: anchor_root_identity_forged, anchor_root_identity_y_not_reduced,
  anchor_root_signature_r_small_order (not anchored, key_log_signature_invalid).
- pack: mutations receipt-key-identity, receipt-key-identity-y-not-reduced,
  receipt-r-small-order (receipt-signature); receipts/ v1-key-identity,
  v1-key-identity-y-not-reduced, v1-r-small-order, marked "signature": "refused",
  which wai-pack and pack_verify.py now read.
- quantum-ops: cal_q3_ and job_bell_ key_identity, key_identity_y_not_reduced and
  r_small_order, "verifies": false, which wai_quantum_ops_vectors checks are
  refused and hash as pinned.

claim (signer_key_identity, signer_key_identity_y_not_reduced,
signature_r_small_order and others) and http (sig-key-identity, -long,
sig-r-small-order) had them already. OER/2 keeps its own rule.

PackageReceipt::signing_payload (v1) and the calibration and job receipts'
signing_payload are public, so a corpus generator can sign over them;
wai-quantum re-exports wai_sig beside ed25519_dalek.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-07 10:16:21 -04:00

532 lines
13 KiB
JSON

{
"cases": [
{
"name": "ok",
"kind": "index",
"index": "index/ok.wsix",
"reason": "ok"
},
{
"name": "refines-flipped",
"kind": "index",
"index": "index/refines-flipped.wsix",
"reason": "refines-mismatch"
},
{
"name": "layer-gap",
"kind": "index",
"index": "index/layer-gap.wsix",
"reason": "layer-gap"
},
{
"name": "refines-outside-window",
"kind": "index",
"index": "index/refines-outside-window.wsix",
"reason": "refines-outside-window"
},
{
"name": "tier-entropy-over-entropy",
"kind": "index",
"index": "index/tier-entropy-over-entropy.wsix",
"reason": "tier-entropy-passthrough"
},
{
"name": "tier-decode-over-entropy",
"kind": "index",
"index": "index/tier-decode-over-entropy.wsix",
"reason": "tier-weakest"
},
{
"name": "tier-on-floor",
"kind": "index",
"index": "index/tier-on-floor.wsix",
"reason": "tier-mismatch"
},
{
"name": "digest-without-tier",
"kind": "index",
"index": "index/digest-without-tier.wsix",
"reason": "digest-without-tier"
},
{
"name": "dup-flag-missing",
"kind": "index",
"index": "index/dup-flag-missing.wsix",
"reason": "dup-flag"
},
{
"name": "dup-flag-lie",
"kind": "index",
"index": "index/dup-flag-lie.wsix",
"reason": "dup-flag"
},
{
"name": "dup-length",
"kind": "index",
"index": "index/dup-length.wsix",
"reason": "dup-length"
},
{
"name": "floor-at-layer-1",
"kind": "index",
"index": "index/floor-at-layer-1.wsix",
"reason": "layer-role"
},
{
"name": "base-with-refines",
"kind": "index",
"index": "index/base-with-refines.wsix",
"reason": "layer-role"
},
{
"name": "floor-before-refinement",
"kind": "index",
"index": "index/floor-before-refinement.wsix",
"reason": "entry-order"
},
{
"name": "deadline-on-base",
"kind": "index",
"index": "index/deadline-on-base.wsix",
"reason": "deadline-role"
},
{
"name": "floor-without-derived-from",
"kind": "index",
"index": "index/floor-without-derived-from.wsix",
"reason": "floor-derived-from"
},
{
"name": "entry-flag-unknown",
"kind": "index",
"index": "index/entry-flag-unknown.wsix",
"reason": "entry-flags"
},
{
"name": "piece-gap",
"kind": "index",
"index": "index/piece-gap.wsix",
"reason": "piece-order"
},
{
"name": "piece-empty",
"kind": "index",
"index": "index/piece-empty.wsix",
"reason": "piece-order"
},
{
"name": "piece-entries-overlap",
"kind": "index",
"index": "index/piece-entries-overlap.wsix",
"reason": "piece-entries"
},
{
"name": "entry-in-another-piece",
"kind": "index",
"index": "index/entry-in-another-piece.wsix",
"reason": "piece-entries"
},
{
"name": "piece-kind-unknown",
"kind": "index",
"index": "index/piece-kind-unknown.wsix",
"reason": "piece-kind"
},
{
"name": "plan-past-piece",
"kind": "index",
"index": "index/plan-past-piece.wsix",
"reason": "class-plan"
},
{
"name": "plan-past-class",
"kind": "index",
"index": "index/plan-past-class.wsix",
"reason": "class-plan"
},
{
"name": "plan-floor-only-class",
"kind": "index",
"index": "index/plan-floor-only-class.wsix",
"reason": "class-plan"
},
{
"name": "class-flag-unknown",
"kind": "index",
"index": "index/class-flag-unknown.wsix",
"reason": "class-flags"
},
{
"name": "timebase-zero",
"kind": "index",
"index": "index/timebase-zero.wsix",
"reason": "index-timebase"
},
{
"name": "on-demand-first-piece",
"kind": "index",
"index": "index/on-demand-first-piece.wsix",
"reason": "window-start"
},
{
"name": "on-demand-first-entry",
"kind": "index",
"index": "index/on-demand-first-entry.wsix",
"reason": "window-start"
},
{
"name": "on-demand-start",
"kind": "index",
"index": "index/on-demand-start.wsix",
"reason": "window-start"
},
{
"name": "truncated-table",
"kind": "index",
"index": "index/truncated-table.wsix",
"reason": "index-truncated"
},
{
"name": "trailing",
"kind": "index",
"index": "index/trailing.wsix",
"reason": "index-trailing"
},
{
"name": "magic",
"kind": "index",
"index": "index/magic.wsix",
"reason": "index-magic"
},
{
"name": "version",
"kind": "index",
"index": "index/version.wsix",
"reason": "index-version"
},
{
"name": "media-class",
"kind": "index",
"index": "index/media-class.wsix",
"reason": "index-media-class"
},
{
"name": "reserved",
"kind": "index",
"index": "index/reserved.wsix",
"reason": "index-reserved"
},
{
"name": "role",
"kind": "index",
"index": "index/role.wsix",
"reason": "index-role"
},
{
"name": "tier",
"kind": "index",
"index": "index/tier.wsix",
"reason": "index-tier"
},
{
"name": "string-index",
"kind": "index",
"index": "index/string-index.wsix",
"reason": "index-string"
},
{
"name": "objects-ok",
"kind": "objects",
"index": "objects-index/ok.wsix",
"objects": "objects/",
"reason": "ok"
},
{
"name": "objects-cmaf-listed",
"kind": "objects",
"index": "objects-index/cmaf-listed.wsix",
"objects": "objects/",
"reason": "non-envelope-entry"
},
{
"name": "objects-missing",
"kind": "objects",
"index": "objects-index/missing.wsix",
"objects": "objects/",
"reason": "object-missing"
},
{
"name": "objects-hash",
"kind": "objects",
"index": "objects-index/hash.wsix",
"objects": "objects/",
"reason": "object-hash"
},
{
"name": "objects-not-its-format",
"kind": "objects",
"index": "objects-index/not-its-format.wsix",
"objects": "objects/",
"reason": "object-lengths"
},
{
"name": "objects-length",
"kind": "objects",
"index": "objects-index/length.wsix",
"objects": "objects/",
"reason": "object-length"
},
{
"name": "objects-lengths",
"kind": "objects",
"index": "objects-index/lengths.wsix",
"objects": "objects/",
"reason": "object-lengths"
},
{
"name": "objects-capability",
"kind": "objects",
"index": "objects-index/capability.wsix",
"objects": "objects/",
"reason": "object-capability"
},
{
"name": "objects-derived-from",
"kind": "objects",
"index": "objects-index/derived-from.wsix",
"objects": "objects/",
"reason": "object-derived-from"
},
{
"name": "objects-refines-names-another",
"kind": "objects",
"index": "objects-index/refines-names-another.wsix",
"objects": "objects/",
"reason": "object-refines"
},
{
"name": "receipt-ok",
"kind": "receipt",
"receipt": "receipt/ok.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "ok"
},
{
"name": "receipt-ok-labelled",
"kind": "receipt",
"receipt": "receipt/ok-labelled.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "ok"
},
{
"name": "receipt-ok-live-window",
"kind": "receipt",
"receipt": "receipt/ok-live-window.json",
"indexes": [
"receipt/live/index-v.wsix"
],
"reason": "ok"
},
{
"name": "receipt-counts",
"kind": "receipt",
"receipt": "receipt/counts.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-counts"
},
{
"name": "receipt-parent-kind",
"kind": "receipt",
"receipt": "receipt/parent-kind.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-parent-kind"
},
{
"name": "receipt-parent-kind-live",
"kind": "receipt",
"receipt": "receipt/parent-kind-live.json",
"indexes": [
"receipt/live/index-v.wsix"
],
"reason": "receipt-parent-kind"
},
{
"name": "receipt-stage-root",
"kind": "receipt",
"receipt": "receipt/stage-root.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-stage-root"
},
{
"name": "receipt-index-digest",
"kind": "receipt",
"receipt": "receipt/index-digest.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-index-digest"
},
{
"name": "receipt-media-class",
"kind": "receipt",
"receipt": "receipt/media-class.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-component"
},
{
"name": "receipt-policy-digest",
"kind": "receipt",
"receipt": "receipt/policy-digest.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-policy-digest"
},
{
"name": "receipt-energy",
"kind": "receipt",
"receipt": "receipt/energy.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-energy"
},
{
"name": "receipt-signature",
"kind": "receipt",
"receipt": "receipt/signature.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-signature"
},
{
"name": "receipt-key-identity",
"kind": "receipt",
"receipt": "receipt/key-identity.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-signature"
},
{
"name": "receipt-key-identity-y-not-reduced",
"kind": "receipt",
"receipt": "receipt/key-identity-y-not-reduced.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-signature"
},
{
"name": "receipt-r-small-order",
"kind": "receipt",
"receipt": "receipt/r-small-order.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-signature"
},
{
"name": "receipt-unknown-member",
"kind": "receipt",
"receipt": "receipt/unknown-member.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-duplicate-member",
"kind": "receipt",
"receipt": "receipt/duplicate-member.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-minus-zero",
"kind": "receipt",
"receipt": "receipt/minus-zero.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-lone-surrogate",
"kind": "receipt",
"receipt": "receipt/lone-surrogate.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-null-value",
"kind": "receipt",
"receipt": "receipt/null-value.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-energy-member-missing",
"kind": "receipt",
"receipt": "receipt/energy-member-missing.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-evidence-without-class",
"kind": "receipt",
"receipt": "receipt/evidence-without-class.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-no-component",
"kind": "receipt",
"receipt": "receipt/no-component.json",
"indexes": [],
"reason": "receipt-index-count"
},
{
"name": "receipt-receipt-hash",
"kind": "receipt",
"receipt": "receipt/receipt-hash.json",
"indexes": [
"receipt/index-v.wsix"
],
"reason": "receipt-json"
},
{
"name": "receipt-two-components-one-id",
"kind": "receipt",
"receipt": "receipt/two-components-one-id.json",
"indexes": [
"receipt/index-v.wsix",
"receipt/index-v.wsix"
],
"reason": "receipt-component"
}
]
}