@slicedearth/whoisleuth-cli 2.1.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 +24 -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 +63 -13
- 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 +240 -3
- 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 +183 -53
- 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 +115 -46
- 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,9 +2,14 @@ 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.0
|
|
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
|
+
'LATEST_PUBLIC_CASE_SCHEMA_VERSION',
|
|
9
|
+
'LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION',
|
|
10
|
+
'LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION',
|
|
11
|
+
'LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION',
|
|
12
|
+
'LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION',
|
|
8
13
|
'CASE_BROWSER_STORE_LIFECYCLE_SCHEMA',
|
|
9
14
|
'CASE_EXPORT_LIFECYCLE_SCHEMA',
|
|
10
15
|
'CASE_SCHEMA_VERSION',
|
|
@@ -113,6 +118,7 @@ export const CASE_DOMAIN_COMPATIBILITY_FACADES = Object.freeze([
|
|
|
113
118
|
['frontend/src/lib/analysis/case-response-model.ts', 'packages/cases/case-response-model.mts'],
|
|
114
119
|
['frontend/src/lib/analysis/case-response-packet.ts', 'packages/cases/case-response-packet.mts'],
|
|
115
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'],
|
|
116
122
|
['frontend/src/lib/analysis/http-summary.ts', 'packages/cases/http-summary.mts'],
|
|
117
123
|
['frontend/src/lib/analysis/opaque-reference-id.ts', 'packages/cases/opaque-reference-id.mts'],
|
|
118
124
|
['frontend/src/lib/analysis/workspace-archive.ts', 'packages/workspace/workspace-archive.mts'],
|
|
@@ -126,36 +132,44 @@ export const CASE_BROWSER_STORE_LIFECYCLE_SCHEMA = 'whoisleuth.browser.case-stor
|
|
|
126
132
|
export const CASE_EXPORT_LIFECYCLE_SCHEMA = 'whoisleuth.case-export';
|
|
127
133
|
export const PUBLIC_CASE_SCHEMA_VERSION = 12;
|
|
128
134
|
export const PUBLISHED_V2_CASE_SCHEMA_VERSION = 13;
|
|
129
|
-
export const
|
|
135
|
+
export const LATEST_PUBLIC_CASE_SCHEMA_VERSION = 14;
|
|
136
|
+
export const CASE_SCHEMA_VERSION = 15;
|
|
130
137
|
export const CASE_BROWSER_SUPPORTED_VERSIONS = Object.freeze([
|
|
131
138
|
PUBLIC_CASE_SCHEMA_VERSION,
|
|
132
139
|
PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
140
|
+
LATEST_PUBLIC_CASE_SCHEMA_VERSION,
|
|
133
141
|
CASE_SCHEMA_VERSION,
|
|
134
142
|
]);
|
|
135
143
|
export const CASE_IMPORT_VERSIONS = CASE_BROWSER_SUPPORTED_VERSIONS;
|
|
136
144
|
export const CASE_REPORT_SCHEMA = 'whoisleuth.case-report';
|
|
137
145
|
export const PUBLIC_CASE_REPORT_SCHEMA_VERSION = 8;
|
|
138
146
|
export const PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION = 9;
|
|
139
|
-
export const
|
|
147
|
+
export const LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION = 10;
|
|
148
|
+
export const CASE_REPORT_SCHEMA_VERSION = 11;
|
|
140
149
|
export const CASE_REPORT_OUTPUT_VERSIONS = Object.freeze([
|
|
141
150
|
PUBLISHED_V2_CASE_REPORT_SCHEMA_VERSION,
|
|
151
|
+
LATEST_PUBLIC_CASE_REPORT_SCHEMA_VERSION,
|
|
142
152
|
CASE_REPORT_SCHEMA_VERSION,
|
|
143
153
|
]);
|
|
144
154
|
export const CASE_RESPONSE_PACKET_SCHEMA = 'whoisleuth.case-response-packet';
|
|
145
155
|
export const PUBLIC_CASE_RESPONSE_PACKET_VERSION = 6;
|
|
146
156
|
export const PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION = 7;
|
|
147
|
-
export const
|
|
157
|
+
export const LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION = 8;
|
|
158
|
+
export const CASE_RESPONSE_PACKET_VERSION = 9;
|
|
148
159
|
export const CASE_RESPONSE_PACKET_OUTPUT_VERSIONS = Object.freeze([
|
|
149
160
|
PUBLIC_CASE_RESPONSE_PACKET_VERSION,
|
|
150
161
|
PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION,
|
|
162
|
+
LATEST_PUBLIC_CASE_RESPONSE_PACKET_VERSION,
|
|
151
163
|
CASE_RESPONSE_PACKET_VERSION,
|
|
152
164
|
]);
|
|
153
165
|
export const SUPPORTED_CASE_RESPONSE_PACKET_VERSIONS = CASE_RESPONSE_PACKET_OUTPUT_VERSIONS;
|
|
154
166
|
export const CASE_RESPONSE_REVIEW_INPUTS_SCHEMA = 'whoisleuth.case-response-review-inputs';
|
|
155
167
|
export const PUBLISHED_V2_CASE_RESPONSE_REVIEW_INPUTS_VERSION = 1;
|
|
156
|
-
export const
|
|
168
|
+
export const LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION = 2;
|
|
169
|
+
export const CASE_RESPONSE_REVIEW_INPUTS_VERSION = 3;
|
|
157
170
|
export const SUPPORTED_CASE_RESPONSE_REVIEW_INPUTS_VERSIONS = Object.freeze([
|
|
158
171
|
PUBLISHED_V2_CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
172
|
+
LATEST_PUBLIC_CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
159
173
|
CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
160
174
|
]);
|
|
161
175
|
export const CLI_CASE_PACK_SCHEMA = 'whoisleuth.cli.case-pack';
|
|
@@ -175,6 +189,7 @@ export const CLI_CASE_PACK_LIMITATIONS = Object.freeze([
|
|
|
175
189
|
export const CLI_CASE_PACK_CASE_REPORT_EPOCHS = Object.freeze([
|
|
176
190
|
Object.freeze({ caseVersions: Object.freeze([PUBLIC_CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([PUBLIC_CASE_REPORT_SCHEMA_VERSION]) }),
|
|
177
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]) }),
|
|
178
193
|
Object.freeze({ caseVersions: Object.freeze([CASE_SCHEMA_VERSION]), reportVersions: Object.freeze([CASE_REPORT_SCHEMA_VERSION]) }),
|
|
179
194
|
]);
|
|
180
195
|
export function caseReportVersionMatchesCase(caseVersion, reportVersion) {
|
|
@@ -186,10 +201,12 @@ export function caseReportVersionMatchesCase(caseVersion, reportVersion) {
|
|
|
186
201
|
export const WORKSPACE_ARCHIVE_SCHEMA = 'whoisleuth.workspace-archive';
|
|
187
202
|
export const PUBLIC_WORKSPACE_ARCHIVE_VERSION = 5;
|
|
188
203
|
export const PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION = 6;
|
|
189
|
-
export const
|
|
204
|
+
export const LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION = 7;
|
|
205
|
+
export const WORKSPACE_ARCHIVE_VERSION = 8;
|
|
190
206
|
export const SUPPORTED_WORKSPACE_ARCHIVE_VERSIONS = Object.freeze([
|
|
191
207
|
PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
192
208
|
PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION,
|
|
209
|
+
LATEST_PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
193
210
|
WORKSPACE_ARCHIVE_VERSION,
|
|
194
211
|
]);
|
|
195
212
|
export function isSupportedWorkspaceArchiveVersion(value) {
|
|
@@ -324,28 +341,28 @@ export const CASE_RESPONSE_PACKET_COMPATIBILITY = defineSchemaCompatibility({
|
|
|
324
341
|
currentVersion: CASE_RESPONSE_PACKET_VERSION, supportedVersions: CASE_RESPONSE_PACKET_OUTPUT_VERSIONS,
|
|
325
342
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'read_only',
|
|
326
343
|
writeSemantics: 'read_only', byteBudget: null, owner: CASE_CONTRACT_OWNER,
|
|
327
|
-
note: 'Exact packet versions 6, 7 and
|
|
344
|
+
note: 'Exact packet versions 6, 7, 8 and 9 are verified independently; other versions fail closed.',
|
|
328
345
|
});
|
|
329
346
|
export const CASE_RESPONSE_REVIEW_INPUTS_COMPATIBILITY = defineSchemaCompatibility({
|
|
330
347
|
id: 'derived.case-response-review-inputs', kind: 'derived', schema: CASE_RESPONSE_REVIEW_INPUTS_SCHEMA,
|
|
331
348
|
currentVersion: CASE_RESPONSE_REVIEW_INPUTS_VERSION, supportedVersions: SUPPORTED_CASE_RESPONSE_REVIEW_INPUTS_VERSIONS,
|
|
332
349
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'read_only',
|
|
333
350
|
writeSemantics: 'read_only', byteBudget: null, owner: CASE_CONTRACT_OWNER,
|
|
334
|
-
note: 'Exact
|
|
351
|
+
note: 'Exact review-input versions 1, 2 and 3 remain independently readable for response authorisation; extensions and future versions fail closed.',
|
|
335
352
|
});
|
|
336
353
|
export const CLI_CASE_PACK_COMPATIBILITY = defineSchemaCompatibility({
|
|
337
354
|
id: 'export.cli-case-pack', kind: 'export', schema: CLI_CASE_PACK_SCHEMA, currentVersion: CLI_CASE_PACK_VERSION,
|
|
338
355
|
supportedVersions: SUPPORTED_CLI_CASE_PACK_VERSIONS, acceptsUnversionedLegacy: false,
|
|
339
356
|
futureVersionBehavior: 'reject', migration: 'read_only', writeSemantics: 'read_only',
|
|
340
357
|
byteBudget: MAX_CASE_IMPORT_BYTES, owner: CASE_CONTRACT_OWNER,
|
|
341
|
-
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.',
|
|
342
359
|
});
|
|
343
360
|
export const WORKSPACE_ARCHIVE_COMPATIBILITY = defineSchemaCompatibility({
|
|
344
361
|
id: 'export.workspace-archive', kind: 'export', schema: WORKSPACE_ARCHIVE_SCHEMA,
|
|
345
362
|
currentVersion: WORKSPACE_ARCHIVE_VERSION, supportedVersions: SUPPORTED_WORKSPACE_ARCHIVE_VERSIONS,
|
|
346
363
|
acceptsUnversionedLegacy: false, futureVersionBehavior: 'reject', migration: 'normalize_to_current',
|
|
347
364
|
writeSemantics: 'non_destructive_merge', byteBudget: MAX_WORKSPACE_ARCHIVE_BYTES, owner: CASE_CONTRACT_OWNER,
|
|
348
|
-
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.',
|
|
349
366
|
});
|
|
350
367
|
export const WORKSPACE_SETTINGS_COMPATIBILITY = defineSchemaCompatibility({
|
|
351
368
|
id: 'export.workspace-settings-section', kind: 'export', schema: WORKSPACE_SETTINGS_SCHEMA,
|
|
@@ -391,7 +408,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
391
408
|
version: PUBLIC_CASE_SCHEMA_VERSION,
|
|
392
409
|
role: 'historical',
|
|
393
410
|
expectation: 'normalises_to_current_output',
|
|
394
|
-
expectedOutputFixtureId: 'browser-case-
|
|
411
|
+
expectedOutputFixtureId: 'browser-case-v15',
|
|
395
412
|
shapeId: 'case.browser-store.public',
|
|
396
413
|
scope: 'repository',
|
|
397
414
|
}),
|
|
@@ -405,8 +422,8 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
405
422
|
version: PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
406
423
|
role: 'historical',
|
|
407
424
|
expectation: 'normalises_to_current_output',
|
|
408
|
-
expectedOutputFixtureId: 'browser-case-
|
|
409
|
-
shapeId: 'case.browser-store.v13',
|
|
425
|
+
expectedOutputFixtureId: 'browser-case-v15',
|
|
426
|
+
shapeId: 'case.browser-store.v13-v14',
|
|
410
427
|
scope: 'repository',
|
|
411
428
|
}),
|
|
412
429
|
Object.freeze({
|
|
@@ -416,6 +433,20 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
416
433
|
sha256: 'ece46f5d27a52a20196678af8236674836f3979c0d45f0ad5751c00677ec8bae',
|
|
417
434
|
contentDigestSha256: null,
|
|
418
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,
|
|
419
450
|
version: CASE_SCHEMA_VERSION,
|
|
420
451
|
role: 'current',
|
|
421
452
|
expectation: 'accepted_exact',
|
|
@@ -433,7 +464,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
433
464
|
version: PUBLIC_CASE_SCHEMA_VERSION,
|
|
434
465
|
role: 'historical',
|
|
435
466
|
expectation: 'normalises_to_current_output',
|
|
436
|
-
expectedOutputFixtureId: 'case-export-
|
|
467
|
+
expectedOutputFixtureId: 'case-export-v15',
|
|
437
468
|
shapeId: 'case.export.public',
|
|
438
469
|
scope: 'repository',
|
|
439
470
|
}),
|
|
@@ -447,8 +478,8 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
447
478
|
version: PUBLISHED_V2_CASE_SCHEMA_VERSION,
|
|
448
479
|
role: 'historical',
|
|
449
480
|
expectation: 'normalises_to_current_output',
|
|
450
|
-
expectedOutputFixtureId: 'case-export-
|
|
451
|
-
shapeId: 'case.export.v13',
|
|
481
|
+
expectedOutputFixtureId: 'case-export-v15',
|
|
482
|
+
shapeId: 'case.export.v13-v14',
|
|
452
483
|
scope: 'repository',
|
|
453
484
|
}),
|
|
454
485
|
Object.freeze({
|
|
@@ -458,6 +489,20 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
458
489
|
sha256: '50cf1df53c3558852b712844d588d9eb955af858e160969d9a6af613c257feaf',
|
|
459
490
|
contentDigestSha256: null,
|
|
460
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,
|
|
461
506
|
version: CASE_SCHEMA_VERSION,
|
|
462
507
|
role: 'current',
|
|
463
508
|
expectation: 'accepted_exact',
|
|
@@ -500,11 +545,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
500
545
|
sha256: '36c8b89bb1b335d923bd5035020ff47f89c88775e14d08af2d2eb2ee2f5cc03a',
|
|
501
546
|
contentDigestSha256: null,
|
|
502
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,
|
|
503
562
|
version: CASE_REPORT_SCHEMA_VERSION,
|
|
504
563
|
role: 'current',
|
|
505
564
|
expectation: 'accepted_exact',
|
|
506
565
|
expectedOutputFixtureId: null,
|
|
507
|
-
shapeId: 'case.report.
|
|
566
|
+
shapeId: 'case.report.v11',
|
|
508
567
|
scope: 'repository',
|
|
509
568
|
}),
|
|
510
569
|
Object.freeze({
|
|
@@ -528,11 +587,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
528
587
|
sha256: '7bd2237f208714b92c3669c0581dbf0bc2dc22369e53b3ef9da088e8af0f4a83',
|
|
529
588
|
contentDigestSha256: 'sha256:86d4d88d1d9fc969e6efa432061c64bf0725767d81c50b8655abd2d231dcc5b6',
|
|
530
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,
|
|
531
604
|
version: CASE_RESPONSE_PACKET_VERSION,
|
|
532
605
|
role: 'current',
|
|
533
606
|
expectation: 'accepted_exact',
|
|
534
607
|
expectedOutputFixtureId: null,
|
|
535
|
-
shapeId: 'case.response-packet.
|
|
608
|
+
shapeId: 'case.response-packet.v9',
|
|
536
609
|
scope: 'repository',
|
|
537
610
|
}),
|
|
538
611
|
Object.freeze({
|
|
@@ -556,11 +629,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
556
629
|
sha256: 'dcc9aaa7cdbd79a33559095f4c212e4eea5ad635c8c36290456d8b1946845aa6',
|
|
557
630
|
contentDigestSha256: null,
|
|
558
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,
|
|
559
646
|
version: CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
560
647
|
role: 'current',
|
|
561
648
|
expectation: 'accepted_exact',
|
|
562
649
|
expectedOutputFixtureId: null,
|
|
563
|
-
shapeId: 'case.response-review-inputs.
|
|
650
|
+
shapeId: 'case.response-review-inputs.v3',
|
|
564
651
|
scope: 'repository',
|
|
565
652
|
}),
|
|
566
653
|
Object.freeze({
|
|
@@ -595,8 +682,22 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
595
682
|
id: 'cli-case-pack-v2-case-v14',
|
|
596
683
|
path: 'test/fixtures/case-lifecycle/cli-case-pack-v2-case-v14.json',
|
|
597
684
|
bytes: 9363,
|
|
598
|
-
sha256: '
|
|
599
|
-
contentDigestSha256: 'sha256:
|
|
685
|
+
sha256: 'e25e98602c92e696a50c9fd48924c6c13853a5c23ea6fe617abc0b89d8c9e8ee',
|
|
686
|
+
contentDigestSha256: 'sha256:50044835b0e7aa45137b2f75b9894aa35c71101c769062eb524078bfb55eecc0',
|
|
687
|
+
schema: CLI_CASE_PACK_SCHEMA,
|
|
688
|
+
version: CLI_CASE_PACK_VERSION,
|
|
689
|
+
role: 'current',
|
|
690
|
+
expectation: 'accepted_exact',
|
|
691
|
+
expectedOutputFixtureId: null,
|
|
692
|
+
shapeId: 'case.cli-pack.current',
|
|
693
|
+
scope: 'repository',
|
|
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',
|
|
600
701
|
schema: CLI_CASE_PACK_SCHEMA,
|
|
601
702
|
version: CLI_CASE_PACK_VERSION,
|
|
602
703
|
role: 'current',
|
|
@@ -615,7 +716,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
615
716
|
version: PUBLIC_WORKSPACE_ARCHIVE_VERSION,
|
|
616
717
|
role: 'historical',
|
|
617
718
|
expectation: 'normalises_to_current_output',
|
|
618
|
-
expectedOutputFixtureId: 'workspace-archive-
|
|
719
|
+
expectedOutputFixtureId: 'workspace-archive-v8-empty-current',
|
|
619
720
|
shapeId: 'case.workspace-archive.v5',
|
|
620
721
|
scope: 'repository',
|
|
621
722
|
}),
|
|
@@ -629,7 +730,7 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
629
730
|
version: PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION,
|
|
630
731
|
role: 'historical',
|
|
631
732
|
expectation: 'normalises_to_current_output',
|
|
632
|
-
expectedOutputFixtureId: 'workspace-archive-
|
|
733
|
+
expectedOutputFixtureId: 'workspace-archive-v8-empty-current',
|
|
633
734
|
shapeId: 'case.workspace-archive.v6',
|
|
634
735
|
scope: 'repository',
|
|
635
736
|
}),
|
|
@@ -640,11 +741,25 @@ const CASE_LIFECYCLE_FIXTURES = Object.freeze([
|
|
|
640
741
|
sha256: '892b0d321f42bfb34501019388da682071024af452a8263f138cc08221947f0a',
|
|
641
742
|
contentDigestSha256: null,
|
|
642
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,
|
|
643
758
|
version: WORKSPACE_ARCHIVE_VERSION,
|
|
644
759
|
role: 'current',
|
|
645
760
|
expectation: 'accepted_exact',
|
|
646
761
|
expectedOutputFixtureId: null,
|
|
647
|
-
shapeId: 'case.workspace-archive.
|
|
762
|
+
shapeId: 'case.workspace-archive.v8',
|
|
648
763
|
scope: 'repository',
|
|
649
764
|
}),
|
|
650
765
|
Object.freeze({
|
|
@@ -745,9 +860,9 @@ function shape(id, schema, versions, requiredKeys, normalisation, target = null)
|
|
|
745
860
|
}
|
|
746
861
|
const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
747
862
|
shape('case.browser-store.public', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
748
|
-
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'),
|
|
749
864
|
shape('case.browser-store.current', CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, [CASE_SCHEMA_VERSION], ['version', 'cases'], 'project_known_fields'),
|
|
750
|
-
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'),
|
|
751
866
|
shape('case.export.public', CASE_EXPORT_LIFECYCLE_SCHEMA, [PUBLIC_CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
752
867
|
shape('case.response-packet.v6', CASE_RESPONSE_PACKET_SCHEMA, [PUBLIC_CASE_RESPONSE_PACKET_VERSION], [
|
|
753
868
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
@@ -756,7 +871,8 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
756
871
|
], 'preserve_signed_document'),
|
|
757
872
|
shape('case.export.current', CASE_EXPORT_LIFECYCLE_SCHEMA, [CASE_SCHEMA_VERSION], ['version', 'cases'], 'preserve_document'),
|
|
758
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'),
|
|
759
|
-
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'),
|
|
760
876
|
shape('case.response-packet.v7', CASE_RESPONSE_PACKET_SCHEMA, [PUBLISHED_V2_CASE_RESPONSE_PACKET_VERSION], [
|
|
761
877
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
762
878
|
'profile', 'case', 'incident', 'contacts', 'provenance', 'selectedEvidence',
|
|
@@ -764,7 +880,14 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
764
880
|
'escalationHistoryOmitted', 'escalationHistoryLimitations', 'responseLifecycle',
|
|
765
881
|
'authorisation', 'integrity',
|
|
766
882
|
], 'preserve_signed_document'),
|
|
767
|
-
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], [
|
|
768
891
|
'schema', 'schemaVersion', 'generatedAt', 'reviewRequired', 'submissionPerformed',
|
|
769
892
|
'profile', 'case', 'incident', 'contacts', 'recipientRoute', 'actionBinding',
|
|
770
893
|
'provenance', 'selectedEvidence', 'contradictions', 'readiness', 'artefactReferences',
|
|
@@ -776,7 +899,13 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
776
899
|
'contradictions', 'readiness', 'artefactReferences', 'escalationHistory',
|
|
777
900
|
'escalationHistoryOmitted', 'escalationHistoryLimitations', 'responseLifecycle',
|
|
778
901
|
], 'preserve_signed_document'),
|
|
779
|
-
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], [
|
|
780
909
|
'contract', 'version', 'profile', 'case', 'incident', 'contacts',
|
|
781
910
|
'recipientRoute', 'actionBinding', 'selectedEvidence', 'contradictions',
|
|
782
911
|
'readiness', 'artefactReferences', 'escalationHistory',
|
|
@@ -785,7 +914,8 @@ const CASE_LIFECYCLE_SHAPES = Object.freeze([
|
|
|
785
914
|
shape('case.cli-pack.current', CLI_CASE_PACK_SCHEMA, [CLI_CASE_PACK_VERSION], CLI_CASE_PACK_ROOT_KEYS, 'preserve_signed_document'),
|
|
786
915
|
shape('case.workspace-archive.v5', WORKSPACE_ARCHIVE_SCHEMA, [5], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
787
916
|
shape('case.workspace-archive.v6', WORKSPACE_ARCHIVE_SCHEMA, [PUBLISHED_V2_WORKSPACE_ARCHIVE_VERSION], ['schema', 'version', 'generatedAt', 'manifest', 'sections', 'limitations'], 'preserve_signed_document'),
|
|
788
|
-
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'),
|
|
789
919
|
shape('case.workspace-settings.v1', WORKSPACE_SETTINGS_SCHEMA, [WORKSPACE_SETTINGS_VERSION], ['schema', 'version', 'activeProfileId', 'theme'], 'preserve_document'),
|
|
790
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'),
|
|
791
921
|
]);
|
|
@@ -1025,13 +1155,13 @@ const CASE_LIFECYCLE_EXPIRY = Object.freeze([{
|
|
|
1025
1155
|
}]);
|
|
1026
1156
|
const CASE_LIFECYCLE_SERIALISATION = Object.freeze([
|
|
1027
1157
|
{
|
|
1028
|
-
id: 'case.browser-store.json.
|
|
1158
|
+
id: 'case.browser-store.json.v15',
|
|
1029
1159
|
schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA,
|
|
1030
1160
|
versions: [CASE_SCHEMA_VERSION],
|
|
1031
1161
|
mediaType: 'application/json',
|
|
1032
1162
|
encoding: 'utf-8',
|
|
1033
1163
|
bom: false,
|
|
1034
|
-
indentSpaces:
|
|
1164
|
+
indentSpaces: 0,
|
|
1035
1165
|
terminalLf: true,
|
|
1036
1166
|
propertyOrder: 'normalised_fixed',
|
|
1037
1167
|
canonicalisation: null,
|
|
@@ -1040,10 +1170,10 @@ const CASE_LIFECYCLE_SERIALISATION = Object.freeze([
|
|
|
1040
1170
|
verifierHookIds: [],
|
|
1041
1171
|
},
|
|
1042
1172
|
...[
|
|
1043
|
-
['case.export.json.
|
|
1044
|
-
['case.report.json.
|
|
1045
|
-
['case.packet.json.
|
|
1046
|
-
['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']],
|
|
1047
1177
|
['case.encrypted-workspace.json.v1', ENCRYPTED_WORKSPACE_ARCHIVE_SCHEMA, [ENCRYPTED_WORKSPACE_ARCHIVE_VERSION], 'structural_only_requires_separate_verification', ['case.encrypted-workspace.verify']],
|
|
1048
1178
|
].map(([id, schema, versions, integrity, verifierHookIds]) => ({
|
|
1049
1179
|
id,
|
|
@@ -1094,10 +1224,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1094
1224
|
discriminator: null,
|
|
1095
1225
|
}],
|
|
1096
1226
|
emittedContract: { schema: CASE_BROWSER_STORE_LIFECYCLE_SCHEMA, version: CASE_SCHEMA_VERSION, discriminator: null },
|
|
1097
|
-
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'],
|
|
1098
1228
|
boundProfileIds: ['case.browser-store.bounds', 'case.domain.bounds'],
|
|
1099
1229
|
hookIds: ['case.browser.normalise', 'case.browser.serialise'],
|
|
1100
|
-
serialisationProfileId: 'case.browser-store.json.
|
|
1230
|
+
serialisationProfileId: 'case.browser-store.json.v15',
|
|
1101
1231
|
privacyProfileId: 'case.privacy.browser-state',
|
|
1102
1232
|
retentionEffect: 'browser_indexeddb',
|
|
1103
1233
|
...sharedEdge,
|
|
@@ -1113,7 +1243,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1113
1243
|
discriminator: null,
|
|
1114
1244
|
}],
|
|
1115
1245
|
emittedContract: null,
|
|
1116
|
-
shapeIds: ['case.export.public', 'case.export.v13', 'case.export.current'],
|
|
1246
|
+
shapeIds: ['case.export.public', 'case.export.v13-v14', 'case.export.current'],
|
|
1117
1247
|
boundProfileIds: ['case.portable.bounds', 'case.domain.bounds'],
|
|
1118
1248
|
hookIds: ['case.export.merge'],
|
|
1119
1249
|
serialisationProfileId: null,
|
|
@@ -1130,7 +1260,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1130
1260
|
shapeIds: ['case.export.current'],
|
|
1131
1261
|
boundProfileIds: ['case.portable.bounds', 'case.domain.bounds'],
|
|
1132
1262
|
hookIds: ['case.export.build', 'case.portable.serialise'],
|
|
1133
|
-
serialisationProfileId: 'case.export.json.
|
|
1263
|
+
serialisationProfileId: 'case.export.json.v15',
|
|
1134
1264
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1135
1265
|
retentionEffect: 'operator_controlled_output',
|
|
1136
1266
|
...sharedEdge,
|
|
@@ -1146,7 +1276,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1146
1276
|
discriminator: null,
|
|
1147
1277
|
}],
|
|
1148
1278
|
emittedContract: null,
|
|
1149
|
-
shapeIds: ['case.report.v9', 'case.report.v10'],
|
|
1279
|
+
shapeIds: ['case.report.v9', 'case.report.v10', 'case.report.v11'],
|
|
1150
1280
|
boundProfileIds: ['case.domain.bounds'],
|
|
1151
1281
|
hookIds: ['case.cli-pack.verify'],
|
|
1152
1282
|
serialisationProfileId: null,
|
|
@@ -1160,10 +1290,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1160
1290
|
operation: 'build-report',
|
|
1161
1291
|
acceptedContracts: [],
|
|
1162
1292
|
emittedContract: { schema: CASE_REPORT_SCHEMA, version: CASE_REPORT_SCHEMA_VERSION, discriminator: null },
|
|
1163
|
-
shapeIds: ['case.report.
|
|
1293
|
+
shapeIds: ['case.report.v11'],
|
|
1164
1294
|
boundProfileIds: ['case.domain.bounds'],
|
|
1165
1295
|
hookIds: ['case.report.build', 'case.portable.serialise'],
|
|
1166
|
-
serialisationProfileId: 'case.report.json.
|
|
1296
|
+
serialisationProfileId: 'case.report.json.v11',
|
|
1167
1297
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1168
1298
|
retentionEffect: 'operator_controlled_output',
|
|
1169
1299
|
...sharedEdge,
|
|
@@ -1179,7 +1309,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1179
1309
|
discriminator: null,
|
|
1180
1310
|
}],
|
|
1181
1311
|
emittedContract: null,
|
|
1182
|
-
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'],
|
|
1183
1313
|
boundProfileIds: ['case.packet.bounds'],
|
|
1184
1314
|
hookIds: ['case.packet.verify'],
|
|
1185
1315
|
serialisationProfileId: null,
|
|
@@ -1198,7 +1328,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1198
1328
|
discriminator: null,
|
|
1199
1329
|
}],
|
|
1200
1330
|
emittedContract: null,
|
|
1201
|
-
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'],
|
|
1202
1332
|
boundProfileIds: ['case.packet.bounds'],
|
|
1203
1333
|
hookIds: ['case.packet.structure', 'case.packet.verify'],
|
|
1204
1334
|
serialisationProfileId: null,
|
|
@@ -1212,10 +1342,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1212
1342
|
operation: 'build-packet',
|
|
1213
1343
|
acceptedContracts: [],
|
|
1214
1344
|
emittedContract: { schema: CASE_RESPONSE_PACKET_SCHEMA, version: CASE_RESPONSE_PACKET_VERSION, discriminator: null },
|
|
1215
|
-
shapeIds: ['case.response-packet.
|
|
1345
|
+
shapeIds: ['case.response-packet.v9'],
|
|
1216
1346
|
boundProfileIds: ['case.packet.bounds'],
|
|
1217
1347
|
hookIds: ['case.packet.build', 'case.portable.serialise'],
|
|
1218
|
-
serialisationProfileId: 'case.packet.json.
|
|
1348
|
+
serialisationProfileId: 'case.packet.json.v9',
|
|
1219
1349
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1220
1350
|
retentionEffect: 'operator_controlled_output',
|
|
1221
1351
|
...sharedEdge,
|
|
@@ -1231,7 +1361,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1231
1361
|
discriminator: null,
|
|
1232
1362
|
}],
|
|
1233
1363
|
emittedContract: null,
|
|
1234
|
-
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'],
|
|
1235
1365
|
boundProfileIds: ['case.packet.bounds'],
|
|
1236
1366
|
hookIds: ['case.review-inputs.validate'],
|
|
1237
1367
|
serialisationProfileId: null,
|
|
@@ -1249,7 +1379,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1249
1379
|
version: CASE_RESPONSE_REVIEW_INPUTS_VERSION,
|
|
1250
1380
|
discriminator: null,
|
|
1251
1381
|
},
|
|
1252
|
-
shapeIds: ['case.response-review-inputs.
|
|
1382
|
+
shapeIds: ['case.response-review-inputs.v3'],
|
|
1253
1383
|
boundProfileIds: ['case.packet.bounds'],
|
|
1254
1384
|
hookIds: ['case.review-inputs.build'],
|
|
1255
1385
|
serialisationProfileId: null,
|
|
@@ -1311,7 +1441,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1311
1441
|
discriminator: null,
|
|
1312
1442
|
}],
|
|
1313
1443
|
emittedContract: null,
|
|
1314
|
-
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'],
|
|
1315
1445
|
boundProfileIds: ['case.workspace.bounds'],
|
|
1316
1446
|
hookIds: ['case.workspace.verify'],
|
|
1317
1447
|
serialisationProfileId: null,
|
|
@@ -1325,10 +1455,10 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1325
1455
|
operation: 'build-workspace',
|
|
1326
1456
|
acceptedContracts: [],
|
|
1327
1457
|
emittedContract: { schema: WORKSPACE_ARCHIVE_SCHEMA, version: WORKSPACE_ARCHIVE_VERSION, discriminator: null },
|
|
1328
|
-
shapeIds: ['case.workspace-archive.
|
|
1458
|
+
shapeIds: ['case.workspace-archive.v8'],
|
|
1329
1459
|
boundProfileIds: ['case.workspace.bounds'],
|
|
1330
1460
|
hookIds: ['case.workspace.build', 'case.portable.serialise'],
|
|
1331
|
-
serialisationProfileId: 'case.workspace.json.
|
|
1461
|
+
serialisationProfileId: 'case.workspace.json.v8',
|
|
1332
1462
|
privacyProfileId: 'case.privacy.portable-output',
|
|
1333
1463
|
retentionEffect: 'operator_controlled_output',
|
|
1334
1464
|
...sharedEdge,
|
|
@@ -1381,7 +1511,7 @@ const CASE_LIFECYCLE_CONSUMERS = Object.freeze([
|
|
|
1381
1511
|
version: ENCRYPTED_WORKSPACE_ARCHIVE_VERSION,
|
|
1382
1512
|
discriminator: null,
|
|
1383
1513
|
},
|
|
1384
|
-
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'],
|
|
1385
1515
|
boundProfileIds: ['case.workspace.bounds', 'case.encrypted-workspace.bounds'],
|
|
1386
1516
|
hookIds: ['case.encrypted-workspace.build', 'case.portable.serialise'],
|
|
1387
1517
|
serialisationProfileId: 'case.encrypted-workspace.json.v1',
|