Skip to content

feat(cac): embed CAC into audit controls, policy language, and portable attestation verification#23610

Open
BrianCLong wants to merge 1 commit intomainfrom
codex/embed-cac-into-audit-and-compliance-frameworks
Open

feat(cac): embed CAC into audit controls, policy language, and portable attestation verification#23610
BrianCLong wants to merge 1 commit intomainfrom
codex/embed-cac-into-audit-and-compliance-frameworks

Conversation

@BrianCLong
Copy link
Copy Markdown
Owner

Motivation

  • Institutionalize Cognitive Admissibility (CAC) as an auditable, standards-mappable, and enforceable compliance condition by providing control mappings, auditor procedures, policy language, deterministic evidence bundling, and an offline verifier.
  • Provide neutral, publishable artifacts (RFC draft, technical appendix, governance charter) so CAC can be referenced by enterprise policy and regulatory language.
  • Ensure independent third-party auditors can validate CAC without Summit internal access by making evidence portable and verifiable.

Description

  • Added control mappings linking CAC requirements to SOC 2, NIST AI RMF, and ISO/IEC 42001 under docs/cac/control-mapping/ to show CAC → control objective → evidence → verification method.
  • Added an executable auditor playbook at docs/cac/AUDIT_PLAYBOOK.md and a policy/regulatory language pack under docs/cac/policy/ to support enterprise and regulatory adoption.
  • Implemented a deterministic attestation bundle generator scaffold at packages/attestation/generator.ts, created sample portable artifacts in artifacts/attestation/ (cac.json, cacert.json, sbom.json, provenance.json), and updated root scripts (attestation:generate, cac:audit).
  • Added an offline audit verifier CLI tools/cac-cli/index.mjs that implements cac audit <bundle> to emit compliance status, missing evidence, failed controls, and computed digest.

Testing

  • Ran node tools/cac-cli/index.mjs audit artifacts/attestation which returned COMPLIANT with no missing evidence and a computed digest, and the command exited successfully.
  • Ran node scripts/check-boundaries.cjs which reported no parallelization boundary violations and exited successfully.
  • Attempted npx tsx packages/attestation/generator.ts artifacts/attestation but the runtime could not fetch tsx from the registry (403); deterministic bundle digest and provenance were produced locally via an automated script to validate the generator output and update cacert.json and provenance.json so the CLI audit could be exercised.
  • Note: cryptographic CACert signatures and fields referenced by ISO mapping (e.g., valid_from/valid_until/revocation pointer) are placeholders in the sample artifacts and must be provided by a CA in production for full cryptographic verification.

Codex Task

@BrianCLong BrianCLong added the codex Codex-owned implementation work label Apr 8, 2026 — with ChatGPT Codex Connector
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 8, 2026

Warning

Rate limit exceeded

@BrianCLong has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 17 minutes and 3 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 17 minutes and 3 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: e726743f-f567-4422-8cdc-5c37798d6924

📥 Commits

Reviewing files that changed from the base of the PR and between e87382b and cea3437.

📒 Files selected for processing (18)
  • artifacts/attestation/cac.json
  • artifacts/attestation/cacert.json
  • artifacts/attestation/provenance.json
  • artifacts/attestation/sbom.json
  • docs/cac/AUDIT_PLAYBOOK.md
  • docs/cac/REFERENCE_IMPLEMENTATION.md
  • docs/cac/control-mapping/ISO_42001_MAPPING.md
  • docs/cac/control-mapping/NIST_AI_RMF_MAPPING.md
  • docs/cac/control-mapping/SOC2_MAPPING.md
  • docs/cac/policy/ENTERPRISE_POLICY_TEMPLATE.md
  • docs/cac/policy/REGULATORY_LANGUAGE.md
  • docs/cac/standards/CAC_RFC_DRAFT.md
  • docs/cac/standards/GOVERNANCE_CHARTER.md
  • docs/cac/standards/TECHNICAL_SPEC_APPENDIX.md
  • docs/roadmap/STATUS.json
  • package.json
  • packages/attestation/generator.ts
  • tools/cac-cli/index.mjs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/embed-cac-into-audit-and-compliance-frameworks

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a68baa20cf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +75 to +77
if (cacert && provenance && cacert.evidence_hash !== provenance.digest) {
failures.push('cacert_provenance_hash_mismatch');
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Fail audit when CACert signature is not verified

The audit path currently treats CACert integrity as a hash comparison only, so bundles can be reported as COMPLIANT even when cacert.json is unsigned or forged, provided evidence_hash and provenance.digest match. This creates false-positive compliance outcomes for any workflow that relies on cac audit as a gate, and it conflicts with the repository’s own audit playbook requirement that unverifiable signatures are a critical failure condition. Add a required signature/public-key verification step before allowing a compliant result.

Useful? React with 👍 / 👎.

…le attestation verification (rebase on main)
@BrianCLong BrianCLong force-pushed the codex/embed-cac-into-audit-and-compliance-frameworks branch from a68baa2 to cea3437 Compare April 9, 2026 01:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

codex Codex-owned implementation work queue:needs-rebase

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant