monora-ai 2.1.3 → 2.1.4

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.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Monora SDK for Node.js v2.1.3
1
+ # Monora SDK for Node.js v2.1.4
2
2
 
3
3
  Lightweight governance and trace SDK for AI systems.
4
4
 
@@ -33,6 +33,7 @@ On completion, Monora writes baseline reports and summaries under `onboarding.ar
33
33
  - `soc2_baseline_report.json`
34
34
  - `gdpr_baseline_report.json`
35
35
  - `iso27001_baseline_report.json`
36
+ - `iso42001_baseline_report.json`
36
37
  - `onboarding_validation.json`
37
38
  - `onboarding_summary.json`
38
39
 
@@ -95,7 +96,7 @@ npx monora-ai security-review --input events.jsonl --output security.json
95
96
  npx monora-ai verify --input events.jsonl --config monora.yml --pretty
96
97
 
97
98
  # Trust Packages
98
- npx monora-ai trust-package --input events.jsonl --trace-id trc_123 --output trust.json
99
+ npx monora-ai trust-package --input events.jsonl --trace-id trc_123 --output trust.json --control-standard SOC2
99
100
 
100
101
  # HTTP Queue Management
101
102
  npx monora-ai retry-queue --config monora.yml
@@ -167,7 +168,7 @@ onboarding:
167
168
  enabled: true
168
169
  required_in_production: true
169
170
  status: draft # draft | validated | completed
170
- standards: [SOC2, GDPR, ISO27001]
171
+ standards: [SOC2, GDPR, ISO27001, ISO42001]
171
172
  artifacts:
172
173
  production_logs_path: ./monora_events.jsonl
173
174
  schema_contract_path: ./onboarding/schema_contract.json
@@ -290,12 +291,11 @@ When rotation is enabled, use `./monora_events.latest.jsonl` in scripts to alway
290
291
  - **Attribution + Usage Telemetry**: Optional project registration and anonymous usage stats (opt-in)
291
292
  - **Compliance Assessment Hooks**: Built-in checks and usage profiles for audits
292
293
 
293
- ### New in v2.1.3
294
+ ### New in v2.1.4
294
295
 
295
- - **Circuit Breaker**: Fault tolerance for HTTPS sinks with automatic recovery
296
- - **Telemetry/Analytics**: Prometheus and StatsD metrics export for observability
297
- - **PDF Reports**: Generate compliance and EU AI Act PDF reports
298
- - **Next.js Middleware**: W3C Trace Context propagation for Next.js applications
296
+ - **SOC2/GDPR Workflow Parity**: First-class SOC2/GDPR control catalogs and standard-aware workflow gap prioritization
297
+ - **ISO42001 Onboarding Defaults**: Onboarding standards defaults now include `SOC2`, `GDPR`, `ISO27001`, and `ISO42001`
298
+ - **Trust Package Selector**: `trust-package --control-standard ISO42001|SOC2|GDPR` selects bundled catalogs without custom paths
299
299
 
300
300
  ---
301
301
 
@@ -780,6 +780,13 @@ Start with `templates/standards_claims_template.json` and customize the claims.
780
780
  - SOC 2: `templates/standards/soc2_claims.json`
781
781
  - GDPR: `templates/standards/gdpr_claims.json`
782
782
  - ISO 27001: `templates/standards/iso27001_claims.json`
783
+ - ISO 42001: `templates/standards/iso42001_claims.json`
784
+
785
+ Packaged control catalogs for trust-package/control-coverage workflows:
786
+
787
+ - SOC 2: `templates/controls/soc2_control_catalog.json`
788
+ - GDPR: `templates/controls/gdpr_control_catalog.json`
789
+ - ISO 42001: supported via default control catalog resolution
783
790
 
784
791
  Supported checks: `policy_violations_max`, `unknown_models_max`, `forbidden_models_max`, `hash_chain_status`, `signatures_status`, `sequence_gaps_max`, `errors_max`, `config_required`.
785
792
 
@@ -1 +1 @@
1
- {"version":3,"file":"assessment.d.ts","sourceRoot":"","sources":["../src/assessment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assessment.d.ts","sourceRoot":"","sources":["../src/assessment.ts"],"names":[],"mappings":"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"}
@@ -61,10 +61,11 @@ exports.generateAssessmentReport = generateAssessmentReport;
61
61
  const fs = __importStar(require("fs"));
62
62
  const path = __importStar(require("path"));
63
63
  const attribution_1 = require("./attribution");
64
+ const complianceConsolidation_1 = require("./complianceConsolidation");
64
65
  const config_1 = require("./config");
65
66
  const verify_1 = require("./verify");
66
67
  // Get version
67
- let SDK_VERSION = '2.1.3';
68
+ let SDK_VERSION = '2.1.4';
68
69
  try {
69
70
  const pkgPath = path.join(__dirname, '..', 'package.json');
70
71
  if (fs.existsSync(pkgPath)) {
@@ -480,6 +481,21 @@ function buildFrameworkChecks(config, frameworks) {
480
481
  recommendations.push(recommendation);
481
482
  }
482
483
  };
484
+ const addCoverageChecks = (framework, checkPrefix, category) => {
485
+ let totalControls = 0;
486
+ let coveredControls = 0;
487
+ try {
488
+ const coverage = (0, complianceConsolidation_1.identifyFrameworkRemainingGaps)({ standard: framework });
489
+ const summary = (coverage.summary || {});
490
+ totalControls = Number(summary.total_controls || 0);
491
+ coveredControls = Number(summary.covered_controls || 0);
492
+ }
493
+ catch (error) {
494
+ warnings.push(`${framework}: control coverage check failed: ${error?.message || error}`);
495
+ }
496
+ addCheck(`${checkPrefix}_control_coverage_generated`, `${framework}: control coverage report can be generated`, totalControls > 0, category, `Ensure bundled ${framework} control catalog templates are available and readable`);
497
+ addCheck(`${checkPrefix}_reportable_controls_present`, `${framework}: at least one control is reportable with current evidence`, coveredControls > 0, category, `Collect and approve evidence for at least one ${framework} control to produce reportable coverage`);
498
+ };
483
499
  if (frameworks.includes('SOC2')) {
484
500
  addCheck('soc2_framework_declared', 'SOC 2: framework declared in audit metadata', complianceFrameworks.includes('SOC2'), 'governance', 'Add SOC2 to audit metadata compliance_frameworks');
485
501
  addCheck('soc2_audit_metadata', 'SOC 2: audit metadata documents use case and owner', useCaseDocumented, 'governance', 'Set audit metadata with use_case_name and business_owner for SOC 2');
@@ -488,6 +504,7 @@ function buildFrameworkChecks(config, frameworks) {
488
504
  addCheck('soc2_wal_enabled', 'SOC 2: write-ahead log enabled for resilience', Boolean(wal.enabled), 'reliability', 'Enable WAL to strengthen SOC 2 availability evidence');
489
505
  addCheck('soc2_policy_enforcement', 'SOC 2: policy enforcement is enabled', Boolean(policies.enforce), 'governance', 'Enable policy enforcement for SOC 2 governance controls');
490
506
  addCheck('soc2_incident_alerts', 'SOC 2: violation alert webhook configured', Boolean(alerts.violation_webhook), 'security', 'Configure alerts.violation_webhook for SOC 2 incident response');
507
+ addCoverageChecks('SOC2', 'soc2', 'auditability');
491
508
  }
492
509
  if (frameworks.includes('GDPR')) {
493
510
  addCheck('gdpr_framework_declared', 'GDPR: framework declared in audit metadata', complianceFrameworks.includes('GDPR'), 'privacy', 'Add GDPR to audit metadata compliance_frameworks');
@@ -496,6 +513,7 @@ function buildFrameworkChecks(config, frameworks) {
496
513
  addCheck('gdpr_data_categories_declared', 'GDPR: data categories are documented', dataCategoriesDeclared, 'privacy', 'Document data_categories in audit metadata for GDPR');
497
514
  addCheck('gdpr_data_classification_set', 'GDPR: default data classification is set', dataClassificationSet, 'privacy', 'Set defaults.data_classification to document GDPR data handling scope');
498
515
  addCheck('gdpr_review_documented', 'GDPR: compliance review metadata is documented', reviewDocumented, 'privacy', 'Record review_date or reviewer in audit metadata for GDPR');
516
+ addCoverageChecks('GDPR', 'gdpr', 'privacy');
499
517
  }
500
518
  if (frameworks.includes('ISO27001')) {
501
519
  addCheck('iso27001_framework_declared', 'ISO 27001: framework declared in audit metadata', complianceFrameworks.includes('ISO27001'), 'security', 'Add ISO27001 to audit metadata compliance_frameworks');
@@ -510,6 +528,7 @@ function buildFrameworkChecks(config, frameworks) {
510
528
  addCheck('iso42001_policy_enforcement', 'ISO 42001: policy enforcement is enabled', Boolean(policies.enforce), 'governance', 'Enable policy enforcement for ISO 42001 governance controls');
511
529
  addCheck('iso42001_data_handling_enabled', 'ISO 42001: data handling/redaction is enabled', dataHandlingEnabled, 'privacy', 'Enable data_handling to support ISO 42001 risk controls');
512
530
  addCheck('iso42001_review_documented', 'ISO 42001: compliance review metadata is documented', reviewDocumented, 'governance', 'Record review_date or reviewer in audit metadata for ISO 42001');
531
+ addCoverageChecks('ISO42001', 'iso42001', 'governance');
513
532
  // A.5.x - Impact Assessment checks
514
533
  const impactConfig = (config.impact_assessment || {});
515
534
  const impactEnabled = Boolean(impactConfig.enabled);
@@ -102,7 +102,7 @@ const retryQueue = [];
102
102
  const MAX_RETRY_QUEUE_SIZE = 100;
103
103
  let retryTimer = null;
104
104
  // Get version from package.json
105
- let SDK_VERSION = '2.1.3';
105
+ let SDK_VERSION = '2.1.4';
106
106
  try {
107
107
  const pkgPath = path.join(__dirname, '..', 'package.json');
108
108
  if (fs.existsSync(pkgPath)) {
package/dist/cli.js CHANGED
@@ -81,7 +81,7 @@ function usage() {
81
81
  console.log(' report --input <events.jsonl> --output <report.json> [--format json|markdown] [--config monora.yml] [--no-schema] [--no-verify] [--no-signature-verify]');
82
82
  console.log(' usage-report --input <events.jsonl> --output <usage.json> [--format json|markdown] [--no-schema]');
83
83
  console.log(' security-review --input <events.jsonl> --output <security.json> [--config monora.yml] [--no-schema] [--sign gpg --gpg-key <id> --bundle <bundle.json>]');
84
- console.log(' trust-package --input <events.jsonl> --trace-id <trace_id> --output <trust.json> [--config monora.yml] [options...]');
84
+ console.log(' trust-package --input <events.jsonl> --trace-id <trace_id> --output <trust.json> [--config monora.yml] [--control-standard ISO42001|SOC2|GDPR] [options...]');
85
85
  console.log(' aims <subcommand> [--state <aims_state.json>]');
86
86
  console.log(' ai-act-report --input <events.jsonl> --output <report.json> [--format json|markdown] [--config monora.yml] [--no-schema]');
87
87
  console.log(' verify --input <events.jsonl> [--config monora.yml] [--no-schema] [--no-verify] [--no-signature-verify] [--no-sequence] [--pretty]');
@@ -303,6 +303,7 @@ function resolveStandardsTemplatePath(standard) {
303
303
  soc2: 'soc2_claims.json',
304
304
  gdpr: 'gdpr_claims.json',
305
305
  iso27001: 'iso27001_claims.json',
306
+ iso42001: 'iso42001_claims.json',
306
307
  iso: 'iso27001_claims.json',
307
308
  };
308
309
  const filename = filenameMap[normalized];
@@ -921,6 +922,17 @@ function parseTrustPackageOptions(args) {
921
922
  evidenceNoWorkflowState: hasFlag(args, '--evidence-no-workflow-state'),
922
923
  evidenceNoAimsState: hasFlag(args, '--evidence-no-aims-state'),
923
924
  controlCatalog: getFlagValue(args, '--control-catalog'),
925
+ controlStandard: (() => {
926
+ const raw = getFlagValue(args, '--control-standard');
927
+ if (!raw) {
928
+ return undefined;
929
+ }
930
+ const normalized = raw.trim().toUpperCase();
931
+ if (normalized !== 'ISO42001' && normalized !== 'SOC2' && normalized !== 'GDPR') {
932
+ throw new Error("Invalid --control-standard. Expected one of: ISO42001, SOC2, GDPR.");
933
+ }
934
+ return normalized;
935
+ })(),
924
936
  controlWorkflowState: getFlagValue(args, '--control-workflow-state'),
925
937
  controlCoverageTarget: Number.isFinite(target) ? target : 0.9,
926
938
  controlCoverage: getFlagValue(args, '--control-coverage'),
@@ -1333,6 +1345,7 @@ async function runTrustPackage(options) {
1333
1345
  evidenceManifestIncludeWorkflowState: !options.evidenceNoWorkflowState,
1334
1346
  evidenceManifestIncludeAimsState: !options.evidenceNoAimsState,
1335
1347
  controlCatalogPath: options.controlCatalog,
1348
+ controlCatalogStandard: options.controlStandard,
1336
1349
  controlWorkflowStatePath: options.controlWorkflowState,
1337
1350
  controlCoverageTarget: options.controlCoverageTarget,
1338
1351
  controlCoveragePath: options.controlCoverage,
@@ -1917,7 +1930,7 @@ async function runStandardsWizard(args) {
1917
1930
  const rl = acceptDefaults ? null : createInterface();
1918
1931
  let standard = standardArg;
1919
1932
  if (!standard && !acceptDefaults && rl) {
1920
- standard = await ask(rl, 'Which standard (SOC2, GDPR, ISO27001, custom)', 'SOC2');
1933
+ standard = await ask(rl, 'Which standard (SOC2, GDPR, ISO27001, ISO42001, custom)', 'SOC2');
1921
1934
  }
1922
1935
  const standardKey = (standard || 'SOC2').trim();
1923
1936
  let templatePath = templateArg || resolveStandardsTemplatePath(standardKey);
@@ -2445,7 +2458,7 @@ async function runOnboard(args) {
2445
2458
  let schemaPath = String(onboardingDefaults?.artifacts?.schema_contract_path || './onboarding/schema_contract.json');
2446
2459
  let datasetSamplePath = null;
2447
2460
  let baselineReportsDir = String(onboardingDefaults?.artifacts?.baseline_reports_dir || './monora_reports/onboarding');
2448
- let standards = ['SOC2', 'GDPR', 'ISO27001'];
2461
+ let standards = ['SOC2', 'GDPR', 'ISO27001', 'ISO42001'];
2449
2462
  let bundles = ['core_observability', 'soc2_access', 'gdpr_privacy', 'iso27001_security'];
2450
2463
  let toggles = {
2451
2464
  identity_tracking: true,
@@ -2471,9 +2484,9 @@ async function runOnboard(args) {
2471
2484
  const datasetRaw = (await ask(rl, 'Dataset sample path (optional)', '')).trim();
2472
2485
  datasetSamplePath = datasetRaw || null;
2473
2486
  baselineReportsDir = await ask(rl, 'Baseline reports output directory', baselineReportsDir);
2474
- standards = parseOptionalList(await ask(rl, 'Standards (comma-separated)', 'SOC2,GDPR,ISO27001'));
2487
+ standards = parseOptionalList(await ask(rl, 'Standards (comma-separated)', 'SOC2,GDPR,ISO27001,ISO42001'));
2475
2488
  if (standards.length === 0) {
2476
- standards = ['SOC2', 'GDPR', 'ISO27001'];
2489
+ standards = ['SOC2', 'GDPR', 'ISO27001', 'ISO42001'];
2477
2490
  }
2478
2491
  bundles = parseOptionalList(await ask(rl, 'Enrichment bundles (comma-separated)', 'core_observability,soc2_access,gdpr_privacy,iso27001_security'));
2479
2492
  if (bundles.length === 0) {
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Framework-level control coverage consolidation helpers.
3
+ */
4
+ export declare function identifyFrameworkRemainingGaps(options: {
5
+ standard: string;
6
+ catalog?: Record<string, any>;
7
+ targetCoverage?: number;
8
+ }): Record<string, any>;
9
+ export declare function identifySoc2RemainingGaps(options?: {
10
+ catalog?: Record<string, any>;
11
+ targetCoverage?: number;
12
+ }): Record<string, any>;
13
+ export declare function identifyGdprRemainingGaps(options?: {
14
+ catalog?: Record<string, any>;
15
+ targetCoverage?: number;
16
+ }): Record<string, any>;
17
+ //# sourceMappingURL=complianceConsolidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"complianceConsolidation.d.ts","sourceRoot":"","sources":["../src/complianceConsolidation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiBH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAkCtB;AAED,wBAAgB,yBAAyB,CAAC,OAAO,CAAC,EAAE;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAMtB;AAED,wBAAgB,yBAAyB,CAAC,OAAO,CAAC,EAAE;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAMtB"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ /**
3
+ * Framework-level control coverage consolidation helpers.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.identifyFrameworkRemainingGaps = identifyFrameworkRemainingGaps;
7
+ exports.identifySoc2RemainingGaps = identifySoc2RemainingGaps;
8
+ exports.identifyGdprRemainingGaps = identifyGdprRemainingGaps;
9
+ const control_backbone_1 = require("./control_backbone");
10
+ function normalizeStandard(value) {
11
+ const normalized = String(value || '').trim().toUpperCase().replace(/[-_]/g, '');
12
+ if (!normalized)
13
+ return 'ISO42001';
14
+ if (normalized === 'ISO42001' || normalized === 'ISOIEC42001')
15
+ return 'ISO42001';
16
+ if (normalized === 'SOC2' || normalized === 'SOCII')
17
+ return 'SOC2';
18
+ if (normalized === 'GDPR')
19
+ return 'GDPR';
20
+ return String(value || '').trim().toUpperCase();
21
+ }
22
+ function identifyFrameworkRemainingGaps(options) {
23
+ const standard = normalizeStandard(options.standard);
24
+ const targetCoverage = typeof options.targetCoverage === 'number' ? options.targetCoverage : 0.9;
25
+ const catalog = options.catalog || (0, control_backbone_1.loadDefaultControlCatalog)(standard);
26
+ const report = (0, control_backbone_1.generateControlCoverageReport)({
27
+ catalog,
28
+ targetCoverage,
29
+ standard,
30
+ });
31
+ const remainingRows = Array.isArray(report.controls)
32
+ ? report.controls.filter((row) => !row?.reportable)
33
+ : [];
34
+ const remainingControls = remainingRows
35
+ .map((row) => String(row.control_id || '').trim())
36
+ .filter(Boolean);
37
+ return {
38
+ summary: {
39
+ ...(report.summary || {}),
40
+ framework: standard,
41
+ remaining_control_count: remainingControls.length,
42
+ target_coverage: targetCoverage,
43
+ },
44
+ remaining_controls: remainingRows.map((row) => ({
45
+ control_id: row.control_id,
46
+ status: row.status,
47
+ gaps: Array.isArray(row.gaps) ? row.gaps : [],
48
+ missing_evidence_types: Array.isArray(row.missing_evidence_types)
49
+ ? row.missing_evidence_types
50
+ : [],
51
+ })),
52
+ prioritized_missing_modules: (0, control_backbone_1.prioritizeMissingWorkflowModules)(remainingControls, standard),
53
+ };
54
+ }
55
+ function identifySoc2RemainingGaps(options) {
56
+ return identifyFrameworkRemainingGaps({
57
+ standard: 'SOC2',
58
+ catalog: options?.catalog,
59
+ targetCoverage: options?.targetCoverage,
60
+ });
61
+ }
62
+ function identifyGdprRemainingGaps(options) {
63
+ return identifyFrameworkRemainingGaps({
64
+ standard: 'GDPR',
65
+ catalog: options?.catalog,
66
+ targetCoverage: options?.targetCoverage,
67
+ });
68
+ }
@@ -17,7 +17,7 @@ export type Soc2TrustPrinciple = 'security' | 'availability' | 'processing_integ
17
17
  /**
18
18
  * SOC 2 Common Criteria control families.
19
19
  */
20
- export type Soc2ControlFamily = 'CC1' | 'CC2' | 'CC3' | 'CC4' | 'CC5' | 'CC6' | 'CC7' | 'CC8' | 'CC9';
20
+ export type Soc2ControlFamily = 'CC1' | 'CC2' | 'CC3' | 'CC4' | 'CC5' | 'CC6' | 'CC7' | 'CC8' | 'CC9' | 'P_SERIES' | 'PI_SERIES';
21
21
  /**
22
22
  * GDPR Articles relevant to AI systems.
23
23
  */
@@ -1 +1 @@
1
- {"version":3,"file":"complianceTargets.d.ts","sourceRoot":"","sources":["../src/complianceTargets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"complianceTargets.d.ts","sourceRoot":"","sources":["../src/complianceTargets.ts"],"names":[],"mappings":"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"}
@@ -142,7 +142,6 @@ const ISO42001_METADATA = {
142
142
  identityTracking: true,
143
143
  },
144
144
  configRequirements: {
145
- 'ai_act.enabled': true,
146
145
  'risk_register.enabled': true,
147
146
  'bias.enabled': true,
148
147
  'human_oversight.enabled': true,
@@ -152,7 +151,6 @@ const ISO42001_METADATA = {
152
151
  'signing.enabled': true,
153
152
  'identity.enabled': true,
154
153
  'reporting.enabled': true,
155
- 'reporting.include_ai_act_report': true,
156
154
  },
157
155
  };
158
156
  /**
@@ -301,6 +299,8 @@ exports.SOC2_CONTROL_MAPPINGS = {
301
299
  CC7: ['wal.enabled', 'lifecycle.enabled'], // System operations
302
300
  CC8: ['immutability.enabled'], // Change management
303
301
  CC9: ['risk_register.enabled'], // Risk mitigation
302
+ P_SERIES: ['data_handling.enabled', 'data_governance.enabled'], // Privacy
303
+ PI_SERIES: ['immutability.enabled', 'reporting.enabled'], // Processing integrity
304
304
  };
305
305
  /**
306
306
  * GDPR article to enrichment mapping.
package/dist/config.js CHANGED
@@ -400,7 +400,7 @@ exports.DEFAULT_CONFIG = {
400
400
  enabled: false,
401
401
  required_in_production: true,
402
402
  status: 'draft',
403
- standards: ['SOC2', 'GDPR', 'ISO27001'],
403
+ standards: ['SOC2', 'GDPR', 'ISO27001', 'ISO42001'],
404
404
  artifacts: {
405
405
  production_logs_path: './monora_events.jsonl',
406
406
  schema_contract_path: './onboarding/schema_contract.json',
@@ -293,7 +293,7 @@ exports.OnboardingConfigSchema = zod_1.z.object({
293
293
  enabled: zod_1.z.boolean().default(false),
294
294
  required_in_production: zod_1.z.boolean().default(true),
295
295
  status: zod_1.z.enum(['draft', 'validated', 'completed']).default('draft'),
296
- standards: zod_1.z.array(zod_1.z.string()).default(['SOC2', 'GDPR', 'ISO27001']),
296
+ standards: zod_1.z.array(zod_1.z.string()).default(['SOC2', 'GDPR', 'ISO27001', 'ISO42001']),
297
297
  artifacts: exports.OnboardingArtifactsSchema.optional(),
298
298
  validation: exports.OnboardingValidationSchema.optional(),
299
299
  completion: exports.OnboardingCompletionSchema.optional(),
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Control/evidence workflow backbone for ISO 42001 coverage reporting.
2
+ * Control/evidence workflow backbone for framework coverage reporting.
3
3
  */
4
4
  export type WorkflowStatus = 'draft' | 'in_review' | 'approved' | 'expired';
5
5
  export interface WorkflowHistoryEntry {
@@ -49,6 +49,7 @@ interface GenerateCoverageOptions {
49
49
  evidenceItems?: Array<Record<string, any>> | null;
50
50
  workflows?: Array<Record<string, any>> | null;
51
51
  targetCoverage?: number;
52
+ standard?: string;
52
53
  }
53
54
  interface AttachEvidenceOptions {
54
55
  controlId: string;
@@ -63,7 +64,10 @@ export declare function setControlCatalog(catalog: Record<string, any>): Record<
63
64
  export declare function loadControlCatalog(filePath: string): Record<string, any>;
64
65
  export declare function getControlCatalog(): Record<string, any> | null;
65
66
  export declare function loadDefaultIso42001Catalog(): Record<string, any>;
66
- export declare function resolveControlIdsForEvidenceTypes(evidenceTypes: string[], catalog?: Record<string, any> | null): string[];
67
+ export declare function loadDefaultSoc2Catalog(): Record<string, any>;
68
+ export declare function loadDefaultGdprCatalog(): Record<string, any>;
69
+ export declare function loadDefaultControlCatalog(standard: string): Record<string, any>;
70
+ export declare function resolveControlIdsForEvidenceTypes(evidenceTypes: string[], catalog?: Record<string, any> | null, standard?: string): string[];
67
71
  export declare function createWorkflowTask(options: {
68
72
  controlId: string;
69
73
  title?: string;
@@ -103,17 +107,19 @@ export declare function bootstrapWorkflowsFromCatalog(catalog?: Record<string, a
103
107
  createdBy?: string;
104
108
  ownerFallback?: string;
105
109
  }): ControlWorkflow[];
106
- export declare function prioritizeMissingWorkflowModules(uncoveredControls: string[]): Array<Record<string, any>>;
110
+ export declare function prioritizeMissingWorkflowModules(uncoveredControls: string[], standard?: string): Array<Record<string, any>>;
107
111
  export declare function generateControlCoverageReport(options?: GenerateCoverageOptions): Record<string, any>;
108
112
  export declare function buildWorkflowStatePayload(options?: {
109
113
  catalog?: Record<string, any> | string | null;
110
114
  workflows?: Array<Record<string, any>>;
111
115
  evidenceItems?: Array<Record<string, any>>;
116
+ standard?: string;
112
117
  }): Record<string, any>;
113
118
  export declare function exportWorkflowState(outputPath: string, options?: {
114
119
  catalog?: Record<string, any> | string | null;
115
120
  workflows?: Array<Record<string, any>>;
116
121
  evidenceItems?: Array<Record<string, any>>;
122
+ standard?: string;
117
123
  }): Record<string, any>;
118
124
  export declare function loadWorkflowState(filePath: string, options?: {
119
125
  replaceRuntime?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"control_backbone.d.ts","sourceRoot":"","sources":["../src/control_backbone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control_backbone.d.ts","sourceRoot":"","sources":["../src/control_backbone.ts"],"names":[],"mappings":"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"}