Skip to content
Draft
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
529 changes: 265 additions & 264 deletions CHANGELOG.md

Large diffs are not rendered by default.

409 changes: 409 additions & 0 deletions docs/rfcs/a2a-delegation-profile.md

Large diffs are not rendered by default.

132 changes: 132 additions & 0 deletions examples/delegation-link/01-valid-single-hop.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
{
"id": "TRACE-DELEG-001",
"name": "valid-single-hop",
"description": "One delegation from a trusted root. The shortest chain the profile has anything to say about, and the case every rule below is a departure from.",
"spec": "docs/rfcs/a2a-delegation-profile.md",
"profile": "trace.a2a.delegation-link.v0",
"context": {
"leaf": "sha256:939ccd49a652239792388be929ed99ca2c771acbc72aa84eefd05913384b516c",
"now": 1785000000,
"max_depth": 4,
"supported_digest_algorithms": [
"sha256"
],
"data_class_lattice": [
"public",
"internal",
"confidential",
"restricted"
],
"trusted_root_keys": [
{
"kty": "OKP",
"crv": "Ed25519",
"x": "pNTZUXlAITEWbtVbHk6zGRwVD73s0BEakqkKKaFQyZ4"
}
],
"credentials": {
"cred:orchestrator-to-planner": {
"issuer": "spiffe://acme.example/agent/orchestrator",
"holder": "spiffe://acme.example/agent/planner",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:planner-to-executor": {
"issuer": "spiffe://acme.example/agent/planner",
"holder": "spiffe://acme.example/agent/executor",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:executor-to-courier": {
"issuer": "spiffe://acme.example/agent/executor",
"holder": "spiffe://acme.example/agent/courier",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:courier-to-auditor": {
"issuer": "spiffe://acme.example/agent/courier",
"holder": "spiffe://acme.example/agent/auditor",
"not_before": 1784913600,
"not_after": 1785086400
}
}
},
"records": [
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/planner",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "confidential",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"delegation": {
"parent_record_hash": "sha256:b1d65c65d7191e1c6f57f8902548475671edad51035f1542f76a4e45337052b6",
"credential_id": "cred:orchestrator-to-planner"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "W2BsRtHZW8BVdiCsCxrNxvv4LOfgBhuS_2v7TU7TyHU"
}
},
"signature": "w1-yxCO_nNRY2pj2rGO065DN25Myk9xLJ13DzL0d9tTTwb3Wq0tnwe2H5U5oEXctynLDJN8xP0CLhLjVcBUmDg"
},
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/orchestrator",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "restricted",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "pNTZUXlAITEWbtVbHk6zGRwVD73s0BEakqkKKaFQyZ4"
}
},
"signature": "m3TAE_Z_chc0gs8HMh1KAN4NECFLP09kiqyQPBDz9w9G0_iYoQ5-I94gpptC1a4xiRloSFLyTdprEmr9CFD_DA"
}
],
"expected": {
"classification": "verified",
"codes": []
}
}
246 changes: 246 additions & 0 deletions examples/delegation-link/02-valid-full-depth-out-of-order.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,246 @@
{
"id": "TRACE-DELEG-002",
"name": "valid-full-depth-out-of-order",
"description": "Four delegations, exactly on `max_depth`, narrowing at every hop, with the record set emitted leaf-first. Verifies. A verifier whose bound is off by one rejects this, which is the other half of vector 21.",
"spec": "docs/rfcs/a2a-delegation-profile.md",
"profile": "trace.a2a.delegation-link.v0",
"context": {
"leaf": "sha256:1cfd7c177f3d961fb827aabf0316d9d7f6694a95d99579f26947fbdb4f648861",
"now": 1785000000,
"max_depth": 4,
"supported_digest_algorithms": [
"sha256"
],
"data_class_lattice": [
"public",
"internal",
"confidential",
"restricted"
],
"trusted_root_keys": [
{
"kty": "OKP",
"crv": "Ed25519",
"x": "pNTZUXlAITEWbtVbHk6zGRwVD73s0BEakqkKKaFQyZ4"
}
],
"credentials": {
"cred:orchestrator-to-planner": {
"issuer": "spiffe://acme.example/agent/orchestrator",
"holder": "spiffe://acme.example/agent/planner",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:planner-to-executor": {
"issuer": "spiffe://acme.example/agent/planner",
"holder": "spiffe://acme.example/agent/executor",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:executor-to-courier": {
"issuer": "spiffe://acme.example/agent/executor",
"holder": "spiffe://acme.example/agent/courier",
"not_before": 1784913600,
"not_after": 1785086400
},
"cred:courier-to-auditor": {
"issuer": "spiffe://acme.example/agent/courier",
"holder": "spiffe://acme.example/agent/auditor",
"not_before": 1784913600,
"not_after": 1785086400
}
}
},
"records": [
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/auditor",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "public",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"delegation": {
"parent_record_hash": "sha256:575f7a6461062a7b9c960b54fe5661faaec207472c5e5dc97547ecf5f678df61",
"credential_id": "cred:courier-to-auditor"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "V3hU2B1dYeqXQeRP2jJmUpez71enNy7RAp-Ef4rK734"
}
},
"signature": "QfFxAtWzE1lJi3xdTrCkjfU84p9T9pmXvNRwlyZhdXZujQS1EOHVNjn9U6TqBAXgDqNuAMnlxxaw3Hr0HsufCw"
},
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/courier",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "internal",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"delegation": {
"parent_record_hash": "sha256:d05ba16a8608d3061ab9178424ce0b5c5f1d0d40472c057f4fe8dca16a713dcd",
"credential_id": "cred:executor-to-courier"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "KSw3ZhDAmsf7DDzqMDLU-sVSw2Ns525oP-SMpU-FzQY"
}
},
"signature": "g_Zo3wVxYi_czGNi4tg_GyEpzc7i5MPitG4l_u79xKV9iH996juPHXXq6LyuwQWaKzLs3kF222xgLOnU6c9dDA"
},
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/executor",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "confidential",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"delegation": {
"parent_record_hash": "sha256:94e67431b15e62ca8d333bee66f5c509dbe24275bd4858c0ae693ef32366641b",
"credential_id": "cred:planner-to-executor"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "9m_aNMvOSk_seLmEY-fD0lZZgQMjASQ-ILQUnJwtJ3A"
}
},
"signature": "lGkHlTh-HxvT-Subg8v5AxA8__3U4e1X-WNUL5yYMg9ShD5v7qvsAOKWuDC46c-6IiRqfGqToRWqN5rQ4PpdCA"
},
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/planner",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "restricted",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"delegation": {
"parent_record_hash": "sha256:b1d65c65d7191e1c6f57f8902548475671edad51035f1542f76a4e45337052b6",
"credential_id": "cred:orchestrator-to-planner"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "W2BsRtHZW8BVdiCsCxrNxvv4LOfgBhuS_2v7TU7TyHU"
}
},
"signature": "YU4x2PlIkNR3mOOhy9cL1ld8cedfUox2b8dPUHZ3n3m_GFREEpWGfgbrM8I0l5PtIb9rsCEw1vHJDhnuBw2iCg"
},
{
"eat_profile": "tag:agentrust-io.com,2026:trace-v0.2",
"iat": 1785000000,
"subject": "spiffe://acme.example/agent/orchestrator",
"model": {
"provider": "anthropic",
"model_id": "claude-sonnet-4-6"
},
"runtime": {
"platform": "software-only",
"measurement": "sha256:0000000000000000000000000000000000000000000000000000000000000000"
},
"policy": {
"bundle_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"enforcement_mode": "enforce"
},
"data_class": "restricted",
"build_provenance": {
"slsa_level": 0,
"digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"appraisal": {
"status": "affirming",
"verifier": "https://verifier.example/v1"
},
"cnf": {
"jwk": {
"kty": "OKP",
"crv": "Ed25519",
"x": "pNTZUXlAITEWbtVbHk6zGRwVD73s0BEakqkKKaFQyZ4"
}
},
"signature": "m3TAE_Z_chc0gs8HMh1KAN4NECFLP09kiqyQPBDz9w9G0_iYoQ5-I94gpptC1a4xiRloSFLyTdprEmr9CFD_DA"
}
],
"expected": {
"classification": "verified",
"codes": []
}
}
Loading