# step: contribution records · wai-rs and contribution_verify.py # order: 370 # features: contribution # paths: wai/extensions/contribution.md # independent: contribution live python3 -I live-conformance/contribution_verify.py live-conformance/contribution # # wai.media.contribution (extensions/contribution.md): the reference module's unit tests # (every proof of the steps' tree walks to its root, the copying operations follow their # sample mappings, a map has one encoding) and tests/contribution.rs (the committed corpus # regenerates byte for byte from its fixed seeds and no other file is there, wai-rs gives # every case its stated outcome and statements, §11 lists exactly the reference's codes, # each of which the corpus gives, and the corpus generates with the model file of # wai.generate.spectral's conformance vector); and, in the step of every independent # verifier above, the corpus's second implementation, # contribution_verify.py, written from the extension's text and sharing no code with # wai-rs, which evaluates every pinned operation, runs the generator in its own arithmetic # after checking it against the generator's conformance vector, computes every map, share # and C2PA statement itself, reads origin claims with synthesis_verify.py and every record # with WAI's strict Ed25519 rule and BLAKE3 from claim-conformance, requires every mutated # copy of the corpus to fail, and drops each of its own checks in turn and requires the # corpus to catch the weakened verifier; standard library only, run isolated (-I). # # The paths this step brings to the workflow's trigger, and why: # wai/extensions/contribution.md: tests/contribution.rs requires this extension's §11 to list the # codes the reference reports, contribution_verify.py reads that table, and the registry's wire # identifiers test reads its sections. set -euo pipefail (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --lib contribution::) (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test contribution)