@actuarial-ts/compliance 0.7.0 → 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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationBoundedReplay.js","sourceRoot":"","sources":["../src/customizationBoundedReplay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { type AnalysisStatisticDefinition, type CustomizationResourceLimits, type HistoricalDatasetInput } from "@actuarial-ts/core";
2
+ import { type CustomizationExternalStateAdapter } from "@actuarial-ts/data";
3
+ import { type ComputedDiagnosticArtifactDigest } from "./diagnosticArtifactStream.js";
4
+ import { type BoundedReplayMeasure } from "./customizationBoundedReplay.js";
5
+ type MergeableHistoryStatistic = Extract<AnalysisStatisticDefinition, {
6
+ readonly kind: "sum" | "ratio" | "weighted-mean" | "minimum" | "maximum";
7
+ }>;
8
+ /** Statistics that can be calculated directly while normalized history is streamed. */
9
+ export interface BoundedHistoryReplayMeasure extends Omit<BoundedReplayMeasure, "statistic" | "orderedPopulationSize"> {
10
+ readonly statistic: MergeableHistoryStatistic;
11
+ }
12
+ /**
13
+ * Connects raw versioned history to independently verifiable bounded replay.
14
+ *
15
+ * The function performs two host-owned external stages. The first resolves raw
16
+ * revisions one claim at a time. The second retains normalized selected
17
+ * records until preparation has completed without findings. No replay header
18
+ * is emitted before that review gate passes, so failed or cancelled work cannot
19
+ * be mistaken for a completed artifact.
20
+ *
21
+ * This path intentionally supports mergeable statistics only. Exact distinct
22
+ * counts and quantiles require their documented external ordering, while
23
+ * exposure joins and shared financial terms use their capability-specific
24
+ * execution paths.
25
+ */
26
+ export declare function writeBoundedHistoryAnalysisReplay(input: {
27
+ readonly runId: string;
28
+ readonly sourceArtifact: ComputedDiagnosticArtifactDigest;
29
+ readonly header: Omit<HistoricalDatasetInput, "records">;
30
+ readonly records: AsyncIterable<unknown> | Iterable<unknown>;
31
+ readonly evaluationDate: string;
32
+ readonly observationSelection: "exact" | "latest-on-or-before";
33
+ readonly measures: readonly BoundedHistoryReplayMeasure[];
34
+ readonly adapter: CustomizationExternalStateAdapter;
35
+ readonly limits: CustomizationResourceLimits;
36
+ readonly signal?: AbortSignal;
37
+ }): AsyncGenerator<Uint8Array>;
38
+ export {};
39
+ //# sourceMappingURL=customizationHistoryReplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationHistoryReplay.d.ts","sourceRoot":"","sources":["../src/customizationHistoryReplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAML,KAAK,iCAAiC,EACvC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,iCAAiC,CAAC;AAEzC,KAAK,yBAAyB,GAAG,OAAO,CACtC,2BAA2B,EAC3B;IACE,QAAQ,CAAC,IAAI,EACT,KAAK,GACL,OAAO,GACP,eAAe,GACf,SAAS,GACT,SAAS,CAAC;CACf,CACF,CAAC;AAEF,uFAAuF;AACvF,MAAM,WAAW,2BACf,SAAQ,IAAI,CAAC,oBAAoB,EAAE,WAAW,GAAG,uBAAuB,CAAC;IACzE,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;CAC/C;AAkCD;;;;;;;;;;;;;GAaG;AACH,wBAAuB,iCAAiC,CAAC,KAAK,EAAE;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,gCAAgC,CAAC;IAC1D,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,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,GAAG,qBAAqB,CAAC;IAC/D,QAAQ,CAAC,QAAQ,EAAE,SAAS,2BAA2B,EAAE,CAAC;IAC1D,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,UAAU,CAAC,CAmH7B"}
@@ -0,0 +1,147 @@
1
+ import { canonicalJson, fnv1a64, isDiagnosticToken, isRealIsoDate, } from "@actuarial-ts/core";
2
+ import { externalSortCustomizationRecords, parseCustomizationResourceLimits, parseHistoricalDatasetInput, streamPreparedHistoricalDataset, } from "@actuarial-ts/data";
3
+ import { ComplianceError } from "./errors.js";
4
+ import { assertComputedDiagnosticArtifactDigest, } from "./diagnosticArtifactStream.js";
5
+ import { writeBoundedAnalysisReplay, parseBoundedReplayMeasures, } from "./customizationBoundedReplay.js";
6
+ function selectedRecord(observation) {
7
+ const claimKey = canonicalJson([
8
+ observation.sourceNamespace,
9
+ observation.claimId,
10
+ ]);
11
+ const identity = canonicalJson([
12
+ observation.sourceNamespace,
13
+ observation.claimId,
14
+ observation.evaluationDate,
15
+ ]);
16
+ return {
17
+ id: `selected-${fnv1a64(identity)}`,
18
+ partitionKey: claimKey,
19
+ orderKey: observation.evaluationDate,
20
+ value: { measures: observation.measures },
21
+ };
22
+ }
23
+ function reviewFailure(code, message) {
24
+ throw new ComplianceError("BAD_DIAGNOSTIC_RUN", `Historical preparation review failed (${code}): ${message}`, "$.boundedHistoryReplay");
25
+ }
26
+ /**
27
+ * Connects raw versioned history to independently verifiable bounded replay.
28
+ *
29
+ * The function performs two host-owned external stages. The first resolves raw
30
+ * revisions one claim at a time. The second retains normalized selected
31
+ * records until preparation has completed without findings. No replay header
32
+ * is emitted before that review gate passes, so failed or cancelled work cannot
33
+ * be mistaken for a completed artifact.
34
+ *
35
+ * This path intentionally supports mergeable statistics only. Exact distinct
36
+ * counts and quantiles require their documented external ordering, while
37
+ * exposure joins and shared financial terms use their capability-specific
38
+ * execution paths.
39
+ */
40
+ export async function* writeBoundedHistoryAnalysisReplay(input) {
41
+ const runId = input.runId;
42
+ const sourceArtifact = input.sourceArtifact;
43
+ const records = input.records;
44
+ const adapter = input.adapter;
45
+ const signal = input.signal;
46
+ const evaluationDate = input.evaluationDate;
47
+ const observationSelection = input.observationSelection;
48
+ const limits = parseCustomizationResourceLimits(input.limits);
49
+ const parsedHeader = parseHistoricalDatasetInput({ ...input.header, records: [] });
50
+ const { records: _emptyRecords, ...header } = parsedHeader;
51
+ const parsedMeasures = parseBoundedReplayMeasures(input.measures, limits);
52
+ if (parsedMeasures.some((measure) => !["sum", "ratio", "weighted-mean", "minimum", "maximum"].includes(measure.statistic.kind)))
53
+ reviewFailure("unsupported-statistic", "Raw-history replay supports mergeable statistics only");
54
+ const measures = parsedMeasures;
55
+ const historyContext = JSON.parse(canonicalJson(header));
56
+ if (!isDiagnosticToken(runId))
57
+ reviewFailure("invalid-run", "runId must be a valid token");
58
+ assertComputedDiagnosticArtifactDigest(sourceArtifact);
59
+ if (!isRealIsoDate(evaluationDate))
60
+ reviewFailure("invalid-period", "evaluationDate must be a real Gregorian date");
61
+ if (observationSelection !== "exact" && observationSelection !== "latest-on-or-before")
62
+ reviewFailure("invalid-selection", "observationSelection is invalid");
63
+ async function* normalized() {
64
+ let claimKey;
65
+ let claim = [];
66
+ const selected = function* () {
67
+ const candidates = claim.filter((observation) => observationSelection === "exact"
68
+ ? observation.evaluationDate === evaluationDate
69
+ : observation.evaluationDate <= evaluationDate);
70
+ const observation = candidates.reduce((latest, candidate) => latest === undefined || candidate.evaluationDate > latest.evaluationDate
71
+ ? candidate
72
+ : latest, undefined);
73
+ if (observation !== undefined)
74
+ yield selectedRecord(observation);
75
+ claim = [];
76
+ };
77
+ for await (const event of streamPreparedHistoricalDataset({
78
+ runId: `${runId}-raw`,
79
+ header,
80
+ records,
81
+ adapter,
82
+ limits,
83
+ ...(signal === undefined ? {} : { signal }),
84
+ })) {
85
+ if (event.kind === "finding")
86
+ reviewFailure(event.finding.code, event.finding.message);
87
+ if (event.kind === "observation") {
88
+ const nextClaimKey = canonicalJson([
89
+ event.observation.sourceNamespace,
90
+ event.observation.claimId,
91
+ ]);
92
+ if (claimKey !== undefined && nextClaimKey !== claimKey)
93
+ yield* selected();
94
+ claimKey = nextClaimKey;
95
+ claim.push(event.observation);
96
+ }
97
+ }
98
+ yield* selected();
99
+ }
100
+ const staged = externalSortCustomizationRecords({
101
+ runId: `${runId}-selected`,
102
+ records: normalized(),
103
+ adapter,
104
+ limits,
105
+ ...(signal === undefined ? {} : { signal }),
106
+ });
107
+ const iterator = staged[Symbol.asyncIterator]();
108
+ // Pulling the first record completes both preparation and the review gate.
109
+ // It retains at most one selected record in SDK memory.
110
+ const first = await iterator.next();
111
+ async function* reviewedRecords() {
112
+ try {
113
+ if (!first.done)
114
+ yield first.value;
115
+ if (!first.done) {
116
+ for (;;) {
117
+ const next = await iterator.next();
118
+ if (next.done)
119
+ break;
120
+ yield next.value;
121
+ }
122
+ }
123
+ }
124
+ finally {
125
+ await iterator.return?.(undefined);
126
+ }
127
+ }
128
+ try {
129
+ yield* writeBoundedAnalysisReplay({
130
+ runId,
131
+ sourceArtifact,
132
+ measures,
133
+ calculationContext: {
134
+ history: historyContext,
135
+ evaluationDate,
136
+ observationSelection,
137
+ },
138
+ records: reviewedRecords(),
139
+ limits,
140
+ ...(signal === undefined ? {} : { signal }),
141
+ });
142
+ }
143
+ finally {
144
+ await iterator.return?.(undefined);
145
+ }
146
+ }
147
+ //# sourceMappingURL=customizationHistoryReplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationHistoryReplay.js","sourceRoot":"","sources":["../src/customizationHistoryReplay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { type AnalysisDefinition, type AnalysisRecipe, type AnalysisResult, type CustomizationExposureObservation, type ExposureAllocationTarget, type ExposureRevisionSelection, type HistoricalDatasetInput } from "@actuarial-ts/core";
2
+ import { type ComputedDiagnosticArtifactDigest } from "./diagnosticArtifactStream.js";
3
+ import type { DiagnosticArtifactDigest } from "./diagnosticRun.js";
4
+ declare const verifiedCustomizationRunBrand: unique symbol;
5
+ export interface VerifiedCustomizationAnalysisRun {
6
+ readonly [verifiedCustomizationRunBrand]: true;
7
+ readonly assurance: "sdk-rerun-verified";
8
+ readonly runIdentity: string;
9
+ readonly result: AnalysisResult;
10
+ readonly inputArtifacts: readonly DiagnosticArtifactDigest[];
11
+ }
12
+ /**
13
+ * Revalidates and reruns a complete supported customization recipe, then issues
14
+ * an authentic receipt binding the exact output to the supplied source digests.
15
+ */
16
+ export declare function verifyCustomizationAnalysisRun(input: {
17
+ readonly history: HistoricalDatasetInput;
18
+ readonly definition: AnalysisDefinition;
19
+ readonly recipe: AnalysisRecipe;
20
+ readonly expectedResult: AnalysisResult;
21
+ readonly inputArtifacts: readonly ComputedDiagnosticArtifactDigest[];
22
+ readonly exposureObservations?: readonly CustomizationExposureObservation[];
23
+ readonly exposureTargets?: readonly ExposureAllocationTarget[];
24
+ readonly exposureRevisionSelection?: ExposureRevisionSelection;
25
+ readonly evaluationDate?: string;
26
+ }): VerifiedCustomizationAnalysisRun;
27
+ export declare function assertVerifiedCustomizationAnalysisRun(value: unknown): asserts value is VerifiedCustomizationAnalysisRun;
28
+ export {};
29
+ //# sourceMappingURL=customizationRun.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationRun.d.ts","sourceRoot":"","sources":["../src/customizationRun.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAW5B,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,CAAC,MAAM,6BAA6B,EAAE,OAAO,MAAM,CAAC;AAC3D,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,CAAC,6BAA6B,CAAC,EAAE,IAAI,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,SAAS,wBAAwB,EAAE,CAAC;CAC9D;AAQD;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,cAAc,EAAE,SAAS,gCAAgC,EAAE,CAAC;IACrE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,gCAAgC,EAAE,CAAC;IAC5E,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC/D,QAAQ,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IAC/D,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC,GAAG,gCAAgC,CA+CnC;AAED,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,IAAI,gCAAgC,CAGnD"}
@@ -0,0 +1,60 @@
1
+ import { canonicalJson, fnv1a64, isRealIsoDate, runAnalysisRecipe, } from "@actuarial-ts/core";
2
+ import { parseAnalysisDefinition, parseAnalysisRecipe, parseAnalysisResult, parseCustomizationExposureObservations, parseExposureAllocationTargets, parseExposureRevisionSelection, parseHistoricalDatasetInput, } from "@actuarial-ts/data";
3
+ import { ComplianceError } from "./errors.js";
4
+ import { assertComputedDiagnosticArtifactDigest, } from "./diagnosticArtifactStream.js";
5
+ const verifiedRuns = new WeakSet();
6
+ function invalid(message, path = "$.customizationRun") {
7
+ throw new ComplianceError("BAD_DIAGNOSTIC_RUN", message, path);
8
+ }
9
+ /**
10
+ * Revalidates and reruns a complete supported customization recipe, then issues
11
+ * an authentic receipt binding the exact output to the supplied source digests.
12
+ */
13
+ export function verifyCustomizationAnalysisRun(input) {
14
+ if (!Array.isArray(input.inputArtifacts) || input.inputArtifacts.length === 0)
15
+ invalid("Customization verification requires at least one authentic input artifact", "$.inputArtifacts");
16
+ const artifacts = [...input.inputArtifacts];
17
+ artifacts.forEach(assertComputedDiagnosticArtifactDigest);
18
+ if (new Set(artifacts.map((artifact) => artifact.id)).size !== artifacts.length)
19
+ invalid("Customization input artifact IDs must be unique", "$.inputArtifacts");
20
+ if (input.evaluationDate !== undefined && !isRealIsoDate(input.evaluationDate))
21
+ invalid("Customization evaluationDate must be a real Gregorian date", "$.evaluationDate");
22
+ const history = parseHistoricalDatasetInput(input.history);
23
+ const definition = parseAnalysisDefinition(input.definition);
24
+ const recipe = parseAnalysisRecipe(input.recipe);
25
+ const expected = parseAnalysisResult(input.expectedResult);
26
+ const exposureObservations = parseCustomizationExposureObservations(input.exposureObservations ?? []);
27
+ const exposureTargets = parseExposureAllocationTargets(input.exposureTargets ?? []);
28
+ const exposureRevisionSelection = input.exposureRevisionSelection === undefined
29
+ ? undefined
30
+ : parseExposureRevisionSelection(input.exposureRevisionSelection);
31
+ const result = runAnalysisRecipe({
32
+ history,
33
+ definition,
34
+ recipe,
35
+ exposureObservations,
36
+ exposureTargets,
37
+ ...(exposureRevisionSelection === undefined ? {} : { exposureRevisionSelection }),
38
+ ...(input.evaluationDate === undefined ? {} : { evaluationDate: input.evaluationDate }),
39
+ });
40
+ if (canonicalJson(result) !== canonicalJson(expected))
41
+ throw new ComplianceError("DIAGNOSTIC_MISMATCH", "Customization result does not match an exact fresh SDK rerun", "$.expectedResult");
42
+ const inputArtifacts = Object.freeze(artifacts);
43
+ const runIdentity = `fnv1a64-jcs-v1:${fnv1a64(canonicalJson({
44
+ result,
45
+ inputArtifacts,
46
+ }))}`;
47
+ const receipt = Object.freeze({
48
+ assurance: "sdk-rerun-verified",
49
+ runIdentity,
50
+ result,
51
+ inputArtifacts,
52
+ });
53
+ verifiedRuns.add(receipt);
54
+ return receipt;
55
+ }
56
+ export function assertVerifiedCustomizationAnalysisRun(value) {
57
+ if (value === null || typeof value !== "object" || !verifiedRuns.has(value))
58
+ invalid("Value is not an authentic SDK-rerun-verified customization run");
59
+ }
60
+ //# sourceMappingURL=customizationRun.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customizationRun.js","sourceRoot":"","sources":["../src/customizationRun.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,6 +9,9 @@ export * from "./diagnosticArtifactStream.js";
9
9
  export { createCompactDiagnosticRunIdentity, assertVerifiedCompactDiagnosticRunProvenance, type CompactDiagnosticArtifactEvidence, type CreateCompactDiagnosticRunIdentityInput, type VerifiedCompactDiagnosticRunProvenance, } from "./diagnosticCompactRun.js";
10
10
  export * from "./diagnosticReplayWriter.js";
11
11
  export * from "./diagnosticReplayReader.js";
12
+ export * from "./customizationBoundedReplay.js";
13
+ export * from "./customizationHistoryReplay.js";
14
+ export * from "./customizationRun.js";
12
15
  export * from "./bundle.js";
13
16
  export * from "./ave.js";
14
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,OAAO,EACL,kCAAkC,EAClC,4CAA4C,EAC5C,KAAK,iCAAiC,EACtC,KAAK,uCAAuC,EAC5C,KAAK,sCAAsC,GAC5C,MAAM,2BAA2B,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,OAAO,EACL,kCAAkC,EAClC,4CAA4C,EAC5C,KAAK,iCAAiC,EACtC,KAAK,uCAAuC,EAC5C,KAAK,sCAAsC,GAC5C,MAAM,2BAA2B,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -9,6 +9,9 @@ export * from "./diagnosticArtifactStream.js";
9
9
  export { createCompactDiagnosticRunIdentity, assertVerifiedCompactDiagnosticRunProvenance, } from "./diagnosticCompactRun.js";
10
10
  export * from "./diagnosticReplayWriter.js";
11
11
  export * from "./diagnosticReplayReader.js";
12
+ export * from "./customizationBoundedReplay.js";
13
+ export * from "./customizationHistoryReplay.js";
14
+ export * from "./customizationRun.js";
12
15
  export * from "./bundle.js";
13
16
  export * from "./ave.js";
14
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,OAAO,EACL,kCAAkC,EAClC,4CAA4C,GAI7C,MAAM,2BAA2B,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,OAAO,EACL,kCAAkC,EAClC,4CAA4C,GAI7C,MAAM,2BAA2B,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const COMPLIANCE_PACKAGE_VERSION = "0.7.0";
1
+ export declare const COMPLIANCE_PACKAGE_VERSION = "0.8.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const COMPLIANCE_PACKAGE_VERSION = "0.7.0";
1
+ export const COMPLIANCE_PACKAGE_VERSION = "0.8.0";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actuarial-ts/compliance",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "ASOP-compliance-support layer for the actuarial-ts SDK: estimate metadata, assumption ledger, disclosures, model cards, diagnostics provenance, reproducibility bundles, and actual-vs-expected roll-forward. Responsibility for compliance remains with the credentialed actuary.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -47,14 +47,15 @@
47
47
  "prepublishOnly": "node ../../tools/release/verify-release-attestation.mjs @actuarial-ts/compliance"
48
48
  },
49
49
  "dependencies": {
50
- "@actuarial-ts/core": "^0.7.0",
51
- "@actuarial-ts/data": "^0.7.0",
52
- "@actuarial-ts/interchange": "^0.7.0"
50
+ "@actuarial-ts/core": "^0.8.0",
51
+ "@actuarial-ts/data": "^0.8.0",
52
+ "@actuarial-ts/interchange": "^0.8.0",
53
+ "zod": "^3.25.76"
53
54
  },
54
55
  "devDependencies": {
55
56
  "@types/node": "^22.10.5",
56
57
  "typescript": "^5.7.3",
57
- "vitest": "^3.0.5"
58
+ "vitest": "^5.0.1"
58
59
  },
59
60
  "publishConfig": {
60
61
  "access": "public"