Chio/Docs
LOGIN · JOIN

PlatformFramework Mappings

Federation & Compliance

Compliance Frameworks

Use these technical mappings and implementation evidence to support an operator's framework-specific self-assessment.

Technical mappings for self-assessment

These tables map Chio's tool-invocation controls and signed evidence to selected framework topics, and they follow the mapping documents kept in the Chio repository under docs/compliance/. They support an operator's self-assessment; they do not establish organization-wide coverage. Operators remain responsible for scope, procedures, evidence, and framework obligations.

PCI DSS v4.0

PCI DSS v4.0 protects cardholder data and sensitive authentication data across people, processes, and technology. Chio does not itself process, store, or transmit cardholder data, but agent systems governed by Chio routinely call payment gateways or CRMs that hold card data. Chio's role is to reduce PCI scope of the agent layer by enforcing which tools an agent may touch, under which conditions.

The coverage column carries the grade the repository's own mapping gives each requirement (docs/compliance/pci-dss-v4.md): strong means Chio's shipped controls directly satisfy the requirement at the agent tool-governance layer, and partial means Chio supplies part of the control and something else is required alongside it.

RequirementDescriptionChio PrimitiveCoverage
Req 1.3Inbound and outbound traffic is restricted.egress_allowlist limits the egress targets an agent can reach. Chio enforces this at the application layer, not the network layer, so it does not replace network ACLs.partial
Req 6.5Changes to systems and software are managed.Policy hash in every receipt ties an invocation to a policy version.strong
Req 7.2Access by business need-to-know is assigned.CapabilityToken.scope narrows reachable tools; ToolGrant.constraints narrow parameters; delegation attenuates monotonically.strong
Req 7.2.5Application and system accounts follow least privilege.Capability-based least privilege is the default posture; there is no implicit authority.strong
Req 7.3Access is managed through access-control systems.Capability issuance through chio-governance and chio-control-plane; revocation via revocation_runtime.strong
Req 8.2User identification and account lifecycle.CapabilityToken.subject uniquely identifies each agent; WorkloadIdentity captures the normalized runtime identity.strong
Req 8.3Strong authentication is established.Ed25519 keypair per agent; DPoP binds each call to the subject with replay safety via action_hash and nonce.strong
Req 8.6Application and system account use is managed.Capability expiry through expires_at, revocation, and delegation-chain validation.strong
Req 10.2Audit logs are implemented.Append-only receipt store; every mediated decision emits a signed receipt.strong
Req 10.3Audit logs are protected from destruction or unauthorized modification.Merkle commitments in crates/kernel/chio-kernel/src/checkpoint.rs; inclusion proofs via build_inclusion_proof.strong
Req 10.5Audit-log history is retained.RetentionConfig.retention_days and max_size_bytes; archival preserves checkpoint rows. PCI's one-year minimum must be set explicitly.strong
Req 10.7Failures of critical security controls are detected.Fail-closed pipeline produces deny receipts on error; the SIEM adapter at crates/observability/chio-siem/src/exporter.rs streams events. Alert escalation lives outside Chio.partial
Req 11.5Unexpected file changes are detected.Merkle checkpoint verification detects tampering in the receipt log. It is not a network intrusion detection system.partial
Req 12.8Third-party service providers are managed.Capability scoping restricts which third-party tool servers an agent can reach. Chio does not audit the providers themselves.partial
Req 12.10Suspected and confirmed security incidents are responded to.Evidence export bundles are usable for investigation; revocation contains the agent. No incident-response playbook ships with Chio.partial

Scope reduction is not scope elimination

Chio reduces the PCI scope of the agent layer by limiting what agents can call. It does not remove PCI obligations on the tool servers that actually handle cardholder data, nor does it substitute for PAN masking, encryption at rest, or the organization's Report on Compliance. Treat Chio as input to the scoping exercise, not as its conclusion. Requirements 5 and 9 are out of scope for a tool-governance layer, and Requirement 1 is out of scope apart from the application-layer egress control in the table above.

OWASP LLM Top 10 (2025)

The OWASP Top 10 for LLM Applications (2025 edition) names the most critical security risks for LLM-based software. Chio governs the tool-invocation boundary, which is where most "LLM does something in the real world" risks concentrate.

RiskChio MitigationCoverage
LLM01 Prompt InjectionInput-validation guards on tool-call arguments; prompt-injection and jailbreak detectors as application-layer guards; every trigger recorded in ChioReceipt.evidence as a GuardEvidence entry.partial
LLM02 Sensitive Information Disclosuresecret_leak, response_sanitization, data_flow, and column-level constraints on the SQL and vector guards; QueryResultGuard can block or redact results; capability scoping limits reachable data sources.strong
LLM03 Supply ChainSigned tool manifests with Ed25519 signatures; manifest verification before registration; patch_integrity guard for patch content; workload-identity attestation. Manifest signatures cover the tool definition, not the server binary.partial
LLM04 Data and Model PoisoningData-layer guards restrict what a deployed agent can write back into tool-accessible stores; training-data poisoning is out of Chio's scope.out-of-scope
LLM05 Improper Output Handlingresponse_sanitization, the post-invocation QueryResultGuard, and structured output schemas enforced by request_matching; a post-invocation block verdict stops unsafe output from reaching the agent or a downstream tool.strong
LLM06 Excessive AgencyCapability tokens bound tool reach; typed constraints bound arguments; delegation chains attenuate monotonically; velocity and budget caps bound rate and spend; GovernedAutonomyTier requires step-up approval for sensitive tiers. Evaluation is per-invocation, not per-plan.strong
LLM07 System Prompt LeakageWhere system prompts flow through governed tools, response sanitization and secret-leak can match on known prompt content; capability scoping prevents introspection tools that would expose prompts.partial
LLM08 Vector and Embedding WeaknessesVector-store data-layer guard restricts embeddings an agent may read or write; egress allowlist limits retrieval endpoints; column constraints can deny sensitive fields pre-vectorization.partial
LLM09 MisinformationReceipts record what was returned and who received it, supporting correction workflows; factuality evaluation itself is out of Chio's scope.partial
LLM10 Unbounded ConsumptionBudget enforcement caps monetary spend atomically per invocation and per grant; velocity guard caps invocation rate and spend rate; revocation is immediate; grant expiry bounds time.strong

Four of the ten risks have strong coverage at Chio's boundary (LLM02, LLM05, LLM06, LLM10). Five are partially covered because the root cause sits inside the model; Chio complements rather than replaces model-layer defenses. One (LLM04) is out of scope at the tool-governance layer. The guards named above live in crates/guards/chio-guards/src/ and crates/guards/chio-data-guards/src/.


Colorado SB 24-205

Colorado Senate Bill 24-205, the "Consumer Protections for Artificial Intelligence" act, takes effect February 1, 2026. It imposes record-keeping, transparency, and accountability obligations on developers and deployers of high-risk AI systems. Chio operates at the runtime-kernel layer and supplies the record-keeping, audit, tamper-evidence, and proof-of-possession material those obligations draw on.

The full clause-by-clause mapping against § 6-1-1703, subsections (1) through (7), is its own page: see Colorado SB 24-205 for the per-clause requirement table, the named test backing each claim, and the disclosure, retention, tamper-evidence, and budget-accountability mechanics in full.

Classification and filing remain operator-owned

Whether a deployment is a high-risk AI system under SB 24-205, and the June 30, 2026 filing obligations that attach, are legal questions. Chio supplies the technical record-keeping the statute expects; obtain legal review against the enrolled bill text before filing.

Frameworks Without a Control Mapping

Two frameworks operators ask about most often, SOC 2 and the HIPAA Security Rule, have no control mapping in the Chio repository. The only place either appears is docs/protocols/SESSION-COMPLIANCE-CERTIFICATE.md section 7, which lines four Trust Services criteria and three § 164.312 provisions up against fields of a session compliance certificate. Those fields are not the ones the shipped certificate carries: SessionComplianceCertificateBody in crates/kernel/chio-kernel/src/compliance_certificate.rs holds session_id, policy_hash, receipt_count, all_signatures_valid, crypto_floor, and issued_at. So this page carries no SOC 2 or HIPAA table, because there is nothing in the source to carry one from.

The mechanisms an operator would reach for in either exercise are documented on their own terms rather than against a criterion number: Capabilities for scoped access and revocation, Receipts for the per-invocation record, and Guards for the named controls. The frameworks the repository does map are PCI DSS v4.0 and the OWASP LLM Top 10 above, plus the EU AI Act, NIST AI RMF, ISO/IEC 42001, Colorado SB 24-205, and HITRUST i1.


Exporting Evidence Bundles

Every framework above benefits from the same evidence pipeline: chio evidence export. The command assembles a bundle an auditor can verify offline. It reads the local receipt database through the global --receipt-db flag, and a local export with neither --tenant nor --admin-all refuses rather than defaulting to every tenant. Pass --since and --until, both Unix seconds, to narrow the window; --require-proofs to fail the export if any selected receipt lacks checkpoint coverage; and --federation-policy to constrain the export scope by a signed bilateral federation policy.

compliance-evidence · layouttranscript
$ chio --receipt-db ./receipts.db evidence export \
    --policy-file ./policy.yaml --admin-all --output ./evidence-package
$ find ./evidence-package -type f | sort
./evidence-package/README.txt
./evidence-package/capability-lineage.ndjson
./evidence-package/checkpoint-consistency-proofs.ndjson
./evidence-package/checkpoint-equivocations.ndjson
./evidence-package/checkpoint-publications.ndjson
./evidence-package/checkpoint-witnesses.ndjson
./evidence-package/checkpoints.ndjson
./evidence-package/child-receipts.ndjson
./evidence-package/inclusion-proofs.ndjson
./evidence-package/manifest.json
./evidence-package/policy/metadata.json
./evidence-package/policy/source.yaml
./evidence-package/query.json
./evidence-package/receipts.ndjson
./evidence-package/retention.json
exit 0

The four checkpoint- files carry the transparency record for the checkpoints in the window: publications, witness signatures, consistency proofs, and any recorded equivocation. The policy/ directory appears when --policy-file is supplied, and a federation-policy.json joins them when --federation-policy is.

The manifest records a SHA-256 and a byte count for every file the export wrote, so verification is a re-derivation rather than a signature check on the manifest alone. Appending one byte to receipts.ndjson in a copied package and re-running the verifier:

compliance-evidence · tampertranscript
$ cp -R ./evidence-package ./evidence-tampered
$ printf '\n' >> ./evidence-tampered/receipts.ndjson
$ chio evidence verify --input ./evidence-tampered
error [urn:chio:error:attest:provenance-missing]: evidence package file hash mismatch for receipts.ndjson
context: {"domain":"attest","severity":"error","stability":"unstable","string_code":"CHIO-ATTEST-PROVENANCE-MISSING"}
suggested fix: Regenerate the evidence bundle and include provenance before submitting the operation.
exit 1

The verifier names the file rather than reporting a bare failure, so an auditor holding a package that does not verify knows which artifact to request again. The export refuses to write into a directory that already holds files, for the same reason:

compliance-evidence · not-emptytranscript
$ chio --receipt-db ./receipts.db evidence export \
    --policy-file ./policy.yaml --admin-all --output ./evidence-package
error [urn:chio:error:cli:other]: evidence export output directory must be empty: ./evidence-package
context: {"domain":"cli","severity":"error","stability":"deprecated","string_code":"CHIO-CLI-OTHER"}
suggested fix: Preserve the original message and migrate the call site to a specific registry code when touched.
exit 1

What the package proves to an auditor:

  • Each receipt was produced by the kernel keypair it names, because the signature over its canonical body verifies against kernel_key, and its action.parameter_hash is recomputed from the parameters the receipt carries.
  • The checkpoint chain is intact: signed Merkle roots cover the included batches, and the inclusion proofs reproduce.
  • Every file listed in the manifest still hashes to the digest recorded for it, and the counts in the manifest agree with the exported data.
  • When a policy was attached, the policy/metadata.json block matches the manifest and the source file it names is present. Verification does not re-hash the policy source or compare it against any receipt's policy_hash, so that comparison is the reader's to make.

One pipeline, many frameworks

The evidence bundle is framework-agnostic. Two auditors running different examinations look at the same signed artifacts with different control checklists. There is no per-framework retooling on Chio's side.

Cross-Framework Summary

Chio PrimitivePCI DSS v4OWASP LLM
Capability tokens with typed constraintsReq 7.2, 7.2.5, 7.3, 8.2LLM06
Signed receipt per invocationReq 6.5, 10.2LLM01, LLM09
Merkle checkpoint chainReq 10.3, 11.5Tamper evidence for the log itself
DPoP proof of possessionReq 8.3LLM06 attribution
Guard pipeline (velocity, budget, egress, secret-leak)Req 1.3, 10.7LLM02, LLM05, LLM10
Revocation runtimeReq 8.6LLM06 containment
Evidence export bundleReq 12.10LLM09 correction workflows
Retention and archivalReq 10.5Not an OWASP concern

Non-Goals

  • No claim that Chio is PCI DSS assessed as a service. These frameworks apply to organizations; Chio is infrastructure.
  • No substitute for network-layer controls, physical security, workforce training, or legal review. Chio complements those controls at the agent boundary; it does not replace them.
  • No universal risk score across frameworks. Chio emits the evidence; the compliance program translates it into each framework's language.
  • No mapping for a framework the repository does not map. A criterion number in a table on this page is one the source document names.

For the operator-facing command surface that produces these bundles, continue with the CLI reference. For the data model of receipts themselves, see Receipt Format.

Compliance Frameworks · Chio Docs