# step: timeliness · wai-rs and timeliness_verify.py # order: 552 # features: timeliness # paths: wai/extensions/timeliness.md # independent: timeliness live needs=cryptography python3 -I live-conformance/timeliness_verify.py live-conformance/timeliness # independent: timeliness-claims live needs=cryptography python3 -I claim-conformance/claim_verify.py timeliness live-conformance/timeliness/vectors.json # # wai.delivery.timeliness (extensions/timeliness.md): the reference module's unit tests (the # value function against an exact reference, the collinearity rule, each rule refusing, the # ladder's bounds and forms, the judgement, the held-at statement's before-group test, the plan's # sources and the scheduler's input checks, and the corpus reaching every stated outcome and # failing a changed one) and tests/timeliness.rs (vectors.json regenerates byte for byte from its # fixed seeds, wai-rs gives every case its stated outcome, §9 lists exactly the reference's codes, # §6.3 its outcomes and §7.5.3 its run's actions, jwp-receipts §3.1 lists the class codes at their # steps, and delivery-telemetry §5.1 lists the switch reason); and, in the step of every # independent verifier above, the corpus's second implementation, timeliness_verify.py, written from the extension's text and sharing no code with # wai-rs, which verifies groups and objects with jwp_verify.py, claims through steps 1-5 with # claim_verify.py, schedules and passes with carousel_verify.py and records with # holdings_verify.py, writes the context checks, the value function, the judgement, the plans and # a sink's runs of them itself, reads §9, §6.3 and §7.5.3, requires every mutated copy of the corpus # to fail, and drops each of its own checks in turn; run isolated (-I). Last, claim-conformance's # own verifier reads every claim of the corpus through jwp-receipts §3.1 steps 1 to 4 and requires # the stated outcome. # # The paths this step brings to the workflow's trigger, and why: # wai/extensions/timeliness.md: tests/timeliness.rs requires §9 to list the reference's codes, # §6.3 its outcomes and §7.5.3 its run's actions, and timeliness_verify.py reads all three. set -euo pipefail (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --lib -- timeliness:: claim_receipt::timeliness::) (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test timeliness)