@actuarial-ts/data 0.7.1 → 0.8.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.
Files changed (39) hide show
  1. package/README.md +20 -4
  2. package/dist/customizationContracts.d.ts +2473 -0
  3. package/dist/customizationContracts.d.ts.map +1 -0
  4. package/dist/customizationContracts.js +845 -0
  5. package/dist/customizationContracts.js.map +1 -0
  6. package/dist/customizationExternalState.d.ts +42 -0
  7. package/dist/customizationExternalState.d.ts.map +1 -0
  8. package/dist/customizationExternalState.js +121 -0
  9. package/dist/customizationExternalState.js.map +1 -0
  10. package/dist/customizationHistoryStream.d.ts +26 -0
  11. package/dist/customizationHistoryStream.d.ts.map +1 -0
  12. package/dist/customizationHistoryStream.js +66 -0
  13. package/dist/customizationHistoryStream.js.map +1 -0
  14. package/dist/diagnosticInput.d.ts +33 -0
  15. package/dist/diagnosticInput.d.ts.map +1 -1
  16. package/dist/diagnosticInput.js +71 -1
  17. package/dist/diagnosticInput.js.map +1 -1
  18. package/dist/diagnosticPreparedReview.d.ts.map +1 -1
  19. package/dist/diagnosticPreparedReview.js +38 -0
  20. package/dist/diagnosticPreparedReview.js.map +1 -1
  21. package/dist/historyMapping.d.ts +898 -0
  22. package/dist/historyMapping.d.ts.map +1 -0
  23. package/dist/historyMapping.js +395 -0
  24. package/dist/historyMapping.js.map +1 -0
  25. package/dist/index.d.ts +4 -0
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +4 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/version.d.ts +1 -1
  30. package/dist/version.js +1 -1
  31. package/package.json +3 -3
  32. package/src/customizationContracts.ts +963 -0
  33. package/src/customizationExternalState.ts +208 -0
  34. package/src/customizationHistoryStream.ts +90 -0
  35. package/src/diagnosticInput.ts +101 -0
  36. package/src/diagnosticPreparedReview.ts +48 -0
  37. package/src/historyMapping.ts +514 -0
  38. package/src/index.ts +4 -0
  39. package/src/version.ts +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationContracts.js","sourceRoot":"","sources":["../src/customizationContracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { type CustomizationResourceLimits, type JsonValue } from "@actuarial-ts/core";
2
+ export type CustomizationExecutionErrorCode = "CANCELLED" | "RESOURCE_LIMIT" | "EXTERNAL_STATE_FAILURE" | "EXTERNAL_STATE_ORDER" | "EXTERNAL_STATE_TRUNCATED";
3
+ export declare class CustomizationExecutionError extends Error {
4
+ readonly code: CustomizationExecutionErrorCode;
5
+ constructor(code: CustomizationExecutionErrorCode, message: string);
6
+ }
7
+ export interface CustomizationExternalRecord<T extends JsonValue = JsonValue> {
8
+ readonly id: string;
9
+ readonly partitionKey: string;
10
+ readonly orderKey: string;
11
+ readonly value: T;
12
+ }
13
+ export interface CustomizationExternalStateSession<T extends JsonValue = JsonValue> {
14
+ /** Store one SDK-owned record. The adapter must not mutate it. */
15
+ readonly append: (record: CustomizationExternalRecord<T>) => void | Promise<void>;
16
+ /** Finish writes before reads begin. */
17
+ readonly seal: () => void | Promise<void>;
18
+ /** Reopen all records exactly once in partitionKey/orderKey/id order. */
19
+ readonly read: () => AsyncIterable<CustomizationExternalRecord<T>>;
20
+ /** Release the run's temporary namespace for every terminal outcome. */
21
+ readonly dispose: (outcome: "completed" | "failed" | "cancelled") => void | Promise<void>;
22
+ }
23
+ export interface CustomizationExternalStateAdapter {
24
+ readonly open: <T extends JsonValue>(request: {
25
+ readonly runId: string;
26
+ readonly signal?: AbortSignal;
27
+ }) => CustomizationExternalStateSession<T> | Promise<CustomizationExternalStateSession<T>>;
28
+ }
29
+ export interface ExternalSortCustomizationRecordsInput<T extends JsonValue = JsonValue> {
30
+ readonly runId: string;
31
+ readonly records: Iterable<CustomizationExternalRecord<T>> | AsyncIterable<CustomizationExternalRecord<T>>;
32
+ readonly adapter: CustomizationExternalStateAdapter;
33
+ readonly limits: CustomizationResourceLimits;
34
+ readonly signal?: AbortSignal;
35
+ }
36
+ /**
37
+ * Validates, owns, externally stages, and deterministically rereads records.
38
+ * The adapter supplies storage mechanics only; it cannot choose actuarial
39
+ * ordering or publish a completed run. Early consumer return is cancellation.
40
+ */
41
+ export declare function externalSortCustomizationRecords<T extends JsonValue>(input: ExternalSortCustomizationRecordsInput<T>): AsyncGenerator<CustomizationExternalRecord<T>>;
42
+ //# sourceMappingURL=customizationExternalState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationExternalState.d.ts","sourceRoot":"","sources":["../src/customizationExternalState.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,2BAA2B,EAChC,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,+BAA+B,GACvC,WAAW,GACX,gBAAgB,GAChB,wBAAwB,GACxB,sBAAsB,GACtB,0BAA0B,CAAC;AAE/B,qBAAa,2BAA4B,SAAQ,KAAK;IACpD,QAAQ,CAAC,IAAI,EAAE,+BAA+B,CAAC;gBAEnC,IAAI,EAAE,+BAA+B,EAAE,OAAO,EAAE,MAAM;CAMnE;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAC1E,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AAED,MAAM,WAAW,iCAAiC,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAChF,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,yEAAyE;IACzE,QAAQ,CAAC,IAAI,EAAE,MAAM,aAAa,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3F;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE;QAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;KAC/B,KAAK,iCAAiC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5F;AAED,MAAM,WAAW,qCAAqC,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IACpF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3G,QAAQ,CAAC,OAAO,EAAE,iCAAiC,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AA4CD;;;;GAIG;AACH,wBAAuB,gCAAgC,CAAC,CAAC,SAAS,SAAS,EACzE,KAAK,EAAE,qCAAqC,CAAC,CAAC,CAAC,GAC9C,cAAc,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAkGhD"}
@@ -0,0 +1,121 @@
1
+ import { isDiagnosticToken, isWellFormedDiagnosticString, snapshotDiagnosticJson, } from "@actuarial-ts/core";
2
+ import { parseCustomizationResourceLimits } from "./customizationContracts.js";
3
+ export class CustomizationExecutionError extends Error {
4
+ code;
5
+ constructor(code, message) {
6
+ super(message);
7
+ this.name = "CustomizationExecutionError";
8
+ this.code = code;
9
+ Object.freeze(this);
10
+ }
11
+ }
12
+ const encoder = new TextEncoder();
13
+ function cancelled(signal) {
14
+ if (signal?.aborted)
15
+ throw new CustomizationExecutionError("CANCELLED", "Customization execution was cancelled");
16
+ }
17
+ function validateRecord(value, maximumRecordBytes) {
18
+ if (!isDiagnosticToken(value.id))
19
+ throw new CustomizationExecutionError("EXTERNAL_STATE_FAILURE", "External record id is invalid");
20
+ if (!isWellFormedDiagnosticString(value.partitionKey) ||
21
+ !isWellFormedDiagnosticString(value.orderKey))
22
+ throw new CustomizationExecutionError("EXTERNAL_STATE_FAILURE", "External record sort keys must be valid strings without U+0000");
23
+ const owned = snapshotDiagnosticJson(value);
24
+ const bytes = encoder.encode(JSON.stringify(owned)).byteLength;
25
+ if (bytes > maximumRecordBytes)
26
+ throw new CustomizationExecutionError("RESOURCE_LIMIT", `External record ${value.id} requires ${bytes} encoded bytes, exceeding maximumRecordBytes ${maximumRecordBytes}`);
27
+ return owned;
28
+ }
29
+ function compareRecords(left, right) {
30
+ for (const key of ["partitionKey", "orderKey", "id"]) {
31
+ const result = left[key] === right[key] ? 0 : left[key] < right[key] ? -1 : 1;
32
+ if (result !== 0)
33
+ return result;
34
+ }
35
+ return 0;
36
+ }
37
+ /**
38
+ * Validates, owns, externally stages, and deterministically rereads records.
39
+ * The adapter supplies storage mechanics only; it cannot choose actuarial
40
+ * ordering or publish a completed run. Early consumer return is cancellation.
41
+ */
42
+ export async function* externalSortCustomizationRecords(input) {
43
+ const runId = input.runId;
44
+ const records = input.records;
45
+ const adapter = input.adapter;
46
+ const signal = input.signal;
47
+ let limits;
48
+ try {
49
+ limits = parseCustomizationResourceLimits(input.limits);
50
+ }
51
+ catch (error) {
52
+ throw new CustomizationExecutionError("RESOURCE_LIMIT", error instanceof Error ? error.message : "Invalid customization resource limits");
53
+ }
54
+ if (!isDiagnosticToken(runId))
55
+ throw new CustomizationExecutionError("EXTERNAL_STATE_FAILURE", "runId is invalid");
56
+ cancelled(signal);
57
+ let session;
58
+ let outcome = "failed";
59
+ let primary;
60
+ try {
61
+ session = await adapter.open({
62
+ runId,
63
+ ...(signal === undefined ? {} : { signal }),
64
+ });
65
+ let written = 0;
66
+ for await (const raw of records) {
67
+ cancelled(signal);
68
+ written += 1;
69
+ if (written > limits.maximumInputRecords)
70
+ throw new CustomizationExecutionError("RESOURCE_LIMIT", `Input exceeds maximumInputRecords ${limits.maximumInputRecords}`);
71
+ await session.append(validateRecord(raw, limits.maximumRecordBytes));
72
+ }
73
+ cancelled(signal);
74
+ await session.seal();
75
+ let read = 0;
76
+ let partitionRecords = 0;
77
+ let prior;
78
+ for await (const raw of session.read()) {
79
+ cancelled(signal);
80
+ const record = validateRecord(raw, limits.maximumRecordBytes);
81
+ if (prior !== undefined && compareRecords(prior, record) > 0)
82
+ throw new CustomizationExecutionError("EXTERNAL_STATE_ORDER", "External records are not in nondecreasing partitionKey/orderKey/id order");
83
+ partitionRecords = prior?.partitionKey === record.partitionKey ? partitionRecords + 1 : 1;
84
+ if (partitionRecords > limits.maximumPartitionRecords)
85
+ throw new CustomizationExecutionError("RESOURCE_LIMIT", `Partition ${record.partitionKey} exceeds maximumPartitionRecords ${limits.maximumPartitionRecords}`);
86
+ read += 1;
87
+ if (read > written)
88
+ throw new CustomizationExecutionError("EXTERNAL_STATE_FAILURE", "External state returned more records than were written");
89
+ prior = record;
90
+ yield record;
91
+ }
92
+ if (read !== written)
93
+ throw new CustomizationExecutionError("EXTERNAL_STATE_TRUNCATED", `External state returned ${read} of ${written} records`);
94
+ outcome = "completed";
95
+ }
96
+ catch (error) {
97
+ primary = error;
98
+ outcome =
99
+ error instanceof CustomizationExecutionError && error.code === "CANCELLED"
100
+ ? "cancelled"
101
+ : "failed";
102
+ throw error;
103
+ }
104
+ finally {
105
+ if (session !== undefined) {
106
+ try {
107
+ const terminal = outcome === "completed"
108
+ ? "completed"
109
+ : primary === undefined
110
+ ? "cancelled"
111
+ : outcome;
112
+ await session.dispose(terminal);
113
+ }
114
+ catch (error) {
115
+ if (primary === undefined)
116
+ throw new CustomizationExecutionError("EXTERNAL_STATE_FAILURE", `External state cleanup failed: ${error instanceof Error ? error.message : String(error)}`);
117
+ }
118
+ }
119
+ }
120
+ }
121
+ //# sourceMappingURL=customizationExternalState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationExternalState.js","sourceRoot":"","sources":["../src/customizationExternalState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { type CustomizationCapabilityFinding, type CustomizationResourceLimits, type HistoricalDatasetInput, type HistoricalRecordDisposition, type PreparedHistoricalObservation } from "@actuarial-ts/core";
2
+ import { type CustomizationExternalStateAdapter } from "./customizationExternalState.js";
3
+ export type PreparedHistoryStreamEvent = {
4
+ readonly kind: "observation";
5
+ readonly observation: PreparedHistoricalObservation;
6
+ } | {
7
+ readonly kind: "disposition";
8
+ readonly disposition: HistoricalRecordDisposition;
9
+ } | {
10
+ readonly kind: "finding";
11
+ readonly finding: CustomizationCapabilityFinding;
12
+ };
13
+ /**
14
+ * Sorts raw revisions in host-owned state and prepares one claim partition at
15
+ * a time. Retained SDK state is bounded by maximumPartitionRecords; oversized
16
+ * claims fail rather than silently spilling or dropping observations.
17
+ */
18
+ export declare function streamPreparedHistoricalDataset(input: {
19
+ readonly runId: string;
20
+ readonly header: Omit<HistoricalDatasetInput, "records">;
21
+ readonly records: AsyncIterable<unknown> | Iterable<unknown>;
22
+ readonly adapter: CustomizationExternalStateAdapter;
23
+ readonly limits: CustomizationResourceLimits;
24
+ readonly signal?: AbortSignal;
25
+ }): AsyncGenerator<PreparedHistoryStreamEvent>;
26
+ //# sourceMappingURL=customizationHistoryStream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationHistoryStream.d.ts","sourceRoot":"","sources":["../src/customizationHistoryStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,8BAA8B,EACnC,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAE3B,KAAK,2BAA2B,EAEhC,KAAK,6BAA6B,EACnC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAGL,KAAK,iCAAiC,EACvC,MAAM,iCAAiC,CAAC;AAEzC,MAAM,MAAM,0BAA0B,GAClC;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,6BAA6B,CAAA;CAAE,GACrF;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,2BAA2B,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAA;CAAE,CAAC;AAanF;;;;GAIG;AACH,wBAAuB,+BAA+B,CAAC,KAAK,EAAE;IAC5D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7D,QAAQ,CAAC,OAAO,EAAE,iCAAiC,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GAAG,cAAc,CAAC,0BAA0B,CAAC,CA0C7C"}
@@ -0,0 +1,66 @@
1
+ import { canonicalJson, fnv1a64, prepareHistoricalDataset, } from "@actuarial-ts/core";
2
+ import { parseHistoricalDatasetInput, parseHistoricalObservationRecord } from "./customizationContracts.js";
3
+ import { externalSortCustomizationRecords, } from "./customizationExternalState.js";
4
+ function partitionKey(record) {
5
+ return canonicalJson([record.sourceNamespace, record.claimId]);
6
+ }
7
+ function orderKey(record, precedence) {
8
+ const order = precedence === "sequence"
9
+ ? String(record.revision.sequence ?? -1).padStart(20, "0")
10
+ : record.revision.correctedAt ?? "";
11
+ return canonicalJson([record.recordId, record.evaluationDate ?? record.effectiveDate ?? "", order, record.revision.id]);
12
+ }
13
+ /**
14
+ * Sorts raw revisions in host-owned state and prepares one claim partition at
15
+ * a time. Retained SDK state is bounded by maximumPartitionRecords; oversized
16
+ * claims fail rather than silently spilling or dropping observations.
17
+ */
18
+ export async function* streamPreparedHistoricalDataset(input) {
19
+ const header = parseHistoricalDatasetInput({ ...input.header, records: [] });
20
+ async function* externalRecords() {
21
+ for await (const raw of input.records) {
22
+ const record = parseHistoricalObservationRecord(raw);
23
+ const stable = canonicalJson([record.sourceNamespace, record.claimId, record.recordId, record.revision.id]);
24
+ yield {
25
+ id: `record-${fnv1a64(stable)}`,
26
+ partitionKey: partitionKey(record),
27
+ orderKey: orderKey(record, header.revisionPrecedence),
28
+ value: record,
29
+ };
30
+ }
31
+ }
32
+ let currentPartition;
33
+ let current = [];
34
+ const flush = function* () {
35
+ if (current.length === 0)
36
+ return;
37
+ const sourceNamespace = current[0].sourceNamespace;
38
+ const claimId = current[0].claimId;
39
+ const prepared = prepareHistoricalDataset({
40
+ ...header,
41
+ ...(header.openingBalances === undefined ? {} : { openingBalances: header.openingBalances.filter((balance) => balance.sourceNamespace === sourceNamespace && balance.claimId === claimId) }),
42
+ records: current,
43
+ });
44
+ for (const disposition of prepared.dispositions)
45
+ yield { kind: "disposition", disposition };
46
+ for (const finding of prepared.findings)
47
+ yield { kind: "finding", finding };
48
+ for (const observation of prepared.observations)
49
+ yield { kind: "observation", observation };
50
+ current = [];
51
+ };
52
+ for await (const external of externalSortCustomizationRecords({
53
+ runId: input.runId,
54
+ records: externalRecords(),
55
+ adapter: input.adapter,
56
+ limits: input.limits,
57
+ ...(input.signal === undefined ? {} : { signal: input.signal }),
58
+ })) {
59
+ if (currentPartition !== undefined && external.partitionKey !== currentPartition)
60
+ yield* flush();
61
+ currentPartition = external.partitionKey;
62
+ current.push(parseHistoricalObservationRecord(external.value));
63
+ }
64
+ yield* flush();
65
+ }
66
+ //# sourceMappingURL=customizationHistoryStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationHistoryStream.js","sourceRoot":"","sources":["../src/customizationHistoryStream.ts"],"names":[],"mappings":"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"}
@@ -129,9 +129,42 @@ export type CompactMetricDiagnosticsOutcome = CompletedCompactMetricDiagnosticsR
129
129
  readonly metricGate: "blocked";
130
130
  };
131
131
  });
132
+ declare const queryContextBrand: unique symbol;
133
+ /** SDK-owned source snapshot. Cloning or serializing this handle loses authority. */
134
+ export interface DiagnosticQueryContext {
135
+ readonly [queryContextBrand]: true;
136
+ }
137
+ /**
138
+ * Omitted fields inherit the context; null clears filter/expected-cell selection.
139
+ * Group maps/dimensions must match the selected scope; empty records clear them.
140
+ */
141
+ export interface DiagnosticQuery {
142
+ /** Per-query evidence labels; null clears the inherited label. */
143
+ readonly runPresetId?: string | null;
144
+ readonly datasetArtifactId?: string | null;
145
+ readonly filter?: DiagnosticsFilter | null;
146
+ readonly completePeriodCutoffs?: readonly DiagnosticCompletePeriodCutoff[];
147
+ readonly expectedCells?: readonly DiagnosticExpectedCell[] | null;
148
+ readonly groupMap?: Readonly<Record<string, string>>;
149
+ readonly groupDimensions?: Readonly<Record<string, JsonValue>>;
150
+ }
132
151
  export declare function validateDiagnosticRunInput(value: unknown): ValidatedDiagnosticRunInput;
133
152
  /** Validate, own and prepare inputs without eagerly materializing identity graphs. */
134
153
  export declare function validateDiagnosticRunInputCompact(value: unknown): CompactValidatedDiagnosticRunInput;
154
+ /**
155
+ * Own and validate source rows and compile the definition once. Queries keep the
156
+ * definition, execution policy, source order and review evidence fixed.
157
+ * Metric selections and eligible clean aggregate source/origin/date/age queries
158
+ * share prepared cells; ineligible inputs still perform full core preparation.
159
+ * Source/origin queries reuse invariant owned review evidence. Date/age queries
160
+ * reuse cell-local checks but recompute monotonic comparisons and controls. Every
161
+ * query enforces review and metric gates, including unchanged evidence validation.
162
+ */
163
+ export declare function createDiagnosticQueryContext(value: unknown): DiagnosticQueryContext;
164
+ /** Create an authentic per-query input without cloning/reparsing owned source rows. */
165
+ export declare function validateDiagnosticQueryCompact(context: DiagnosticQueryContext, query?: unknown): CompactValidatedDiagnosticRunInput;
166
+ /** Execute all review and metric gates for this scope, even if another scope passed. */
167
+ export declare function runDiagnosticQueryCompact(context: DiagnosticQueryContext, query?: DiagnosticQuery): CompactMetricDiagnosticsOutcome;
135
168
  export declare function assertCompactValidatedDiagnosticRunInput(value: unknown): asserts value is CompactValidatedDiagnosticRunInput;
136
169
  export declare function assertValidatedDiagnosticRunInput(value: unknown): asserts value is ValidatedDiagnosticRunInput;
137
170
  export declare function runValidatedMetricDiagnostics(input: ValidatedDiagnosticRunInput): ValidatedMetricDiagnosticsOutcome;
@@ -1 +1 @@
1
- {"version":3,"file":"diagnosticInput.d.ts","sourceRoot":"","sources":["../src/diagnosticInput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnosticInput.d.ts","sourceRoot":"","sources":["../src/diagnosticInput.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DiagnosticValidationError, compileDiagnosticDefinition, prepareDiagnosticData, prepareDiagnosticDataCompact, runMetricDiagnostics, runMetricDiagnosticsCompact, validateDiagnosticGroupingConfiguration, validateCompactDiagnosticGroupingConfiguration, diagnosticRecord, isDiagnosticToken, isWellFormedDiagnosticString, } from "@actuarial-ts/core";
1
+ import { DiagnosticValidationError, compileDiagnosticDefinition, prepareDiagnosticData, prepareDiagnosticDataCompact, reselectCompactDiagnosticMetrics, selectCompactDiagnosticSourceGroups, selectCompactDiagnosticOrigins, selectCompactDiagnosticCoordinates, runMetricDiagnostics, runMetricDiagnosticsCompact, validateDiagnosticGroupingConfiguration, validateCompactDiagnosticGroupingConfiguration, diagnosticRecord, isDiagnosticToken, isWellFormedDiagnosticString, } from "@actuarial-ts/core";
2
2
  import { z } from "zod";
3
3
  import { reviewPreparedDiagnosticData, reviewPreparedDiagnosticDataCompact, validateDiagnosticReviewEvidence, } from "./diagnosticPreparedReview.js";
4
4
  // Zod 3 validates but drops the literal __proto__ key while assembling records.
@@ -117,6 +117,16 @@ const authentic = new WeakSet();
117
117
  // completed analysis after its caller releases it, and JSON cannot restore it.
118
118
  const preparedByInput = new WeakMap();
119
119
  const compactPreparedByInput = new WeakMap();
120
+ const querySchema = z.object({
121
+ runPresetId: tokenSchema.nullable().optional(),
122
+ datasetArtifactId: tokenSchema.nullable().optional(),
123
+ filter: filterSchema.nullable().optional(),
124
+ completePeriodCutoffs: z.array(cutoffSchema).optional(),
125
+ expectedCells: z.array(expectedSchema).nullable().optional(),
126
+ groupMap: recordSchema(tokenSchema).optional(),
127
+ groupDimensions: recordSchema(jsonSchema).optional(),
128
+ }).strict();
129
+ const queryContexts = new WeakMap();
120
130
  const compactCompleted = new WeakSet();
121
131
  // Retain the exact immutable validated input only while its completed run lives.
122
132
  // Reconstructing from the audit would lose the original optional/raw-value form.
@@ -307,6 +317,66 @@ export function validateDiagnosticRunInputCompact(value) {
307
317
  compactPreparedByInput.set(result, prepared);
308
318
  return result;
309
319
  }
320
+ /**
321
+ * Own and validate source rows and compile the definition once. Queries keep the
322
+ * definition, execution policy, source order and review evidence fixed.
323
+ * Metric selections and eligible clean aggregate source/origin/date/age queries
324
+ * share prepared cells; ineligible inputs still perform full core preparation.
325
+ * Source/origin queries reuse invariant owned review evidence. Date/age queries
326
+ * reuse cell-local checks but recompute monotonic comparisons and controls. Every
327
+ * query enforces review and metric gates, including unchanged evidence validation.
328
+ */
329
+ export function createDiagnosticQueryContext(value) {
330
+ const validated = validateDiagnosticRunInputCompact(value);
331
+ const handle = Object.freeze({});
332
+ queryContexts.set(handle, validated);
333
+ return handle;
334
+ }
335
+ /** Create an authentic per-query input without cloning/reparsing owned source rows. */
336
+ export function validateDiagnosticQueryCompact(context, query = {}) {
337
+ const base = queryContexts.get(context);
338
+ if (!base)
339
+ throw new DiagnosticValidationError([{
340
+ domain: "input",
341
+ code: "invalid-input-relationship",
342
+ path: "$",
343
+ message: "Value is not an authentic diagnostic query context",
344
+ }]);
345
+ const undefinedIssues = explicitUndefinedIssues(query);
346
+ if (undefinedIssues.length)
347
+ throw new DiagnosticValidationError(undefinedIssues);
348
+ const parsed = querySchema.safeParse(query);
349
+ if (!parsed.success)
350
+ throw issues(parsed.error);
351
+ if (Object.keys(parsed.data).length === 0)
352
+ return base;
353
+ const ownedQuery = freeze({
354
+ ...parsed.data,
355
+ ...(parsed.data.groupMap === undefined ? {} : { groupMap: sortedRecord(parsed.data.groupMap) }),
356
+ ...(parsed.data.groupDimensions === undefined ? {} : { groupDimensions: sortedRecord(parsed.data.groupDimensions) }),
357
+ });
358
+ // Only the new query fields require freezing. Every inherited graph belongs
359
+ // to the authentic validated base; never trust caller Object.freeze markers.
360
+ const result = Object.freeze({ ...base, ...ownedQuery });
361
+ const projected = Object.keys(ownedQuery).every((key) => ["filter", "groupMap", "groupDimensions", "runPresetId", "datasetArtifactId"].includes(key))
362
+ ? reselectCompactDiagnosticMetrics(compactPreparedByInput.get(base), result.filter ?? undefined) ??
363
+ selectCompactDiagnosticSourceGroups(compactPreparedByInput.get(base), result.filter ?? undefined) ??
364
+ selectCompactDiagnosticOrigins(compactPreparedByInput.get(base), result.filter ?? undefined) ??
365
+ selectCompactDiagnosticCoordinates(compactPreparedByInput.get(base), result.filter ?? undefined)
366
+ : undefined;
367
+ const prepared = projected ?? prepareDiagnosticDataCompact(preparationInput(result));
368
+ validateCompactDiagnosticGroupingConfiguration({
369
+ prepared,
370
+ groupMap: result.groupMap,
371
+ groupDimensions: result.groupDimensions,
372
+ });
373
+ compactPreparedByInput.set(result, prepared);
374
+ return result;
375
+ }
376
+ /** Execute all review and metric gates for this scope, even if another scope passed. */
377
+ export function runDiagnosticQueryCompact(context, query = {}) {
378
+ return runValidatedMetricDiagnosticsCompact(validateDiagnosticQueryCompact(context, query));
379
+ }
310
380
  export function assertCompactValidatedDiagnosticRunInput(value) {
311
381
  if (value === null ||
312
382
  typeof value !== "object" ||