Skip to content

docs: stop claiming hardware attestation unconditionally; move identifiers off agentrust.io - #423

Merged
imran-siddique merged 1 commit into
mainfrom
docs/readme-attestation-conditional
Jul 28, 2026
Merged

docs: stop claiming hardware attestation unconditionally; move identifiers off agentrust.io#423
imran-siddique merged 1 commit into
mainfrom
docs/readme-attestation-conditional

Conversation

@imran-siddique

Copy link
Copy Markdown
Contributor

Two accuracy fixes.

1. The README contradicted itself

Line 29 said, unconditionally:

Each session produces a signed, hardware-attested TRACE Claim that a verifier checks without trusting the operator.

Two paragraphs below, the TL;DR says:

Run pip install cmcp-runtime and start in software mode with no hardware required.

Both cannot be true. In software mode the claim is signed but not hardware-attested. Now reads "hardware-attested when the gateway runs in a TEE and signed-only in software mode", which is what the runtime does.

This is a positioning call as much as a wording one: the honest version is still a strong claim, and it is the one that survives someone running the quickstart and inspecting what they got.

2. Identifiers moved off agentrust.io

agentrust.io is not ours; it resolves to parked AWS addresses. These pointed at it:

  • JSON Schema $id for trace-claim, audit-entry, catalog-entry
  • @context in two test fixtures
  • the maintainer email in pyproject.toml

All now agentrust-io.com. They never resolved, so nothing that worked stops working, but publishing schema $ids on a domain a third party could register is not a position to hold.

Deliberately unchanged: tag:agentrust.io,2026:trace-v0.1. That EAT profile identifier appears in 125 files across the org and sits inside signed payloads. An RFC 4151 tag URI is only valid if the minter controlled the domain on the stated date, so it is wrong rather than misspelled, but changing it is a cross-repo transition with a verifier-compatibility question attached. Raising separately.

Note on the test environment

The suite initially failed on test_post_quantum_manifest_without_pq_extra_fails_closed_cleanly. Not a regression: this clone's venv had agent-manifest 0.5.0 installed while pyproject.toml requires >=0.6.1, so it was reproducing the exact RuntimeError that 0.6.1 fixed. Upgrading the venv to 0.7.0 resolved it. CI installs from pyproject.toml so it was never affected, but anyone with a stale local env will hit it.

893 passed, 8 skipped.

…entrust.io

The README said "Each session produces a signed, hardware-attested TRACE
Claim" with no qualifier, and the TL;DR two paragraphs below tells you to
pip install and start in software mode with no hardware required. Both
cannot be true. In software mode the claim is signed but not
hardware-attested, so the sentence now says so.

Separately, agentrust.io is not our domain: it resolves to parked AWS
addresses. The JSON Schema $id values for trace-claim, audit-entry and
catalog-entry pointed there, as did the @context in two test fixtures and
the maintainer email. Those identifiers never resolved, so nothing that
worked stops working, but publishing schema ids on a domain someone else
could take is not a good position.

tag:agentrust.io,2026:trace-v0.1 is left alone on purpose. It is a
cross-repo identifier carried inside signed payloads, so it needs a
transition decision rather than a find-and-replace.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@imran-siddique
imran-siddique merged commit b656df9 into main Jul 28, 2026
12 checks passed
@imran-siddique
imran-siddique deleted the docs/readme-attestation-conditional branch July 28, 2026 00:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant