@grc-claw/compliance-orchestrator 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,184 @@
1
+ export type FrameworkCode = 'iso27001' | 'nist-csf' | 'soc2' | 'iso42001' | 'eu-ai-act' | 'dora' | 'nis2' | 'hipaa' | 'pci-dss' | 'fedramp' | 'cmmc' | 'gdpr' | 'lgpd' | 'pipl' | 'tisax' | 'popia';
2
+ export interface ControlNode {
3
+ id: string;
4
+ framework: FrameworkCode;
5
+ code: string;
6
+ title: string;
7
+ description: string;
8
+ family: string;
9
+ severity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
10
+ dependencies: string[];
11
+ evidenceRequirements: EvidenceRequirement[];
12
+ testLogic?: TestLogic;
13
+ remediation?: RemediationTemplate;
14
+ }
15
+ export interface EvidenceRequirement {
16
+ type: 'screenshot' | 'log' | 'config' | 'certificate' | 'policy' | 'attestation' | 'scan' | 'automated' | 'document';
17
+ source: string;
18
+ freshness: string;
19
+ cryptographic?: boolean;
20
+ }
21
+ export interface TestLogic {
22
+ type: 'rego' | 'sql' | 'typescript' | 'yaml' | 'external';
23
+ code: string;
24
+ inputs: Record<string, string>;
25
+ expectedOutput: unknown;
26
+ }
27
+ export interface RemediationTemplate {
28
+ type: 'terraform' | 'aws-cli' | 'azure-cli' | 'gcp-cli' | 'kubernetes' | 'manual' | 'script';
29
+ code: string;
30
+ rollbackCode?: string;
31
+ estimatedTime: string;
32
+ riskLevel: 'low' | 'medium' | 'high';
33
+ }
34
+ export interface CrosswalkEntry {
35
+ sourceFramework: FrameworkCode;
36
+ sourceControl: string;
37
+ targetFramework: FrameworkCode;
38
+ targetControl: string;
39
+ relationship: 'equivalent' | 'stronger' | 'weaker' | 'subset' | 'superset';
40
+ confidence: number;
41
+ }
42
+ export interface RegulationAST {
43
+ id: string;
44
+ framework: FrameworkCode;
45
+ version: string;
46
+ compiledAt: string;
47
+ controls: ASTControlNode[];
48
+ crosswalks: CrosswalkEntry[];
49
+ metadata: RegulationMetadata;
50
+ }
51
+ export interface ASTControlNode {
52
+ id: string;
53
+ code: string;
54
+ title: string;
55
+ severity?: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
56
+ ast: PolicyAST;
57
+ crossRefs: string[];
58
+ evidenceChain: EvidenceChain;
59
+ }
60
+ export interface PolicyAST {
61
+ type: 'conjunction' | 'disjunction' | 'implication' | 'negation' | 'atom';
62
+ operator?: string;
63
+ children?: PolicyAST[];
64
+ atom?: PolicyAtom;
65
+ }
66
+ export interface PolicyAtom {
67
+ subject: string;
68
+ predicate: string;
69
+ object: string;
70
+ constraints: Record<string, unknown>;
71
+ }
72
+ export interface EvidenceChain {
73
+ required: EvidenceRequirement[];
74
+ collected: CollectedEvidence[];
75
+ validUntil: string;
76
+ }
77
+ export interface CollectedEvidence {
78
+ id: string;
79
+ controlId: string;
80
+ type: string;
81
+ source: string;
82
+ hash: string;
83
+ timestamp: string;
84
+ valid: boolean;
85
+ verifiedBy?: string;
86
+ }
87
+ export interface RegulationMetadata {
88
+ title: string;
89
+ issuer: string;
90
+ publishedAt: string;
91
+ effectiveAt: string;
92
+ totalControls: number;
93
+ families: string[];
94
+ }
95
+ export interface ComplianceState {
96
+ orgId: string;
97
+ timestamp: string;
98
+ framework: FrameworkCode;
99
+ overallScore: number;
100
+ controlStatuses: ControlStatus[];
101
+ drift: DriftEvent[];
102
+ risks: RiskAssessment[];
103
+ }
104
+ export interface ControlStatus {
105
+ controlId: string;
106
+ status: 'compliant' | 'non-compliant' | 'partial' | 'not-applicable' | 'not-tested';
107
+ lastVerified: string;
108
+ evidenceCount: number;
109
+ score: number;
110
+ issues: ControlIssue[];
111
+ }
112
+ export interface ControlIssue {
113
+ id: string;
114
+ severity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
115
+ description: string;
116
+ detectedAt: string;
117
+ remediation?: RemediationTemplate;
118
+ }
119
+ export interface DriftEvent {
120
+ id: string;
121
+ controlId: string;
122
+ detectedAt: string;
123
+ type: 'configuration' | 'policy' | 'evidence' | 'access' | 'network';
124
+ before: unknown;
125
+ after: unknown;
126
+ severity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
127
+ autoRemediated: boolean;
128
+ remediationId?: string;
129
+ }
130
+ export interface RiskAssessment {
131
+ controlId: string;
132
+ riskScore: number;
133
+ blastRadius: number;
134
+ likelihood: number;
135
+ impact: number;
136
+ factors: string[];
137
+ }
138
+ export interface CompliancePlan {
139
+ id: string;
140
+ orgId: string;
141
+ framework: FrameworkCode;
142
+ createdAt: string;
143
+ actions: PlanAction[];
144
+ estimatedCost: number;
145
+ estimatedDuration: string;
146
+ }
147
+ export interface PlanAction {
148
+ id: string;
149
+ controlId: string;
150
+ action: 'create' | 'update' | 'delete' | 'verify' | 'remediate';
151
+ resource: string;
152
+ before?: unknown;
153
+ after?: unknown;
154
+ evidenceRequired: string[];
155
+ sla: string;
156
+ owner?: string;
157
+ }
158
+ export interface ComplianceAudit {
159
+ id: string;
160
+ orgId: string;
161
+ framework: FrameworkCode;
162
+ startedAt: string;
163
+ completedAt?: string;
164
+ controls: AuditControlResult[];
165
+ summary: AuditSummary;
166
+ }
167
+ export interface AuditControlResult {
168
+ controlId: string;
169
+ status: 'pass' | 'fail' | 'skip' | 'error';
170
+ evidence: CollectedEvidence[];
171
+ issues: ControlIssue[];
172
+ duration: number;
173
+ }
174
+ export interface AuditSummary {
175
+ totalControls: number;
176
+ passed: number;
177
+ failed: number;
178
+ skipped: number;
179
+ errors: number;
180
+ complianceScore: number;
181
+ criticalFindings: number;
182
+ highFindings: number;
183
+ }
184
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "@grc-claw/compliance-orchestrator",
3
+ "version": "2.0.0",
4
+ "description": "Regulation AST Compiler, Neuro-Symbolic Reasoner, and Continuous Compliance Engine",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "scripts": {
9
+ "build": "tsc",
10
+ "test": "vitest run",
11
+ "dev": "tsc --watch"
12
+ },
13
+ "dependencies": {
14
+ "@grc-claw/core": "*",
15
+ "@grc-claw/evidence": "*",
16
+ "@grc-claw/frameworks": "*",
17
+ "@grc-claw/aims": "*",
18
+ "@grc-claw/sdk": "*",
19
+ "z3-solver": "^4.12.0",
20
+ "yaml": "^2.4.0"
21
+ },
22
+ "devDependencies": {
23
+ "typescript": "^5.7.0",
24
+ "vitest": "^1.6.0",
25
+ "@types/node": "^20.14.0"
26
+ }
27
+ }