# step: cache authority · wai-rs and cache_authority_verify.py # order: 557 # features: cache_authority # paths: wai/extensions/cache-authority.md # independent: cache-authority live needs=cryptography python3 -I live-conformance/cache_authority_verify.py live-conformance/cache-authority # independent: cache-authority-claims live needs=cryptography python3 -I claim-conformance/claim_verify.py cache-authority live-conformance/cache-authority/vectors.json # # wai.delivery.cache (extensions/cache-authority.md): the reference module's unit tests (an # instant rounded up to the millisecond, coverage as the union of ranges from zero, a # population's one form and a digest that binds its region, a retired key placed against its # `until`, the codes listed once and the serving roles settlement's, and the corpus reaching # every stated outcome and failing a changed one) with those of the bearer claims' bodies (a # bitmap read in object order and refused for each defect, a cache-transmission claim held to # its rules in order, the bearer classes' labels), and tests/cache_authority.rs # (vectors.json regenerates byte for byte from its fixed seeds and no other file is there, # wai-rs gives every case its stated outcome, §11 lists exactly the reference's codes, and # jwp-receipts §3.1 lists the class's codes at their steps); and, in the step of every # independent verifier above, the corpus's second implementation, cache_authority_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, transmissions and reconciliations with bearer_verify.py, # acknowledgements with settlement_verify.py, key logs with signer_verify.py, held-at # statements with timeliness_verify.py and regions with rung_price_verify.py, writes the # placement, the claim against its group, the verdict and the tally itself, reads §11, # 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/cache-authority.md: tests/cache_authority.rs requires §11 to list the reference's # codes, and cache_authority_verify.py reads it. set -euo pipefail (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --lib -- cache_authority:: claim_receipt::bearer::) (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test cache_authority)