open-standards/.github/workflows
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science ff06055e5c
All checks were successful
standards workspaces build + test / which workspaces this change touches (pull_request) Successful in 14s
repository checks / lockfiles, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 1m31s
standards workspaces build + test / arl-rs (arl/arl-rs, arl-rs, linux) (pull_request) Successful in 1m12s
standards workspaces build + test / eoc-rs (eoc/eoc-rs, -p eoc-meter --features cuda, eoc-rs, linux) (pull_request) Successful in 2m10s
standards workspaces build + test / jcp-rs (jcp-conformance, jcp/jcp-rs, -p jcp-energy --features nvml, jcp-rs, linux) (pull_request) Successful in 1m40s
standards workspaces build + test / joule-ui-rs (joule-ui/joule-ui-rs, joule-ui-rs, linux) (pull_request) Successful in 1m16s
standards workspaces build + test / joulehook-rs (joulehook/joulehook-rs, joulehook-rs, linux) (pull_request) Successful in 1m13s
standards workspaces build + test / pool-rs (pool/pool-rs, pool-rs, linux) (pull_request) Successful in 1m10s
standards workspaces build + test / proof-rs (proof-conformance, proof/proof-rs, proof-rs, linux, true) (pull_request) Successful in 1m30s
standards workspaces build + test / sense-rs (sense/sense-rs, sense-rs, linux) (pull_request) Successful in 1m12s
standards workspaces build + test / sandbox-rs (sandbox-conformance, sandbox/sandbox-rs, -p sandbox-tee --features amd-kds,intel-pcs, sandbox-rs, linux) (pull_request) Successful in 2m43s
standards workspaces build + test / smart-byte-rs (smart-byte/smart-byte-rs, smart-byte-rs, linux) (pull_request) Successful in 4m16s
standards workspaces build + test / jouleclaw-rs (-nodebug, jouleclaw/jouleclaw-rs, -p jouleclaw-energy --features rapl,nvml, jouleclaw-rs, linux-arm64, -C target-feature=+fp16) (pull_request) Successful in 4m40s
standards workspaces build + test / aac-rs (aac-conformance, aac/aac-rs, aac-rs, linux-arm64) (pull_request) Successful in 5m7s
standards workspaces build + test / joulecontract-rs (joulecontract/joulecontract-rs, joulecontract-rs, linux-arm64, true) (pull_request) Successful in 1m3s
standards workspaces build + test / map-rs (map-conformance, map/map-rs, map-rs, linux-arm64) (pull_request) Successful in 59s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Successful in 3m17s
standards workspaces build + test / mesh-rs (mesh/mesh-rs, -p mesh-engine-gguf -p mesh-openai --features mesh-engine-gguf/gguf,mesh-openai/server, mesh-rs, linux-arm64) (pull_request) Successful in 1m0s
standards workspaces build + test / openpay (openpay, openpay, linux-arm64) (pull_request) Successful in 3m37s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 12m40s
standards workspaces build + test / jouledesk-rs (jouledesk/jouledesk-rs, jouledesk-rs, macos) (pull_request) Successful in 3m19s
sandbox-tee: check a TDX quote's PCK chain to a pinned Intel root
#399 made verify_tdx trust only a PCK key the verifier pins, but left
pinning it to the deployment: a hand pin, with nothing checking the
quote's certificate chain to Intel's root. The SEV-SNP side has amd_kds
for exactly this.

intel_pcs (feature `intel-pcs`):
- verify_pck_chain(trusted_root_der, chain_pem, now_unix) checks the chain
  a quote carries, the PCK leaf then its issuing CA, optionally ending in
  the root, to the pinned root. It checks:
  - ECDSA-P256-SHA256 signatures, with the X.509 (r, s) decoded via der;
  - the declared algorithm;
  - issuer and subject names linking up the chain;
  - each certificate valid at now.
  A presented root must equal the pinned one byte for byte; a longer chain
  is refused. It returns the PCK key, the TeeAnchor::Tdx a quote is
  verified by.
- pck_from_quote derives that anchor from the quote's own chain, checked
  to the root. The trust comes from the root, never from the quote.
- Revocation lists are the deployment's to consult, as stated in the
  module.

tdx: TdxQuote::pck_chain(); local_quote takes optional certification data,
so a software quote can carry a real chain.

CI: the sandbox-rs job now runs `cargo test -p sandbox-tee --features
amd-kds,intel-pcs`. The amd-kds tests had never run in CI: a plain
`cargo test` does not enable the feature.

SPEC §7.6 and the §9 readiness row say the chain is checked.

Tests: 5, against a self-generated chain of Intel's structure:
- a chain to the pinned root yields the PCK, with or without the root;
- a chain to another root is refused, pinned or presented;
- every link must hold (a forged leaf or CA, a misnamed issuer, a missing
  CA, a chain too long, a relabeled algorithm);
- a chain outside its validity is refused;
- the anchor from a quote's chain verifies that quote and no other root
  yields one.
Mutation testing: 10 mutants, all killed.

Verified on the build host: sandbox-tee with amd-kds and intel-pcs, 51
tests; the sandbox workspace, 434; clippy -D warnings clean. Repo checks
pass, including workflow concurrency and lockfiles.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 19:11:54 -04:00
..
conformance.yml ci: thirteen WAI workflows run only when the pull request's own diff touches them 2026-10-14 03:41:49 -04:00
energy-hardware.yml ci: run the new platform-gated meter tests where their platform is 2026-10-10 18:11:22 -04:00
joule-code-conformance.yml Merge remote-tracking branch 'origin/main' into joule-moq/e2ee-web 2026-10-20 17:21:44 -04:00
joule-moq-room.yml Merge remote-tracking branch 'origin/main' into joule-moq/e2ee-web 2026-10-20 17:21:44 -04:00
joule-moq-web.yml Merge remote-tracking branch 'origin/main' into joule-moq/e2ee-web 2026-10-20 17:21:44 -04:00
jouleclaw-fabrics.yml jouleclaw-omni: read mmap'd GGUF bytes without assuming their alignment 2026-10-20 17:09:37 -04:00
jouleclaw-public-surface-documented.yml ci: one run per branch at a time — no workflow declared a concurrency group 2026-10-05 12:01:57 -04:00
repo-checks.yml ci: one job for the repository's script checks 2026-10-14 12:05:46 -04:00
standards-build.yml sandbox-tee: check a TDX quote's PCK chain to a pinned Intel root 2026-10-21 19:11:54 -04:00
wai-byte-equality.yml int_mlicpp gate 2: the bundle decodes through wmb1/1 to its goldens 2026-10-15 21:44:10 -04:00
wai-conformance.yml wai.media.contribution: registry, SPEC §5, CHANGELOG, CI step, corpus README 2026-10-21 12:58:55 -04:00
wai-energy-receipts.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-formal-verification.yml WIV1 and WIR1 gate 7 (WIP, committed before running): the direct predictors and step leave production 2026-10-17 12:04:26 -04:00
wai-fuzz.yml wai: coverage-guided fuzzing of the reader, and the container reservations it found 2026-10-14 10:58:29 -04:00
wai-http.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-jpegai-e2e.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-neural-e2e.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-neural-gates.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-ops-differential.yml wai: D2c M7b gate 4: the networks against the direct networks, on random networks 2026-10-18 01:07:07 -04:00
wai-ops-gpu.yml ci: wai-ops-gpu, the GPU equality on the macos runner's GPU and in its browser 2026-10-21 04:37:32 -04:00
wai-ops.yml ci: thirteen WAI workflows run only when the pull request's own diff touches them 2026-10-14 03:41:49 -04:00
wai-pack.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-cli-release.yml wai-quantum-cli release: link the Linux binaries static, not static-pie 2026-10-20 22:24:10 -04:00
wai-quantum-cli.yml wai-quantum-cli: the command line on the job service's engine, installable 2026-10-20 17:34:16 -04:00
wai-quantum-cuda.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-dataflow.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-dsp.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-fpga.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-hip.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-metal.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-npu-cores.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-npu.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-opencl.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-processors.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-qpu.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-service.yml wai-quantum: the cut-rank table on the GPU, and the engine's cutrank_single method 2026-10-20 17:34:17 -04:00
wai-quantum-sme.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-studio.yml Quantum Studio: one interface for the browser and the desktop app, on the job service's engine 2026-10-20 17:34:16 -04:00
wai-quantum-tensor-engine.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-tensor-program.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-vector.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-quantum-webgpu.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-sota-vectors.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-vector.yml ci: thirteen WAI workflows run only when the pull request's own diff touches them 2026-10-14 03:41:49 -04:00
wai-web-reach.yml ci: run each suite for what can affect it; re-runs after a merge become nightly 2026-10-19 02:49:11 -04:00
wai-web-wasm.yml wai-quantum engine in a page: one job function for every host, and the engine in the browser 2026-10-20 17:34:16 -04:00