Federal posture

Procurement-ready facts. No marketing fluff that isn’t backed by a file path.

Every claim on this page links to a source artifact in the GRIFF AI repository. Where a control is not yet in place we say so out loud, with the audit ID that tracks the gap. Federal procurement teams: this page is intended to short-circuit the first round of security questionnaires.

Section 889 (FAR 52.204-25)

Compliant

section-889-attestation/v1

Section 889 Part B compliant — CI-blocking scanner

A CI-blocking scanner walks every commit looking for references to covered vendors enumerated by NDAA 2019 §889 / FAR 52.204-25 / 2 CFR 200.216: Huawei, ZTE, Hytera, Hikvision, Dahua. It scans package.json, pyproject.toml, go.mod, Dockerfile*, CI workflow YAML, and source trees. A non-zero exit blocks merge. Attestation JSON is emitted on every run with schema id section-889-attestation/v1.

Source: A:\projects\v2-platform\src\compliance\section_889.py · Vendor registry: covered_vendors_section_889.yaml

Caveats published with the scanner: no transitive dependency resolution, no image-layer inspection; operator ratification required before treating output as a legal compliance assertion.

NIST SP 800-53 controls covered

Each row links to the in-repo artifact that is the primary evidence today. These are coverage statements against specific controls, not a claim of FedRAMP authorization (see “what we do not claim” below).

ControlNameStatusEvidence + source
AC-2(3)Service-token rotation (30-day lifetime)In place

Cloudflare Access service tokens rotated on a 30-day cycle. Closes the V-8 finding that 1-year token lifetime was ~12x non-compliant with FedRAMP Moderate AC-2(3). Rotation runbook + bearer rotation already executed against memory.griff.run.

A:\GRIFF_AI\01_INTERNAL\_audit\2026-05-10-final-drain-V8-claude-cf-posture.md (§1 row B2, §1 row E2)

AU-2Auditable eventsIn place

Every Intent Compiler / Autonomy-core mutation lands in the D1 ledger with actor, action, target, and timestamp. RunReplay rows record actor identity per request.

A:\projects\v2-platform\src\autonomy-core\ledger\d1_ledger.py

AU-3Content of audit recordsIn place

Each audit record carries: actor id, action, target id, timestamp, prior-hash, entry-hash. Recall responses additionally carry sha256, source_path, and rank_reason (see sample below).

A:\projects\v2-platform\src\autonomy-core\autonomy_layer_schemas.py (RunReplay model — Security Committee P1 #6 tamper-evident chain)

AU-12Audit generation — hash-chainedIn place

RunReplay rows include prev_hash (SHA-256 of previous row’s canonical encoding) and entry_hash (SHA-256 of current row including prev_hash). Single-writer chain head; tampering with any row breaks the chain on the next verify.

A:\projects\v2-platform\src\autonomy-core\autonomy_layer_schemas.py (lines 64–76)

EO 14028 §4 — software supply chain

The point of EO 14028 §4 is provenance and traceability. We list what is in place, what is deliberately deferred, and what does not yet exist. Federal procurement reviewers should read this as the no-fluff version — if a row says “deferred” or “not yet” that is the honest answer.

Audit-chain provenance (per-row prev_hash + entry_hash)

In place

Hash-chained RunReplay rows with single-writer chain head. Closes EO 14028 §4(e) tamper-evidence intent for our internal action ledger.

A:\projects\v2-platform\src\autonomy-core\autonomy_layer_schemas.py

Section 889 (FAR 52.204-25) covered-vendor scanner

In place

CI-blocking scanner walks dependency manifests, Dockerfiles, CI YAML, and source trees for Huawei / ZTE / Hytera / Hikvision / Dahua references. Emits attestation JSON with schema-id section-889-attestation/v1. Exit 0 = clean, 1 = findings, 2 = scanner error.

A:\projects\v2-platform\src\compliance\section_889.py

SHA-256 verification of `cloudflared` binary on update

Deferred (transparent)

cloudflared is auto-updated weekly without an in-band SHA-256 pin against the published Cloudflare digest. Tracked as a transparent gap in V-8 finding C4 (escalated to P1 under federal-AV lens). Workstream open; not yet shipped.

A:\GRIFF_AI\01_INTERNAL\_audit\2026-05-10-final-drain-V8-claude-cf-posture.md (§1 row C4)

Third-party SBOM (CycloneDX / SPDX) published per release

Not yet

No SBOM publication pipeline today. Roadmap item; not currently asserted. Section 889 scanner is the partial substitute for covered-vendor risk; it is not an SBOM.

— (gap; tracked for post-procurement engagement)

Chain-of-custody guarantee

Every recall response includes a SHA-256 of the source document, the canonical source_path, and a rank_reason string that names the matcher. The response also carries the current audit chain head so the caller can independently verify chain integrity at the moment of the query.

{
  "query": "How did we decide the 30-day token rotation cadence?",
  "hits": [
    {
      "id": "RV4-token-rotation-decision-2026-05-10",
      "score": 0.847,
      "sha256": "8a4f7d2c91b6e3a5fd4c7e8b1a2d9f3e6c5b4a7d8e9f0a1b2c3d4e5f6a7b8c9d",
      "source_path": "A:/GRIFF_AI/01_INTERNAL/_audit/2026-05-10-final-drain-V8-claude-cf-posture.md",
      "rank_reason": "exact-phrase match on 'service-token rotation' + AC-2(3) FedRAMP context boost",
      "snippet": "Service-token 1-year duration | P0 | UPHOLD | Single largest unaddressed blast-radius. FedRAMP Moderate AC-2(3) requires rotation; 1-year is non-compliant by ~12x."
    }
  ],
  "chain_head": {
    "row_id": "runreplay-2026-05-10T18:42:11Z-7c91",
    "entry_hash": "f3e2d1c0b9a8f7e6d5c4b3a2918f7e6d5c4b3a2918f7e6d5c4b3a2918f7e6d5c"
  }
}

Response shape source: A:\projects\v2-platform\src\autonomy-core\autonomy_layer_schemas.py

What we do not claim

Published before procurement asks. These are not omissions of intent — they are statements that the work has not yet been done. Path to each is a procurement-conditional roadmap item.

Not claimed

Not FedRAMP-authorized

No ATO, no 3PAO assessment in progress, not on the FedRAMP Marketplace. Path: pursue Low or Moderate baseline once a federal customer is signed; SaaS-on-Cloudflare boundary already maps cleanly to FedRAMP-authorized hyperscaler infrastructure where applicable.

Not claimed

Not CMMC-certified

No CMMC Level 1, 2, or 3 certification today. Path: pursue Level 2 in parallel with the first DoD-adjacent engagement; current control posture (AC-2(3), AU-2/3/12, hash-chained audit) was designed to be assessment-ready.

Not claimed

Not yet ATO’d on any agency system

No Authorization to Operate against any federal system boundary. Path: stand up a customer-specific ATO package on first procurement engagement; the controls listed above are the starting evidence basket.

Contact

Federal procurement — security questionnaire pre-fill, NDA, and demo.

Email lands directly with the operator. Replies are typically within one business day. Under NDA we can share the closed-finding audit trail referenced on this page (V-3, V-6, V-8 cross-vendor reviews) plus the Section 889 attestation JSON from the most recent CI run.