open-standards/.github/wai-conformance/verifiers/impression-aggregates.sh
Transaction Science e068412a40 The corpora that reached main beside wai conform join its table, and the release's files say what has run
wai conform --independent runs every corpus's verifier from the `# independent:` lines of the
step files. Eight step files that landed on main while this change waited ran their verifiers
in their bodies. Each gets its lines and the body loses them: cache-authority and its claims,
compact-return, impression-aggregates, prior-carriage, rung-price, timeliness and its claims,
project and project-selftest, and quantum-receipts, which runs the differential's second-only
pass over the corpus by name. The quantum step keeps receipt_verify.py's self-test and the
planted defects, which are no run over a corpus.

The release workflow and the changelog entry state what clean-machine.ps1 has run on, and no
longer the state of a runner.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-07 10:56:00 -05:00

33 lines
2.5 KiB
Shell

# step: impression aggregates · wai-rs and impression_aggregate_verify.py
# order: 605
# features: impression_aggregate
# paths: wai/extensions/impression-aggregates.md
# independent: impression-aggregates live needs=cryptography python3 -I live-conformance/impression_aggregate_verify.py live-conformance/impressions
#
# wai.delivery.impressions (extensions/impression-aggregates.md), telemetry-aggregation's
# measure 5: the reference module's unit tests (the cell index, region columns, the chunk
# length, the retention arithmetic, the deadline at the flight's last hour, the plan's order,
# settlement on every DAP error value, the integer sum, the codes and a table's totals past
# 2^64) and tests/impression_aggregate.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 and every
# reason of §10 appears, §10 lists exactly the reference's codes, each standing receipt's
# result is its contributions' tally and the flight's table gives per creative
# stitched-presentation's own counts, and a task file and an upload file of exactly their
# bound read while one byte more is refused); and, in the step of every independent verifier
# above, the corpus's second implementation, impression_aggregate_verify.py, written from the extension's text and sharing no code with
# wai-rs, which evaluates Prio3 and opens every report with telemetry_aggregate_verify.py,
# judges records and claims with stitched_presentation_verify.py, verifies tokens with
# ad_presentation_verify.py, confirms task-file signers with signer_verify.py and reads
# regions with rung_price_verify.py, writes the catalogue, task file, upload file,
# contribution, plan, settlement, receipt check and table itself, requires every mutated copy
# of the corpus to fail and drops each of its own checks in turn; run isolated (-I). The QoE,
# stitched, key-log and signer steps still run their own corpora, which the shared refactors
# leave byte for byte as they were.
#
# The paths this step brings to the workflow's trigger, and why:
# wai/extensions/impression-aggregates.md: tests/impression_aggregate.rs requires §10 to list the
# reference's codes, impression_aggregate_verify.py reads it, and the registry's wire
# identifiers test reads §4.1, §5.4, §6.4 and §7.2.
set -euo pipefail
(cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --lib -- impression_aggregate::)
(cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test impression_aggregate)