@actuarial-ts/data 0.6.1 → 0.7.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 -2
- package/dist/compactDiagnosticJson.d.ts +24 -0
- package/dist/compactDiagnosticJson.d.ts.map +1 -0
- package/dist/compactDiagnosticJson.js +200 -0
- package/dist/compactDiagnosticJson.js.map +1 -0
- package/dist/diagnosticInput.d.ts +53 -2
- package/dist/diagnosticInput.d.ts.map +1 -1
- package/dist/diagnosticInput.js +177 -61
- package/dist/diagnosticInput.js.map +1 -1
- package/dist/diagnosticPreparedReview.d.ts +64 -1
- package/dist/diagnosticPreparedReview.d.ts.map +1 -1
- package/dist/diagnosticPreparedReview.js +384 -64
- package/dist/diagnosticPreparedReview.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/src/compactDiagnosticJson.ts +216 -0
- package/src/diagnosticInput.ts +298 -151
- package/src/diagnosticPreparedReview.ts +649 -111
- package/src/version.ts +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { DiagnosticValidationError, assertPreparedDiagnosticData, canonicalJson, evaluateDiagnosticReviewRules, fnv1a64, compareDiagnosticSourceLocations, compareDiagnosticIdentityValues, normalizeDiagnosticSourceLocations, projectDiagnosticIdentity, } from "@actuarial-ts/core";
|
|
1
|
+
import { DiagnosticValidationError, diagnosticJsonPreflight, isDiagnosticToken, assertPreparedDiagnosticData, assertCompactPreparedDiagnosticData, evaluateDiagnosticReviewRulesCompact, getDiagnosticReviewEvaluation, getDiagnosticReviewEvaluationSummary, getCompactDiagnosticReviewEvaluationsIdentityDocument, getCompactPreparedDiagnosticDataFingerprint, createDiagnosticIdentityArray, createDiagnosticIdentityObject, createDiagnosticIdentityValue, fingerprintDiagnosticIdentity, canonicalJson, evaluateDiagnosticReviewRules, fnv1a64, compareDiagnosticSourceLocations, compareDiagnosticIdentityValues, normalizeDiagnosticSourceLocations, projectDiagnosticIdentity, } from "@actuarial-ts/core";
|
|
2
|
+
import { CompactDiagnosticJson } from "./compactDiagnosticJson.js";
|
|
2
3
|
import { z } from "zod";
|
|
3
4
|
import { createNotEvaluatedDataCheck, createStructuredDataCheck, summarizeDataChecks, } from "./review.js";
|
|
4
5
|
const fixed = [
|
|
@@ -132,25 +133,33 @@ function compareSourceArrays(left, right) {
|
|
|
132
133
|
}
|
|
133
134
|
return left.length - right.length;
|
|
134
135
|
}
|
|
136
|
+
function findingMergeSkeleton(finding) {
|
|
137
|
+
const context = finding.context;
|
|
138
|
+
const reviewScope = context?.reviewScope;
|
|
139
|
+
return {
|
|
140
|
+
...finding,
|
|
141
|
+
...(context === undefined
|
|
142
|
+
? {}
|
|
143
|
+
: {
|
|
144
|
+
context: {
|
|
145
|
+
...context,
|
|
146
|
+
sources: [],
|
|
147
|
+
...(reviewScope === undefined
|
|
148
|
+
? {}
|
|
149
|
+
: { reviewScope: { ...reviewScope, sources: [] } }),
|
|
150
|
+
},
|
|
151
|
+
}),
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
function findingMergeKey(finding) {
|
|
155
|
+
return canonicalJson(findingMergeSkeleton(finding));
|
|
156
|
+
}
|
|
135
157
|
function normalizeDataFindings(values) {
|
|
136
158
|
const merged = new Map();
|
|
137
159
|
for (const finding of values) {
|
|
138
160
|
const context = finding.context;
|
|
139
161
|
const reviewScope = context?.reviewScope;
|
|
140
|
-
const key =
|
|
141
|
-
...finding,
|
|
142
|
-
...(context === undefined
|
|
143
|
-
? {}
|
|
144
|
-
: {
|
|
145
|
-
context: {
|
|
146
|
-
...context,
|
|
147
|
-
sources: [],
|
|
148
|
-
...(reviewScope === undefined
|
|
149
|
-
? {}
|
|
150
|
-
: { reviewScope: { ...reviewScope, sources: [] } }),
|
|
151
|
-
},
|
|
152
|
-
}),
|
|
153
|
-
});
|
|
162
|
+
const key = findingMergeKey(finding);
|
|
154
163
|
const previous = merged.get(key);
|
|
155
164
|
const previousContext = previous?.context;
|
|
156
165
|
const normalizedContext = context === undefined
|
|
@@ -185,10 +194,13 @@ function normalizeDataFindings(values) {
|
|
|
185
194
|
: { context: normalizedContext }),
|
|
186
195
|
});
|
|
187
196
|
}
|
|
197
|
+
return [...merged.values()].sort(compareDataFindings);
|
|
198
|
+
}
|
|
199
|
+
function compareDataFindings(left, right) {
|
|
188
200
|
const text = (left, right) => left < right ? -1 : left > right ? 1 : 0;
|
|
189
201
|
const field = (finding, key) => finding.context?.[key];
|
|
190
202
|
const textField = (left, right, key) => compareOptional(field(left, key), field(right, key), text);
|
|
191
|
-
return
|
|
203
|
+
return (text(left.code, right.code) ||
|
|
192
204
|
textField(left, right, "ruleId") ||
|
|
193
205
|
textField(left, right, "measureId") ||
|
|
194
206
|
textField(left, right, "offendingKey") ||
|
|
@@ -297,14 +309,9 @@ function findingContext(finding) {
|
|
|
297
309
|
sources: finding.sources,
|
|
298
310
|
};
|
|
299
311
|
}
|
|
300
|
-
|
|
301
|
-
assertPreparedDiagnosticData(input.prepared);
|
|
302
|
-
const evidence = input.evidence === null
|
|
303
|
-
? null
|
|
304
|
-
: validateDiagnosticReviewEvidence(input.evidence);
|
|
305
|
-
const evaluations = evaluateDiagnosticReviewRules(input.prepared);
|
|
312
|
+
function structuralChecks(prepared, evidence) {
|
|
306
313
|
const findingsByCheck = new Map(fixed.map(([id]) => [id, []]));
|
|
307
|
-
for (const finding of
|
|
314
|
+
for (const finding of prepared.findings) {
|
|
308
315
|
const id = codeToCheck[finding.code];
|
|
309
316
|
if (id)
|
|
310
317
|
findingsByCheck.get(id).push({
|
|
@@ -354,16 +361,66 @@ export function reviewPreparedDiagnosticData(input) {
|
|
|
354
361
|
},
|
|
355
362
|
});
|
|
356
363
|
}
|
|
357
|
-
const hasExposureMeasures =
|
|
364
|
+
const hasExposureMeasures = prepared.definition.definition.measures.some((measure) => measure.source === "exposure");
|
|
358
365
|
const checks = fixed.map(([id, description, severity], index) => {
|
|
359
366
|
if ([1, 5, 6, 7].includes(index) && !hasExposureMeasures)
|
|
360
367
|
return createNotEvaluatedDataCheck(id, description, "the definition declares no exposure measures");
|
|
361
|
-
if (index === 8 && !
|
|
368
|
+
if (index === 8 && !prepared.expectedCellsProvided)
|
|
362
369
|
return createNotEvaluatedDataCheck(id, description, "the expected-cell grid was omitted");
|
|
363
370
|
if ((index === 9 || index === 10) && evidence === null)
|
|
364
371
|
return createNotEvaluatedDataCheck(id, description, "review evidence was omitted");
|
|
365
372
|
return createStructuredDataCheck(id, description, severity, normalizeDataFindings(findingsByCheck.get(id)));
|
|
366
373
|
});
|
|
374
|
+
return checks;
|
|
375
|
+
}
|
|
376
|
+
function evaluationFindings(item, rule) {
|
|
377
|
+
return [
|
|
378
|
+
...item.expressionOverflows.map((overflowItem) => ({
|
|
379
|
+
code: "diagnostic-expression-overflow",
|
|
380
|
+
message: "Measure expression overflowed",
|
|
381
|
+
context: {
|
|
382
|
+
ruleId: rule.id,
|
|
383
|
+
expressionPath: overflowItem.expressionPath,
|
|
384
|
+
reviewScope: item.scope,
|
|
385
|
+
...(overflowItem.coordinate === null ? {} : overflowItem.coordinate),
|
|
386
|
+
sources: overflowItem.sources,
|
|
387
|
+
},
|
|
388
|
+
})),
|
|
389
|
+
...(item.status === "triggered"
|
|
390
|
+
? [
|
|
391
|
+
{
|
|
392
|
+
code: rule.code,
|
|
393
|
+
message: rule.description,
|
|
394
|
+
context: {
|
|
395
|
+
ruleId: rule.id,
|
|
396
|
+
reviewScope: item.scope,
|
|
397
|
+
sources: item.scope.sources,
|
|
398
|
+
},
|
|
399
|
+
},
|
|
400
|
+
]
|
|
401
|
+
: []),
|
|
402
|
+
...(item.status === "not-evaluated"
|
|
403
|
+
? [
|
|
404
|
+
{
|
|
405
|
+
code: "diagnostic-review-rule-not-evaluated",
|
|
406
|
+
message: "Diagnostic review rule was not evaluated",
|
|
407
|
+
context: {
|
|
408
|
+
ruleId: rule.id,
|
|
409
|
+
reviewScope: item.scope,
|
|
410
|
+
sources: item.scope.sources,
|
|
411
|
+
},
|
|
412
|
+
},
|
|
413
|
+
]
|
|
414
|
+
: []),
|
|
415
|
+
];
|
|
416
|
+
}
|
|
417
|
+
export function reviewPreparedDiagnosticData(input) {
|
|
418
|
+
assertPreparedDiagnosticData(input.prepared);
|
|
419
|
+
const evidence = input.evidence === null
|
|
420
|
+
? null
|
|
421
|
+
: validateDiagnosticReviewEvidence(input.evidence);
|
|
422
|
+
const evaluations = evaluateDiagnosticReviewRules(input.prepared);
|
|
423
|
+
const checks = structuralChecks(input.prepared, evidence);
|
|
367
424
|
for (const rule of input.prepared.definition.definition.reviewRules) {
|
|
368
425
|
const matching = evaluations.filter((item) => item.ruleId === rule.id);
|
|
369
426
|
const overflow = matching.some((item) => item.expressionOverflows.length > 0);
|
|
@@ -375,45 +432,7 @@ export function reviewPreparedDiagnosticData(input) {
|
|
|
375
432
|
: matching.some((item) => item.status === "not-evaluated")
|
|
376
433
|
? "not-evaluated"
|
|
377
434
|
: "pass";
|
|
378
|
-
const findings = matching.flatMap((item) =>
|
|
379
|
-
...item.expressionOverflows.map((overflowItem) => ({
|
|
380
|
-
code: "diagnostic-expression-overflow",
|
|
381
|
-
message: "Measure expression overflowed",
|
|
382
|
-
context: {
|
|
383
|
-
ruleId: rule.id,
|
|
384
|
-
expressionPath: overflowItem.expressionPath,
|
|
385
|
-
reviewScope: item.scope,
|
|
386
|
-
...(overflowItem.coordinate === null ? {} : overflowItem.coordinate),
|
|
387
|
-
sources: overflowItem.sources,
|
|
388
|
-
},
|
|
389
|
-
})),
|
|
390
|
-
...(item.status === "triggered"
|
|
391
|
-
? [
|
|
392
|
-
{
|
|
393
|
-
code: rule.code,
|
|
394
|
-
message: rule.description,
|
|
395
|
-
context: {
|
|
396
|
-
ruleId: rule.id,
|
|
397
|
-
reviewScope: item.scope,
|
|
398
|
-
sources: item.scope.sources,
|
|
399
|
-
},
|
|
400
|
-
},
|
|
401
|
-
]
|
|
402
|
-
: []),
|
|
403
|
-
...(item.status === "not-evaluated"
|
|
404
|
-
? [
|
|
405
|
-
{
|
|
406
|
-
code: "diagnostic-review-rule-not-evaluated",
|
|
407
|
-
message: "Diagnostic review rule was not evaluated",
|
|
408
|
-
context: {
|
|
409
|
-
ruleId: rule.id,
|
|
410
|
-
reviewScope: item.scope,
|
|
411
|
-
sources: item.scope.sources,
|
|
412
|
-
},
|
|
413
|
-
},
|
|
414
|
-
]
|
|
415
|
-
: []),
|
|
416
|
-
]);
|
|
435
|
+
const findings = matching.flatMap((item) => evaluationFindings(item, rule));
|
|
417
436
|
const normalizedFindings = normalizeDataFindings(findings);
|
|
418
437
|
checks.push({
|
|
419
438
|
id: rule.id,
|
|
@@ -446,4 +465,305 @@ export function reviewPreparedDiagnosticData(input) {
|
|
|
446
465
|
reportFingerprint: `fnv1a64-jcs-v1:${fnv1a64(canonicalJson({ identityVersion: 1, kind: "diagnostic-review-report", review: identityBody }))}`,
|
|
447
466
|
});
|
|
448
467
|
}
|
|
468
|
+
const findingStates = new WeakMap();
|
|
469
|
+
const compactReceipts = new WeakSet();
|
|
470
|
+
const compactReceiptPreparations = new WeakMap();
|
|
471
|
+
const compactReceiptFingerprints = new WeakMap();
|
|
472
|
+
function compactError(message, path = "$") {
|
|
473
|
+
throw new DiagnosticValidationError([
|
|
474
|
+
{ domain: "input", code: "invalid-input-relationship", path, message },
|
|
475
|
+
]);
|
|
476
|
+
}
|
|
477
|
+
export function assertCompactDiagnosticReviewReceipt(value) {
|
|
478
|
+
if (value === null ||
|
|
479
|
+
typeof value !== "object" ||
|
|
480
|
+
!compactReceipts.has(value))
|
|
481
|
+
compactError("Value is not an authentic compact diagnostic review receipt");
|
|
482
|
+
}
|
|
483
|
+
function findingState(store) {
|
|
484
|
+
if (store === null || typeof store !== "object" || !findingStates.has(store))
|
|
485
|
+
compactError("Value is not an authentic compact diagnostic finding store");
|
|
486
|
+
return findingStates.get(store);
|
|
487
|
+
}
|
|
488
|
+
function findingLocation(state, index) {
|
|
489
|
+
if (!Number.isSafeInteger(index) || index < 0 || index >= state.count)
|
|
490
|
+
compactError("Finding index is outside this review", "$.index");
|
|
491
|
+
const block = state.blocks.find((block) => index >= block.start && index < block.start + block.ids.length);
|
|
492
|
+
return { block, id: block.ids[index - block.start] };
|
|
493
|
+
}
|
|
494
|
+
const findingQuerySchema = z
|
|
495
|
+
.object({
|
|
496
|
+
checkId: z.string().refine(isDiagnosticToken).optional(),
|
|
497
|
+
offset: z.number().int().nonnegative().safe().optional(),
|
|
498
|
+
limit: z.number().int().min(1).max(1000).optional(),
|
|
499
|
+
})
|
|
500
|
+
.strict();
|
|
501
|
+
const findingSourceQuerySchema = z
|
|
502
|
+
.object({
|
|
503
|
+
location: z.enum(["context", "scope"]).optional(),
|
|
504
|
+
offset: z.number().int().nonnegative().safe().optional(),
|
|
505
|
+
limit: z.number().int().min(1).max(1000).optional(),
|
|
506
|
+
})
|
|
507
|
+
.strict();
|
|
508
|
+
function pageResult(items, total, offset) {
|
|
509
|
+
return Object.freeze({
|
|
510
|
+
total,
|
|
511
|
+
offset,
|
|
512
|
+
items: Object.freeze(items),
|
|
513
|
+
nextOffset: offset + items.length < total ? offset + items.length : null,
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
export function getDiagnosticReviewFinding(store, index) {
|
|
517
|
+
const state = findingState(store);
|
|
518
|
+
const { block, id } = findingLocation(state, index);
|
|
519
|
+
return Object.freeze({
|
|
520
|
+
index,
|
|
521
|
+
checkId: block.checkId,
|
|
522
|
+
finding: state.table.read(id),
|
|
523
|
+
});
|
|
524
|
+
}
|
|
525
|
+
/** Full ordered evidence, including every finding's source lists. */
|
|
526
|
+
export function iterateDiagnosticReviewFindings(store) {
|
|
527
|
+
const state = findingState(store);
|
|
528
|
+
return (function* () {
|
|
529
|
+
for (let index = 0; index < state.count; index++)
|
|
530
|
+
yield getDiagnosticReviewFinding(store, index);
|
|
531
|
+
})();
|
|
532
|
+
}
|
|
533
|
+
/** Summary pages never expand source lists, including high-fanout control totals. */
|
|
534
|
+
export function pageDiagnosticReviewFindings(store, query = {}) {
|
|
535
|
+
const state = findingState(store);
|
|
536
|
+
const issues = diagnosticJsonPreflight(query, "input");
|
|
537
|
+
if (issues.length)
|
|
538
|
+
throw new DiagnosticValidationError(issues);
|
|
539
|
+
const parsed = findingQuerySchema.safeParse(query);
|
|
540
|
+
if (!parsed.success)
|
|
541
|
+
compactError("Invalid finding page query");
|
|
542
|
+
const { checkId, offset = 0, limit = 100 } = parsed.data;
|
|
543
|
+
const blocks = state.blocks.filter((block) => checkId === undefined || block.checkId === checkId);
|
|
544
|
+
const total = blocks.reduce((sum, block) => sum + block.ids.length, 0);
|
|
545
|
+
const items = [];
|
|
546
|
+
let position = 0;
|
|
547
|
+
for (const block of blocks) {
|
|
548
|
+
for (let local = Math.max(0, offset - position); local < block.ids.length && items.length < limit; local++)
|
|
549
|
+
items.push(Object.freeze({
|
|
550
|
+
index: block.start + local,
|
|
551
|
+
checkId: block.checkId,
|
|
552
|
+
finding: state.table.read(block.ids[local], true),
|
|
553
|
+
}));
|
|
554
|
+
position += block.ids.length;
|
|
555
|
+
if (items.length >= limit)
|
|
556
|
+
break;
|
|
557
|
+
}
|
|
558
|
+
return pageResult(items, total, offset);
|
|
559
|
+
}
|
|
560
|
+
export function pageDiagnosticReviewFindingSources(store, index, query = {}) {
|
|
561
|
+
const state = findingState(store);
|
|
562
|
+
const { id } = findingLocation(state, index);
|
|
563
|
+
const issues = diagnosticJsonPreflight(query, "input");
|
|
564
|
+
if (issues.length)
|
|
565
|
+
throw new DiagnosticValidationError(issues);
|
|
566
|
+
const parsed = findingSourceQuerySchema.safeParse(query);
|
|
567
|
+
if (!parsed.success)
|
|
568
|
+
compactError("Invalid finding source-page query");
|
|
569
|
+
const { location = "context", offset = 0, limit = 100 } = parsed.data;
|
|
570
|
+
const context = state.table.property(id, "context");
|
|
571
|
+
const parent = location === "scope"
|
|
572
|
+
? state.table.property(context, "reviewScope")
|
|
573
|
+
: context;
|
|
574
|
+
const sources = state.table.property(parent, "sources");
|
|
575
|
+
if (sources === undefined)
|
|
576
|
+
return pageResult([], 0, offset);
|
|
577
|
+
const count = state.table.length(sources);
|
|
578
|
+
return pageResult(Array.from({ length: Math.max(0, Math.min(limit, count - offset)) }, (_, local) => state.table.read(state.table.arrayItem(sources, offset + local))), count, offset);
|
|
579
|
+
}
|
|
580
|
+
/** Compact owner receipt; identity projection/hash are deliberately deferred. */
|
|
581
|
+
export function reviewPreparedDiagnosticDataCompact(input) {
|
|
582
|
+
assertCompactPreparedDiagnosticData(input.prepared);
|
|
583
|
+
const evidence = input.evidence === null
|
|
584
|
+
? null
|
|
585
|
+
: validateDiagnosticReviewEvidence(input.evidence);
|
|
586
|
+
const evaluations = evaluateDiagnosticReviewRulesCompact(input.prepared);
|
|
587
|
+
const table = new CompactDiagnosticJson();
|
|
588
|
+
const blocks = [];
|
|
589
|
+
const checks = [];
|
|
590
|
+
let findingCount = 0;
|
|
591
|
+
const appendFindings = (checkId, values) => {
|
|
592
|
+
const pending = [];
|
|
593
|
+
const sources = [];
|
|
594
|
+
const sourceIds = new Map();
|
|
595
|
+
const candidates = new Map();
|
|
596
|
+
const mergeSources = (previous, incoming) => {
|
|
597
|
+
if (incoming === undefined)
|
|
598
|
+
return previous;
|
|
599
|
+
const ids = incoming.map((source) => {
|
|
600
|
+
const key = canonicalJson(source);
|
|
601
|
+
let id = sourceIds.get(key);
|
|
602
|
+
if (id === undefined) {
|
|
603
|
+
id = sources.length;
|
|
604
|
+
sources.push(source);
|
|
605
|
+
sourceIds.set(key, id);
|
|
606
|
+
}
|
|
607
|
+
return id;
|
|
608
|
+
});
|
|
609
|
+
if (previous === undefined)
|
|
610
|
+
return ids;
|
|
611
|
+
if (ids.every((id) => previous instanceof Set ? previous.has(id) : previous.includes(id)))
|
|
612
|
+
return previous;
|
|
613
|
+
const union = previous instanceof Set ? previous : new Set(previous);
|
|
614
|
+
for (const id of ids)
|
|
615
|
+
union.add(id);
|
|
616
|
+
return union;
|
|
617
|
+
};
|
|
618
|
+
const sourceValues = (union) => [...(union ?? [])]
|
|
619
|
+
.map((id) => sources[id])
|
|
620
|
+
.sort(compareDiagnosticSourceLocations);
|
|
621
|
+
for (const value of values) {
|
|
622
|
+
const finding = normalizeDataFindings([value])[0];
|
|
623
|
+
const key = findingMergeKey(finding);
|
|
624
|
+
// Hashes index candidates only. Exact source-free keys decide equality.
|
|
625
|
+
const hash = fnv1a64(key);
|
|
626
|
+
const bucket = candidates.get(hash);
|
|
627
|
+
const possible = bucket === undefined
|
|
628
|
+
? []
|
|
629
|
+
: typeof bucket === "number"
|
|
630
|
+
? [bucket]
|
|
631
|
+
: bucket;
|
|
632
|
+
const matching = possible.find((index) => canonicalJson(table.read(pending[index].keyId)) === key);
|
|
633
|
+
let entry;
|
|
634
|
+
if (matching === undefined) {
|
|
635
|
+
const index = pending.length;
|
|
636
|
+
entry = { keyId: table.add(findingMergeSkeleton(finding)) };
|
|
637
|
+
pending.push(entry);
|
|
638
|
+
candidates.set(hash, bucket === undefined ? index : [...possible, index]);
|
|
639
|
+
}
|
|
640
|
+
else {
|
|
641
|
+
entry = pending[matching];
|
|
642
|
+
entry.keyId = table.add(findingMergeSkeleton(finding));
|
|
643
|
+
}
|
|
644
|
+
entry.contextSources = mergeSources(entry.contextSources, finding.context?.sources);
|
|
645
|
+
entry.scopeSources = mergeSources(entry.scopeSources, finding.context?.reviewScope?.sources);
|
|
646
|
+
}
|
|
647
|
+
// Source-free fields decide nearly every comparison. Expand source IDs only
|
|
648
|
+
// for the contract's final tie-break, never for each ordinary comparison.
|
|
649
|
+
pending.sort((a, b) => compareDataFindings(table.read(a.keyId), table.read(b.keyId)) ||
|
|
650
|
+
compareSourceArrays(sourceValues(a.contextSources), sourceValues(b.contextSources)));
|
|
651
|
+
const ids = pending.map((entry) => {
|
|
652
|
+
const skeleton = table.read(entry.keyId);
|
|
653
|
+
if (skeleton.context === undefined)
|
|
654
|
+
return table.add(skeleton);
|
|
655
|
+
const context = { ...skeleton.context };
|
|
656
|
+
if (entry.contextSources === undefined)
|
|
657
|
+
delete context.sources;
|
|
658
|
+
else
|
|
659
|
+
context.sources = sourceValues(entry.contextSources);
|
|
660
|
+
if (context.reviewScope !== undefined)
|
|
661
|
+
context.reviewScope = {
|
|
662
|
+
...context.reviewScope,
|
|
663
|
+
sources: sourceValues(entry.scopeSources),
|
|
664
|
+
};
|
|
665
|
+
// Each final source list is encoded once, after every duplicate was merged.
|
|
666
|
+
return table.add({ ...skeleton, context });
|
|
667
|
+
});
|
|
668
|
+
const block = { checkId, start: findingCount, ids: Uint32Array.from(ids) };
|
|
669
|
+
findingCount += ids.length;
|
|
670
|
+
blocks.push(block);
|
|
671
|
+
return block;
|
|
672
|
+
};
|
|
673
|
+
for (const check of structuralChecks(input.prepared, evidence)) {
|
|
674
|
+
const block = appendFindings(check.id, check.findings);
|
|
675
|
+
checks.push(Object.freeze({
|
|
676
|
+
id: check.id,
|
|
677
|
+
description: check.description,
|
|
678
|
+
status: check.status,
|
|
679
|
+
details: Object.freeze([...check.details]),
|
|
680
|
+
findingCount: block.ids.length,
|
|
681
|
+
}));
|
|
682
|
+
}
|
|
683
|
+
for (const [ruleIndex, rule,] of input.prepared.definition.definition.reviewRules.entries()) {
|
|
684
|
+
const range = evaluations.rules[ruleIndex];
|
|
685
|
+
const counts = range.summary;
|
|
686
|
+
const status = counts.fail > 0
|
|
687
|
+
? "fail"
|
|
688
|
+
: counts.warning > 0
|
|
689
|
+
? "warning"
|
|
690
|
+
: counts.notEvaluated > 0
|
|
691
|
+
? "not-evaluated"
|
|
692
|
+
: "pass";
|
|
693
|
+
const values = function* () {
|
|
694
|
+
if (counts.pass === range.count)
|
|
695
|
+
return;
|
|
696
|
+
for (let index = range.start; index < range.start + range.count; index++) {
|
|
697
|
+
if (getDiagnosticReviewEvaluationSummary(evaluations, index)
|
|
698
|
+
.effectiveStatus === "pass")
|
|
699
|
+
continue;
|
|
700
|
+
yield* evaluationFindings(getDiagnosticReviewEvaluation(evaluations, index), rule);
|
|
701
|
+
}
|
|
702
|
+
};
|
|
703
|
+
const block = appendFindings(rule.id, values());
|
|
704
|
+
const details = Array.from(block.ids.subarray(0, 20), (id) => table.read(table.property(id, "message")));
|
|
705
|
+
checks.push(Object.freeze({
|
|
706
|
+
id: rule.id,
|
|
707
|
+
description: rule.description,
|
|
708
|
+
status,
|
|
709
|
+
details: Object.freeze(details),
|
|
710
|
+
findingCount: block.ids.length,
|
|
711
|
+
}));
|
|
712
|
+
}
|
|
713
|
+
table.seal();
|
|
714
|
+
const findings = Object.freeze({
|
|
715
|
+
count: findingCount,
|
|
716
|
+
});
|
|
717
|
+
findingStates.set(findings, { table, blocks, count: findingCount });
|
|
718
|
+
const summary = summarizeDataChecks(checks.map((check) => ({
|
|
719
|
+
...check,
|
|
720
|
+
details: [...check.details],
|
|
721
|
+
findings: [],
|
|
722
|
+
}))).summary;
|
|
723
|
+
const receipt = Object.freeze({
|
|
724
|
+
definitionIntegrity: input.prepared.definition.definitionIntegrity,
|
|
725
|
+
report: Object.freeze({
|
|
726
|
+
checks: Object.freeze(checks),
|
|
727
|
+
summary: Object.freeze(summary),
|
|
728
|
+
}),
|
|
729
|
+
evaluations,
|
|
730
|
+
findings,
|
|
731
|
+
evidence,
|
|
732
|
+
});
|
|
733
|
+
compactReceipts.add(receipt);
|
|
734
|
+
compactReceiptPreparations.set(receipt, input.prepared);
|
|
735
|
+
return receipt;
|
|
736
|
+
}
|
|
737
|
+
/** Exact legacy review identity, available only from an authentic immutable owner. */
|
|
738
|
+
export function getCompactDiagnosticReviewReceiptIdentityDocument(receipt) {
|
|
739
|
+
assertCompactDiagnosticReviewReceipt(receipt);
|
|
740
|
+
const state = findingState(receipt.findings);
|
|
741
|
+
const prepared = compactReceiptPreparations.get(receipt);
|
|
742
|
+
return createDiagnosticIdentityObject({
|
|
743
|
+
definitionIntegrity: createDiagnosticIdentityValue(receipt.definitionIntegrity),
|
|
744
|
+
preparationFingerprint: createDiagnosticIdentityValue(getCompactPreparedDiagnosticDataFingerprint(prepared)),
|
|
745
|
+
evidence: createDiagnosticIdentityValue(receipt.evidence),
|
|
746
|
+
checks: createDiagnosticIdentityArray(receipt.report.checks.length, (index) => {
|
|
747
|
+
const check = receipt.report.checks[index];
|
|
748
|
+
const block = state.blocks[index];
|
|
749
|
+
return createDiagnosticIdentityObject({
|
|
750
|
+
id: createDiagnosticIdentityValue(check.id),
|
|
751
|
+
status: createDiagnosticIdentityValue(check.status),
|
|
752
|
+
findings: createDiagnosticIdentityArray(block.ids.length, (local) => state.table.identityDocument(block.ids[local])),
|
|
753
|
+
});
|
|
754
|
+
}),
|
|
755
|
+
summary: createDiagnosticIdentityValue(receipt.report.summary),
|
|
756
|
+
evaluations: getCompactDiagnosticReviewEvaluationsIdentityDocument(receipt.evaluations),
|
|
757
|
+
});
|
|
758
|
+
}
|
|
759
|
+
/** Explicit evidence operation; caches only the small immutable-owner fingerprint. */
|
|
760
|
+
export function getCompactDiagnosticReviewReceiptFingerprint(receipt) {
|
|
761
|
+
assertCompactDiagnosticReviewReceipt(receipt);
|
|
762
|
+
let fingerprint = compactReceiptFingerprints.get(receipt);
|
|
763
|
+
if (fingerprint === undefined) {
|
|
764
|
+
fingerprint = fingerprintDiagnosticIdentity(getCompactDiagnosticReviewReceiptIdentityDocument(receipt), { kind: "diagnostic-review-report", property: "review" });
|
|
765
|
+
compactReceiptFingerprints.set(receipt, fingerprint);
|
|
766
|
+
}
|
|
767
|
+
return fingerprint;
|
|
768
|
+
}
|
|
449
769
|
//# sourceMappingURL=diagnosticPreparedReview.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnosticPreparedReview.js","sourceRoot":"","sources":["../src/diagnosticPreparedReview.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diagnosticPreparedReview.js","sourceRoot":"","sources":["../src/diagnosticPreparedReview.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const DATA_PACKAGE_VERSION = "0.
|
|
1
|
+
export declare const DATA_PACKAGE_VERSION = "0.7.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const DATA_PACKAGE_VERSION = "0.
|
|
1
|
+
export const DATA_PACKAGE_VERSION = "0.7.0";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@actuarial-ts/data",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Data ingestion and ASOP No. 23 support for actuarial-ts: loss/exposure preparation, atomic generalized diagnostic validation, declarative review, and triangle assembly.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"prepublishOnly": "node ../../tools/release/verify-release-attestation.mjs @actuarial-ts/data"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@actuarial-ts/core": "^0.
|
|
52
|
+
"@actuarial-ts/core": "^0.7.0",
|
|
53
53
|
"zod": "^3.25.76"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|