# step: co-performance · wai-rs and co_performance_verify.py # order: 510 # features: co_performance # paths: wai/extensions/co-performance.md # independent: co-performance live python3 -I live-conformance/co_performance_verify.py live-conformance/coperformance # # wai.live.coperformance (extensions/co-performance.md): the reference module's unit tests # (the policy and every statement round-trip and their rules refuse, the attributes' # decimal integers, a schedule's turns in bars and microseconds, the symbolic bodies read # whole) and tests/co_performance.rs (vectors.json regenerates byte for byte from its fixed # seeds and no other file is there, wai-rs gives every room its stated outcome, and §10 # lists exactly the reference's codes, each of which the corpus gives); and, in the step of # every independent verifier above, the corpus's # second implementation, co_performance_verify.py, written from the extension's text and # sharing no code with wai-rs, which verifies each room with live_rooms_verify.py and every # signature with WAI's strict Ed25519 rule from claim-conformance, recomputes every intent, # fidelity statement, turn, floor, commitment, selection and credit, reads the extension's # reason table, 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/co-performance.md: tests/co_performance.rs requires this extension's §10 to list # the codes the reference reports, co_performance_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 co_performance::) (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test co_performance)