@hyperscale0/udl 2.6.1 → 3.0.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/CHANGELOG.md +2 -330
- package/LICENSING.md +1 -2
- package/README.md +3 -114
- package/TRADEMARKS.md +2 -2
- package/dist/diagnostics.d.ts +21 -201
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/diagnostics.js +29 -193
- package/dist/diagnostics.js.map +1 -1
- package/dist/evolution.d.ts +3 -132
- package/dist/evolution.d.ts.map +1 -1
- package/dist/evolution.js +29 -633
- package/dist/evolution.js.map +1 -1
- package/dist/finance.d.ts +5 -72
- package/dist/finance.d.ts.map +1 -1
- package/dist/finance.js +233 -737
- package/dist/finance.js.map +1 -1
- package/dist/index.d.ts +7 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -12
- package/dist/index.js.map +1 -1
- package/dist/instrument-references.d.ts.map +1 -1
- package/dist/instrument-references.js +3 -2
- package/dist/instrument-references.js.map +1 -1
- package/dist/schema.d.ts +2079 -4564
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +270 -1609
- package/dist/schema.js.map +1 -1
- package/dist/validation.d.ts +8 -104
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +653 -3271
- package/dist/validation.js.map +1 -1
- package/docs/README.md +147 -14
- package/package.json +7 -11
- package/spec/README.md +151 -164
- package/spec/darb.udl.json +249 -0
- package/spec/udl.schema.json +4104 -3202
- package/src/diagnostics.ts +51 -246
- package/src/evolution.ts +39 -1045
- package/src/finance.ts +287 -1127
- package/src/index.ts +18 -142
- package/src/instrument-references.ts +3 -2
- package/src/schema.ts +285 -1843
- package/src/validation.ts +870 -5611
- package/conformance/README.md +0 -82
- package/conformance/evolution/action-contract.expected.json +0 -10
- package/conformance/evolution/action-contract.live.udl +0 -44
- package/conformance/evolution/action-contract.next.udl +0 -45
- package/conformance/evolution/product-identity.expected.json +0 -10
- package/conformance/evolution/product-identity.live.udl +0 -55
- package/conformance/evolution/product-identity.next.udl +0 -55
- package/conformance/evolution/version-required.expected.json +0 -10
- package/conformance/evolution/version-required.live.udl +0 -55
- package/conformance/evolution/version-required.next.udl +0 -58
- package/conformance/invalid/action-without-transition.expected.json +0 -10
- package/conformance/invalid/action-without-transition.udl +0 -60
- package/conformance/invalid/agent-description-too-long.expected.json +0 -10
- package/conformance/invalid/agent-description-too-long.udl +0 -57
- package/conformance/invalid/blank-title.expected.json +0 -10
- package/conformance/invalid/blank-title.udl +0 -54
- package/conformance/invalid/call-binds-results.expected.json +0 -10
- package/conformance/invalid/call-binds-results.udl +0 -314
- package/conformance/invalid/call-unknown-action.expected.json +0 -10
- package/conformance/invalid/call-unknown-action.udl +0 -314
- package/conformance/invalid/composition-dial-duplicate-key.expected.json +0 -10
- package/conformance/invalid/composition-dial-duplicate-key.udl +0 -73
- package/conformance/invalid/depth-budget.expected.json +0 -10
- package/conformance/invalid/depth-budget.udl +0 -49
- package/conformance/invalid/duplicate-subject.expected.json +0 -10
- package/conformance/invalid/duplicate-subject.udl +0 -230
- package/conformance/invalid/forged-effects.expected.json +0 -10
- package/conformance/invalid/forged-effects.udl +0 -76
- package/conformance/invalid/format-version.expected.json +0 -10
- package/conformance/invalid/format-version.udl +0 -54
- package/conformance/invalid/instrument-id-not-snake-case.expected.json +0 -10
- package/conformance/invalid/instrument-id-not-snake-case.udl +0 -54
- package/conformance/invalid/invalid-aggregate-gate-shape.expected.json +0 -10
- package/conformance/invalid/invalid-aggregate-gate-shape.udl +0 -1819
- package/conformance/invalid/invalid-check-duration.expected.json +0 -10
- package/conformance/invalid/invalid-check-duration.udl +0 -219
- package/conformance/invalid/invalid-dial-anchor.expected.json +0 -10
- package/conformance/invalid/invalid-dial-anchor.udl +0 -219
- package/conformance/invalid/invalid-exception-parent-ref.expected.json +0 -10
- package/conformance/invalid/invalid-exception-parent-ref.udl +0 -2487
- package/conformance/invalid/invalid-exposure-shape.expected.json +0 -10
- package/conformance/invalid/invalid-exposure-shape.udl +0 -1819
- package/conformance/invalid/invalid-journeys.expected.json +0 -10
- package/conformance/invalid/invalid-journeys.udl +0 -77
- package/conformance/invalid/invalid-remainder.expected.json +0 -10
- package/conformance/invalid/invalid-remainder.udl +0 -220
- package/conformance/invalid/invalid-schema-keyword.expected.json +0 -10
- package/conformance/invalid/invalid-schema-keyword.udl +0 -220
- package/conformance/invalid/invalid-utf8.expected.json +0 -10
- package/conformance/invalid/invalid-utf8.udl +0 -1
- package/conformance/invalid/leaf-effect-mismatch.expected.json +0 -10
- package/conformance/invalid/leaf-effect-mismatch.udl +0 -314
- package/conformance/invalid/malformed-json.expected.json +0 -10
- package/conformance/invalid/malformed-json.udl +0 -1
- package/conformance/invalid/missing-create-action.expected.json +0 -10
- package/conformance/invalid/missing-create-action.udl +0 -48
- package/conformance/invalid/missing-exception-amount-field.expected.json +0 -10
- package/conformance/invalid/missing-exception-amount-field.udl +0 -2487
- package/conformance/invalid/missing-exception-contract.expected.json +0 -14
- package/conformance/invalid/missing-exception-contract.udl +0 -2523
- package/conformance/invalid/missing-exception-reason-field.expected.json +0 -10
- package/conformance/invalid/missing-exception-reason-field.udl +0 -2487
- package/conformance/invalid/not-an-object.expected.json +0 -10
- package/conformance/invalid/not-an-object.udl +0 -1
- package/conformance/invalid/payout-reconcile-not-a-bank-debit.expected.json +0 -10
- package/conformance/invalid/payout-reconcile-not-a-bank-debit.udl +0 -259
- package/conformance/invalid/piece-plan-without-partition.expected.json +0 -10
- package/conformance/invalid/piece-plan-without-partition.udl +0 -305
- package/conformance/invalid/private-action-independent-approval.expected.json +0 -10
- package/conformance/invalid/private-action-independent-approval.udl +0 -314
- package/conformance/invalid/quote-freeze-set-incomplete.expected.json +0 -10
- package/conformance/invalid/quote-freeze-set-incomplete.udl +0 -261
- package/conformance/invalid/quote-named-reference-gate.expected.json +0 -10
- package/conformance/invalid/quote-named-reference-gate.udl +0 -50
- package/conformance/invalid/reconcile-named-reference-gate.expected.json +0 -10
- package/conformance/invalid/reconcile-named-reference-gate.udl +0 -50
- package/conformance/invalid/unfund-order-not-reversed.expected.json +0 -10
- package/conformance/invalid/unfund-order-not-reversed.udl +0 -314
- package/conformance/invalid/unknown-key.expected.json +0 -10
- package/conformance/invalid/unknown-key.udl +0 -55
- package/conformance/invalid/unknown-reference-gate-field.expected.json +0 -10
- package/conformance/invalid/unknown-reference-gate-field.udl +0 -1819
- package/conformance/invalid/unknown-required-field.expected.json +0 -10
- package/conformance/invalid/unknown-required-field.udl +0 -220
- package/conformance/invalid/unreachable-state.expected.json +0 -10
- package/conformance/invalid/unreachable-state.udl +0 -55
- package/conformance/invalid/wrong-exception-amount-field.expected.json +0 -10
- package/conformance/invalid/wrong-exception-amount-field.udl +0 -2487
- package/conformance/invalid/wrong-exception-reason-field.expected.json +0 -10
- package/conformance/invalid/wrong-exception-reason-field.udl +0 -2487
- package/conformance/valid/agent-description.expected.json +0 -6
- package/conformance/valid/agent-description.udl +0 -66
- package/conformance/valid/attested.expected.json +0 -6
- package/conformance/valid/attested.udl +0 -251
- package/conformance/valid/cards.expected.json +0 -6
- package/conformance/valid/cards.udl +0 -1579
- package/conformance/valid/commerce-escrow.expected.json +0 -6
- package/conformance/valid/commerce-escrow.udl +0 -1512
- package/conformance/valid/compiled-crowdfunding.expected.json +0 -6
- package/conformance/valid/compiled-crowdfunding.udl +0 -1843
- package/conformance/valid/compiled-watch-club.expected.json +0 -6
- package/conformance/valid/compiled-watch-club.udl +0 -2486
- package/conformance/valid/complete-contract.expected.json +0 -6
- package/conformance/valid/complete-contract.udl +0 -218
- package/conformance/valid/effect-signatures.expected.json +0 -6
- package/conformance/valid/effect-signatures.udl +0 -75
- package/conformance/valid/hand-edited.expected.json +0 -6
- package/conformance/valid/hand-edited.udl +0 -1
- package/conformance/valid/insured-car-marketplace.expected.json +0 -6
- package/conformance/valid/insured-car-marketplace.udl +0 -1050
- package/conformance/valid/insured-travel.expected.json +0 -6
- package/conformance/valid/insured-travel.udl +0 -3469
- package/conformance/valid/minimal.expected.json +0 -6
- package/conformance/valid/minimal.udl +0 -62
- package/conformance/valid/piece-plan-calls.expected.json +0 -6
- package/conformance/valid/piece-plan-calls.udl +0 -314
- package/conformance/valid/protection.expected.json +0 -6
- package/conformance/valid/protection.udl +0 -1551
- package/conformance/valid/string-escaping.expected.json +0 -6
- package/conformance/valid/string-escaping.udl +0 -54
- package/conformance/valid/vocabulary.expected.json +0 -6
- package/conformance/valid/vocabulary.udl +0 -2012
- package/dist/allocation.d.ts +0 -60
- package/dist/allocation.d.ts.map +0 -1
- package/dist/allocation.js +0 -177
- package/dist/allocation.js.map +0 -1
- package/dist/check-profiles.d.ts +0 -57
- package/dist/check-profiles.d.ts.map +0 -1
- package/dist/check-profiles.js +0 -62
- package/dist/check-profiles.js.map +0 -1
- package/dist/distribution.d.ts +0 -15
- package/dist/distribution.d.ts.map +0 -1
- package/dist/distribution.js +0 -49
- package/dist/distribution.js.map +0 -1
- package/dist/effects.d.ts +0 -58
- package/dist/effects.d.ts.map +0 -1
- package/dist/effects.js +0 -1126
- package/dist/effects.js.map +0 -1
- package/dist/reference.d.ts +0 -3
- package/dist/reference.d.ts.map +0 -1
- package/dist/reference.js +0 -28
- package/dist/reference.js.map +0 -1
- package/dist/vocabulary.d.ts +0 -23
- package/dist/vocabulary.d.ts.map +0 -1
- package/dist/vocabulary.js +0 -1052
- package/dist/vocabulary.js.map +0 -1
- package/docs/funding-custody.md +0 -165
- package/docs/guide/01-a-document.md +0 -37
- package/docs/guide/02-money-steps.md +0 -23
- package/docs/guide/03-laws.md +0 -18
- package/docs/guide/04-fees-and-remainder.md +0 -36
- package/docs/guide/05-checks-updates-dials.md +0 -7
- package/docs/guide/06-effects.md +0 -11
- package/docs/guide/07-evolution.md +0 -11
- package/docs/guide/08-implementing.md +0 -13
- package/docs/guide/09-schedules-and-allocation.md +0 -132
- package/docs/llms-full.txt +0 -2008
- package/docs/llms.txt +0 -14
- package/docs/piece-plans.md +0 -148
- package/docs/reference/canonical.md +0 -16
- package/docs/reference/clauses.md +0 -1585
- package/docs/reference/cli.md +0 -24
- package/docs/reference/diagnostics.md +0 -38
- package/skills/udl/SKILL.md +0 -28
- package/src/allocation.ts +0 -259
- package/src/check-profiles.ts +0 -80
- package/src/distribution.ts +0 -61
- package/src/effects.ts +0 -1920
- package/src/reference.ts +0 -31
- package/src/vocabulary.ts +0 -1635
package/dist/evolution.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evolution.js","sourceRoot":"","sources":["../src/evolution.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evolution.js","sourceRoot":"","sources":["../src/evolution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAiB,MAAM,kBAAkB,CAAC;AAExD,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACzE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QACpC,OAAO,CACL,GAAG;YACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;iBAClB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAChD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;iBAChE,IAAI,CAAC,GAAG,CAAC;YACZ,GAAG,CACJ,CAAC;IACJ,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC;AAC9C,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,yBAAyB,CACvC,IAAiB,EACjB,IAAiB;IAEjB,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAC/C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;QAClE,MAAM,CAAC,GAAG,EAAE,6CAA6C,CAAC,CAAC;IAC7D,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QACtD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9C,MAAM,CAAC,aAAa,IAAI,EAAE,EAAE,yCAAyC,CAAC,CAAC;IAC3E,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC;YACpD,MAAM,CACJ,iBAAiB,UAAU,CAAC,EAAE,EAAE,EAChC,4EAA4E,CAC7E,CAAC;IACN,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;QAC/D,MAAM,CAAC,IAAI,CACT,KAAK,CACH,SAAS,EACT,WAAW,EACX,2CAA2C,CAC5C,CACF,CAAC;IACJ,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/finance.d.ts
CHANGED
|
@@ -1,75 +1,8 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { UdlIssueCode } from "./diagnostics.js";
|
|
1
|
+
import type { UdlDocument, UdlInstrument } from "./schema.js";
|
|
3
2
|
export interface FinanceIssue {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
readonly path: readonly PropertyKey[];
|
|
3
|
+
path: string;
|
|
4
|
+
message: string;
|
|
7
5
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
interface FinancialStep {
|
|
12
|
-
readonly operation: string;
|
|
13
|
-
readonly bind: Readonly<Record<string, UdlBinding>>;
|
|
14
|
-
readonly capture?: Readonly<Record<string, string>> | undefined;
|
|
15
|
-
}
|
|
16
|
-
interface FinancialMove extends FinancialStep {
|
|
17
|
-
readonly key: string;
|
|
18
|
-
}
|
|
19
|
-
export interface FinancialPartition {
|
|
20
|
-
readonly totalField: string;
|
|
21
|
-
readonly pieceFields: readonly string[];
|
|
22
|
-
}
|
|
23
|
-
export interface FinancialContribution {
|
|
24
|
-
readonly field: string;
|
|
25
|
-
readonly amountKey: string;
|
|
26
|
-
readonly accountKey: string;
|
|
27
|
-
readonly totalField: string;
|
|
28
|
-
}
|
|
29
|
-
export interface FinancialContributionStage {
|
|
30
|
-
readonly stage: "fund" | "refund";
|
|
31
|
-
readonly accountPath: string;
|
|
32
|
-
}
|
|
33
|
-
export interface FinancialInstrument {
|
|
34
|
-
readonly lifecycle: {
|
|
35
|
-
readonly initial: string;
|
|
36
|
-
readonly states: readonly string[];
|
|
37
|
-
readonly transitions: Readonly<Record<string, {
|
|
38
|
-
readonly from: readonly string[];
|
|
39
|
-
readonly to: string;
|
|
40
|
-
}>>;
|
|
41
|
-
};
|
|
42
|
-
readonly parties?: {
|
|
43
|
-
readonly beneficiary?: string | undefined;
|
|
44
|
-
readonly payer?: string | undefined;
|
|
45
|
-
readonly subjectHolder?: string | undefined;
|
|
46
|
-
} | undefined;
|
|
47
|
-
readonly partitions?: readonly FinancialPartition[] | undefined;
|
|
48
|
-
readonly contributions?: FinancialContribution | undefined;
|
|
49
|
-
readonly actions: Readonly<Record<string, {
|
|
50
|
-
readonly commit?: string | undefined;
|
|
51
|
-
readonly moves?: readonly FinancialMove[];
|
|
52
|
-
readonly quote?: {
|
|
53
|
-
readonly baseField: string;
|
|
54
|
-
readonly chargeRef: string;
|
|
55
|
-
readonly chargeRetainedBy?: "payer" | "beneficiary" | "subjectHolder" | undefined;
|
|
56
|
-
readonly charges: readonly {
|
|
57
|
-
readonly bps: number;
|
|
58
|
-
}[];
|
|
59
|
-
readonly netRef: string;
|
|
60
|
-
} | undefined;
|
|
61
|
-
readonly steps: readonly FinancialStep[];
|
|
62
|
-
readonly contributionStage?: FinancialContributionStage | undefined;
|
|
63
|
-
}>>;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* One financial typestate owner for canonical UDL and static instrument contracts.
|
|
67
|
-
* It proves a tracked escrow account holds an exact set of funded amounts,
|
|
68
|
-
* models held transfers through reserve/post/void, consumes every direct
|
|
69
|
-
* debit piece by piece, and makes the quoted refund's sole remainder an
|
|
70
|
-
* exactly-once penalty payout.
|
|
71
|
-
*/
|
|
72
|
-
export declare function analyzeInstrumentFinance(instrument: FinancialInstrument, options?: FinanceOptions): readonly FinanceIssue[];
|
|
73
|
-
export declare function financeAdmissionProblem(instrument: FinancialInstrument): string | undefined;
|
|
74
|
-
export {};
|
|
6
|
+
/** Join loop balances conservatively; a balance equality proves an unknown balance empty. */
|
|
7
|
+
export declare function analyzeInstrumentFinance(instrument: UdlInstrument, document?: UdlDocument): FinanceIssue[];
|
|
75
8
|
//# sourceMappingURL=finance.d.ts.map
|
package/dist/finance.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finance.d.ts","sourceRoot":"","sources":["../src/finance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"finance.d.ts","sourceRoot":"","sources":["../src/finance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EACX,aAAa,EAEd,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAiCD,6FAA6F;AAC7F,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,aAAa,EACzB,QAAQ,CAAC,EAAE,WAAW,GACrB,YAAY,EAAE,CAoRhB"}
|