Human accountability architecture · generated from the decision registry

Who is responsible when the AI is wrong.

The answer has to be architecturally clean, and it has to be true of the running code rather than of a paragraph on a website. So this page is not written; it is rendered from the platform’s decision registry: the enumeration of every consequential decision Enclave AI™ can take, who is accountable for it, and the module that binds it. The same document is served live at /api/v1/cmmc/accountability, and a test fails the build when this page and the code disagree.

  1. AI performs.
  2. AI records.
  3. AI explains.
  4. AI provides evidence.
  5. Authorized humans approve the decisions that legally or operationally require human accountability.

The distinction that matters. Agents perform the recurring compliance work: they measure, assemble, score, and deliver on schedule whether or not anyone is at a desk. People keep accountability, authorization and professional judgment: a named, authenticated person adopts or rejects what the agents produced, and that ruling is recorded against the exact bytes delivered.

Three accountable parties, not interchangeable

operator

ElasticD3M, the operator. Accountable for the platform behaving correctly. Cannot attest to a customer's security posture; it is not their company and not their signature to give.

executive

The customer's designated executive. Accountable for the organization's stated posture. The only party who can adopt an artifact as the company's position.

customer

Any authorized user at the customer. Accountable for their own scope data and disclosure choices.

An agent is never the accountable party for any decision listed. Where an agent is the actor, the agent produces and a human rules; the gate is what separates the two.

Every decision the platform can take

20 decisions enumerated18 bind until a human rules2 inform rather than consult, each with its reason stated0 ungated
DecisionWhat it is, and what it touches if wrongAccountableGateBound by
Agent: a model produces a judgement
agent.poam_sequencingAn agent sequences remediation into a POA&M.
If wrong: The customer's remediation plan and its 170.21 eligibility split.
executiveBinding: waits for the rulingservices/cmmc_executive_review.py
agent.ssp_narrativeAn agent drafts SSP control narratives from measured evidence.
If wrong: The System Security Plan an assessor reads.
executiveBinding: waits for the rulingservices/cmmc_executive_review.py
agent.spendAn agent call spends money against a tenant's daily ceiling.
If wrong: Cost, and a runaway loop can spend it fast.
operatorBinding: waits for the rulingservices/ai_cost_ceiling.py
Artifact: a document is assembled and scored
artifact.control_verdictA control is scored met / not met / unverified / not applicable.
If wrong: The SPRS score and every document derived from it.
executiveBinding: waits for the rulingservices/cmmc_executive_review.py
artifact.poam_eligibilityWhether a not-met requirement may be deferred under 32 CFR 170.21.
If wrong: Whether the customer believes they qualify for Conditional status.
executiveBinding: waits for the rulingservices/cmmc_poam_eligibility.py
Delivery: something leaves the platform
delivery.artifact_to_customerA finished deliverable is emailed to the customer who bought it.
If wrong: The customer receives a document. It reaches nobody else.
operatorInformed, not consulted
Advisory by default (CMMC_HITL_REQUIRED unset). OWNER DECISION, 2026-08-20, asked and answered explicitly: the human gate that matters is the EXECUTIVE REVIEW that follows, not an operator approval before the send. The reasoning: the product is sold on the deliverable arriving on schedule whether or not anyone is watching (ai4cmmc.ai/standard.html: 'you can ignore the platform for 29 days and the deliverables still ship on day 30'), and the recipient is the customer who paid for it, so the blast radius of an unreviewed send is that they read their own report early. Setting CMMC_HITL_REQUIRED makes this binding, and reversing the decision is that one variable, but it is a decision that was made, not an oversight, and should be re-opened deliberately.
services/cmmc_delivery_gate.py
delivery.scan_executionA read-only scan runs against a customer's connected cloud.
If wrong: Read-only API calls in the customer's environment.
customerBinding: waits for the rulingconnector activation (customer grants and revokes access)
Disclosure: a third party receives something
disclosure.oversightReadiness posture is shown to a prime, program office or DIBCAC.
If wrong: A third party sees the customer's compliance standing.
customerBinding: waits for the rulingservices/cmmc_consent.py
disclosure.air_scopeAsset inventory and CUI boundary are shared with ai4air.ai.
If wrong: A third party learns where the customer's CUI lives.
customerBinding: waits for the rulingservices/cmmc_consent.py
disclosure.rel_remediationOpen control gaps are shared with ai4rel.ai.
If wrong: A third party learns what is currently wrong with the customer's security.
customerBinding: waits for the rulingservices/cmmc_consent.py
disclosure.prime_relationshipA prime names a subcontractor on an award; the subcontractor decides, from its own page, whether that prime may see its posture.
If wrong: One subcontractor's posture, to one named prime, on the award recorded.
customerBinding: waits for the rulingservices/cmmc_consent.py (per-partner grant via api/v1/cmmc/oversight.py prime-sub consent)
disclosure.esp_serviceAn MSP, MSSP or ESP names a client; the client grants or declines, per entity, from its own page or its workspace, whether that provider may see its readiness state.
If wrong: One entity's readiness state, and at Level 2 the responsibility-matrix rows allocated to that provider, to one named provider.
customerBinding: waits for the rulingservices/cmmc_esp_view.py (consented_registers_for_provider: the esp_service switch via services/cmmc_consent.py has_consented, the per-provider grant via registers_granted_to_partner, and the live client relationship)
disclosure.c3pao_pipelineAn OSA's readiness signals appear on their C3PAO's dashboard.
If wrong: The customer's assessor sees their progress.
customerBinding: waits for the rulingservices/cmmc_consent.py
Attestation: the posture becomes the organization's stated position
attestation.posture_adoptedA posture becomes the organization's stated position.
If wrong: What the company asserts to the government and to its primes.
executiveBinding: waits for the rulingservices/cmmc_executive_review.py
attestation.annual_affirmationA senior official affirms continuing compliance (32 CFR 170.22).
If wrong: A statutory affirmation in SPRS.
executiveBinding: waits for the rulingservices/cmmc_assessment_authority.py
attestation.artifact_adoptedA designated executive approves or disapproves a delivered artifact as representing the organization.
If wrong: Whether the document may be presented to a C3PAO or a prime as the company's position.
executiveBinding: waits for the rulingservices/cmmc_executive_review.py
Platform: operator actions on the platform itself
platform.refundMoney is returned to a customer.
If wrong: Cash, and the customer relationship.
operatorBinding: waits for the rulingapi/v1/cmmc/admin_approvals.py (X-Admin-Token)
platform.credential_revocationStored connector credentials are deleted.
If wrong: Scanning stops; the customer's evidence goes stale.
customerBinding: waits for the rulingapi/v1/cmmc/connector_revoke.py (customer-initiated)
platform.repair_deliverablesAn operator re-runs delivery for a purchase that shipped partially.
If wrong: A customer may receive a document twice.
operatorBinding: waits for the rulingapi/v1/cmmc/admin_recovery.py (X-Admin-Token)
platform.scheduler_tickThe scheduler runs a fulfillment cycle for a due subscription.
If wrong: Work the customer has already paid for is produced on schedule.
operatorInformed, not consulted
Pre-authorized by the subscription itself. OWNER DECISION, 2026-08-20. Requiring a human to approve each cycle would mean the customer's paid-for work does not happen when nobody is at a desk, which is the exact failure the product exists to remove. The operator is accountable for the cadence and for the arm-level failure alerts, and every artifact the cycle produces still passes the executive review gate before it can be presented as the organization's position.
services/cmmc_scheduler.py (operator-configured cadence)

“Informed, not consulted” is not a hole hidden in the prose. It is a decision the platform takes with a human told rather than asked, listed here so it can be argued about explicitly. The two on this page are the scheduled delivery of an artifact the customer already paid for, and the scheduler’s own tick.

What this means for a C3PAO, a prime, or a program office

When your assessor asks who approved a document, the answer is a named, authenticated executive of the customer’s own company, recorded against the SHA-256 of the exact bytes delivered, in an append-only ledger. When they ask what the AI decided on its own, the answer is: it measured, assembled, scored, explained and delivered; it adopted nothing, disclosed nothing, and attested to nothing. The registry above is the list of every place that line is drawn.

See what each seat sees →  ·  The security boundary, stated precisely →  ·  Verify a certificate or posture statement →