@slicedearth/whoisleuth-cli 2.2.0 → 2.3.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.
- package/README.md +2 -1
- package/cli/arguments.mjs +389 -1745
- package/cli/artifact-validation/case-response.mjs +55 -30
- package/cli/artifact-validation/signed-review.mjs +30 -12
- package/cli/bulk-checkpoint.mjs +34 -3
- package/cli/case-pack.mjs +39 -92
- package/cli/command-argument-grammar.mjs +211 -0
- package/cli/command-reference.mjs +200 -213
- package/cli/completion.mjs +5 -1
- package/cli/discovery-observation-snapshot.mjs +16 -3
- package/cli/discovery-scan-command-runner.mjs +19 -0
- package/cli/discovery-scan.mjs +6 -0
- package/cli/domain-control-observations.mjs +1 -1
- package/cli/inline-command-families.mjs +1 -0
- package/cli/input.mjs +116 -0
- package/cli/interchange-report.mjs +14 -0
- package/cli/lookalike-calibration.mjs +7 -2
- package/cli/lookup-brief.mjs +4 -2
- package/cli/lookup-browser-view.mjs +1 -1
- package/cli/mail-header-review.mjs +467 -0
- package/cli/review-command-runner.mjs +25 -0
- package/cli/risk-calibration.mjs +19 -17
- package/cli/runner.mjs +7 -1
- package/docs/cli-reference.md +8 -1
- package/docs/cli.md +12 -1
- package/lib/bounded-json.mjs +9 -6
- package/lib/dns-convergence-review.mjs +1 -0
- package/lib/dns-intelligence.mjs +37 -3
- package/lib/dnssec-chain-validation.mjs +6 -0
- package/lib/domain-change-packet.mjs +42 -14
- package/lib/domain-control-flight-recorder.mjs +4 -1
- package/lib/domain-control-manifest.mjs +16 -16
- package/lib/domain-posture-parsers.mjs +114 -3
- package/lib/domain-posture.mjs +34 -3
- package/lib/evidence-export.mjs +60 -11
- package/lib/evidence-report.mjs +2 -2
- package/lib/html-signals.mjs +39 -33
- package/lib/local-geoip-evidence.mjs +19 -3
- package/lib/lookup-response.mjs +5 -4
- package/lib/lookup-source-progress.mjs +27 -4
- package/lib/nameserver-preflight-review.mjs +1 -0
- package/lib/rdap-capabilities.mjs +1 -1
- package/lib/registry-insights.mjs +35 -22
- package/lib/risk-calibration-summary.mjs +1 -3
- package/lib/security-txt.mjs +33 -1
- package/lib/static-html-analysis.mjs +69 -13
- package/lib/website-technology.mjs +79 -11
- package/lib/zone-intent-review.mjs +16 -6
- package/package.json +1 -1
- package/packages/cases/case-migration-model.mjs +71 -22
- package/packages/cases/case-record-contracts.mjs +5 -20
- package/packages/cases/case-record-core.mjs +10 -21
- package/packages/cases/case-record-decisions.mjs +72 -0
- package/packages/cases/case-record-model.mjs +1 -0
- package/packages/cases/case-record-operations.mjs +6 -4
- package/packages/cases/case-record-projection.mjs +218 -0
- package/packages/cases/case-report.mjs +11 -6
- package/packages/cases/case-response-model.mjs +43 -6
- package/packages/cases/case-response-packet.mjs +78 -27
- package/packages/cases/case-storage-model.mjs +6 -2
- package/packages/comparison/comparison-ledger-bulk.mjs +9 -10
- package/packages/comparison/page-similarity.mjs +3 -1
- package/packages/contracts/case-portability.mjs +171 -51
- package/packages/contracts/cli-command-semantics.mjs +93 -0
- package/packages/contracts/risk-calibration.mjs +15 -10
- package/packages/contracts/workspace-portability.mjs +44 -7
- package/packages/evidence/domain-control-runtime.mjs +46 -6
- package/packages/interchange/external-findings-import.mjs +3 -2
- package/packages/investigation/lookup-asset-graph.mjs +35 -27
- package/packages/workspace/brand-profile-model.mjs +118 -2
- package/packages/workspace/bulk-review-model.mjs +13 -7
- package/packages/workspace/bulk-session-model.mjs +5 -4
- package/packages/workspace/detection-rule-model.mjs +70 -22
- package/packages/workspace/relationship-observation-model.mjs +4 -1
- package/packages/workspace/website-snapshot-model.mjs +106 -8
- package/packages/workspace/workspace-archive.mjs +2 -0
- package/cli/evidence-command-arguments.mjs +0 -156
|
@@ -2,7 +2,7 @@ import { MAX_DOMAIN_NAME_LENGTH } from "./domain-name.mjs";
|
|
|
2
2
|
import { defineSchemaCompatibility } from "./schema-compatibility.mjs";
|
|
3
3
|
import { defineSchemaLifecycleFamily } from "./schema-lifecycle.mjs";
|
|
4
4
|
export const CASE_CONTRACT_OWNER = 'packages/contracts/case-portability.mts';
|
|
5
|
-
export const LATEST_PUBLIC_APPLICATION_VERSION = '2.
|
|
5
|
+
export const LATEST_PUBLIC_APPLICATION_VERSION = '2.2.0';
|
|
6
6
|
export const CASE_PORTABILITY_IDENTITY_CONSTANTS = Object.freeze([
|
|
7
7
|
'LATEST_PUBLIC_APPLICATION_VERSION',
|
|
8
8
|
'LATEST_PUBLIC_CASE_SCHEMA_VERSION',
|
|
@@ -118,6 +118,7 @@ export const CASE_DOMAIN_COMPATIBILITY_FACADES = Object.freeze([
|
|
|
118
118
|
['frontend/src/lib/analysis/case-response-model.ts', 'packages/cases/case-response-model.mts'],
|
|
119
119
|
['frontend/src/lib/analysis/case-response-packet.ts', 'packages/cases/case-response-packet.mts'],
|
|
120
120
|
['frontend/src/lib/analysis/case-storage-model.ts', 'packages/cases/case-storage-model.mts'],
|
|
121
|
+
['frontend/src/lib/analysis/case-type-evidence-readiness.ts', 'packages/cases/case-type-evidence-readiness.mts'],
|
|
121
122
|
['frontend/src/lib/analysis/http-summary.ts', 'packages/cases/http-summary.mts'],
|
|
122
123
|
['frontend/src/lib/analysis/opaque-reference-id.ts', 'packages/cases/opaque-reference-id.mts'],
|
|
123
124
|
['frontend/src/lib/analysis/workspace-archive.ts', 'packages/workspace/workspace-archive.mts'],
|
|
@@ -131,40 +132,44 @@ export const CASE_BROWSER_STORE_LIFECYCLE_SCHEMA = 'whoisleuth.browser.case-stor
|
|
|
131
132
|
export const CASE_EXPORT_LIFECYCLE_SCHEMA = 'whoisleuth.case-export';
|
|
132
133
|
export const PUBLIC_CASE_SCHEMA_VERSION = 12;
|
|
133
134
|
export const PUBLISHED_V2_CASE_SCHEMA_VERSION = 13;
|
|
134
|
-
export const CASE_SCHEMA_VERSION = 14;
|
|
135
135
|
export const LATEST_PUBLIC_CASE_SCHEMA_VERSION = 14;
|
|
136
|
+
export const CASE_SCHEMA_VERSION = 15;
|
|
136
137
|
export const CASE_BROWSER_SUPPORTED_VERSIONS = Object.freeze([
|
|
137
138
|
PUBLIC_CASE_SCHEMA_VERSION,
|
|
138
139
|
PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
140
|
+
LATEST_PUBLIC_CASE_SCHEMA_VERSION,
|
|
139
141
|
CASE_SCHEMA_VERSION,
|
|
140
142
|
]);
|
|
141
143
|
export const CASE_IMPORT_VERSIONS = CASE_BROWSER_SUPPORTED_VERSIONS;
|
|
142
144
|
export const CASE_REPORT_SCHEMA = 'whoisleuth.case-report';
|
|
143
145
|
export const PUBLIC_CASE_REPORT_SCHEMA_VERSION = 8;
|
|
144
146
|
export const PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION = 9;
|
|
145
|
-
export const CASE_REPORT_SCHEMA_VERSION = 10;
|
|
146
147
|
export const LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION = 10;
|
|
148
|
+
export const CASE_REPORT_SCHEMA_VERSION = 11;
|
|
147
149
|
export const CASE_REPORT_OUTPUT_VERSIONS = Object.freeze([
|
|
148
150
|
PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION,
|
|
151
|
+
LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION,
|
|
149
152
|
CASE_REPORT_SCHEMA_VERSION,
|
|
150
153
|
]);
|
|
151
154
|
export const CASE_RESPONSE_PACKET_SCHEMA = 'whoisleuth.case-response-packet';
|
|
152
155
|
export const PUBLIC_CASE_RESPONSE_PACKET_VERSION = 6;
|
|
153
156
|
export const PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION = 7;
|
|
154
|
-
export const CASE_RESPONSE_PACKET_VERSION = 8;
|
|
155
157
|
export const LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION = 8;
|
|
158
|
+
export const CASE_RESPONSE_PACKET_VERSION = 9;
|
|
156
159
|
export const CASE_RESPONSE_PACKET_OUTPUT_VERSIONS = Object.freeze([
|
|
157
160
|
PUBLIC_CASE_RESPONSE_PACKET_VERSION,
|
|
158
161
|
PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION,
|
|
162
|
+
LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION,
|
|
159
163
|
CASE_RESPONSE_PACKET_VERSION,
|
|
160
164
|
]);
|
|
161
165
|
export const SUPPORTED_CASE_RESPONSE_PACKET_VERSIONS = CASE_RESPONSE_PACKET_OUTPUT_VERSIONS;
|
|
162
166
|
export const CASE_RESPONSE_REVIEW_INPUTS_SCHEMA = 'whoisleuth.case-response-review-inputs';
|
|
163
167
|
export const PUBLISHED_V2_CASE_RESPONSE_REVIEW_INPUTS_VERSION = 1;
|
|
164
|
-
export const CASE_RESPONSE_REVIEW_INPUTS_VERSION = 2;
|
|
165
168
|
export const LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION = 2;
|
|
169
|
+
export const CASE_RESPONSE_REVIEW_INPUTS_VERSION = 3;
|
|
166
170
|
export const SUPPORTED_CASE_RESPONSE_REVIEW_INPUTS_VERSIONS = Object.freeze([
|
|
167
171
|
PUBLISHED_V2_CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
172
|
+
LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
168
173
|
CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
169
174
|
]);
|
|
170
175
|
export const CLI_CASE_PACK_SCHEMA = 'whoisleuth.cli.case-pack';
|
|
@@ -184,6 +189,7 @@ export const CLI_CASE_PACK_LIMITATIONS = Object.freeze([
|
|
|
184
189
|
export const CLI_CASE_PACK_CASE_REPORT_EPOCHS = Object.freeze([
|
|
185
190
|
Object.freeze({ caseVersions: Object.freeze([PUBLIC_CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([PUBLIC_CASE_REPORT_SCHEMA_VERSION]) }),
|
|
186
191
|
Object.freeze({ caseVersions: Object.freeze([PUBLISHED_V2_CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION]) }),
|
|
192
|
+
Object.freeze({ caseVersions: Object.freeze([LATEST_PUBLIC_CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION]) }),
|
|
187
193
|
Object.freeze({ caseVersions: Object.freeze([CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([CASE_REPORT_SCHEMA_VERSION]) }),
|
|
188
194
|
]);
|
|
189
195
|
export function caseReportVersionMatchesCase(caseVersion, reportVersion) {
|
|
@@ -195,11 +201,12 @@ export function caseReportVersionMatchesCase(caseVersion, reportVersion) {
|
|
|
195
201
|
export const WORKSPACE_ARCHIVE_SCHEMA = 'whoisleuth.workspace-archive';
|
|
196
202
|
export const PUBLIC_WORKSPACE_ARCHIVE_VERSION = 5;
|
|
197
203
|
export const PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION = 6;
|
|
198
|
-
export const WORKSPACE_ARCHIVE_VERSION = 7;
|
|
199
204
|
export const LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION = 7;
|
|
205
|
+
export const WORKSPACE_ARCHIVE_VERSION = 8;
|
|
200
206
|
export const SUPPORTED_WORKSPACE_ARCHIVE_VERSIONS = Object.freeze([
|
|
201
207
|
PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
202
208
|
PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION,
|
|
209
|
+
LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
203
210
|
WORKSPACE_ARCHIVE_VERSION,
|
|
204
211
|
]);
|
|
205
212
|
export function isSupportedWorkspaceArchiveVersion(value) {
|
|
@@ -334,28 +341,28 @@ export const CASE_RESPONSE_PACKET_COMPATIBILITY = defineSchemaCompatibility({
|
|
|
334
341
|
currentVersion: CASE_RESPONSE_PACKET_VERSION, supportedVersions: CASE_RESPONSE_PACKET_OUTPUT_VERSIONS,
|
|
335
342
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'read_only',
|
|
336
343
|
writeSemantics: 'read_only', byteBudget: null, owner: CASE_CONTRACT_OWNER,
|
|
337
|
-
note: 'Exact packet versions 6, 7 and
|
|
344
|
+
note: 'Exact packet versions 6, 7, 8 and 9 are verified independently; other versions fail closed.',
|
|
338
345
|
});
|
|
339
346
|
export const CASE_RESPONSE_REVIEW_INPUTS_COMPATIBILITY = defineSchemaCompatibility({
|
|
340
347
|
id: 'derived.case-response-review-inputs', kind: 'derived', schema: CASE_RESPONSE_REVIEW_INPUTS_SCHEMA,
|
|
341
348
|
currentVersion: CASE_RESPONSE_REVIEW_INPUTS_VERSION, supportedVersions: SUPPORTED_CASE_RESPONSE_REVIEW_INPUTS_VERSIONS,
|
|
342
349
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'read_only',
|
|
343
350
|
writeSemantics: 'read_only', byteBudget: null, owner: CASE_CONTRACT_OWNER,
|
|
344
|
-
note: 'Exact
|
|
351
|
+
note: 'Exact review-input versions 1, 2 and 3 remain independently readable for response authorisation; extensions and future versions fail closed.',
|
|
345
352
|
});
|
|
346
353
|
export const CLI_CASE_PACK_COMPATIBILITY = defineSchemaCompatibility({
|
|
347
354
|
id: 'export.cli-case-pack', kind: 'export', schema: CLI_CASE_PACK_SCHEMA, currentVersion: CLI_CASE_PACK_VERSION,
|
|
348
355
|
supportedVersions: SUPPORTED_CLI_CASE_PACK_VERSIONS, acceptsUnversionedLegacy: false,
|
|
349
356
|
futureVersionBehavior: 'reject', migration: 'read_only', writeSemantics: 'read_only',
|
|
350
357
|
byteBudget: MAX_CASE_IMPORT_BYTES, owner: CASE_CONTRACT_OWNER,
|
|
351
|
-
note: 'Case-pack version 2 verifies exact Case/report epochs 12/8, 13/9
|
|
358
|
+
note: 'Case-pack version 2 verifies exact Case/report epochs 12/8, 13/9, 14/10 and 15/11 with deterministic sorted-json-v2 integrity.',
|
|
352
359
|
});
|
|
353
360
|
export const WORKSPACE_ARCHIVE_COMPATIBILITY = defineSchemaCompatibility({
|
|
354
361
|
id: 'export.workspace-archive', kind: 'export', schema: WORKSPACE_ARCHIVE_SCHEMA,
|
|
355
362
|
currentVersion: WORKSPACE_ARCHIVE_VERSION, supportedVersions: SUPPORTED_WORKSPACE_ARCHIVE_VERSIONS,
|
|
356
363
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'normalize_to_current',
|
|
357
364
|
writeSemantics: 'non_destructive_merge', byteBudget: MAX_WORKSPACE_ARCHIVE_BYTES, owner: CASE_CONTRACT_OWNER,
|
|
358
|
-
note: 'Workspace version
|
|
365
|
+
note: 'Workspace version 8 carries the current Case contract. Exact versions 5, 6 and 7 remain readable; version 5 gains an empty Review Item section without inventing decisions, and future envelopes fail without mutation.',
|
|
359
366
|
});
|
|
360
367
|
export const WORKSPACE_SETTINGS_COMPATIBILITY = defineSchemaCompatibility({
|
|
361
368
|
id: 'export.workspace-settings-section', kind: 'export', schema: WORKSPACE_SETTINGS_SCHEMA,
|
|
@@ -401,7 +408,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
401
408
|
version: PUBLIC_CASE_SCHEMA_VERSION,
|
|
402
409
|
role: 'historical',
|
|
403
410
|
expectation: 'normalises_to_current_output',
|
|
404
|
-
expectedOutputFixtureId: 'browser-case-
|
|
411
|
+
expectedOutputFixtureId: 'browser-case-v15',
|
|
405
412
|
shapeId: 'case.browser-store.public',
|
|
406
413
|
scope: 'repository',
|
|
407
414
|
}),
|
|
@@ -415,8 +422,8 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
415
422
|
version: PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
416
423
|
role: 'historical',
|
|
417
424
|
expectation: 'normalises_to_current_output',
|
|
418
|
-
expectedOutputFixtureId: 'browser-case-
|
|
419
|
-
shapeId: 'case.browser-store.v13',
|
|
425
|
+
expectedOutputFixtureId: 'browser-case-v15',
|
|
426
|
+
shapeId: 'case.browser-store.v13-v14',
|
|
420
427
|
scope: 'repository',
|
|
421
428
|
}),
|
|
422
429
|
Object.freeze({
|
|
@@ -426,6 +433,20 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
426
433
|
sha256: 'ece46f5d27a52a20196678af8236674836f3979c0d45f0ad5751c00677ec8bae',
|
|
427
434
|
contentDigestSha256: null,
|
|
428
435
|
schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA,
|
|
436
|
+
version: LATEST_PUBLIC_CASE_SCHEMA_VERSION,
|
|
437
|
+
role: 'historical',
|
|
438
|
+
expectation: 'normalises_to_current_output',
|
|
439
|
+
expectedOutputFixtureId: 'browser-case-v15',
|
|
440
|
+
shapeId: 'case.browser-store.v13-v14',
|
|
441
|
+
scope: 'repository',
|
|
442
|
+
}),
|
|
443
|
+
Object.freeze({
|
|
444
|
+
id: 'browser-case-v15',
|
|
445
|
+
path: 'test/fixtures/case-lifecycle/browser-case-v15.json',
|
|
446
|
+
bytes: 2221,
|
|
447
|
+
sha256: 'a061116c9052a7f73ca6b5a88870bc58cbb083cf5fe82e942539b3847c12ad88',
|
|
448
|
+
contentDigestSha256: null,
|
|
449
|
+
schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA,
|
|
429
450
|
version: CASE_SCHEMA_VERSION,
|
|
430
451
|
role: 'current',
|
|
431
452
|
expectation: 'accepted_exact',
|
|
@@ -443,7 +464,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
443
464
|
version: PUBLIC_CASE_SCHEMA_VERSION,
|
|
444
465
|
role: 'historical',
|
|
445
466
|
expectation: 'normalises_to_current_output',
|
|
446
|
-
expectedOutputFixtureId: 'case-export-
|
|
467
|
+
expectedOutputFixtureId: 'case-export-v15',
|
|
447
468
|
shapeId: 'case.export.public',
|
|
448
469
|
scope: 'repository',
|
|
449
470
|
}),
|
|
@@ -457,8 +478,8 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
457
478
|
version: PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
458
479
|
role: 'historical',
|
|
459
480
|
expectation: 'normalises_to_current_output',
|
|
460
|
-
expectedOutputFixtureId: 'case-export-
|
|
461
|
-
shapeId: 'case.export.v13',
|
|
481
|
+
expectedOutputFixtureId: 'case-export-v15',
|
|
482
|
+
shapeId: 'case.export.v13-v14',
|
|
462
483
|
scope: 'repository',
|
|
463
484
|
}),
|
|
464
485
|
Object.freeze({
|
|
@@ -468,6 +489,20 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
468
489
|
sha256: '50cf1df53c3558852b712844d588d9eb955af858e160969d9a6af613c257feaf',
|
|
469
490
|
contentDigestSha256: null,
|
|
470
491
|
schema: CASE_EXPORT_LIFECYCLE_SCHEMA,
|
|
492
|
+
version: LATEST_PUBLIC_CASE_SCHEMA_VERSION,
|
|
493
|
+
role: 'historical',
|
|
494
|
+
expectation: 'normalises_to_current_output',
|
|
495
|
+
expectedOutputFixtureId: 'case-export-v15',
|
|
496
|
+
shapeId: 'case.export.v13-v14',
|
|
497
|
+
scope: 'repository',
|
|
498
|
+
}),
|
|
499
|
+
Object.freeze({
|
|
500
|
+
id: 'case-export-v15',
|
|
501
|
+
path: 'test/fixtures/case-lifecycle/case-export-v15.json',
|
|
502
|
+
bytes: 3211,
|
|
503
|
+
sha256: '26cd852ee202b7a50bd2a64e5d412ab52a38aa7195f81a86b26b222398b406f9',
|
|
504
|
+
contentDigestSha256: null,
|
|
505
|
+
schema: CASE_EXPORT_LIFECYCLE_SCHEMA,
|
|
471
506
|
version: CASE_SCHEMA_VERSION,
|
|
472
507
|
role: 'current',
|
|
473
508
|
expectation: 'accepted_exact',
|
|
@@ -510,11 +545,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
510
545
|
sha256: '36c8b89bb1b335d923bd5035020ff47f89c88775e14d08af2d2eb2ee2f5cc03a',
|
|
511
546
|
contentDigestSha256: null,
|
|
512
547
|
schema: CASE_REPORT_SCHEMA,
|
|
548
|
+
version: LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION,
|
|
549
|
+
role: 'historical',
|
|
550
|
+
expectation: 'accepted_exact',
|
|
551
|
+
expectedOutputFixtureId: null,
|
|
552
|
+
shapeId: 'case.report.v10',
|
|
553
|
+
scope: 'repository',
|
|
554
|
+
}),
|
|
555
|
+
Object.freeze({
|
|
556
|
+
id: 'case-report-v11',
|
|
557
|
+
path: 'test/fixtures/case-lifecycle/case-report-v11.json',
|
|
558
|
+
bytes: 4640,
|
|
559
|
+
sha256: 'bbe57dac61074b7badd094b7ffaabd46d3779c10152563e7a101a2126daf09b6',
|
|
560
|
+
contentDigestSha256: null,
|
|
561
|
+
schema: CASE_REPORT_SCHEMA,
|
|
513
562
|
version: CASE_REPORT_SCHEMA_VERSION,
|
|
514
563
|
role: 'current',
|
|
515
564
|
expectation: 'accepted_exact',
|
|
516
565
|
expectedOutputFixtureId: null,
|
|
517
|
-
shapeId: 'case.report.
|
|
566
|
+
shapeId: 'case.report.v11',
|
|
518
567
|
scope: 'repository',
|
|
519
568
|
}),
|
|
520
569
|
Object.freeze({
|
|
@@ -538,11 +587,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
538
587
|
sha256: '7bd2237f208714b92c3669c0581dbf0bc2dc22369e53b3ef9da088e8af0f4a83',
|
|
539
588
|
contentDigestSha256: 'sha256:86d4d88d1d9fc969e6efa432061c64bf0725767d81c50b8655abd2d231dcc5b6',
|
|
540
589
|
schema: CASE_RESPONSE_PACKET_SCHEMA,
|
|
590
|
+
version: LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION,
|
|
591
|
+
role: 'historical',
|
|
592
|
+
expectation: 'accepted_exact',
|
|
593
|
+
expectedOutputFixtureId: null,
|
|
594
|
+
shapeId: 'case.response-packet.v8',
|
|
595
|
+
scope: 'repository',
|
|
596
|
+
}),
|
|
597
|
+
Object.freeze({
|
|
598
|
+
id: 'case-response-packet-v9',
|
|
599
|
+
path: 'test/fixtures/case-lifecycle/case-response-packet-v9.json',
|
|
600
|
+
bytes: 12275,
|
|
601
|
+
sha256: '6dbb9b9d2c199ebb0a1f43c3a08aaac98554787b40fed0456eff60ab2f36906c',
|
|
602
|
+
contentDigestSha256: 'sha256:3500158f08920e43ad16d588b8bfe3b8b92c58370d80468db4330baabeeca497',
|
|
603
|
+
schema: CASE_RESPONSE_PACKET_SCHEMA,
|
|
541
604
|
version: CASE_RESPONSE_PACKET_VERSION,
|
|
542
605
|
role: 'current',
|
|
543
606
|
expectation: 'accepted_exact',
|
|
544
607
|
expectedOutputFixtureId: null,
|
|
545
|
-
shapeId: 'case.response-packet.
|
|
608
|
+
shapeId: 'case.response-packet.v9',
|
|
546
609
|
scope: 'repository',
|
|
547
610
|
}),
|
|
548
611
|
Object.freeze({
|
|
@@ -566,11 +629,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
566
629
|
sha256: 'dcc9aaa7cdbd79a33559095f4c212e4eea5ad635c8c36290456d8b1946845aa6',
|
|
567
630
|
contentDigestSha256: null,
|
|
568
631
|
schema: CASE_RESPONSE_REVIEW_INPUTS_SCHEMA,
|
|
632
|
+
version: LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
633
|
+
role: 'historical',
|
|
634
|
+
expectation: 'accepted_exact',
|
|
635
|
+
expectedOutputFixtureId: null,
|
|
636
|
+
shapeId: 'case.response-review-inputs.v2',
|
|
637
|
+
scope: 'repository',
|
|
638
|
+
}),
|
|
639
|
+
Object.freeze({
|
|
640
|
+
id: 'case-response-review-inputs-v3',
|
|
641
|
+
path: 'test/fixtures/case-lifecycle/case-response-review-inputs-v3.json',
|
|
642
|
+
bytes: 7604,
|
|
643
|
+
sha256: '13e0711d0a75635825af8cff4a1552efe1be153cc1892c886585f28c25ff03ae',
|
|
644
|
+
contentDigestSha256: null,
|
|
645
|
+
schema: CASE_RESPONSE_REVIEW_INPUTS_SCHEMA,
|
|
569
646
|
version: CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
570
647
|
role: 'current',
|
|
571
648
|
expectation: 'accepted_exact',
|
|
572
649
|
expectedOutputFixtureId: null,
|
|
573
|
-
shapeId: 'case.response-review-inputs.
|
|
650
|
+
shapeId: 'case.response-review-inputs.v3',
|
|
574
651
|
scope: 'repository',
|
|
575
652
|
}),
|
|
576
653
|
Object.freeze({
|
|
@@ -615,6 +692,20 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
615
692
|
shapeId: 'case.cli-pack.current',
|
|
616
693
|
scope: 'repository',
|
|
617
694
|
}),
|
|
695
|
+
Object.freeze({
|
|
696
|
+
id: 'cli-case-pack-v2-case-v15',
|
|
697
|
+
path: 'test/fixtures/case-lifecycle/cli-case-pack-v2-case-v15.json',
|
|
698
|
+
bytes: 9439,
|
|
699
|
+
sha256: '9c07b7828f5e348a6e9ca05e1bd487998851491d85d0b30b38adba196f84faee',
|
|
700
|
+
contentDigestSha256: 'sha256:475a91fe7c3afddd3f73ba5b9a698c08bc7b37f3fb67bcf86441ee908beb0dc8',
|
|
701
|
+
schema: CLI_CASE_PACK_SCHEMA,
|
|
702
|
+
version: CLI_CASE_PACK_VERSION,
|
|
703
|
+
role: 'current',
|
|
704
|
+
expectation: 'accepted_exact',
|
|
705
|
+
expectedOutputFixtureId: null,
|
|
706
|
+
shapeId: 'case.cli-pack.current',
|
|
707
|
+
scope: 'repository',
|
|
708
|
+
}),
|
|
618
709
|
Object.freeze({
|
|
619
710
|
id: 'workspace-archive-v5-public',
|
|
620
711
|
path: 'test/fixtures/case-lifecycle/workspace-archive-v5-public.json',
|
|
@@ -625,7 +716,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
625
716
|
version: PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
626
717
|
role: 'historical',
|
|
627
718
|
expectation: 'normalises_to_current_output',
|
|
628
|
-
expectedOutputFixtureId: 'workspace-archive-
|
|
719
|
+
expectedOutputFixtureId: 'workspace-archive-v8-empty-current',
|
|
629
720
|
shapeId: 'case.workspace-archive.v5',
|
|
630
721
|
scope: 'repository',
|
|
631
722
|
}),
|
|
@@ -639,7 +730,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
639
730
|
version: PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION,
|
|
640
731
|
role: 'historical',
|
|
641
732
|
expectation: 'normalises_to_current_output',
|
|
642
|
-
expectedOutputFixtureId: 'workspace-archive-
|
|
733
|
+
expectedOutputFixtureId: 'workspace-archive-v8-empty-current',
|
|
643
734
|
shapeId: 'case.workspace-archive.v6',
|
|
644
735
|
scope: 'repository',
|
|
645
736
|
}),
|
|
@@ -650,11 +741,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
650
741
|
sha256: '892b0d321f42bfb34501019388da682071024af452a8263f138cc08221947f0a',
|
|
651
742
|
contentDigestSha256: null,
|
|
652
743
|
schema: WORKSPACE_ARCHIVE_SCHEMA,
|
|
744
|
+
version: LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
745
|
+
role: 'historical',
|
|
746
|
+
expectation: 'normalises_to_current_output',
|
|
747
|
+
expectedOutputFixtureId: 'workspace-archive-v8-empty-current',
|
|
748
|
+
shapeId: 'case.workspace-archive.v7',
|
|
749
|
+
scope: 'repository',
|
|
750
|
+
}),
|
|
751
|
+
Object.freeze({
|
|
752
|
+
id: 'workspace-archive-v8-empty-current',
|
|
753
|
+
path: 'test/fixtures/case-lifecycle/workspace-archive-v8-empty-current.json',
|
|
754
|
+
bytes: 7258,
|
|
755
|
+
sha256: '747062e2dbbcf96724b19718d36bf0dc50b08e96d8adb670115d2315032b6c05',
|
|
756
|
+
contentDigestSha256: null,
|
|
757
|
+
schema: WORKSPACE_ARCHIVE_SCHEMA,
|
|
653
758
|
version: WORKSPACE_ARCHIVE_VERSION,
|
|
654
759
|
role: 'current',
|
|
655
760
|
expectation: 'accepted_exact',
|
|
656
761
|
expectedOutputFixtureId: null,
|
|
657
|
-
shapeId: 'case.workspace-archive.
|
|
762
|
+
shapeId: 'case.workspace-archive.v8',
|
|
658
763
|
scope: 'repository',
|
|
659
764
|
}),
|
|
660
765
|
Object.freeze({
|
|
@@ -755,9 +860,9 @@ function shape(id, schema, versions, requiredKeys, normalisation, target = null)
|
|
|
755
860
|
}
|
|
756
861
|
const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
757
862
|
shape('case.browser-store.public', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
758
|
-
shape('case.browser-store.v13', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [PUBLISHED_V2_CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
863
|
+
shape('case.browser-store.v13-v14', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [PUBLISHED_V2_CASE_SCHEMA_VERSION, LATEST_PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
759
864
|
shape('case.browser-store.current', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
760
|
-
shape('case.export.v13', CASE_EXPORT_LIFECYCLE_SCHEMA, [PUBLISHED_V2_CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
865
|
+
shape('case.export.v13-v14', CASE_EXPORT_LIFECYCLE_SCHEMA, [PUBLISHED_V2_CASE_SCHEMA_VERSION, LATEST_PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
761
866
|
shape('case.export.public', CASE_EXPORT_LIFECYCLE_SCHEMA, [PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
762
867
|
shape('case.response-packet.v6', CASE_RESPONSE_PACKET_SCHEMA, [PUBLIC_CASE_RESPONSE_PACKET_VERSION], [
|
|
763
868
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
@@ -766,7 +871,8 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
766
871
|
], 'preserve_signed_document'),
|
|
767
872
|
shape('case.export.current', CASE_EXPORT_LIFECYCLE_SCHEMA, [CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
768
873
|
shape('case.report.v9', CASE_REPORT_SCHEMA, [PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION], ['schema', 'schemaVersion', 'generatedAt', 'application', 'case', 'currentAssessment', 'evidenceTimeline', 'analystResponse', 'responseLifecycle', 'limitations'], 'preserve_document'),
|
|
769
|
-
shape('case.report.v10', CASE_REPORT_SCHEMA, [
|
|
874
|
+
shape('case.report.v10', CASE_REPORT_SCHEMA, [LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION], ['schema', 'schemaVersion', 'generatedAt', 'application', 'case', 'currentAssessment', 'evidenceTimeline', 'analystResponse', 'responseLifecycle', 'limitations'], 'preserve_document'),
|
|
875
|
+
shape('case.report.v11', CASE_REPORT_SCHEMA, [CASE_REPORT_SCHEMA_VERSION], ['schema', 'schemaVersion', 'generatedAt', 'application', 'case', 'currentAssessment', 'evidenceTimeline', 'analystResponse', 'responseLifecycle', 'limitations'], 'preserve_document'),
|
|
770
876
|
shape('case.response-packet.v7', CASE_RESPONSE_PACKET_SCHEMA, [PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION], [
|
|
771
877
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
772
878
|
'profile', 'case', 'incident', 'contacts', 'provenance', 'selectedEvidence',
|
|
@@ -774,7 +880,14 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
774
880
|
'escalationHistoryOmitted', 'escalationHistoryLimitations', 'responseLifecycle',
|
|
775
881
|
'authorisation', 'integrity',
|
|
776
882
|
], 'preserve_signed_document'),
|
|
777
|
-
shape('case.response-packet.v8', CASE_RESPONSE_PACKET_SCHEMA, [
|
|
883
|
+
shape('case.response-packet.v8', CASE_RESPONSE_PACKET_SCHEMA, [LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION], [
|
|
884
|
+
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
885
|
+
'profile', 'case', 'incident', 'contacts', 'recipientRoute', 'actionBinding',
|
|
886
|
+
'provenance', 'selectedEvidence', 'contradictions', 'readiness', 'artefactReferences',
|
|
887
|
+
'preflight', 'escalationHistory', 'escalationHistoryOmitted',
|
|
888
|
+
'escalationHistoryLimitations', 'responseLifecycle', 'authorisation', 'integrity',
|
|
889
|
+
], 'preserve_signed_document'),
|
|
890
|
+
shape('case.response-packet.v9', CASE_RESPONSE_PACKET_SCHEMA, [CASE_RESPONSE_PACKET_VERSION], [
|
|
778
891
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
779
892
|
'profile', 'case', 'incident', 'contacts', 'recipientRoute', 'actionBinding',
|
|
780
893
|
'provenance', 'selectedEvidence', 'contradictions', 'readiness', 'artefactReferences',
|
|
@@ -786,7 +899,13 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
786
899
|
'contradictions', 'readiness', 'artefactReferences', 'escalationHistory',
|
|
787
900
|
'escalationHistoryOmitted', 'escalationHistoryLimitations', 'responseLifecycle',
|
|
788
901
|
], 'preserve_signed_document'),
|
|
789
|
-
shape('case.response-review-inputs.v2', CASE_RESPONSE_REVIEW_INPUTS_SCHEMA, [
|
|
902
|
+
shape('case.response-review-inputs.v2', CASE_RESPONSE_REVIEW_INPUTS_SCHEMA, [LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION], [
|
|
903
|
+
'contract', 'version', 'profile', 'case', 'incident', 'contacts',
|
|
904
|
+
'recipientRoute', 'actionBinding', 'selectedEvidence', 'contradictions',
|
|
905
|
+
'readiness', 'artefactReferences', 'escalationHistory',
|
|
906
|
+
'escalationHistoryOmitted', 'escalationHistoryLimitations', 'responseLifecycle',
|
|
907
|
+
], 'preserve_signed_document'),
|
|
908
|
+
shape('case.response-review-inputs.v3', CASE_RESPONSE_REVIEW_INPUTS_SCHEMA, [CASE_RESPONSE_REVIEW_INPUTS_VERSION], [
|
|
790
909
|
'contract', 'version', 'profile', 'case', 'incident', 'contacts',
|
|
791
910
|
'recipientRoute', 'actionBinding', 'selectedEvidence', 'contradictions',
|
|
792
911
|
'readiness', 'artefactReferences', 'escalationHistory',
|
|
@@ -795,7 +914,8 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
795
914
|
shape('case.cli-pack.current', CLI_CASE_PACK_SCHEMA, [CLI_CASE_PACK_VERSION], CLI_CASE_PACK_ROOT_KEYS, 'preserve_signed_document'),
|
|
796
915
|
shape('case.workspace-archive.v5', WORKSPACE_ARCHIVE_SCHEMA, [5], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
797
916
|
shape('case.workspace-archive.v6', WORKSPACE_ARCHIVE_SCHEMA, [PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
798
|
-
shape('case.workspace-archive.v7', WORKSPACE_ARCHIVE_SCHEMA, [
|
|
917
|
+
shape('case.workspace-archive.v7', WORKSPACE_ARCHIVE_SCHEMA, [LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
918
|
+
shape('case.workspace-archive.v8', WORKSPACE_ARCHIVE_SCHEMA, [WORKSPACE_ARCHIVE_VERSION], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
799
919
|
shape('case.workspace-settings.v1', WORKSPACE_SETTINGS_SCHEMA, [WORKSPACE_SETTINGS_VERSION], ['schema', 'version', 'activeProfileId', 'theme'], 'preserve_document'),
|
|
800
920
|
shape('case.encrypted-workspace-archive.v1', ENCRYPTED_WORKSPACE_ARCHIVE_SCHEMA, [ENCRYPTED_WORKSPACE_ARCHIVE_VERSION], ['schema', 'version', 'createdAt', 'content', 'kdf', 'cipher', 'ciphertext'], 'preserve_signed_document'),
|
|
801
921
|
]);
|
|
@@ -1035,13 +1155,13 @@ const CASE_LIFECYCLE_EXPIRY = Object.freeze([{
|
|
|
1035
1155
|
}]);
|
|
1036
1156
|
const CASE_LIFECYCLE_SERIALISATION = Object.freeze([
|
|
1037
1157
|
{
|
|
1038
|
-
id: 'case.browser-store.json.
|
|
1158
|
+
id: 'case.browser-store.json.v15',
|
|
1039
1159
|
schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA,
|
|
1040
1160
|
versions: [CASE_SCHEMA_VERSION],
|
|
1041
1161
|
mediaType: 'application/json',
|
|
1042
1162
|
encoding: 'utf-8',
|
|
1043
1163
|
bom: false,
|
|
1044
|
-
indentSpaces:
|
|
1164
|
+
indentSpaces: 0,
|
|
1045
1165
|
terminalLf: true,
|
|
1046
1166
|
propertyOrder: 'normalised_fixed',
|
|
1047
1167
|
canonicalisation: null,
|
|
@@ -1050,10 +1170,10 @@ const CASE_LIFECYCLE_SERIALISATION = Object.freeze([
|
|
|
1050
1170
|
verifierHookIds: [],
|
|
1051
1171
|
},
|
|
1052
1172
|
...[
|
|
1053
|
-
['case.export.json.
|
|
1054
|
-
['case.report.json.
|
|
1055
|
-
['case.packet.json.
|
|
1056
|
-
['case.workspace.json.
|
|
1173
|
+
['case.export.json.v15', CASE_EXPORT_LIFECYCLE_SCHEMA, [CASE_SCHEMA_VERSION], 'none', []],
|
|
1174
|
+
['case.report.json.v11', CASE_REPORT_SCHEMA, [...CASE_REPORT_OUTPUT_VERSIONS], 'none', []],
|
|
1175
|
+
['case.packet.json.v9', CASE_RESPONSE_PACKET_SCHEMA, [...SUPPORTED_CASE_RESPONSE_PACKET_VERSIONS], 'structural_only_requires_separate_verification', ['case.packet.verify']],
|
|
1176
|
+
['case.workspace.json.v8', WORKSPACE_ARCHIVE_SCHEMA, [WORKSPACE_ARCHIVE_VERSION], 'structural_only_requires_separate_verification', ['case.workspace.verify']],
|
|
1057
1177
|
['case.encrypted-workspace.json.v1', ENCRYPTED_WORKSPACE_ARCHIVE_SCHEMA, [ENCRYPTED_WORKSPACE_ARCHIVE_VERSION], 'structural_only_requires_separate_verification', ['case.encrypted-workspace.verify']],
|
|
1058
1178
|
].map(([id, schema, versions, integrity, verifierHookIds]) => ({
|
|
1059
1179
|
id,
|
|
@@ -1104,10 +1224,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1104
1224
|
discriminator: null,
|
|
1105
1225
|
}],
|
|
1106
1226
|
emittedContract: { schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, version: CASE_SCHEMA_VERSION, discriminator: null },
|
|
1107
|
-
shapeIds: ['case.browser-store.public', 'case.browser-store.v13', 'case.browser-store.current'],
|
|
1227
|
+
shapeIds: ['case.browser-store.public', 'case.browser-store.v13-v14', 'case.browser-store.current'],
|
|
1108
1228
|
boundProfileIds: ['case.browser-store.bounds', 'case.domain.bounds'],
|
|
1109
1229
|
hookIds: ['case.browser.normalise', 'case.browser.serialise'],
|
|
1110
|
-
serialisationProfileId: 'case.browser-store.json.
|
|
1230
|
+
serialisationProfileId: 'case.browser-store.json.v15',
|
|
1111
1231
|
privacyProfileId: 'case.privacy.browser-state',
|
|
1112
1232
|
retentionEffect: 'browser_indexeddb',
|
|
1113
1233
|
...sharedEdge,
|
|
@@ -1123,7 +1243,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1123
1243
|
discriminator: null,
|
|
1124
1244
|
}],
|
|
1125
1245
|
emittedContract: null,
|
|
1126
|
-
shapeIds: ['case.export.public', 'case.export.v13', 'case.export.current'],
|
|
1246
|
+
shapeIds: ['case.export.public', 'case.export.v13-v14', 'case.export.current'],
|
|
1127
1247
|
boundProfileIds: ['case.portable.bounds', 'case.domain.bounds'],
|
|
1128
1248
|
hookIds: ['case.export.merge'],
|
|
1129
1249
|
serialisationProfileId: null,
|
|
@@ -1140,7 +1260,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1140
1260
|
shapeIds: ['case.export.current'],
|
|
1141
1261
|
boundProfileIds: ['case.portable.bounds', 'case.domain.bounds'],
|
|
1142
1262
|
hookIds: ['case.export.build', 'case.portable.serialise'],
|
|
1143
|
-
serialisationProfileId: 'case.export.json.
|
|
1263
|
+
serialisationProfileId: 'case.export.json.v15',
|
|
1144
1264
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1145
1265
|
retentionEffect: 'operator_controlled_output',
|
|
1146
1266
|
...sharedEdge,
|
|
@@ -1156,7 +1276,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1156
1276
|
discriminator: null,
|
|
1157
1277
|
}],
|
|
1158
1278
|
emittedContract: null,
|
|
1159
|
-
shapeIds: ['case.report.v9', 'case.report.v10'],
|
|
1279
|
+
shapeIds: ['case.report.v9', 'case.report.v10', 'case.report.v11'],
|
|
1160
1280
|
boundProfileIds: ['case.domain.bounds'],
|
|
1161
1281
|
hookIds: ['case.cli-pack.verify'],
|
|
1162
1282
|
serialisationProfileId: null,
|
|
@@ -1170,10 +1290,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1170
1290
|
operation: 'build-report',
|
|
1171
1291
|
acceptedContracts: [],
|
|
1172
1292
|
emittedContract: { schema: CASE_REPORT_SCHEMA, version: CASE_REPORT_SCHEMA_VERSION, discriminator: null },
|
|
1173
|
-
shapeIds: ['case.report.
|
|
1293
|
+
shapeIds: ['case.report.v11'],
|
|
1174
1294
|
boundProfileIds: ['case.domain.bounds'],
|
|
1175
1295
|
hookIds: ['case.report.build', 'case.portable.serialise'],
|
|
1176
|
-
serialisationProfileId: 'case.report.json.
|
|
1296
|
+
serialisationProfileId: 'case.report.json.v11',
|
|
1177
1297
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1178
1298
|
retentionEffect: 'operator_controlled_output',
|
|
1179
1299
|
...sharedEdge,
|
|
@@ -1189,7 +1309,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1189
1309
|
discriminator: null,
|
|
1190
1310
|
}],
|
|
1191
1311
|
emittedContract: null,
|
|
1192
|
-
shapeIds: ['case.response-packet.v6', 'case.response-packet.v7', 'case.response-packet.v8'],
|
|
1312
|
+
shapeIds: ['case.response-packet.v6', 'case.response-packet.v7', 'case.response-packet.v8', 'case.response-packet.v9'],
|
|
1193
1313
|
boundProfileIds: ['case.packet.bounds'],
|
|
1194
1314
|
hookIds: ['case.packet.verify'],
|
|
1195
1315
|
serialisationProfileId: null,
|
|
@@ -1208,7 +1328,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1208
1328
|
discriminator: null,
|
|
1209
1329
|
}],
|
|
1210
1330
|
emittedContract: null,
|
|
1211
|
-
shapeIds: ['case.response-packet.v6', 'case.response-packet.v7', 'case.response-packet.v8'],
|
|
1331
|
+
shapeIds: ['case.response-packet.v6', 'case.response-packet.v7', 'case.response-packet.v8', 'case.response-packet.v9'],
|
|
1212
1332
|
boundProfileIds: ['case.packet.bounds'],
|
|
1213
1333
|
hookIds: ['case.packet.structure', 'case.packet.verify'],
|
|
1214
1334
|
serialisationProfileId: null,
|
|
@@ -1222,10 +1342,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1222
1342
|
operation: 'build-packet',
|
|
1223
1343
|
acceptedContracts: [],
|
|
1224
1344
|
emittedContract: { schema: CASE_RESPONSE_PACKET_SCHEMA, version: CASE_RESPONSE_PACKET_VERSION, discriminator: null },
|
|
1225
|
-
shapeIds: ['case.response-packet.
|
|
1345
|
+
shapeIds: ['case.response-packet.v9'],
|
|
1226
1346
|
boundProfileIds: ['case.packet.bounds'],
|
|
1227
1347
|
hookIds: ['case.packet.build', 'case.portable.serialise'],
|
|
1228
|
-
serialisationProfileId: 'case.packet.json.
|
|
1348
|
+
serialisationProfileId: 'case.packet.json.v9',
|
|
1229
1349
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1230
1350
|
retentionEffect: 'operator_controlled_output',
|
|
1231
1351
|
...sharedEdge,
|
|
@@ -1241,7 +1361,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1241
1361
|
discriminator: null,
|
|
1242
1362
|
}],
|
|
1243
1363
|
emittedContract: null,
|
|
1244
|
-
shapeIds: ['case.response-review-inputs.v1', 'case.response-review-inputs.v2'],
|
|
1364
|
+
shapeIds: ['case.response-review-inputs.v1', 'case.response-review-inputs.v2', 'case.response-review-inputs.v3'],
|
|
1245
1365
|
boundProfileIds: ['case.packet.bounds'],
|
|
1246
1366
|
hookIds: ['case.review-inputs.validate'],
|
|
1247
1367
|
serialisationProfileId: null,
|
|
@@ -1259,7 +1379,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1259
1379
|
version: CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
1260
1380
|
discriminator: null,
|
|
1261
1381
|
},
|
|
1262
|
-
shapeIds: ['case.response-review-inputs.
|
|
1382
|
+
shapeIds: ['case.response-review-inputs.v3'],
|
|
1263
1383
|
boundProfileIds: ['case.packet.bounds'],
|
|
1264
1384
|
hookIds: ['case.review-inputs.build'],
|
|
1265
1385
|
serialisationProfileId: null,
|
|
@@ -1321,7 +1441,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1321
1441
|
discriminator: null,
|
|
1322
1442
|
}],
|
|
1323
1443
|
emittedContract: null,
|
|
1324
|
-
shapeIds: ['case.workspace-archive.v5', 'case.workspace-archive.v6', 'case.workspace-archive.v7', 'case.workspace-settings.v1'],
|
|
1444
|
+
shapeIds: ['case.workspace-archive.v5', 'case.workspace-archive.v6', 'case.workspace-archive.v7', 'case.workspace-archive.v8', 'case.workspace-settings.v1'],
|
|
1325
1445
|
boundProfileIds: ['case.workspace.bounds'],
|
|
1326
1446
|
hookIds: ['case.workspace.verify'],
|
|
1327
1447
|
serialisationProfileId: null,
|
|
@@ -1335,10 +1455,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1335
1455
|
operation: 'build-workspace',
|
|
1336
1456
|
acceptedContracts: [],
|
|
1337
1457
|
emittedContract: { schema: WORKSPACE_ARCHIVE_SCHEMA, version: WORKSPACE_ARCHIVE_VERSION, discriminator: null },
|
|
1338
|
-
shapeIds: ['case.workspace-archive.
|
|
1458
|
+
shapeIds: ['case.workspace-archive.v8'],
|
|
1339
1459
|
boundProfileIds: ['case.workspace.bounds'],
|
|
1340
1460
|
hookIds: ['case.workspace.build', 'case.portable.serialise'],
|
|
1341
|
-
serialisationProfileId: 'case.workspace.json.
|
|
1461
|
+
serialisationProfileId: 'case.workspace.json.v8',
|
|
1342
1462
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1343
1463
|
retentionEffect: 'operator_controlled_output',
|
|
1344
1464
|
...sharedEdge,
|
|
@@ -1391,7 +1511,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1391
1511
|
version: ENCRYPTED_WORKSPACE_ARCHIVE_VERSION,
|
|
1392
1512
|
discriminator: null,
|
|
1393
1513
|
},
|
|
1394
|
-
shapeIds: ['case.workspace-archive.v5', 'case.workspace-archive.v6', 'case.workspace-archive.v7', 'case.encrypted-workspace-archive.v1'],
|
|
1514
|
+
shapeIds: ['case.workspace-archive.v5', 'case.workspace-archive.v6', 'case.workspace-archive.v7', 'case.workspace-archive.v8', 'case.encrypted-workspace-archive.v1'],
|
|
1395
1515
|
boundProfileIds: ['case.workspace.bounds', 'case.encrypted-workspace.bounds'],
|
|
1396
1516
|
hookIds: ['case.encrypted-workspace.build', 'case.portable.serialise'],
|
|
1397
1517
|
serialisationProfileId: 'case.encrypted-workspace.json.v1',
|