Chio/Docs

PlatformCompliance Mappings

HITRUST i1 Readiness Package

A self-assessed HITRUST CSF v11.7 i1 control mapping to implementation evidence, scoped to one healthcare design-partner deployment.

Self-assessment mapping

This package maps controls to implementation evidence in the Chio repository and records known gaps. It supports an operator's self-assessment for one scoped deployment. The control population and its count are determined in the operator's MyCSF object.

Package contents

The package lives under compliance/hitrust/ in the Chio repository. Each table row links to a file; the self-assessment points to current implementation evidence instead of a frozen bundle or draft report.

Evidence itemPathPurpose
Control mappingcompliance/hitrust/control-mapping.csvOne row per control with an implementation-status flag, an owner, a narrative path, and evidence sources.
System security plancompliance/hitrust/ssp.mdReadiness-draft SSP: system overview, intended scope, and control-family posture with evidence inheritance.
Scope boundarycompliance/hitrust/scope-boundary.mdThe in-scope and explicit out-of-scope decisions, plus the scope-memo preimage.
Gap self-assessmentcompliance/hitrust/gap-report/gap-report.mdInternal gap analysis by family, with a closure path for each open gap.
Readiness questionnairecompliance/hitrust/readiness-questionnaire.mdChio's own answers to the scope and readiness questions an i1 engagement asks.
Incident runbookcompliance/hitrust/ir-runbook.mdSeverity classes, response workflow, and the HIPAA 45 CFR 164.400-414 notification clock.
Control narrativescompliance/hitrust/narratives/Per-family narratives, the formal-evidence bridge, and the gap-to-artifact remediation summary.
Operational policiescompliance/hitrust/policies/Access-review cadence, key-rotation schedule, and the de-identification and minimum-necessary posture.
MyCSF portal configcompliance/hitrust/portal/mycsf-config.mdThe object configuration and inherited-evidence packets the package would load, if and when an object is created.
Provider-inheritance pointerscompliance/hitrust/encryption-at-rest.mdWhere physical, environmental, and encryption-at-rest evidence would come from, marked as an open gap until collected.
Operational sample plancompliance/hitrust/operational-samples.mdThe audit-log schema and sample classes; the 30-day samples themselves are an open gap.

Assessment Scope

The scope is deliberately narrow: a single Chio deployment of the assessed release, serving one healthcare design-partner tenant, in one production deployment environment. The boundary binds the product surface and deployment, not any tenant identity, and it would stay the same if a real assessor engagement began. Anything not named in the scope boundary is out of scope and cannot be used to claim a control is satisfied.

Scope elementDecision
Tenant countOne healthcare design-partner tenant.
Product versionThe assessed release only.
Deployment environmentOne production deployment environment.
Mobile patient-app surfacesExcluded.
AWS Bedrock and MCP marketplace listingsExcluded.
Other Chio tenants and releasesExcluded.
Other operator systemsExcluded.
ISO 42001, SOC 2 Type II, HITRUST r2Deferred; out of scope for this package.

In scope are the runtime kernel binaries; capability issuance, validation, attenuation, revocation, and sender constraints; guard evaluation and fail-closed behavior; receipt generation, signature, and export under audit-log schema v1; and the build-provenance, SBOM, cargo-vet, CVE-monitoring, threat-model, and formal-invariant evidence that already lives in the repository.


Implementation-status legend

Every row in control-mapping.csv carries a status flag. The mapping uses three values, applied under a fail-closed rule: a control is promoted only when it ties to a real source artifact and a named owner.

StatusMeaning
implementedThe control is enforced in shipped code or backed by evidence that exists in the repository today, with a named owner.
partialChio supplies part of the control; the remainder is out-of-tree evidence, an execution cadence not yet run, or organizational procedure.
gapNo repository evidence exists yet. The row is an honest gap and is never represented as satisfied.

Control-Family Posture

The strongest families are the ones the protocol enforces in code: access control, risk management, security policy, asset management, and development assurance. The partial and gap families depend on operational cadence, out-of-tree legal and HR evidence, or cloud-provider inheritance. Every row is owned by chio-security.

FamilyChio evidencePosture
Access ControlCapability algebra, revocation, and sender constraints in crates/kernel/chio-kernel-core/src/evaluate.rs and crates/core/chio-core-types/src/capability.rs, checked by the formal proofs in formal/MAPPING.md.implemented
Risk Managementspec/security/chio-threat-model.v1.json and the coverage table at docs/security/threat-coverage.md.implemented
Security Policyspec/SECURITY.md and the docs/security/ corpus.implemented
Asset ManagementSBOM, cargo-vet ledger, and CVE monitoring: supply-chain/audits.toml, supply-chain/imports.lock, .github/workflows/sbom.yml, .github/workflows/cve-monitor.yml.implemented
Systems Acquisition, Development, and MaintenanceReproducible build, SLSA provenance, and formal evidence: .github/workflows/reproducible-build.yml, .github/workflows/slsa.yml, formal/MAPPING.md, formal/proof-manifest.toml.implemented
Information Security Management ProgramGovernance in spec/SECURITY.md and formal/OWNERS.md; the formal security-review cadence is a gap.partial
Organization of Information SecurityOwnership documented for formal evidence via formal/OWNERS.md and fuzz/owners.toml; broader operating-role evidence is out-of-tree.partial
Compliancessp.md and scope-boundary.md; self-assessment material only, no external assessment performed.partial
Communications and Operations ManagementAudit-log schema spec/audit-log/export-schema.v1.json, CI at .github/workflows/ci.yml, and the receipt pipeline in crates/kernel/chio-kernel/src/receipt_store.rs; 30-day production operational samples are a gap.partial
Incident Managementcompliance/hitrust/ir-runbook.md; first-cycle execution evidence is a gap.partial
Privacy PracticesReceipt and log redaction in crates/observability/chio-log-redact/src/lib.rs plus the de-identification posture at compliance/hitrust/policies/de-identification.md; BAA and PHI handling are out-of-tree.partial
Human Resources SecurityNone in repository; workforce policy and training evidence is out-of-tree.gap
Physical and Environmental SecurityNone in repository; cloud-provider inheritance evidence is out-of-tree and not yet collected.gap
Business Continuity ManagementNone in repository; design-partner disaster-recovery evidence is out-of-tree.gap

Fail-closed compliance rule

If a control row cannot be tied to evidence that actually exists in the repository or to an explicit out-of-tree owner, the row stays a gap. No family is promoted on the basis of an assessor interaction, a plan, or a repository assertion alone. Every implemented row cites a real file.

Control-Mapping Format

The mapping is a flat CSV so a reviewer can diff it, sort it, and join it against an assessor's control list. The columns are control_id, family, narrative_path, evidence_sources (semicolon-separated repo paths), status, owner, and notes.

control-mapping.csv (excerpt)
control_id,family,narrative_path,evidence_sources,status,owner,notes
ctl-access,Access Control,compliance/hitrust/narratives/i1-seed-access.md,spec/PROTOCOL.md; spec/SECURITY.md; crates/kernel/chio-kernel-core/src/evaluate.rs; formal/MAPPING.md,implemented,chio-security,Capability algebra evidenced by kernel code and formal proofs.
ctl-ops,Communications and Operations Management,compliance/hitrust/narratives/i1-seed-ops.md,spec/audit-log/export-schema.v1.json; crates/kernel/chio-kernel/src/receipt_store.rs; .github/workflows/ci.yml,partial,chio-security,Audit-log schema and receipt pipeline exist; 30-day operational samples are a gap.
ctl-privacy,Privacy Practices,compliance/hitrust/narratives/i1-seed-privacy.md,crates/observability/chio-log-redact/src/lib.rs; compliance/hitrust/policies/de-identification.md,partial,chio-security,Receipt redaction implemented and de-id policy documented; BAA receipt is out-of-tree.

Each narrative_path points at a plain-language control narrative under narratives/. Every narrative ends with a fail-closed note that states exactly what denies access or blocks promotion when the control is not met, so an assessor reads the enforcement boundary, not a marketing claim.


Formal Evidence Bridge

The audit-integrity and access-control rows lean on the formal/ tree. These are bounded, focused checks over trust-boundary properties, not a proof of the whole system. The bridge narrative maps each named invariant to the HITRUST concern it supports; the authoritative link from an invariant to the Rust call site it constrains is formal/MAPPING.md.

Formal invariantWhat it means for the assessorHITRUST mapping
MonotoneLogApalacheReceipt-log state only advances; prior committed entries are not silently removed.Audit controls, integrity, operations.
RevocationCutCompletenessRevocation cuts remove future authority for revoked grants within the modeled boundary.Access control, incident containment.
ReceiptBeforeAllowA modeled allow decision has receipt evidence before the operation is considered complete.Audit controls, compliance evidence.
KernelTransitionCancelSafeCanceled kernel transitions do not leave an allowed tool call without the modeled checks.Fail-closed operations, development assurance.

The specs, configs, and run records live in formal/ and are enforced in CI (.github/workflows/apalache-safety.yml, .github/workflows/apalache-temporal.yml). For the full inventory of theorems and the assurance pipeline behind them, see Formal Assurance.


Open Gaps and Closure Paths

The package names every gap and the artifact that closes it. A gap that depends on out-of-tree legal, HR, provider, or design-partner DR evidence stays a gap until that evidence exists; it is never marked satisfied on the basis of a plan.

GapFamilyClosure path
BAA chain referencesPrivacy, ComplianceAttach the private BAA reference through the approved evidence channel before any PHI sample use.
HR workforce evidenceHuman Resources SecurityCollect out-of-tree HR policy and training references.
Cloud-provider attestationPhysical and Environmental SecurityRecord provider attestation references per compliance/hitrust/encryption-at-rest.md.
DR posture evidenceBusiness Continuity ManagementCollect the design-partner disaster-recovery reference.
Access-review executionAccess Control, OperationsRun the first quarterly review per compliance/hitrust/policies/access-review.md and retain evidence.
Key-rotation executionOperationsExecute and retain rotation evidence per compliance/hitrust/policies/key-rotation.md.
Incident first-cycleIncident ManagementExercise compliance/hitrust/ir-runbook.md once and retain the record.
Operational samplesOperationsPull 30-day audit-log samples using schema v1 per compliance/hitrust/operational-samples.md.

PHI never enters the repository

The de-identification policy holds kernel telemetry to protocol decisions, receipt ids, control ids, hashes, error classes, and timing metadata. Payload content, patient identifiers, and free-text clinical data are excluded. A sample that could cross the PHI boundary is represented only by a hash plus a private evidence reference, and PHI-bearing samples move only through a BAA-approved channel, never a commit.

Assembling the Evidence Package

The operational and audit-control rows are backed by signed receipts. chio evidence export assembles those receipts into a verifiable offline package that an assessor checks without touching the live kernel. The --require-proofs flag fails the export if any selected receipt lacks checkpoint coverage, which is exactly the tamper-evidence property the audit-integrity rows assert.

bash
# Assemble the offline evidence package for the assessment window.
# --since / --until are Unix seconds; the pair below is the Q1 2026 window.
$ chio --receipt-db ./receipts.sqlite3 evidence export \
    --policy-file ./policy.yaml \
    --admin-all \
    --since 1767225600 \
    --until 1774915199 \
    --require-proofs \
    --output ./hitrust-i1-evidence

# Verify the package offline. Exit 0 means every receipt signature and
# checkpoint proof in the package reproduces.
$ chio evidence verify --input ./hitrust-i1-evidence

Local reads fail closed: pass --admin-all to export across every tenant as an administrative operation, or --tenant <id> to scope the export to one tenant. The two are mutually exclusive. The exported package carries the receipts for the window, the checkpoint coverage, and the attached policy file, so the audit-log schema v1 rows and the receipt-integrity rows verify from one artifact. For the receipt-level verification workflow, see Verify Receipts Offline.


MyCSF Portal Handoff

No MyCSF object exists yet; the object and its control count are created by HITRUST when an engagement begins. The portal config records the values the package would request and the inherited evidence packets it would load first. The upload model is deliberate: coarse inherited evidence first, control-specific evidence after remediation, with access limited to assessor reviewers and the chio-security evidence owner.

Two operational cadences back the partial rows. The access-review policy defines a quarterly human review of operator, capability-admin, and audit-log-export roles. The key-rotation policy sets the rotation schedule the operations rows depend on:

Key classRotation cadenceEvidence
Capability signing keysAt least every 90 days.Rotation receipt and key-id cutover log.
TLS service certificatesBefore expiration and at least annually.Certificate inventory and deployment record.
Audit-log export keysAt least every 180 days.Export-key rotation receipt.
MyCSF portal credentialsQuarterly access review.Access-review evidence packet.

Capability signing rotation uses a fail-closed cutover: publish the new key id to the verifier set, issue only from the new key, hold the old key verify-only for the maximum capability lifetime, then revoke it and record the cutover receipt. If the verifier set cannot load the new key, issuance pauses and access is denied rather than falling back to an untracked signer. For the runtime mechanics of rotation and revocation, see Rotate Keys & Revoke.


Cross-References

  • Compliance Frameworks for the HIPAA Security Rule mapping that the healthcare scope builds on, plus SOC 2 and PCI DSS.
  • Receipts for the signed record format that backs the audit-control and operational families.
  • Capabilities for the scoping, attenuation, and revocation model behind the access-control family.
  • Formal Assurance for the theorem inventory that the formal-evidence bridge draws from.
  • ISO/IEC 42001 and NIST AI RMF for the same evidence surface mapped onto the AI-management standards.