Compliance
15 controls mappedControls and evidence organized around the NIST Generative AI Profile functions — govern, map, measure, manage (memo §14.5). Every row points at product evidence that exists in this build; customer-specific legal requirements remain the customer's responsibility.
Control map
NIST GenAI Profile function → the concrete mechanism in this fabric → live evidence you can open.
| Function | Control | Live evidence | Evidence pointers |
|---|---|---|---|
| GOVERNGV-1.1 | Policies bound model, region and egress choice Every request resolves a ServiceProfile whose RoutePolicy hard-filters providers, regions, trust tier, ZDR and maximum data classification before scoring. | 12 profiles · 5 route policies | Service profilesRouting policies |
| GOVERNGV-2.1 | Accountability: one generation ledger Principal, project, profile, policy snapshot, route plan, attempts, usage and cost are recorded on a single generation record — the join point across security, operations and finance (memo §14.1). | 130 generations ledgered | Generation ledgerAudit & evidence |
| GOVERNGV-6.1 | Supply-chain terms are authorized supply only Routable supply is provider APIs, cloud service identities and provisioned capacity under contract. Named-user subscriptions are never converted into shared API credentials (memo §2.4, §6.4). | 8/8 accounts authorized | Terms table (below)GET /api/admin/terms |
| GOVERNGV-4.2 | Separation of duties on operator actions Admin mutations require the platform-admin principal plus a step-up assertion (X-Fabric-Step-Up); every action writes an AdministrativeAuditEvent (memo §16.6, §20.1). | step-up enforced on all /api/admin mutations | GET /api/admin/eventsSettings & keys |
| MAPMP-1.1 | Model inventory with lifecycle state Canonical models carry capabilities, context window, lifecycle (approved/testing/restricted/deprecated/blocked) and per-task-family quality scores; non-approved models are filtered out of candidacy. | 13 models · 1 not fully approved | Model catalogGET /v1/models |
| MAPMP-2.3 | Data classification drives the route The task signature derives a risk level per request; route policies cap the data class they accept and can force ZDR endpoints and Tier A/B egress for confidential traffic. | 13 ZDR endpoints available | Route simulatorRouting policies |
| MAPMP-3.4 | Egress path and trust tier are explicit Every attempt names the provider account and the egress node that carried it; nodes carry a trust tier from enrollment and a health score from heartbeats (memo §12.4). | 7 nodes · 1 quarantined | Egress networkProviders & accounts |
| MEASUREMS-1.1 | Quality evidence is versioned and staged Golden datasets are replayed through the real pipeline into versioned scorecards; catalog quality scores change only via a rollout that reaches full (shadow → canary → full, memo §7.6). | scorecards + staged rollouts | EvaluationsGET /api/fabric/evaluations |
| MEASUREMS-2.7 | Guardrail findings are recorded per stage PRE_ROUTE / PRE_MODEL / POST_MODEL / PRE_RETURN decisions (allow, flag, redact, block, require_approval, restrict_route) are attached to the generation and never bypassed by cache or fallback (memo §10.7). | 493 decisions · 2 blocked generations | Guardrails & DLPBlocked generations |
| MEASUREMS-3.2 | Errors use one canonical taxonomy Provider failures are normalized into a single FabricErrorClass union, which drives the fallback graph, circuit breakers and incident fingerprints rather than provider-specific strings (memo §9.1). | 4 generations carry an error class | IncidentsError search |
| MEASUREMS-4.2 | User feedback is joined to generations POST /v1/feedback attaches a ±1 rating and optional comment to a ledgered generation, feeding the runtime evidence layer alongside retries, JSON validity and latency. | runtime evidence layer active | Feedback feed |
| MANAGEMG-2.2 | Unsafe output never silently degrades A safety or DLP block terminates the request — it is never retried on another model — and only output-approved content is written to cache (memo §8.4, §10.7). | invariant enforced in pipeline | CacheGuardrails & DLP |
| MANAGEMG-3.1 | Degradation is contained Per-provider / account / node circuit breakers, retry budgets and an error-conditioned fallback graph remove failing supply from candidacy; operators can open or reset a circuit and drain or quarantine a node. | 2 circuits currently tripped | Incidents & circuitsEgress network |
| MANAGEMG-4.1 | Spend is bounded before dispatch Hierarchical budgets reserve estimated cost before the provider call and settle actuals afterwards; a request exceeding the profile ceiling is rejected with budget_exceeded (memo §15.2). | 5 budgets enforced | Budgets & FinOps |
| MANAGEMG-4.3 | Evidence is exportable and tamper-evident Evidence bundles carry the generation, its full timeline, the policy versions in force and a SHA-256 hash chain over the audit events, so any alteration breaks every subsequent link (memo §14.3.6). | bundle export available per generation | Audit & evidence exportGET /api/admin/export/evidence |
Content capture inventory
Memo §14.2 capture modes derived from each service profile's audit mode. The mode decides what the audit store keeps — hashes only, redacted text, or encrypted full content.
| Capture mode | Service profiles | Profiles | Generations |
|---|---|---|---|
| metadata-only | @company/general-fast@company/general-balanced@company/vision@company/embeddings@company/voice@company/image@company/video@company/autofabric/auto | 9 | 109 |
| redacted-content | @company/general-best@company/code-production | 2 | 8 |
| encrypted-content | @company/confidential | 1 | 13 |
Supply policy & terms
Routable supply uses provider APIs, cloud service identities, provisioned capacity and contractually approved credentials only (memo §2.4). Named-user product subscriptions remain named-user entitlements and are never converted into shared API credentials (memo §6.4). Internal plans may present fixed monthly allocations while the underlying supply remains authorized API or provisioned capacity (memo §6.4).
| Account | Provider | Pool / region | Contract | Status | Authorized | Terms note |
|---|---|---|---|---|---|---|
| acct_bedrock_prod_apse1 | Amazon Bedrock | prod · ap-southeast-1 | provisionedct_bedrock_provisioned | active | yes | Provisioned/dedicated capacity — contractually reserved throughput; routable within the reservation terms. |
| acct_anthropic_ent_apse1 | Anthropic | enterprise · ap-southeast-1 | committedct_anthropic_committed | active | yes | Committed-spend API contract — provider-authorized shared organizational use; drawdown tracked against the commitment. |
| acct_anthropic_ent_use1 | Anthropic | enterprise · us-east-1 | committedct_anthropic_committed | active | yes | Committed-spend API contract — provider-authorized shared organizational use; drawdown tracked against the commitment. |
| acct_vertex_prod_euw1 | Google Vertex AI | prod · eu-west-1 | meteredct_vertex_metered | active | yes | Metered API contract — provider-authorized programmatic capacity; routable supply per published API/business terms. |
| acct_openai_pool_a_euw1 | OpenAI | pool-a · eu-west-1 | meteredct_openai_metered | active | yes | Metered API contract — provider-authorized programmatic capacity; routable supply per published API/business terms. OpenAI business terms restrict shared account access, API-key transfer and limit circumvention; this supply is a direct API contract, not a named-user seat. |
| acct_openai_pool_a_use1 | OpenAI | pool-a · us-east-1 | meteredct_openai_metered | active | yes | Metered API contract — provider-authorized programmatic capacity; routable supply per published API/business terms. OpenAI business terms restrict shared account access, API-key transfer and limit circumvention; this supply is a direct API contract, not a named-user seat. |
| acct_openai_pool_b_apse1 | OpenAI | pool-b · ap-southeast-1 | meteredct_openai_metered | active | yes | Metered API contract — provider-authorized programmatic capacity; routable supply per published API/business terms. OpenAI business terms restrict shared account access, API-key transfer and limit circumvention; this supply is a direct API contract, not a named-user seat. |
| acct_vllm_sg_01 | Self-hosted vLLM | onprem · ap-southeast-1 | provisionedct_vllm_internal | active | yes | Provisioned/dedicated capacity — contractually reserved throughput; routable within the reservation terms. |