Skip to content

v0.3.1

Choose a tag to compare

@imran-siddique imran-siddique released this 26 Sep 21:27
7d90823

Patch release. pip install ca2a-runtime==0.3.1. No API or wire format changes from 0.3.0.

Fixed

  • Malformed input from outside now fails with the documented error instead of escaping as a Python exception (#202):
    • TdxQuote.parse confines reads to the declared signature section and checks each nested length. A short section used to raise struct.error.
    • verify_challenge refuses a MAC that is not 64 lowercase hex. A non-ASCII one used to raise TypeError.
    • DelegationCredential.from_dict and verify_trace_dag refuse entries that are not objects.
    • The reference server answers 400 to bodies that hit the JSON parser's nesting or integer-digit limits, where it used to drop the connection.
  • canonicalize refuses non-string object keys. It coerced them with str(), so {1: "a", "1": "b"} serialized one key twice (#202).
  • The container image installs its dependencies from hash-pinned locks (requirements/runtime.txt, requirements/build.txt) and pins the python:3.11.15-slim-bookworm base by digest. ClusterFuzzLite targets now cover the wire documents, the attestation parsers and the canonicalizer (#202).

Artifacts

  • PyPI: ca2a-runtime 0.3.1 (sdist and wheel, trusted publishing)
  • Container: ghcr.io/agentrust-io/ca2a-runtime:v0.3.1, signed with cosign keyless, with SLSA build provenance
  • SPDX SBOM and AGT governance evidence attached below

Full diff: v0.3.0...v0.3.1