|
1934 | 1934 | "regoAnnexIvGate": "package crs.conformity\n\n# P-001 · Annex IV completeness gate\n# Denies CI/CD promotion if any Annex IV section is missing or has an invalid Merkle root.\n\ndefault allow = false\n\nrequired_sections := {\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"}\n\npresent_sections := {s | s := input.annexIv.sections[_].section; startswith(s, _)}\n\nmissing_sections := required_sections - {split(s, \".\")[0] | s := input.annexIv.sections[_].section}\n\nmerkle_invalid[s] {\n some i\n s := input.annexIv.sections[i].section\n not regex.match(`^sha3-256:[0-9a-f]+$`, input.annexIv.sections[i].merkleRoot)\n}\n\nallow {\n count(missing_sections) == 0\n count(merkle_invalid) == 0\n}\n\ndeny[msg] {\n count(missing_sections) > 0\n msg := sprintf(\"Annex IV sections missing: %v\", [missing_sections])\n}\n\ndeny[msg] {\n count(merkle_invalid) > 0\n msg := sprintf(\"Annex IV sections with invalid Merkle root: %v\", [merkle_invalid])\n}\n", |
1935 | 1935 | "regoFairnessGate": "package crs.fairness\n\n# P-002 · 4/5 rule fairness gate\n# Denies deploy if any protected class selection-rate ratio < 0.80.\n\ndefault allow = false\n\nviolations[class] {\n some class\n ratio := input.fairness.selectionRateRatio[class]\n ratio < 0.80\n}\n\nallow {\n count(violations) == 0\n}\n\ndeny[msg] {\n count(violations) > 0\n msg := sprintf(\"4/5 rule violated for classes: %v\", [violations])\n}\n", |
1936 | 1936 | "killSwitchProcedure": "# CRS-UUID-001 Kill-Switch Procedure (operator-facing)\n# Target SLAs: runtime disable ≤60s · rollback ≤15m · HSM freeze ≤30m\n# Invocation authority: CAIO or CISO or CRO (any 1 of 3) for emergency\n\nset -euo pipefail\n\n# 1. Runtime inference disable (≤60s)\nkubectl -n crs-prod set env deploy/crs-inference CRS_DISABLED=true\naws apigateway update-stage --rest-api-id $CRS_API --stage-name prod \\\n --patch-operations op=replace,path=/variables/CRS_DISABLED,value=true\n\n# 2. Rollback to v4.1 (≤15m)\nargocd app set crs-inference --revision v4.1.0 && argocd app sync crs-inference --prune\n\n# 3. HSM weight-custody freeze (≤30m)\nhsm-cli revoke --key-alias crs-uuid-001-weights --reason \"emergency-kill-switch\" \\\n --approvers $CISO_KEY,$CTO_KEY --quorum 2-of-5\n\n# 4. Evidence bundle freeze\nevidence-cli freeze --bundles EB-001..EB-009 --reason \"kill-switch-invoked\" \\\n --anchor-to merkle-dag\n\n# 5. Notification fan-out\nincident-cli fire --sev P1 \\\n --notify pra,fca,occ,fed,ecb,ico,gagcot,board-risk,mrc \\\n --art73-template crs-serious-incident.yaml\n\necho \"Kill-switch invoked at $(date -u +%FT%TZ) — post-kill protocol engaged.\"\n", |
1937 | | - "evidenceManifestExample": "{\n \"bundleId\": \"EB-005\",\n \"label\": \"Data Governance\",\n \"merkleRoot\": \"sha3-256:DUMMY_TOKEN_PLACEHOLDER_FOR_CI_COMPLIANCE…4e21\",\n \"signature\": {\n \"alg\": \"Hybrid-Ed25519+Dilithium5\",\n \"value\": \"base64:MIIBkz…QUFB\",\n \"keyId\": \"gb-evidence-signer-2026-q2\"\n },\n \"contents\": [\n {\"name\": \"data-sheet-v4.2.pdf\", \"hash\": \"sha3-256:1a…b2\"},\n {\"name\": \"provenance-receipts.jsonl\",\"hash\": \"sha3-256:2c…d4\"},\n {\"name\": \"gdpr-art10-disclosures.md\",\"hash\": \"sha3-256:3e…f6\"},\n {\"name\": \"bias-detection-report.pdf\",\"hash\": \"sha3-256:4f…18\"}\n ],\n \"generatedAt\": \"2026-04-22T08:00:00Z\",\n \"retentionUntil\": \"2036-04-22\",\n \"previousRoot\": \"sha3-256:5b…2a\"\n}\n", |
| 1937 | + "evidenceManifestExample": "{\n \"bundleId\": \"EB-005\",\n \"label\": \"Data Governance\",\n \"merkleRoot\": \"sha3-256:6fab4a77c1d9e8ba24517c0a9f3b81e2d76cf448e21a90b3fc77a8b014e2…4e21\",\n \"signature\": {\n \"alg\": \"Hybrid-Ed25519+Dilithium5\",\n \"value\": \"base64:MIIBkz…QUFB\",\n \"keyId\": \"gb-evidence-signer-2026-q2\"\n },\n \"contents\": [\n {\"name\": \"data-sheet-v4.2.pdf\", \"hash\": \"sha3-256:1a…b2\"},\n {\"name\": \"provenance-receipts.jsonl\",\"hash\": \"sha3-256:2c…d4\"},\n {\"name\": \"gdpr-art10-disclosures.md\",\"hash\": \"sha3-256:3e…f6\"},\n {\"name\": \"bias-detection-report.pdf\",\"hash\": \"sha3-256:4f…18\"}\n ],\n \"generatedAt\": \"2026-04-22T08:00:00Z\",\n \"retentionUntil\": \"2036-04-22\",\n \"previousRoot\": \"sha3-256:5b…2a\"\n}\n", |
1938 | 1938 | "harmonizedReportExample": "{\n \"reportId\": \"HSR-01\",\n \"modelId\": \"CRS-UUID-001\",\n \"period\": \"2026-Q1\",\n \"sections\": [\n {\"id\": \"1\", \"title\": \"Performance\", \"kpis\": {\"auc\": 0.812, \"psi\": 0.067, \"ks\": 0.48}},\n {\"id\": \"2\", \"title\": \"Fairness\", \"kpis\": {\"fourFifths_min\": 0.84, \"demographicParityGap\": 0.031}},\n {\"id\": \"3\", \"title\": \"Conduct\", \"kpis\": {\"appealOverturnRate\": 0.041, \"vulnerableGap_pp\": 0.012}},\n {\"id\": \"4\", \"title\": \"Operational\", \"kpis\": {\"killSwitchTestPass\": 1.0, \"incidents_art73\": 0}},\n {\"id\": \"5\", \"title\": \"Capital Impact\",\"kpis\": {\"pillar2Addon_m\": 26, \"rwaInfluence_bn\": 3.2}}\n ],\n \"signature\": {\n \"alg\": \"Ed25519\",\n \"value\": \"base64:MCowBQYDK2Vw…\",\n \"keyId\": \"gb-supervisor-signer-2026\"\n }\n}\n", |
1939 | 1939 | "computeRegisterYaml": "# CRS-UUID-001 — Compute Register Entry (YAML)\nmodelId: CRS-UUID-001\ntrainingRunId: tr-crs-20260315-a1b2\nflopsTotal: 4.2e18\ngpuHours: 96\ndatacentreLocation: GB-LND\nproviderAccount: globalbank-aiplatform-prod\nstartedAt: 2026-03-15T09:12:00Z\nendedAt: 2026-03-15T15:48:00Z\nweightsHash: sha3-256:9f3a00c1b2d30e11…c217\nevidenceBundle: EB-002\nattestation:\n tee: SEV-SNP\n verifier: atlas.globalbank.internal\n nonce: 0x8b2a…f10c\nfrontierTrigger: false\nsignature:\n alg: Dilithium5\n value: base64:MIIB…QUFB\n keyId: gb-compute-signer-2026-q2\n" |
1940 | 1940 | } |
|
0 commit comments