@actuarial-ts/core 0.6.1 → 0.7.1
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 +44 -2
- package/dist/canonical.d.ts +11 -0
- package/dist/canonical.d.ts.map +1 -1
- package/dist/canonical.js +136 -26
- package/dist/canonical.js.map +1 -1
- package/dist/diagnosticEvidenceIntern.d.ts +16 -0
- package/dist/diagnosticEvidenceIntern.d.ts.map +1 -0
- package/dist/diagnosticEvidenceIntern.js +139 -0
- package/dist/diagnosticEvidenceIntern.js.map +1 -0
- package/dist/diagnosticExposure.d.ts.map +1 -1
- package/dist/diagnosticExposure.js +97 -7
- package/dist/diagnosticExposure.js.map +1 -1
- package/dist/diagnosticIdentity.d.ts.map +1 -1
- package/dist/diagnosticIdentity.js +6 -3
- package/dist/diagnosticIdentity.js.map +1 -1
- package/dist/diagnosticIdentityStream.d.ts +56 -0
- package/dist/diagnosticIdentityStream.d.ts.map +1 -0
- package/dist/diagnosticIdentityStream.js +472 -0
- package/dist/diagnosticIdentityStream.js.map +1 -0
- package/dist/diagnosticPreparation.d.ts +28 -0
- package/dist/diagnosticPreparation.d.ts.map +1 -1
- package/dist/diagnosticPreparation.js +160 -36
- package/dist/diagnosticPreparation.js.map +1 -1
- package/dist/diagnosticReview.d.ts +4 -1
- package/dist/diagnosticReview.d.ts.map +1 -1
- package/dist/diagnosticReview.js +203 -51
- package/dist/diagnosticReview.js.map +1 -1
- package/dist/diagnosticReviewSources.d.ts +18 -0
- package/dist/diagnosticReviewSources.d.ts.map +1 -0
- package/dist/diagnosticReviewSources.js +76 -0
- package/dist/diagnosticReviewSources.js.map +1 -0
- package/dist/diagnosticReviewStore.d.ts +88 -0
- package/dist/diagnosticReviewStore.d.ts.map +1 -0
- package/dist/diagnosticReviewStore.js +455 -0
- package/dist/diagnosticReviewStore.js.map +1 -0
- package/dist/diagnosticRunner.d.ts +25 -1
- package/dist/diagnosticRunner.d.ts.map +1 -1
- package/dist/diagnosticRunner.js +115 -7
- package/dist/diagnosticRunner.js.map +1 -1
- package/dist/fnvAccumulator.d.ts +6 -0
- package/dist/fnvAccumulator.d.ts.map +1 -0
- package/dist/fnvAccumulator.js +21 -0
- package/dist/fnvAccumulator.js.map +1 -0
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/canonical.ts +144 -26
- package/src/diagnosticEvidenceIntern.ts +151 -0
- package/src/diagnosticExposure.ts +126 -17
- package/src/diagnosticIdentity.ts +15 -6
- package/src/diagnosticIdentityStream.ts +553 -0
- package/src/diagnosticPreparation.ts +268 -84
- package/src/diagnosticReview.ts +293 -85
- package/src/diagnosticReviewSources.ts +85 -0
- package/src/diagnosticReviewStore.ts +692 -0
- package/src/diagnosticRunner.ts +206 -9
- package/src/fnvAccumulator.ts +20 -0
- package/src/index.ts +38 -1
- package/src/version.ts +1 -1
package/src/diagnosticRunner.ts
CHANGED
|
@@ -22,9 +22,18 @@ import {
|
|
|
22
22
|
type DiagnosticRuleEvaluation,
|
|
23
23
|
} from "./diagnosticRules.js";
|
|
24
24
|
import {
|
|
25
|
+
assertCompactPreparedDiagnosticData,
|
|
25
26
|
assertPreparedDiagnosticData,
|
|
27
|
+
getCompactPreparedDiagnosticDataFingerprint,
|
|
28
|
+
type CompactPreparedDiagnosticData,
|
|
26
29
|
type PreparedDiagnosticData,
|
|
30
|
+
type PreparedDiagnosticDataContent,
|
|
27
31
|
} from "./diagnosticPreparation.js";
|
|
32
|
+
import {
|
|
33
|
+
createDiagnosticIdentityObject,
|
|
34
|
+
createDiagnosticIdentityValue,
|
|
35
|
+
type DiagnosticIdentityDocument,
|
|
36
|
+
} from "./diagnosticIdentityStream.js";
|
|
28
37
|
import type { DiagnosticMeasureStats } from "./diagnosticDefinitions.js";
|
|
29
38
|
import {
|
|
30
39
|
DiagnosticValidationError,
|
|
@@ -50,6 +59,15 @@ export interface RunMetricDiagnosticsInput {
|
|
|
50
59
|
readonly groupMap?: Readonly<Record<string, string>>;
|
|
51
60
|
readonly groupDimensions?: Readonly<Record<string, JsonValue>>;
|
|
52
61
|
}
|
|
62
|
+
export interface RunMetricDiagnosticsCompactInput {
|
|
63
|
+
readonly prepared: CompactPreparedDiagnosticData;
|
|
64
|
+
readonly groupMap?: Readonly<Record<string, string>>;
|
|
65
|
+
readonly groupDimensions?: Readonly<Record<string, JsonValue>>;
|
|
66
|
+
}
|
|
67
|
+
type RunMetricDiagnosticsContentInput = Omit<
|
|
68
|
+
RunMetricDiagnosticsInput,
|
|
69
|
+
"prepared"
|
|
70
|
+
> & { readonly prepared: PreparedDiagnosticDataContent };
|
|
53
71
|
export interface DiagnosticMetricEvaluation {
|
|
54
72
|
readonly instanceId: string;
|
|
55
73
|
readonly instanceVersion: string;
|
|
@@ -113,6 +131,23 @@ export interface MetricDiagnosticsResult {
|
|
|
113
131
|
readonly latestDiagonal: readonly DiagnosticEmergencePoint[];
|
|
114
132
|
readonly findings: readonly DiagnosticMetricFinding[];
|
|
115
133
|
}
|
|
134
|
+
export type MetricDiagnosticsResultContent = Omit<
|
|
135
|
+
MetricDiagnosticsResult,
|
|
136
|
+
"preparationFingerprint"
|
|
137
|
+
>;
|
|
138
|
+
declare const compactMetricDiagnosticsResultBrand: unique symbol;
|
|
139
|
+
/** Complete numeric views whose preparation identity is explicitly deferred. */
|
|
140
|
+
export interface CompactMetricDiagnosticsResult extends MetricDiagnosticsResultContent {
|
|
141
|
+
readonly [compactMetricDiagnosticsResultBrand]: true;
|
|
142
|
+
}
|
|
143
|
+
const compactResultPreparations = new WeakMap<
|
|
144
|
+
object,
|
|
145
|
+
CompactPreparedDiagnosticData
|
|
146
|
+
>();
|
|
147
|
+
const compactResultDocuments = new WeakMap<
|
|
148
|
+
object,
|
|
149
|
+
DiagnosticIdentityDocument
|
|
150
|
+
>();
|
|
116
151
|
export interface CommonMaturityResult {
|
|
117
152
|
readonly developmentAge: number | null;
|
|
118
153
|
readonly ageUnit: string;
|
|
@@ -210,6 +245,19 @@ export function validateDiagnosticGroupingConfiguration(
|
|
|
210
245
|
input: RunMetricDiagnosticsInput,
|
|
211
246
|
): void {
|
|
212
247
|
assertPreparedDiagnosticData(input.prepared);
|
|
248
|
+
validateGroupingContent(input);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
export function validateCompactDiagnosticGroupingConfiguration(
|
|
252
|
+
input: RunMetricDiagnosticsCompactInput,
|
|
253
|
+
): void {
|
|
254
|
+
assertCompactPreparedDiagnosticData(input.prepared);
|
|
255
|
+
validateGroupingContent(input);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
function validateGroupingContent(
|
|
259
|
+
input: RunMetricDiagnosticsContentInput,
|
|
260
|
+
): void {
|
|
213
261
|
const boundaryIssues: DiagnosticValidationIssue[] = [];
|
|
214
262
|
for (const [value, path] of [
|
|
215
263
|
[input.groupMap, "$.groupMap"],
|
|
@@ -302,7 +350,7 @@ export function validateDiagnosticGroupingConfiguration(
|
|
|
302
350
|
}
|
|
303
351
|
|
|
304
352
|
function mergeStats(
|
|
305
|
-
cells: readonly
|
|
353
|
+
cells: readonly PreparedDiagnosticDataContent["cells"][number][],
|
|
306
354
|
measure: { readonly id: string; readonly missing: "unknown" | "zero" },
|
|
307
355
|
): DiagnosticMeasureStats {
|
|
308
356
|
const contributions = cells.flatMap(
|
|
@@ -360,7 +408,7 @@ function inferRoleExpressionMeasure(
|
|
|
360
408
|
}
|
|
361
409
|
|
|
362
410
|
function evaluatePoint(
|
|
363
|
-
prepared:
|
|
411
|
+
prepared: PreparedDiagnosticDataContent,
|
|
364
412
|
components: Readonly<Record<string, DiagnosticMeasureStats>>,
|
|
365
413
|
instanceId: string,
|
|
366
414
|
context: {
|
|
@@ -764,7 +812,96 @@ export function runMetricDiagnostics(
|
|
|
764
812
|
input: RunMetricDiagnosticsInput,
|
|
765
813
|
): DiagnosticDeepReadonly<MetricDiagnosticsResult> {
|
|
766
814
|
validateDiagnosticGroupingConfiguration(input);
|
|
815
|
+
const { definitionIntegrity, ...content } = calculateMetricDiagnostics(input);
|
|
816
|
+
return Object.freeze({
|
|
817
|
+
definitionIntegrity,
|
|
818
|
+
preparationFingerprint: input.prepared.preparationFingerprint,
|
|
819
|
+
...content,
|
|
820
|
+
});
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
export function runMetricDiagnosticsCompact(
|
|
824
|
+
input: RunMetricDiagnosticsCompactInput,
|
|
825
|
+
): DiagnosticDeepReadonly<CompactMetricDiagnosticsResult> {
|
|
826
|
+
validateCompactDiagnosticGroupingConfiguration(input);
|
|
827
|
+
const result = calculateMetricDiagnostics(input);
|
|
828
|
+
compactResultPreparations.set(result, input.prepared);
|
|
829
|
+
return result as DiagnosticDeepReadonly<CompactMetricDiagnosticsResult>;
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
export function assertCompactMetricDiagnosticsResult(
|
|
833
|
+
value: unknown,
|
|
834
|
+
): asserts value is DiagnosticDeepReadonly<CompactMetricDiagnosticsResult> {
|
|
835
|
+
if (
|
|
836
|
+
value === null ||
|
|
837
|
+
typeof value !== "object" ||
|
|
838
|
+
!compactResultPreparations.has(value)
|
|
839
|
+
)
|
|
840
|
+
throw new DiagnosticValidationError([
|
|
841
|
+
{
|
|
842
|
+
domain: "input",
|
|
843
|
+
code: "invalid-input-relationship",
|
|
844
|
+
path: "$.result",
|
|
845
|
+
message: "Compact metric diagnostics result is not authentic",
|
|
846
|
+
},
|
|
847
|
+
]);
|
|
848
|
+
}
|
|
849
|
+
|
|
850
|
+
/** Explicit eager JSON bridge; it is not used during compact calculation. */
|
|
851
|
+
export function materializeMetricDiagnosticsResult(
|
|
852
|
+
value: DiagnosticDeepReadonly<CompactMetricDiagnosticsResult>,
|
|
853
|
+
): DiagnosticDeepReadonly<MetricDiagnosticsResult> {
|
|
854
|
+
assertCompactMetricDiagnosticsResult(value);
|
|
855
|
+
const preparationFingerprint = getCompactPreparedDiagnosticDataFingerprint(
|
|
856
|
+
compactResultPreparations.get(value)!,
|
|
857
|
+
);
|
|
858
|
+
const { definitionIntegrity, ...content } = value;
|
|
859
|
+
return Object.freeze({
|
|
860
|
+
definitionIntegrity,
|
|
861
|
+
preparationFingerprint,
|
|
862
|
+
...content,
|
|
863
|
+
});
|
|
864
|
+
}
|
|
865
|
+
|
|
866
|
+
/** Complete core-owned result identity; no normalized result copy is retained. */
|
|
867
|
+
export function getCompactMetricDiagnosticsResultIdentityDocument(
|
|
868
|
+
value: DiagnosticDeepReadonly<CompactMetricDiagnosticsResult>,
|
|
869
|
+
): DiagnosticIdentityDocument {
|
|
870
|
+
assertCompactMetricDiagnosticsResult(value);
|
|
871
|
+
const previous = compactResultDocuments.get(value);
|
|
872
|
+
if (previous) return previous;
|
|
873
|
+
const document = createDiagnosticIdentityObject({
|
|
874
|
+
definitionIntegrity: createDiagnosticIdentityValue(
|
|
875
|
+
value.definitionIntegrity,
|
|
876
|
+
),
|
|
877
|
+
preparationFingerprint: createDiagnosticIdentityValue(
|
|
878
|
+
getCompactPreparedDiagnosticDataFingerprint(
|
|
879
|
+
compactResultPreparations.get(value)!,
|
|
880
|
+
),
|
|
881
|
+
),
|
|
882
|
+
ageUnit: createDiagnosticIdentityValue(value.ageUnit),
|
|
883
|
+
emergence: createDiagnosticIdentityValue(value.emergence),
|
|
884
|
+
triangles: createDiagnosticIdentityValue(value.triangles),
|
|
885
|
+
latestDiagonal: createDiagnosticIdentityValue(value.latestDiagonal),
|
|
886
|
+
findings: createDiagnosticIdentityValue(value.findings),
|
|
887
|
+
});
|
|
888
|
+
compactResultDocuments.set(value, document);
|
|
889
|
+
return document;
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
function calculateMetricDiagnostics(
|
|
893
|
+
input: RunMetricDiagnosticsContentInput,
|
|
894
|
+
): DiagnosticDeepReadonly<MetricDiagnosticsResultContent> {
|
|
767
895
|
const prepared = input.prepared;
|
|
896
|
+
// Grouping validation has already rejected non-JSON shapes. Snapshot each
|
|
897
|
+
// group's opaque metadata once; freezing output must not freeze caller JSON.
|
|
898
|
+
const dimensionSnapshots = new WeakMap<object, JsonValue>();
|
|
899
|
+
const dimensions = new Map(
|
|
900
|
+
Object.entries(input.groupDimensions ?? {}).map(([group, value]) => [
|
|
901
|
+
group,
|
|
902
|
+
snapshotOwnedDimensions(value, dimensionSnapshots),
|
|
903
|
+
]),
|
|
904
|
+
);
|
|
768
905
|
const buckets = new Map<string, typeof prepared.cells>();
|
|
769
906
|
for (const cell of prepared.cells) {
|
|
770
907
|
const group =
|
|
@@ -898,10 +1035,7 @@ export function runMetricDiagnostics(
|
|
|
898
1035
|
sourceGroups: [...new Set(cells.map((cell) => cell.sourceGroup))].sort(
|
|
899
1036
|
codeUnit,
|
|
900
1037
|
),
|
|
901
|
-
...(
|
|
902
|
-
Object.prototype.hasOwnProperty.call(input.groupDimensions, group)
|
|
903
|
-
? { dimensions: input.groupDimensions[group] }
|
|
904
|
-
: {}),
|
|
1038
|
+
...(dimensions.has(group) ? { dimensions: dimensions.get(group)! } : {}),
|
|
905
1039
|
origin,
|
|
906
1040
|
valuation,
|
|
907
1041
|
developmentAge: cells[0]!.developmentAge,
|
|
@@ -997,7 +1131,6 @@ export function runMetricDiagnostics(
|
|
|
997
1131
|
);
|
|
998
1132
|
return deepFreeze({
|
|
999
1133
|
definitionIntegrity: prepared.definition.definitionIntegrity,
|
|
1000
|
-
preparationFingerprint: prepared.preparationFingerprint,
|
|
1001
1134
|
ageUnit: prepared.definition.definition.periodAxis.ageUnit,
|
|
1002
1135
|
emergence,
|
|
1003
1136
|
triangles,
|
|
@@ -1009,8 +1142,40 @@ export function runMetricDiagnostics(
|
|
|
1009
1142
|
});
|
|
1010
1143
|
}
|
|
1011
1144
|
|
|
1145
|
+
/** Preserve free-JSON prototypes, own-key order, and -0 without source coercion. */
|
|
1146
|
+
function snapshotOwnedDimensions(
|
|
1147
|
+
value: JsonValue,
|
|
1148
|
+
snapshots: WeakMap<object, JsonValue>,
|
|
1149
|
+
): JsonValue {
|
|
1150
|
+
if (value === null || typeof value !== "object") return value;
|
|
1151
|
+
const previous = snapshots.get(value);
|
|
1152
|
+
if (previous !== undefined) return previous;
|
|
1153
|
+
if (Array.isArray(value)) {
|
|
1154
|
+
const result = Object.freeze(
|
|
1155
|
+
value.map((item) => snapshotOwnedDimensions(item, snapshots)),
|
|
1156
|
+
);
|
|
1157
|
+
snapshots.set(value, result);
|
|
1158
|
+
return result;
|
|
1159
|
+
}
|
|
1160
|
+
const result = Object.create(Object.getPrototypeOf(value)) as Record<
|
|
1161
|
+
string,
|
|
1162
|
+
JsonValue
|
|
1163
|
+
>;
|
|
1164
|
+
const record = value as Readonly<Record<string, JsonValue>>;
|
|
1165
|
+
for (const key of Object.keys(value))
|
|
1166
|
+
Object.defineProperty(result, key, {
|
|
1167
|
+
value: snapshotOwnedDimensions(record[key]!, snapshots),
|
|
1168
|
+
enumerable: true,
|
|
1169
|
+
configurable: true,
|
|
1170
|
+
writable: true,
|
|
1171
|
+
});
|
|
1172
|
+
const frozen = Object.freeze(result);
|
|
1173
|
+
snapshots.set(value, frozen);
|
|
1174
|
+
return frozen;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1012
1177
|
function viewGroups(
|
|
1013
|
-
result: DiagnosticDeepReadonly<
|
|
1178
|
+
result: DiagnosticDeepReadonly<MetricDiagnosticsResultContent>,
|
|
1014
1179
|
outputGroups: readonly string[],
|
|
1015
1180
|
path: string,
|
|
1016
1181
|
): readonly string[] {
|
|
@@ -1050,6 +1215,23 @@ export function sameMaturity(
|
|
|
1050
1215
|
result: DiagnosticDeepReadonly<MetricDiagnosticsResult>,
|
|
1051
1216
|
developmentAge: number,
|
|
1052
1217
|
outputGroups?: readonly string[],
|
|
1218
|
+
): readonly DiagnosticDeepReadonly<DiagnosticEmergencePoint>[] {
|
|
1219
|
+
return sameMaturityContent(result, developmentAge, outputGroups);
|
|
1220
|
+
}
|
|
1221
|
+
|
|
1222
|
+
/** Select compact numeric views without materializing preparation identity. */
|
|
1223
|
+
export function sameMaturityCompact(
|
|
1224
|
+
result: DiagnosticDeepReadonly<CompactMetricDiagnosticsResult>,
|
|
1225
|
+
developmentAge: number,
|
|
1226
|
+
outputGroups?: readonly string[],
|
|
1227
|
+
): readonly DiagnosticDeepReadonly<DiagnosticEmergencePoint>[] {
|
|
1228
|
+
return sameMaturityContent(result, developmentAge, outputGroups);
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
function sameMaturityContent(
|
|
1232
|
+
result: DiagnosticDeepReadonly<MetricDiagnosticsResultContent>,
|
|
1233
|
+
developmentAge: number,
|
|
1234
|
+
outputGroups?: readonly string[],
|
|
1053
1235
|
): readonly DiagnosticDeepReadonly<DiagnosticEmergencePoint>[] {
|
|
1054
1236
|
if (!Number.isSafeInteger(developmentAge) || developmentAge < 0)
|
|
1055
1237
|
throw new DiagnosticValidationError([
|
|
@@ -1074,6 +1256,21 @@ export function sameMaturity(
|
|
|
1074
1256
|
export function commonMaturity(
|
|
1075
1257
|
result: DiagnosticDeepReadonly<MetricDiagnosticsResult>,
|
|
1076
1258
|
outputGroups: readonly string[],
|
|
1259
|
+
): DiagnosticDeepReadonly<CommonMaturityResult> {
|
|
1260
|
+
return commonMaturityContent(result, outputGroups);
|
|
1261
|
+
}
|
|
1262
|
+
|
|
1263
|
+
/** Select compact numeric views without materializing preparation identity. */
|
|
1264
|
+
export function commonMaturityCompact(
|
|
1265
|
+
result: DiagnosticDeepReadonly<CompactMetricDiagnosticsResult>,
|
|
1266
|
+
outputGroups: readonly string[],
|
|
1267
|
+
): DiagnosticDeepReadonly<CommonMaturityResult> {
|
|
1268
|
+
return commonMaturityContent(result, outputGroups);
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1271
|
+
function commonMaturityContent(
|
|
1272
|
+
result: DiagnosticDeepReadonly<MetricDiagnosticsResultContent>,
|
|
1273
|
+
outputGroups: readonly string[],
|
|
1077
1274
|
): DiagnosticDeepReadonly<CommonMaturityResult> {
|
|
1078
1275
|
const groups = viewGroups(result, outputGroups, "$.outputGroups");
|
|
1079
1276
|
if (groups.length === 0)
|
|
@@ -1104,7 +1301,7 @@ export function commonMaturity(
|
|
|
1104
1301
|
points:
|
|
1105
1302
|
developmentAge === null
|
|
1106
1303
|
? []
|
|
1107
|
-
:
|
|
1304
|
+
: sameMaturityContent(result, developmentAge, groups),
|
|
1108
1305
|
});
|
|
1109
1306
|
}
|
|
1110
1307
|
export function getMetricDiagnosticsResultIdentity(
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** @internal Shared exact FNV-1a state; deliberately not a package export. */
|
|
2
|
+
export function createFnvAccumulator() {
|
|
3
|
+
let high = 0xcbf29ce4;
|
|
4
|
+
let low = 0x84222325;
|
|
5
|
+
return {
|
|
6
|
+
update(bytes: Uint8Array) {
|
|
7
|
+
for (const byte of bytes) {
|
|
8
|
+
low = (low ^ byte) >>> 0;
|
|
9
|
+
// FNV_PRIME = 2^40 + 435. Every intermediate stays below 2^42,
|
|
10
|
+
// preserving the exact modular multiplication of the BigInt form.
|
|
11
|
+
const product = low * 0x1b3;
|
|
12
|
+
high = (high * 0x1b3 + Math.floor(product / 0x100000000) + (low << 8)) >>> 0;
|
|
13
|
+
low = product >>> 0;
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
digest() {
|
|
17
|
+
return high.toString(16).padStart(8, "0") + low.toString(16).padStart(8, "0");
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./types.js";
|
|
2
2
|
export * from "./util.js";
|
|
3
3
|
export * from "./canonical.js";
|
|
4
|
+
export * from "./diagnosticIdentityStream.js";
|
|
4
5
|
export * from "./version.js";
|
|
5
6
|
export {
|
|
6
7
|
MAX_DIAGNOSTIC_JSON_DEPTH,
|
|
@@ -122,12 +123,18 @@ export {
|
|
|
122
123
|
reconcileDiagnosticExposures,
|
|
123
124
|
} from "./diagnosticExposure.js";
|
|
124
125
|
export {
|
|
126
|
+
assertCompactPreparedDiagnosticData,
|
|
125
127
|
assertPreparedDiagnosticData,
|
|
126
128
|
getPreparedDiagnosticDataIdentity,
|
|
129
|
+
getCompactPreparedDiagnosticDataIdentityDocument,
|
|
130
|
+
getCompactPreparedDiagnosticDataFingerprint,
|
|
131
|
+
materializePreparedDiagnosticData,
|
|
127
132
|
prepareDiagnosticData,
|
|
133
|
+
prepareDiagnosticDataCompact,
|
|
128
134
|
verifyPreparedDiagnosticDataIntegrity,
|
|
129
135
|
} from "./diagnosticPreparation.js";
|
|
130
136
|
export type {
|
|
137
|
+
CompactPreparedDiagnosticData,
|
|
131
138
|
DiagnosticClaimObservation,
|
|
132
139
|
DiagnosticCompletePeriodCutoff,
|
|
133
140
|
DiagnosticExpectedCell,
|
|
@@ -143,16 +150,43 @@ export type {
|
|
|
143
150
|
NormalizedDiagnosticExpectedCellIdentity,
|
|
144
151
|
PrepareDiagnosticDataInput,
|
|
145
152
|
PreparedDiagnosticData,
|
|
153
|
+
PreparedDiagnosticDataContent,
|
|
146
154
|
PreparedDiagnosticSourceCell,
|
|
147
155
|
} from "./diagnosticPreparation.js";
|
|
148
156
|
export {
|
|
157
|
+
assertCompactMetricDiagnosticsResult,
|
|
149
158
|
commonMaturity,
|
|
159
|
+
commonMaturityCompact,
|
|
150
160
|
getMetricDiagnosticsResultIdentity,
|
|
161
|
+
getCompactMetricDiagnosticsResultIdentityDocument,
|
|
151
162
|
runMetricDiagnostics,
|
|
163
|
+
runMetricDiagnosticsCompact,
|
|
164
|
+
materializeMetricDiagnosticsResult,
|
|
152
165
|
sameMaturity,
|
|
166
|
+
sameMaturityCompact,
|
|
153
167
|
validateDiagnosticGroupingConfiguration,
|
|
168
|
+
validateCompactDiagnosticGroupingConfiguration,
|
|
154
169
|
} from "./diagnosticRunner.js";
|
|
155
|
-
export { evaluateDiagnosticReviewRules } from "./diagnosticReview.js";
|
|
170
|
+
export { evaluateDiagnosticReviewRules, evaluateDiagnosticReviewRulesCompact } from "./diagnosticReview.js";
|
|
171
|
+
export {
|
|
172
|
+
assertCompactDiagnosticReviewEvaluations,
|
|
173
|
+
getDiagnosticReviewEvaluation,
|
|
174
|
+
getDiagnosticReviewEvaluationSummary,
|
|
175
|
+
getCompactDiagnosticReviewEvaluationsIdentityDocument,
|
|
176
|
+
iterateDiagnosticReviewEvaluations,
|
|
177
|
+
pageDiagnosticReviewEvaluations,
|
|
178
|
+
pageDiagnosticReviewEvaluationSources,
|
|
179
|
+
} from "./diagnosticReviewStore.js";
|
|
180
|
+
export type {
|
|
181
|
+
CompactDiagnosticReviewEvaluations,
|
|
182
|
+
CompactDiagnosticReviewRuleSummary,
|
|
183
|
+
DiagnosticReviewEffectiveStatus,
|
|
184
|
+
DiagnosticReviewEvaluationQuery,
|
|
185
|
+
DiagnosticReviewEvaluationSummary,
|
|
186
|
+
DiagnosticReviewPage,
|
|
187
|
+
DiagnosticReviewSourceQuery,
|
|
188
|
+
DiagnosticReviewStatusCounts,
|
|
189
|
+
} from "./diagnosticReviewStore.js";
|
|
156
190
|
export type {
|
|
157
191
|
DiagnosticCellReviewScope,
|
|
158
192
|
DiagnosticControlTotalReviewScope,
|
|
@@ -165,13 +199,16 @@ export type {
|
|
|
165
199
|
} from "./diagnosticReview.js";
|
|
166
200
|
export type {
|
|
167
201
|
CommonMaturityResult,
|
|
202
|
+
CompactMetricDiagnosticsResult,
|
|
168
203
|
DiagnosticEmergencePoint,
|
|
169
204
|
DiagnosticMetricEvaluation,
|
|
170
205
|
DiagnosticMetricTriangle,
|
|
171
206
|
DiagnosticMetricTriangleCell,
|
|
172
207
|
MetricDiagnosticsResult,
|
|
208
|
+
MetricDiagnosticsResultContent,
|
|
173
209
|
NormalizedDiagnosticResultIdentity,
|
|
174
210
|
RunMetricDiagnosticsInput,
|
|
211
|
+
RunMetricDiagnosticsCompactInput,
|
|
175
212
|
} from "./diagnosticRunner.js";
|
|
176
213
|
export type {
|
|
177
214
|
DiagnosticAuditedNumericValue,
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** This package's runtime version. A test pins it to package.json. */
|
|
2
|
-
export const CORE_PACKAGE_VERSION = "0.
|
|
2
|
+
export const CORE_PACKAGE_VERSION = "0.7.1";
|