@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.
- package/README.md +20 -4
- package/dist/customizationContracts.d.ts +2473 -0
- package/dist/customizationContracts.d.ts.map +1 -0
- package/dist/customizationContracts.js +845 -0
- package/dist/customizationContracts.js.map +1 -0
- package/dist/customizationExternalState.d.ts +42 -0
- package/dist/customizationExternalState.d.ts.map +1 -0
- package/dist/customizationExternalState.js +121 -0
- package/dist/customizationExternalState.js.map +1 -0
- package/dist/customizationHistoryStream.d.ts +26 -0
- package/dist/customizationHistoryStream.d.ts.map +1 -0
- package/dist/customizationHistoryStream.js +66 -0
- package/dist/customizationHistoryStream.js.map +1 -0
- package/dist/diagnosticInput.d.ts +33 -0
- package/dist/diagnosticInput.d.ts.map +1 -1
- package/dist/diagnosticInput.js +71 -1
- package/dist/diagnosticInput.js.map +1 -1
- package/dist/diagnosticPreparedReview.d.ts.map +1 -1
- package/dist/diagnosticPreparedReview.js +38 -0
- package/dist/diagnosticPreparedReview.js.map +1 -1
- package/dist/historyMapping.d.ts +898 -0
- package/dist/historyMapping.d.ts.map +1 -0
- package/dist/historyMapping.js +395 -0
- package/dist/historyMapping.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- package/src/customizationContracts.ts +963 -0
- package/src/customizationExternalState.ts +208 -0
- package/src/customizationHistoryStream.ts +90 -0
- package/src/diagnosticInput.ts +101 -0
- package/src/diagnosticPreparedReview.ts +48 -0
- package/src/historyMapping.ts +514 -0
- package/src/index.ts +4 -0
- 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":"AAAA,OAAO,EACL,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,GAGvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAS/E,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,CAAkC;IAE/C,YAAY,IAAqC,EAAE,OAAe;QAChE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;CACF;AAmCD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;AAElC,SAAS,SAAS,CAAC,MAA+B;IAChD,IAAI,MAAM,EAAE,OAAO;QACjB,MAAM,IAAI,2BAA2B,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,cAAc,CACrB,KAAqC,EACrC,kBAA0B;IAE1B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,2BAA2B,CAAC,wBAAwB,EAAE,+BAA+B,CAAC,CAAC;IACnG,IACE,CAAC,4BAA4B,CAAC,KAAK,CAAC,YAAY,CAAC;QACjD,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC;QAE7C,MAAM,IAAI,2BAA2B,CACnC,wBAAwB,EACxB,gEAAgE,CACjE,CAAC;IACJ,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/D,IAAI,KAAK,GAAG,kBAAkB;QAC5B,MAAM,IAAI,2BAA2B,CACnC,gBAAgB,EAChB,mBAAmB,KAAK,CAAC,EAAE,aAAa,KAAK,gDAAgD,kBAAkB,EAAE,CAClH,CAAC;IACJ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CACrB,IAAiC,EACjC,KAAkC;IAElC,KAAK,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,CAAU,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAI,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;IAClC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,gCAAgC,CACrD,KAA+C;IAE/C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,MAAmC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,gCAAgC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,2BAA2B,CACnC,gBAAgB,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uCAAuC,CACjF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;QAC3B,MAAM,IAAI,2BAA2B,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAAC;IACtF,SAAS,CAAC,MAAM,CAAC,CAAC;IAElB,IAAI,OAAyD,CAAC;IAC9D,IAAI,OAAO,GAAyC,QAAQ,CAAC;IAC7D,IAAI,OAAgB,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAI;YAC9B,KAAK;YACL,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;SAC5C,CAAC,CAAC;QACH,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAChC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClB,OAAO,IAAI,CAAC,CAAC;YACb,IAAI,OAAO,GAAG,MAAM,CAAC,mBAAmB;gBACtC,MAAM,IAAI,2BAA2B,CACnC,gBAAgB,EAChB,qCAAqC,MAAM,CAAC,mBAAmB,EAAE,CAClE,CAAC;YACJ,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,SAAS,CAAC,MAAM,CAAC,CAAC;QAClB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAErB,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,KAAiD,CAAC;QACtD,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC9D,IAAI,KAAK,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;gBAC1D,MAAM,IAAI,2BAA2B,CACnC,sBAAsB,EACtB,0EAA0E,CAC3E,CAAC;YACJ,gBAAgB,GAAG,KAAK,EAAE,YAAY,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1F,IAAI,gBAAgB,GAAG,MAAM,CAAC,uBAAuB;gBACnD,MAAM,IAAI,2BAA2B,CACnC,gBAAgB,EAChB,aAAa,MAAM,CAAC,YAAY,oCAAoC,MAAM,CAAC,uBAAuB,EAAE,CACrG,CAAC;YACJ,IAAI,IAAI,CAAC,CAAC;YACV,IAAI,IAAI,GAAG,OAAO;gBAChB,MAAM,IAAI,2BAA2B,CACnC,wBAAwB,EACxB,wDAAwD,CACzD,CAAC;YACJ,KAAK,GAAG,MAAM,CAAC;YACf,MAAM,MAAM,CAAC;QACf,CAAC;QACD,IAAI,IAAI,KAAK,OAAO;YAClB,MAAM,IAAI,2BAA2B,CACnC,0BAA0B,EAC1B,2BAA2B,IAAI,OAAO,OAAO,UAAU,CACxD,CAAC;QACJ,OAAO,GAAG,WAAW,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,GAAG,KAAK,CAAC;QAChB,OAAO;YACL,KAAK,YAAY,2BAA2B,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW;gBACxE,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,QAAQ,CAAC;QACf,MAAM,KAAK,CAAC;IACd,CAAC;YAAS,CAAC;QACT,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,QAAQ,GACZ,OAAO,KAAK,WAAW;oBACrB,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,OAAO,KAAK,SAAS;wBACrB,CAAC,CAAC,WAAW;wBACb,CAAC,CAAC,OAAO,CAAC;gBAChB,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,OAAO,KAAK,SAAS;oBACvB,MAAM,IAAI,2BAA2B,CACnC,wBAAwB,EACxB,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC3F,CAAC;YACN,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -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":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"diagnosticInput.d.ts","sourceRoot":"","sources":["../src/diagnosticInput.ts"],"names":[],"mappings":"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"}
|
package/dist/diagnosticInput.js
CHANGED
|
@@ -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" ||
|