Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions CHARTER.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,9 @@ Upon host organization acceptance, governance transitions from the current Proje

## 4. Intellectual Property Policy

All contributions must be made under the terms of [LICENSE](LICENSE). Contributors must sign commits with the Developer Certificate of Origin (DCO). No contribution may incorporate material covered by a patent the contributor is unwilling to license royalty-free to conforming implementations.
All contributions must be made under the terms of [LICENSE](https://github.com/agentrust-io/trace-spec/blob/main/LICENSE). Contributors must sign commits with the Developer Certificate of Origin (DCO). No contribution may incorporate material covered by a patent the contributor is unwilling to license royalty-free to conforming implementations.

Normative specification text and the normative TRACE JSON Schema are licensed under the Community Specification License 1.0. Source code, examples, workflows, and tests are licensed under Apache License 2.0. Documentation other than specification materials is licensed under CC BY 4.0. Earlier specification publications remain available under the licenses stated when they were published. See [LICENSE](LICENSE) and the [license map](Governance/License.md).
Normative specification text and the normative TRACE JSON Schema are licensed under the Community Specification License 1.0. Source code, examples, workflows, and tests are licensed under Apache License 2.0. Documentation other than specification materials is licensed under CC BY 4.0. Earlier specification publications remain available under the licenses stated when they were published. See [LICENSE](https://github.com/agentrust-io/trace-spec/blob/main/LICENSE) and the [license map](Governance/License.md).

## 5. Trademark Policy

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,4 @@ Maintainer response targets are commitments to you, not minimums. Ping the PR if

Anyone who submits a PR, files an issue, or participates in discussion on the repository is a Contributor bound by the license terms.

Specification contributions are made under the [Community Specification License 1.0](Governance/COMMUNITY-SPECIFICATION-LICENSE.md) and the [Community Specification Contributor License Agreement](Governance/CLA.md). Source-code contributions are made under Apache License 2.0. Documentation contributions other than specification text are made under CC BY 4.0. You keep the copyright in your contributions: no contributor is asked to assign copyright to the project. See [LICENSE](LICENSE), the [license map](Governance/License.md), and [General Project Policies](GOVERNANCE.md#general-project-policies).
Specification contributions are made under the [Community Specification License 1.0](Governance/COMMUNITY-SPECIFICATION-LICENSE.md) and the [Community Specification Contributor License Agreement](Governance/CLA.md). Source-code contributions are made under Apache License 2.0. Documentation contributions other than specification text are made under CC BY 4.0. You keep the copyright in your contributions: no contributor is asked to assign copyright to the project. See [LICENSE](https://github.com/agentrust-io/trace-spec/blob/main/LICENSE), the [license map](Governance/License.md), and [General Project Policies](GOVERNANCE.md#general-project-policies).
2 changes: 1 addition & 1 deletion GOVERNANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ All code contributions to the Project must be made under the Apache License, Ver

All documentation (excluding specifications) will be made available under the Creative Commons Attribution 4.0 International license, available at: https://creativecommons.org/licenses/by/4.0.

Specification text published before this policy took effect stays available under the license under which it was published. See [LICENSE](LICENSE) and the [license map](Governance/License.md).
Specification text published before this policy took effect stays available under the license under which it was published. See [LICENSE](https://github.com/agentrust-io/trace-spec/blob/main/LICENSE) and the [license map](Governance/License.md).

## Roles

Expand Down
2 changes: 1 addition & 1 deletion Governance/License.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ TRACE specification materials are subject to the [Community Specification Licens
- the normative TRACE JSON Schema at `schema/trace-claim.json`; and
- other files expressly identified as part of a Draft Specification or Approved Specification.

Earlier specification publications remain available under the licenses stated when they were published. See the repository [LICENSE](../LICENSE) for that history.
Earlier specification publications remain available under the licenses stated when they were published. See the repository [LICENSE](https://github.com/agentrust-io/trace-spec/blob/main/LICENSE) for that history.

## Source Code License

Expand Down
8 changes: 4 additions & 4 deletions PRIVACY.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Privacy

agentrust-trace (the TRACE SDK) collects and transmits no personal data.
The TRACE SDK processes the records, keys, and evidence supplied by the calling application. Records can contain identifiers, artifact locations, or other sensitive metadata chosen by the producer; review those fields before sharing them.

It runs locally as a Python library. It processes only the inputs you give it, entirely on your machine, and sends no telemetry, analytics, or usage data to agentrust-io, OPAQUE, or any third party. There is no account, login, or tracking, and no cookies or background network calls.
Core signing and signature verification run locally. The SDK does not send project telemetry or analytics. Application-provided callbacks, evidence retrieval, and registry submission can involve network services chosen by that application; their handling of data is separate from the local signature operation.

Any network activity is user-initiated: anchoring a record to a SCITT transparency service happens only when you explicitly call it, to the endpoint you configure.
Uninstalling the package does not delete generated records, exported keys, logs, caches, backups, or records already shared with a registry or recipient. Manage those artifacts through your application's retention and deletion procedures.

Uninstalling removes it completely. Questions or corrections: https://github.com/agentrust-io/trace-spec/issues
[Report a correction](https://github.com/agentrust-io/trace-spec/issues).
2 changes: 1 addition & 1 deletion ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Status as of August 2026. Spec **v0.2** is current ([`spec/trace-v0.2.md`](spec/
- **OWASP Agentic AI Top 10 cross-walk**: [`docs/crosswalks/owasp-agentic-top-10.md`](docs/crosswalks/owasp-agentic-top-10.md).
- **Acta decision-receipt cross-walk**: [`docs/crosswalks/acta-decision-receipts.md`](docs/crosswalks/acta-decision-receipts.md).
- **Producer adapters** for AGT, cMCP, and sandboxed agent runtimes, one code path spanning Level 0 and Level 1.
- **Platform bindings documented** for AMD SEV-SNP, Intel TDX, and NVIDIA H100 ([`docs/platforms/`](docs/platforms/)). This SDK verifies the record; verification of the attestation evidence itself lives in `cmcp` and `agent-manifest`, both of which have been run against genuine hardware quotes.
- **Platform bindings documented** for AMD SEV-SNP, Intel TDX, and NVIDIA H100 ([`docs/platforms/`](docs/platforms/index.md)). This SDK verifies the record; verification of the attestation evidence itself lives in `cmcp` and `agent-manifest`, both of which have been run against genuine hardware quotes.
- **Reference implementation.** cMCP enforces Cedar policy inside the TEE and emits signed GatewayClaims carrying `policy`, `data_class`, and `tool_transcript`.

## Next: v0.3
Expand Down
10 changes: 5 additions & 5 deletions docs/crosswalks/acta-decision-receipts.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

## Purpose

[Spec section 3.3.2](../../spec/trace-v0.1.md#332-action-receipts-for-embodied-workflows-informative) describes action receipts as evidence that sits below a Trust Record: a per-action signed statement, bound to a call or session, that a verifier checks independently of the core record. The [embodied-workflow fixtures](../../examples/action-receipts/README.md) show one profile of that pattern, for a physical controller (a robot arm, a safety monitor) signing an assertion about a physical action.
[Spec section 3.3.2](../../spec/trace-v0.1.md#332-action-receipts-for-embodied-workflows-informative) describes action receipts as evidence that sits below a Trust Record: a per-action signed statement, bound to a call or session, that a verifier checks independently of the core record. The [embodied-workflow fixtures](https://github.com/agentrust-io/trace-spec/blob/main/examples/action-receipts/README.md) show one profile of that pattern, for a physical controller (a robot arm, a safety monitor) signing an assertion about a physical action.

This cross-walk describes a second profile of the same pattern: an **Acta decision receipt**, evidencing a software decision (an AI agent's tool call, decided by a local policy gate before it runs) rather than a physical one. The verification pattern in 3.3.2 is deliberately domain-agnostic; the intent here is to show it composes with an existing, independently specified receipt format without a wire-format change to either side.

Expand Down Expand Up @@ -43,11 +43,11 @@ Chain semantics (Acta s5.7): `previousReceiptHash` is the bare lowercase hex SHA

`decision` is `allow`, `deny`, or `rate_limit`; a `deny` receipt is signed with the same rigor as an `allow`, which is the property [trace-spec#95](https://github.com/agentrust-io/trace-spec/issues/95)'s "valid negative controller outcome" case and this profile's `02-valid-denied.json` fixture both exercise.

Working fixtures: [`examples/action-receipts/acta/`](../../examples/action-receipts/acta/).
Working fixtures: [`examples/action-receipts/acta/`](https://github.com/agentrust-io/trace-spec/tree/main/examples/action-receipts/acta/).

## Field mapping

Field names on the left are exact TRACE terms as used in [spec section 3.3.2](../../spec/trace-v0.1.md#332-action-receipts-for-embodied-workflows-informative) and the [embodied fixture shape](../../examples/action-receipts/README.md#shared-receipt-shape). Field names on the right are exact Acta draft-02 fields.
Field names on the left are exact TRACE terms as used in [spec section 3.3.2](../../spec/trace-v0.1.md#332-action-receipts-for-embodied-workflows-informative) and the [embodied fixture shape](https://github.com/agentrust-io/trace-spec/blob/main/examples/action-receipts/README.md#shared-receipt-shape). Field names on the right are exact Acta draft-02 fields.

| TRACE action-receipt obligation | Acta field(s) | Notes |
|---|---|---|
Expand Down Expand Up @@ -78,7 +78,7 @@ The `chain_head` value above is real: it is the recomputable s5.7 envelope hash

## Verifier obligations, restated for this profile

Following the same checks [the embodied fixture README](../../examples/action-receipts/README.md#shared-receipt-shape) lists:
Following the same checks [the embodied fixture README](https://github.com/agentrust-io/trace-spec/blob/main/examples/action-receipts/README.md#shared-receipt-shape) lists:

1. Extract `payload` and compute its JCS-canonical bytes (Acta s4.1).
2. Resolve `signature.kid` through a pinned or manifest-bound key set, not a key carried in the receipt, and check `payload.issuer_id` matches `signature.kid`.
Expand All @@ -98,7 +98,7 @@ An Acta decision receipt proves that a specific policy decision, over a specific

## Conformance fixtures

Six real fixtures in [`examples/action-receipts/acta/`](../../examples/action-receipts/acta/), generated by an actual Ed25519 signer (generator committed alongside), covering the negative cases raised in [trace-spec#97](https://github.com/agentrust-io/trace-spec/issues/97) and [trace-spec#95](https://github.com/agentrust-io/trace-spec/issues/95): valid accepted, valid denied (negative controller-equivalent outcome), signature/key mismatch (mismatched key committed), broken chain (validly signed, wrong predecessor hash), stale policy digest, and mismatched session binding. Expected outcomes are machine-readable in `expected.json`, and [`tests/test_acta_fixtures.py`](https://github.com/agentrust-io/trace-spec/blob/main/tests/test_acta_fixtures.py) re-verifies every fixture in CI against the draft-02 envelope and the declared positive/negative results, using this repository's existing `rfc8785` and `cryptography` dependencies, so fixture or envelope drift fails the build.
Six real fixtures in [`examples/action-receipts/acta/`](https://github.com/agentrust-io/trace-spec/tree/main/examples/action-receipts/acta/), generated by an actual Ed25519 signer (generator committed alongside), covering the negative cases raised in [trace-spec#97](https://github.com/agentrust-io/trace-spec/issues/97) and [trace-spec#95](https://github.com/agentrust-io/trace-spec/issues/95): valid accepted, valid denied (negative controller-equivalent outcome), signature/key mismatch (mismatched key committed), broken chain (validly signed, wrong predecessor hash), stale policy digest, and mismatched session binding. Expected outcomes are machine-readable in `expected.json`, and [`tests/test_acta_fixtures.py`](https://github.com/agentrust-io/trace-spec/blob/main/tests/test_acta_fixtures.py) re-verifies every fixture in CI against the draft-02 envelope and the declared positive/negative results, using this repository's existing `rfc8785` and `cryptography` dependencies, so fixture or envelope drift fails the build.

## References

Expand Down
Loading