Transaction Science
01128aed3e
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Failing after 6m0s
jcp: the hold's life gets a published log and a second reader, and the profile spans it
...
Five receipt members added in the last two days — `held_minor`,
`known_through`, `captures`, `reclaims`, `refunded_minor` — had no published
vector and no independent reader. By this repository's own bar that means their
canonical form was pinned by nothing but the implementation that wrote them.
`conformance/v1/lifecycle.json` is one hash-chained log holding the life of a
money hold: a hold captured in part and then reclaimed past its deadline, a
hold captured and settled, a spend refunded by its issuer, a refund refused to
its subject, and a point that states its revocation marker on some receipts and
not others. It publishes the joules, gross money and refunds a reader must
restore. `verify_lifecycle.py` reads it by the specification's rules, sharing
no code with the reference implementation, and restored the same ledger on its
first run. Its selftest re-reads the log with each rule broken — restoring a
captured hold's whole reservation, restoring a reclaimed hold's money,
subtracting a refund from the gross debit — and requires every one refused, so
a pass means the log distinguishes the rules. It runs in CI beside the replay
reader, and a Rust test reads the committed pack through the library.
Regenerating the vectors produced exactly one new file. Every existing pack
came out byte-identical, which is independent confirmation that none of the
receipt changes altered a published vector.
The x402 profile now spans the lifecycle, and this is where our side differs
from the wire it rides: **every capture seals its own measurement.** A stream
paid per chunk gets a receipt per chunk, each committing to that draw's amount
and the energy metered since the last — so a dispute over the third step has
the third step's evidence, not one total sealed afterwards. `capture`,
`reclaim` and `refund` are on the profile; ingest reads `auth-capture` and
`batch-settlement` and takes the capture deadline from the requirement; and the
refund goes through the runtime's rule, so the agent cannot refund itself.
Co-Authored-By: Claude <[email protected] >
2026-11-10 15:24:37 -05:00
..
conformance.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
energy-hardware.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
joule-code-conformance.yml
jwp: clippy clean, and joule-code-conformance holds it there
2026-11-10 09:56:11 -05:00
joule-moq-remote.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
joule-moq-room.yml
joule-moq-room: clippy clean on every target, and its workflow holds it there
2026-11-10 07:44:38 -05:00
joule-moq-web.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
jouleclaw-fabrics.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
jouleclaw-public-surface-documented.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
repo-checks.yml
jcp: the hold's life gets a published log and a second reader, and the profile spans it
2026-11-10 15:24:37 -05:00
standards-build.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-app.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-audit.yml
wai: one command for the rest of the toolchain: audit, serve, quantum, cmcd, receipt create, and every record kind in wai verify
2026-11-10 02:57:54 -05:00
wai-breaking.yml
wai conformance records: CI signs WAI's own per-suite records with WAI's key and publishes them
2026-11-10 03:11:58 -05:00
wai-byte-equality.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-catalogue.yml
wai deploy: a project's built tree on any deployment target, by its digest, with the target's signed receipts
2026-11-10 12:43:01 -05:00
wai-conformance.yml
SPEC §5: a sink that presents video decodes AV1, the video floor, with its decoder suite
2026-11-10 13:42:23 -05:00
wai-det-jpegai.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-energy-receipts.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-examples.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-fleet.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-formal-verification.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-fuzz.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-http.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-int-module.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-jpegai-e2e.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-key-keychain.yml
wai-key-keychain.yml runs on a push to main that changes key.rs
2026-11-08 13:38:12 -05:00
wai-key-proxy.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-key-windows.yml
wai key's Windows leg: the README and mcp.json kept as committed, two tests read paths as Windows writes them
2026-11-09 08:39:36 -05:00
wai-ledger.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-media-riscv.yml
CI: the integer decoders on Vulkan GPUs, and the golden suite on RISC-V under a pinned emulator
2026-11-09 21:38:51 -05:00
wai-neural-e2e.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-neural-gates.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-ops-differential.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-ops-gpu.yml
CI: the integer decoders on Vulkan GPUs, and the golden suite on RISC-V under a pinned emulator
2026-11-09 21:38:51 -05:00
wai-ops-npu.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-ops.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-pack.yml
Mode F: WAI envelopes as the samples of a fragmented MP4 track, written, read and checked against CTA-5005-B
2026-11-10 14:26:36 -05:00
wai-quantum-cli-release.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-cli.yml
Landscape receipts in the corpus, judged by form by both verifiers
2026-11-10 15:19:26 -05:00
wai-quantum-contract.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-cuda.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-dataflow.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-desktop-release.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-docs.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-dsp.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-editors.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-estimate.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-formats.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-fpga.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-hip.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-js-release.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-js.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-landscape-devices.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-landscape-fpga.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-landscape.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-lang.yml
wai-quantum: qelib1.inc's remaining gates, and an import corpus of exported programs with their outcome probabilities
2026-11-10 14:34:21 -05:00
wai-quantum-metal.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-npu-cores.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-npu.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-opencl.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-processors.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-pulse.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-py-release.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-py.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-qec.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-qpu.yml
wai.quantum.provider/1 carries energy-landscape jobs, and verify holds their answers to a form
2026-11-10 15:19:26 -05:00
wai-quantum-qudit.yml
wai-quantum: qudits of 4 and 6 levels, every constant exact or the nearest value, and qudit jobs in the engine
2026-11-10 15:14:59 -05:00
wai-quantum-registry.yml
wai-quantum: devices whose two-qubit gate is XX(θ), and star devices whose qubits move into a resonator
2026-11-10 14:07:59 -05:00
wai-quantum-service.yml
wai-quantum-service's tests: each service binds its own port, the pid 1 test runs only where the kernel makes its namespaces, and the long checks fit the host
2026-11-09 22:36:05 -05:00
wai-quantum-sme.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-studio.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-tensor-engine.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-tensor-program.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-variational.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-vector.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-verdict.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-views.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-wasmq.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-quantum-webgpu.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-release-windows-build.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-release.yml
wai conformance records: CI signs WAI's own per-suite records with WAI's key and publishes them
2026-11-10 03:11:58 -05:00
wai-sink-android.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-sink-swift.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-sota-vectors.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-studio.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-vector.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-web-reach.yml
ci: a push to main takes a concurrency group of its own, so no later push cancels its run
2026-11-09 20:46:02 -05:00
wai-web-wasm.yml
wai: a figure shown as what it is; the world page never prints unmetered as zero
2026-11-10 02:19:57 -05:00