@actuarial-ts/interchange 0.5.0 → 0.6.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 +36 -70
- package/dist/convert/diagnosticDefinition.d.ts +15 -0
- package/dist/convert/diagnosticDefinition.d.ts.map +1 -0
- package/dist/convert/diagnosticDefinition.js +47 -0
- package/dist/convert/diagnosticDefinition.js.map +1 -0
- package/dist/convert/result.d.ts.map +1 -1
- package/dist/convert/result.js +2 -2
- package/dist/convert/result.js.map +1 -1
- package/dist/envelope.d.ts +3 -3
- package/dist/envelope.d.ts.map +1 -1
- package/dist/envelope.js +4 -2
- package/dist/envelope.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/parse.d.ts +2 -1
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +1 -0
- package/dist/parse.js.map +1 -1
- package/dist/schemas/bundle.d.ts +2 -0
- package/dist/schemas/bundle.d.ts.map +1 -1
- package/dist/schemas/bundle.js +2 -0
- package/dist/schemas/bundle.js.map +1 -1
- package/dist/schemas/diagnosticDefinition.d.ts +11500 -0
- package/dist/schemas/diagnosticDefinition.d.ts.map +1 -0
- package/dist/schemas/diagnosticDefinition.js +132 -0
- package/dist/schemas/diagnosticDefinition.js.map +1 -0
- package/dist/schemas/manifest.d.ts.map +1 -1
- package/dist/schemas/manifest.js +7 -1
- package/dist/schemas/manifest.js.map +1 -1
- package/package.json +3 -3
- package/src/convert/diagnosticDefinition.ts +75 -0
- package/src/convert/result.ts +2 -1
- package/src/envelope.ts +4 -2
- package/src/index.ts +2 -0
- package/src/parse.ts +4 -1
- package/src/schemas/bundle.ts +3 -0
- package/src/schemas/diagnosticDefinition.ts +171 -0
- package/src/schemas/manifest.ts +7 -1
package/README.md
CHANGED
|
@@ -1,79 +1,45 @@
|
|
|
1
1
|
# @actuarial-ts/interchange
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
language-neutral, versioned documents that carry **data, intent, results,
|
|
5
|
-
and governance** between actuarial-ts, chainladder-python, and R
|
|
6
|
-
ChainLadder — plus the deterministic cross-implementation referee.
|
|
3
|
+
Typed TypeScript implementation of actuarial-interchange: portable, integrity-stamped documents shared by actuarial-ts, chainladder-python, and R ChainLadder.
|
|
7
4
|
|
|
8
|
-
|
|
5
|
+
```bash
|
|
6
|
+
npm install @actuarial-ts/interchange@0.6.0 @actuarial-ts/core@0.6.0
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Node 20+, ESM. Version 0.6 writes wire `1.1.0` and reads compatible major-version-1 documents.
|
|
10
|
+
|
|
11
|
+
## Document kinds
|
|
9
12
|
|
|
10
|
-
|
|
11
|
-
|
|
13
|
+
`triangle`, `selection`, `method-result`, `stochastic-result`, `study`, `bundle`, `crosscheck-report`, and `diagnostic-definition` share an envelope with writer version, generator, caller-supplied timestamp, semantic-body FNV-1a/JCS integrity tag, and optional governance/extensions.
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import {
|
|
17
|
+
diagnosticDefinitionToDoc,
|
|
18
|
+
docToDiagnosticDefinition,
|
|
19
|
+
parseDocument,
|
|
20
|
+
} from "@actuarial-ts/interchange";
|
|
21
|
+
|
|
22
|
+
const document = diagnosticDefinitionToDoc(compiledDefinition, {
|
|
23
|
+
createdAt: "2026-09-03T00:00:00Z",
|
|
24
|
+
});
|
|
25
|
+
const generic = parseDocument(document);
|
|
26
|
+
const executable = docToDiagnosticDefinition(document);
|
|
12
27
|
```
|
|
13
28
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
`
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
-
|
|
27
|
-
`fnv1a64(canonicalJson(<kind-named object>))` — never the envelope, so
|
|
28
|
-
a re-export by another adapter changes the envelope, not the tag. Tags
|
|
29
|
-
detect ACCIDENTAL divergence; they are not a security control.
|
|
30
|
-
- **Selections travel as intent + values** with a normative coherence
|
|
31
|
-
rule: computable intents must recompute to the stated value within
|
|
32
|
-
1e-9 relative, verified on import (warn or refuse via a strictness
|
|
33
|
-
flag; refusal is `INCOHERENT_SELECTION`). Values are authoritative only
|
|
34
|
-
for `judgmental`/`external` intents, whose rationale is required.
|
|
35
|
-
- **Converters**: `triangleToDoc`/`docToTriangle`,
|
|
36
|
-
`selectionsToDoc`/`docToSelections` (intent ↔ the standard averages
|
|
37
|
-
menu), `resultToDoc` (chainLadder, mack, bornhuetterFerguson,
|
|
38
|
-
benktander; Cape Cod, Clark, Munich and the stochastic layer are not yet
|
|
39
|
-
converted and `resultToDoc` throws for them), and
|
|
40
|
-
`parseDocument` (version-checked, integrity-verified,
|
|
41
|
-
warning-channeled).
|
|
42
|
-
- **The referee**: `crosscheck({ a, b, tolerance?, selection?, createdAt })`
|
|
43
|
-
compares two `method-result` documents by appliesTo tags and convention
|
|
44
|
-
profile, computes per-origin and total relative deviations, applies
|
|
45
|
-
requested-vs-effective downgrades, and returns a `crosscheck-report`
|
|
46
|
-
with verdict `agree | disagree | not-comparable | verified-by-value`.
|
|
47
|
-
Convention profiles (`deterministic-cl`, `mack1993-vw`) are shipped as
|
|
48
|
-
data, including each engine's pinned alignment parameters.
|
|
49
|
-
|
|
50
|
-
Version handling (spec 3.5): wrong-major documents throw
|
|
51
|
-
`ReservingError("UNSUPPORTED_VERSION")`; same-major unknown minor fields
|
|
52
|
-
are accepted and preserved (schemas are passthrough), and
|
|
53
|
-
`governance`/`extensions` round-trip opaquely.
|
|
54
|
-
|
|
55
|
-
Everything is pure and browser-safe: no clock reads (`createdAt` is
|
|
56
|
-
caller-supplied), no randomness, no node builtins. Depends on
|
|
57
|
-
`@actuarial-ts/core` and `zod` only; `zod-to-json-schema` is a build-time
|
|
58
|
-
devDependency used by `npm run emit-schema` (which builds first, then
|
|
59
|
-
regenerates the committed JSON Schemas).
|
|
60
|
-
|
|
61
|
-
This package is designed to support the actuary's compliance with the
|
|
62
|
-
ASOPs; cross-implementation agreement supports, but does not by itself
|
|
63
|
-
constitute, the model validation contemplated by ASOP No. 56.
|
|
64
|
-
|
|
65
|
-
## Two referees
|
|
66
|
-
|
|
67
|
-
`crosscheck` compares DERIVATIONS: two deterministic `method-result` documents,
|
|
68
|
-
where any deviation beyond float noise is a real disagreement.
|
|
69
|
-
|
|
70
|
-
`crosscheckStochastic` compares DRAWS: two `stochastic-result` documents, where
|
|
71
|
-
the expected disagreement is nonzero and set by sampling theory. Its tolerance
|
|
72
|
-
is derived from the simulation count and the observed coefficient of variation
|
|
73
|
-
rather than declared, so it tightens as n grows, and it withholds that
|
|
74
|
-
allowance from two results that both claim `seeded-reproducible` at one seed.
|
|
75
|
-
See `docs/interop/reproducibility.md`.
|
|
29
|
+
Generic parsing validates known fields, preserves same-major unknown envelope and nested fields, verifies integrity, and recursively verifies documents embedded in studies/bundles. Executable diagnostic conversion is intentionally stricter: it requires the current normalized vocabulary, recompiles the complete definition, and verifies formula, calculation, and definition identities. A future field can therefore survive a storage hop without being silently executed.
|
|
30
|
+
|
|
31
|
+
Bundles may carry typed diagnostic definition documents under `interchange.diagnosticDefinitions`; each nested document has its own tag and is also covered by the outer `{ bundle, interchange }` tag. JSON Schemas live in `schema/interchange/1.1`; the frozen `1.0` directory remains unchanged.
|
|
32
|
+
|
|
33
|
+
## Interoperability
|
|
34
|
+
|
|
35
|
+
The three shores share RFC 8785 vectors, frozen reserving fixtures, and the generalized casualty definition with six formulas and 22 bound instances. Python and R independently recompute definition identities and replay every formula over the same aggregate cell.
|
|
36
|
+
|
|
37
|
+
`crosscheck` compares two method-result documents under explicit convention profiles. Outcomes are `agree`, `disagree`, `not-comparable`, or `verified-by-value`; the referee never hides convention differences or treats mutual agreement as proof of correctness.
|
|
38
|
+
|
|
39
|
+
Integrity tags detect accidental drift and support deterministic linking. FNV-1a is unkeyed and is not tamper resistance, authentication, or a security boundary.
|
|
40
|
+
|
|
41
|
+
The normative format is [actuarial-interchange rev 2.4](https://github.com/yerromnitsuj/actng/blob/v0.6.0/docs/spec/actuarial-interchange.md). See the generated [diagnostic formula catalog](https://github.com/yerromnitsuj/actng/blob/v0.6.0/docs/reference/diagnostic-formulas.md) and [0.6 migration guide](https://github.com/yerromnitsuj/actng/blob/v0.6.0/docs/migrations/0.6-generalized-diagnostics.md).
|
|
76
42
|
|
|
77
43
|
## License
|
|
78
44
|
|
|
79
|
-
Apache-2.0. See
|
|
45
|
+
Apache-2.0. See LICENSE and NOTICE.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type CompiledDiagnosticDefinition } from "@actuarial-ts/core";
|
|
2
|
+
import { type GeneratorStamp } from "../envelope.js";
|
|
3
|
+
import { type ParseDocumentOptions } from "../parse.js";
|
|
4
|
+
import type { DiagnosticDefinitionDoc } from "../schemas/diagnosticDefinition.js";
|
|
5
|
+
export interface DiagnosticDefinitionToDocOptions {
|
|
6
|
+
createdAt: string;
|
|
7
|
+
generator?: GeneratorStamp;
|
|
8
|
+
extensions?: Record<string, unknown>;
|
|
9
|
+
}
|
|
10
|
+
export declare function diagnosticDefinitionToDoc(compiled: CompiledDiagnosticDefinition, options: DiagnosticDefinitionToDocOptions): DiagnosticDefinitionDoc;
|
|
11
|
+
export declare function docToDiagnosticDefinition(value: unknown, options?: ParseDocumentOptions): {
|
|
12
|
+
definition: CompiledDiagnosticDefinition;
|
|
13
|
+
warnings: readonly string[];
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=diagnosticDefinition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnosticDefinition.d.ts","sourceRoot":"","sources":["../../src/convert/diagnosticDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,4BAA4B,EAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA+D,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAClH,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAElF,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,4BAA4B,EACtC,OAAO,EAAE,gCAAgC,GACxC,uBAAuB,CAkBzB;AAUD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,oBAAoB,GAC7B;IAAE,UAAU,EAAE,4BAA4B,CAAC;IAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAuB3E"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ReservingError, assertCompiledDiagnosticDefinition, canonicalJson, compileDiagnosticDefinition, } from "@actuarial-ts/core";
|
|
2
|
+
import { DEFAULT_GENERATOR, INTERCHANGE_SPEC_VERSION, stampIntegrity } from "../envelope.js";
|
|
3
|
+
import { parseDocument } from "../parse.js";
|
|
4
|
+
export function diagnosticDefinitionToDoc(compiled, options) {
|
|
5
|
+
assertCompiledDiagnosticDefinition(compiled);
|
|
6
|
+
return stampIntegrity({
|
|
7
|
+
interchangeVersion: INTERCHANGE_SPEC_VERSION,
|
|
8
|
+
kind: "diagnostic-definition",
|
|
9
|
+
generator: options.generator ?? DEFAULT_GENERATOR,
|
|
10
|
+
createdAt: options.createdAt,
|
|
11
|
+
...(options.extensions === undefined ? {} : { extensions: options.extensions }),
|
|
12
|
+
diagnosticDefinition: {
|
|
13
|
+
definition: compiled.definition,
|
|
14
|
+
identities: {
|
|
15
|
+
algorithm: "fnv1a64-jcs-v1",
|
|
16
|
+
formulaById: { ...compiled.formulaFingerprints },
|
|
17
|
+
calculationByInstanceId: { ...compiled.calculationFingerprints },
|
|
18
|
+
definition: compiled.definitionIntegrity,
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function sameRecord(left, right) {
|
|
24
|
+
const leftKeys = Object.keys(left).sort();
|
|
25
|
+
const rightKeys = Object.keys(right).sort();
|
|
26
|
+
return leftKeys.length === rightKeys.length && leftKeys.every((key, index) => key === rightKeys[index] && left[key] === right[key]);
|
|
27
|
+
}
|
|
28
|
+
export function docToDiagnosticDefinition(value, options) {
|
|
29
|
+
const parsed = parseDocument(value, options);
|
|
30
|
+
if (parsed.doc.kind !== "diagnostic-definition") {
|
|
31
|
+
throw new ReservingError("BAD_INTERCHANGE", `Expected kind "diagnostic-definition"; got kind "${parsed.doc.kind}"`);
|
|
32
|
+
}
|
|
33
|
+
const body = parsed.doc.diagnosticDefinition;
|
|
34
|
+
const compiled = compileDiagnosticDefinition(body.definition);
|
|
35
|
+
if (canonicalJson(body.definition) !== canonicalJson(compiled.definition)) {
|
|
36
|
+
throw new ReservingError("BAD_INTERCHANGE", "Diagnostic definition contains unsupported executable vocabulary or is not in normalized form");
|
|
37
|
+
}
|
|
38
|
+
const identities = body.identities;
|
|
39
|
+
if (identities.algorithm !== "fnv1a64-jcs-v1" ||
|
|
40
|
+
identities.definition !== compiled.definitionIntegrity ||
|
|
41
|
+
!sameRecord(identities.formulaById, compiled.formulaFingerprints) ||
|
|
42
|
+
!sameRecord(identities.calculationByInstanceId, compiled.calculationFingerprints)) {
|
|
43
|
+
throw new ReservingError("BAD_INTERCHANGE", "Diagnostic definition identities do not match the compiled semantic definition");
|
|
44
|
+
}
|
|
45
|
+
return { definition: compiled, warnings: parsed.warnings };
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=diagnosticDefinition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnosticDefinition.js","sourceRoot":"","sources":["../../src/convert/diagnosticDefinition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/convert/result.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/convert/result.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAGhB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,eAAe,EAGrB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,UAAU,GACV,yBAAyB,GACzB,gBAAgB,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,WAAqE,CAAC;AAEhG,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,WAAW,EAAE,WAAW,CAAC;IACzB;yDACqD;IACrD,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,qEAAqE;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,oEAAoE;IACpE,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AA6ED,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,kBAAkB,GAC1B,eAAe,CAgEjB"}
|
package/dist/convert/result.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ReservingError, } from "@actuarial-ts/core";
|
|
1
|
+
import { CORE_PACKAGE_VERSION, ReservingError, } from "@actuarial-ts/core";
|
|
2
2
|
import { DEFAULT_GENERATOR, INTERCHANGE_SPEC_VERSION, stampIntegrity, } from "../envelope.js";
|
|
3
3
|
import { methodResultDocSchema, } from "../schemas/result.js";
|
|
4
4
|
/**
|
|
5
5
|
* The engine stamp for results computed by @actuarial-ts/core. A sync test
|
|
6
6
|
* pins the version to the installed core package so it cannot drift.
|
|
7
7
|
*/
|
|
8
|
-
export const CORE_ENGINE = { name: "actuarial-ts", version:
|
|
8
|
+
export const CORE_ENGINE = { name: "actuarial-ts", version: CORE_PACKAGE_VERSION };
|
|
9
9
|
function mapResult(result) {
|
|
10
10
|
switch (result.method) {
|
|
11
11
|
case "chainLadder":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/convert/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EAExB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAKL,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAuB9B;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAgB,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/convert/result.ts"],"names":[],"mappings":"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"}
|
package/dist/envelope.d.ts
CHANGED
|
@@ -25,21 +25,21 @@ import { z } from "zod";
|
|
|
25
25
|
* a clock.
|
|
26
26
|
*/
|
|
27
27
|
/** The interchange spec version this package writes. */
|
|
28
|
-
export declare const INTERCHANGE_SPEC_VERSION = "1.
|
|
28
|
+
export declare const INTERCHANGE_SPEC_VERSION = "1.1.0";
|
|
29
29
|
/** The spec major this package accepts (spec 3.5: readers accept same-major). */
|
|
30
30
|
export declare const INTERCHANGE_SPEC_MAJOR = 1;
|
|
31
31
|
/**
|
|
32
32
|
* This package's version, stamped into `generator` by default. A sync test
|
|
33
33
|
* asserts it matches package.json so it cannot silently drift.
|
|
34
34
|
*/
|
|
35
|
-
export declare const INTERCHANGE_PACKAGE_VERSION = "0.
|
|
35
|
+
export declare const INTERCHANGE_PACKAGE_VERSION = "0.6.0";
|
|
36
36
|
export interface GeneratorStamp {
|
|
37
37
|
name: string;
|
|
38
38
|
version: string;
|
|
39
39
|
}
|
|
40
40
|
/** Default `generator` stamp for documents authored by this package. */
|
|
41
41
|
export declare const DEFAULT_GENERATOR: GeneratorStamp;
|
|
42
|
-
export declare const DOCUMENT_KINDS: readonly ["triangle", "selection", "method-result", "stochastic-result", "study", "bundle", "crosscheck-report"];
|
|
42
|
+
export declare const DOCUMENT_KINDS: readonly ["triangle", "selection", "method-result", "stochastic-result", "study", "bundle", "crosscheck-report", "diagnostic-definition"];
|
|
43
43
|
export type DocumentKind = (typeof DOCUMENT_KINDS)[number];
|
|
44
44
|
/** A 16-hex-char fnv1a64 tag. */
|
|
45
45
|
export declare const integritySchema: z.ZodString;
|
package/dist/envelope.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../src/envelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wDAAwD;AACxD,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAEhD,iFAAiF;AACjF,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,2BAA2B,UAAU,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wEAAwE;AACxE,eAAO,MAAM,iBAAiB,EAAE,cAG/B,CAAC;AAEF,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../src/envelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wDAAwD;AACxD,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAEhD,iFAAiF;AACjF,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,2BAA2B,UAAU,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wEAAwE;AACxE,eAAO,MAAM,iBAAiB,EAAE,cAG/B,CAAC;AAEF,eAAO,MAAM,cAAc,2IASjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAkB3D,iCAAiC;AACjC,eAAO,MAAM,eAAe,aAAqC,CAAC;AAElE,eAAO,MAAM,eAAe;;;;;;;;;gCAEZ,CAAC;AAEjB;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC;;;;;;;;;;;;;;;;EAS5D;AAED,2EAA2E;AAC3E,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAMD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAoBzD;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAE1D;AAED,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,CAAC,SAAS,YAAY,EACnD,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,GACvC,CAAC,CAEH;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,OAAO,CAAC;IACZ,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,cAAc,CAIjE;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAe7D"}
|
package/dist/envelope.js
CHANGED
|
@@ -26,14 +26,14 @@ import { z } from "zod";
|
|
|
26
26
|
* a clock.
|
|
27
27
|
*/
|
|
28
28
|
/** The interchange spec version this package writes. */
|
|
29
|
-
export const INTERCHANGE_SPEC_VERSION = "1.
|
|
29
|
+
export const INTERCHANGE_SPEC_VERSION = "1.1.0";
|
|
30
30
|
/** The spec major this package accepts (spec 3.5: readers accept same-major). */
|
|
31
31
|
export const INTERCHANGE_SPEC_MAJOR = 1;
|
|
32
32
|
/**
|
|
33
33
|
* This package's version, stamped into `generator` by default. A sync test
|
|
34
34
|
* asserts it matches package.json so it cannot silently drift.
|
|
35
35
|
*/
|
|
36
|
-
export const INTERCHANGE_PACKAGE_VERSION = "0.
|
|
36
|
+
export const INTERCHANGE_PACKAGE_VERSION = "0.6.0";
|
|
37
37
|
/** Default `generator` stamp for documents authored by this package. */
|
|
38
38
|
export const DEFAULT_GENERATOR = {
|
|
39
39
|
name: "@actuarial-ts/interchange",
|
|
@@ -47,6 +47,7 @@ export const DOCUMENT_KINDS = [
|
|
|
47
47
|
"study",
|
|
48
48
|
"bundle",
|
|
49
49
|
"crosscheck-report",
|
|
50
|
+
"diagnostic-definition",
|
|
50
51
|
];
|
|
51
52
|
/**
|
|
52
53
|
* kind → the top-level key(s) holding the semantic body. Single-key kinds
|
|
@@ -61,6 +62,7 @@ const SEMANTIC_BODY_KEYS = {
|
|
|
61
62
|
study: ["study"],
|
|
62
63
|
bundle: ["bundle", "interchange"],
|
|
63
64
|
"crosscheck-report": ["report"],
|
|
65
|
+
"diagnostic-definition": ["diagnosticDefinition"],
|
|
64
66
|
};
|
|
65
67
|
/** A 16-hex-char fnv1a64 tag. */
|
|
66
68
|
export const integritySchema = z.string().regex(/^[0-9a-f]{16}$/);
|
package/dist/envelope.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../src/envelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wDAAwD;AACxD,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAEhD,iFAAiF;AACjF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAExC;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,OAAO,CAAC;AAOnD,wEAAwE;AACxE,MAAM,CAAC,MAAM,iBAAiB,GAAmB;IAC/C,IAAI,EAAE,2BAA2B;IACjC,OAAO,EAAE,2BAA2B;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,WAAW;IACX,eAAe;IACf,mBAAmB;IACnB,OAAO;IACP,QAAQ;IACR,mBAAmB;
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../src/envelope.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,10 +6,12 @@ export * from "./schemas/result.js";
|
|
|
6
6
|
export * from "./schemas/study.js";
|
|
7
7
|
export * from "./schemas/bundle.js";
|
|
8
8
|
export * from "./schemas/crosscheck.js";
|
|
9
|
+
export * from "./schemas/diagnosticDefinition.js";
|
|
9
10
|
export * from "./schemas/manifest.js";
|
|
10
11
|
export * from "./convert/triangle.js";
|
|
11
12
|
export * from "./convert/selection.js";
|
|
12
13
|
export * from "./convert/result.js";
|
|
14
|
+
export * from "./convert/diagnosticDefinition.js";
|
|
13
15
|
export * from "./referee/profiles.js";
|
|
14
16
|
export * from "./referee/crosscheck.js";
|
|
15
17
|
export * from "./referee/crosscheckStochastic.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -6,10 +6,12 @@ export * from "./schemas/result.js";
|
|
|
6
6
|
export * from "./schemas/study.js";
|
|
7
7
|
export * from "./schemas/bundle.js";
|
|
8
8
|
export * from "./schemas/crosscheck.js";
|
|
9
|
+
export * from "./schemas/diagnosticDefinition.js";
|
|
9
10
|
export * from "./schemas/manifest.js";
|
|
10
11
|
export * from "./convert/triangle.js";
|
|
11
12
|
export * from "./convert/selection.js";
|
|
12
13
|
export * from "./convert/result.js";
|
|
14
|
+
export * from "./convert/diagnosticDefinition.js";
|
|
13
15
|
export * from "./referee/profiles.js";
|
|
14
16
|
export * from "./referee/crosscheck.js";
|
|
15
17
|
export * from "./referee/crosscheckStochastic.js";
|
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,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC"}
|
package/dist/parse.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type { MethodResultDoc, StochasticResultDoc } from "./schemas/result.js";
|
|
|
4
4
|
import type { StudyDoc } from "./schemas/study.js";
|
|
5
5
|
import type { BundleDoc } from "./schemas/bundle.js";
|
|
6
6
|
import type { CrosscheckReportDoc } from "./schemas/crosscheck.js";
|
|
7
|
+
import type { DiagnosticDefinitionDoc } from "./schemas/diagnosticDefinition.js";
|
|
7
8
|
/**
|
|
8
9
|
* `parseDocument` (spec 4.1): version-checked, schema-validated,
|
|
9
10
|
* integrity-verified, warning-channeled entry point for any interchange
|
|
@@ -30,7 +31,7 @@ import type { CrosscheckReportDoc } from "./schemas/crosscheck.js";
|
|
|
30
31
|
* that computation support is limited — a reader capability note, not a
|
|
31
32
|
* format error.
|
|
32
33
|
*/
|
|
33
|
-
export type InterchangeDocument = TriangleDoc | SelectionDoc | MethodResultDoc | StochasticResultDoc | StudyDoc | BundleDoc | CrosscheckReportDoc;
|
|
34
|
+
export type InterchangeDocument = TriangleDoc | SelectionDoc | MethodResultDoc | StochasticResultDoc | StudyDoc | BundleDoc | CrosscheckReportDoc | DiagnosticDefinitionDoc;
|
|
34
35
|
export interface ParseDocumentOptions {
|
|
35
36
|
/** How to treat a failed integrity check. Default "refuse". */
|
|
36
37
|
strictness?: "warn" | "refuse";
|
package/dist/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAEjF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,MAAM,mBAAmB,GAC3B,WAAW,GACX,YAAY,GACZ,eAAe,GACf,mBAAmB,GACnB,QAAQ,GACR,SAAS,GACT,mBAAmB,GACnB,uBAAuB,CAAC;AAE5B,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,mBAAmB,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAyCD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,oBAAyB,GACjC,cAAc,CA2FhB"}
|
package/dist/parse.js
CHANGED
|
@@ -32,6 +32,7 @@ function embeddedDocuments(doc) {
|
|
|
32
32
|
collect("$.interchange.triangles", mirror["triangles"]);
|
|
33
33
|
collect("$.interchange.selections", mirror["selections"]);
|
|
34
34
|
collect("$.interchange.results", mirror["results"]);
|
|
35
|
+
collect("$.interchange.diagnosticDefinitions", mirror["diagnosticDefinitions"]);
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
return found;
|
package/dist/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAEL,cAAc,EACd,aAAa,EACb,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas/bundle.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { type GeneratorStamp } from "../envelope.js";
|
|
|
3
3
|
import { type TriangleDoc } from "./triangle.js";
|
|
4
4
|
import { type SelectionDoc } from "./selection.js";
|
|
5
5
|
import { type MethodResultDoc, type StochasticResultDoc } from "./result.js";
|
|
6
|
+
import { type DiagnosticDefinitionDoc } from "./diagnosticDefinition.js";
|
|
6
7
|
/**
|
|
7
8
|
* BundleDoc (spec 3.2) — the wrapped reproducibility bundle.
|
|
8
9
|
*
|
|
@@ -24,6 +25,7 @@ export interface BundleInterchange {
|
|
|
24
25
|
triangles: TriangleDoc[];
|
|
25
26
|
selections: SelectionDoc[];
|
|
26
27
|
results: (MethodResultDoc | StochasticResultDoc)[];
|
|
28
|
+
diagnosticDefinitions?: DiagnosticDefinitionDoc[];
|
|
27
29
|
[key: string]: unknown;
|
|
28
30
|
}
|
|
29
31
|
export interface BundleDoc {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/schemas/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAGzB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/schemas/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAGzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,uBAAuB,EAAiC,MAAM,2BAA2B,CAAC;AAExG;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,OAAO,EAAE,CAAC,eAAe,GAAG,mBAAmB,CAAC,EAAE,CAAC;IACnD,qBAAqB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAClD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,cAAc,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAOjD,CAAC;AAEjB,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAMjC,CAAC"}
|
package/dist/schemas/bundle.js
CHANGED
|
@@ -3,11 +3,13 @@ import { envelopeShape } from "../envelope.js";
|
|
|
3
3
|
import { triangleDocSchema } from "./triangle.js";
|
|
4
4
|
import { selectionDocSchema } from "./selection.js";
|
|
5
5
|
import { methodResultDocSchema, stochasticResultDocSchema, } from "./result.js";
|
|
6
|
+
import { diagnosticDefinitionDocSchema } from "./diagnosticDefinition.js";
|
|
6
7
|
export const bundleInterchangeSchema = z
|
|
7
8
|
.object({
|
|
8
9
|
triangles: z.array(triangleDocSchema),
|
|
9
10
|
selections: z.array(selectionDocSchema),
|
|
10
11
|
results: z.array(z.union([methodResultDocSchema, stochasticResultDocSchema])),
|
|
12
|
+
diagnosticDefinitions: z.array(diagnosticDefinitionDocSchema).optional(),
|
|
11
13
|
})
|
|
12
14
|
.passthrough();
|
|
13
15
|
export const bundleDocSchema = z
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/schemas/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAuB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAoB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAqB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAGL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/schemas/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAuB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAoB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAqB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAGL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAgC,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAyCxG,MAAM,CAAC,MAAM,uBAAuB,GAAiC,CAAC;KACnE,MAAM,CAAC;IACN,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,qBAAqB,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAC7E,qBAAqB,EAAE,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,QAAQ,EAAE;CACzE,CAAC;KACD,WAAW,EAAE,CAAC;AAEjB,MAAM,CAAC,MAAM,eAAe,GAAyB,CAAC;KACnD,MAAM,CAAC;IACN,GAAG,aAAa,CAAC,QAAQ,CAAC;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7B,WAAW,EAAE,uBAAuB;CACrC,CAAC;KACD,WAAW,EAAE,CAAC"}
|