@hyperscale0/udl 1.0.0-alpha.4 → 1.0.0-alpha.5

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 CHANGED
@@ -10,6 +10,54 @@ here under the release that made it.
10
10
 
11
11
  ## [Unreleased]
12
12
 
13
+ ## [1.0.0-alpha.5] - 2026-08-29
14
+
15
+ ### Added
16
+
17
+ - Verbs may declare a camelCase `publicIntent` as their author-approved public
18
+ name while the verb key remains the lifecycle and execution identity. System
19
+ due verbs must omit it. `udlPublicIntentSchema` is exported for consumers
20
+ that admit the same name outside a complete document.
21
+ - `captureInput` maps declared verb input fields into durable receipt refs.
22
+ Declare only input properties from that verb and allocate each captured key
23
+ in the noun's shared ref namespace.
24
+ - `signedSum` computes stored add and subtract subtotals over typed child money,
25
+ then captures one net amount for exactly one payout or noun transfer. Authors
26
+ must declare the child reference, money field, currency, admitted statuses,
27
+ and explicit negative and zero policies.
28
+ - `requiresExposure` gates a child amount against a stored cap, with an optional
29
+ anchor-specific cap, and `setsAt.marker` records occurrence timestamps that
30
+ cannot drive a due condition or deadline. Use these clauses for bounded
31
+ installment writes and per-anchor occurrence markers.
32
+ - `distribute` allocates one parent money field or computed money ref across
33
+ typed children selected by status and stored weight. Declare runtime-owned
34
+ money refs in `computedMoneyRefs`; the validator resolves the parent,
35
+ weight, statuses, and pool before admitting the document.
36
+ - Nouns may declare up to four `derivedAmounts`. Each rule computes a declared
37
+ money field as 1 through 9,999 basis points of another declared money field
38
+ with floor rounding. Callers supply neither the result nor a fixed or tiered
39
+ rule, and a rule may not derive a field from itself.
40
+ - Verbs may declare one `payout` intent that reads stored money, currency,
41
+ source-account, and beneficiary values and captures the payout reference.
42
+ This does not add an operation to the seven-instruction kernel.
43
+ - A system-only `requiresSettlement` transition may read a captured payout
44
+ reference and capture the durable evidence record that matched it. The
45
+ validator rejects caller input, decision ports, public intents, due and
46
+ deadline triggers, kernel steps, and money moves on that transition.
47
+ - `validateUdlJsonSchema` validates one schema against UDL's sealed JSON Schema
48
+ subset without applying it to a value. `UdlPayout` and
49
+ `UdlRequiresSettlement` expose the new clause types to TypeScript consumers.
50
+
51
+ ### Changed
52
+
53
+ - Evolution snapshots freeze public intents, captured receipt input,
54
+ distribution rules, exposure gates, signed sums, computed money refs, and
55
+ derived-amount arithmetic once a noun has live instances. Older snapshots
56
+ remain readable when those keys are absent.
57
+ - Evolution snapshots freeze both payout intents and settlement evidence gates.
58
+ - Receipt refs written by the new clauses share the noun ref namespace with
59
+ kernel captures, input captures, signed sums, subject refs, and unwind refs.
60
+
13
61
  ## [1.0.0-alpha.4] - 2026-08-26
14
62
 
15
63
  ### Removed
@@ -104,7 +152,8 @@ First public release. Format version 1.
104
152
  - `bun run spec:check`, which fails when the committed schema drifts from the
105
153
  grammar it was generated from.
106
154
 
107
- [Unreleased]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.4...HEAD
155
+ [Unreleased]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.5...HEAD
156
+ [1.0.0-alpha.5]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.4...v1.0.0-alpha.5
108
157
  [1.0.0-alpha.4]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.3...v1.0.0-alpha.4
109
158
  [1.0.0-alpha.3]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.2...v1.0.0-alpha.3
110
159
  [1.0.0-alpha.2]: https://github.com/hyperscale0/hyperscale-udl/compare/v1.0.0-alpha.1...v1.0.0-alpha.2
package/README.md CHANGED
@@ -116,10 +116,13 @@ states, transitions, optional fields, and verbs. You may not remove, rename,
116
116
  tighten, or change a money step. `udl diff` is not advice; it is the same
117
117
  function the compiler runs before it will accept a new version.
118
118
 
119
- **Money moves through four instructions and no others.**
119
+ **Internal ledger money moves through four instructions and no others.**
120
120
  `internal_transfer.create`, `.reserve`, `.post`, `.void`. Three account
121
121
  instructions complete the sealed set. A noun cannot invent a fifth money path,
122
122
  which is why a document can be checked for stranded value before anything runs.
123
+ The separate `payout` intent carries a stored amount to the execution core and
124
+ captures its durable reference. A later `requiresSettlement` transition stays
125
+ system-only and runs only after that payout matches durable settlement evidence.
123
126
 
124
127
  ## The spec
125
128
 
@@ -12,8 +12,12 @@ export interface EvolutionMoveSnapshot extends EvolutionStepSnapshot {
12
12
  readonly key: string;
13
13
  }
14
14
  export interface EvolutionVerbSnapshot {
15
+ /** Missing on snapshots written before receipt-input capture existed. */
16
+ readonly captureInput?: unknown;
15
17
  readonly deadline: unknown;
16
18
  readonly decision: unknown;
19
+ /** Missing on snapshots written before weighted distribution existed. */
20
+ readonly distribute?: unknown;
17
21
  readonly due: unknown;
18
22
  readonly earnable: boolean;
19
23
  readonly eventName: string | null;
@@ -24,11 +28,21 @@ export interface EvolutionVerbSnapshot {
24
28
  * friends change what callers may send, so they are frozen once live.
25
29
  */
26
30
  readonly inputConstraints: unknown;
31
+ /** Missing on snapshots written before payout intents existed. */
32
+ readonly payout?: unknown;
27
33
  readonly port: unknown;
34
+ /** Missing on snapshots written before public intent metadata existed. */
35
+ readonly publicIntent?: string | null;
28
36
  readonly requiresAggregate: unknown;
29
37
  readonly requiresDrainedAccount: unknown;
38
+ /** Missing on snapshots written before exposure gates entered open UDL. */
39
+ readonly requiresExposure?: unknown;
30
40
  readonly requiresRefs: unknown;
41
+ /** Missing on snapshots written before settlement evidence gates existed. */
42
+ readonly requiresSettlement?: unknown;
31
43
  readonly setsAt: unknown;
44
+ /** Missing on snapshots written before signed child sums existed. */
45
+ readonly signedSum?: unknown;
32
46
  readonly moves: readonly EvolutionMoveSnapshot[];
33
47
  readonly steps: readonly EvolutionStepSnapshot[];
34
48
  }
@@ -39,6 +53,9 @@ export interface EvolutionTransitionSnapshot {
39
53
  /** The complete serializable algebra protected by append-only evolution. */
40
54
  export interface NounEvolutionSnapshot {
41
55
  readonly aggregateInvariants: readonly string[];
56
+ /** Missing on snapshots written before typed computed refs entered UDL. */
57
+ readonly computedMoneyRefs?: readonly string[];
58
+ readonly derivedAmounts: readonly string[];
42
59
  readonly distinctParties?: true;
43
60
  readonly fields: Readonly<Record<string, EvolutionFieldSnapshot>>;
44
61
  readonly id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../src/evolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../src/evolution.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,WAAW,EAAE,OAAO,EAAW,MAAM,aAAa,CAAC;AAG/E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,yEAAyE;IACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,yEAAyE;IACzE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,GAAG,IAAI,CAAC;IACxE;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,kEAAkE;IAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,0EAA0E;IAC1E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;IACzC,2EAA2E;IAC3E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,4EAA4E;AAC5E,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,2EAA2E;IAC3E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAClE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC;IAC5E,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC;CACjE;AAED,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,CA4CpE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,WAAW,GAChB,SAAS,MAAM,EAAE,CA8DnB;AAED,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,qBAAqB,EAC/B,IAAI,EAAE,qBAAqB,GAC1B,SAAS,MAAM,EAAE,CAmGnB"}
package/dist/evolution.js CHANGED
@@ -5,6 +5,8 @@ export function snapshotUdlNoun(noun) {
5
5
  const required = new Set(noun.required);
6
6
  return {
7
7
  aggregateInvariants: (noun.aggregateInvariants ?? []).map(aggregateInvariantKey),
8
+ computedMoneyRefs: [...(noun.computedMoneyRefs ?? [])].sort(),
9
+ derivedAmounts: (noun.derivedAmounts ?? []).map((amount) => `${amount.field}=floor(${amount.sourceField}*${amount.rule.bps}/10000)`),
8
10
  ...(noun.distinctParties ? { distinctParties: true } : {}),
9
11
  fields: Object.fromEntries(Object.entries(noun.fields).map(([field, schema]) => [
10
12
  field,
@@ -118,6 +120,14 @@ export function diffNounEvolution(previous, next) {
118
120
  violations.push(...diffVerbs(previous.verbs, next.verbs));
119
121
  violations.push(...diffParties(previous.parties, next.parties));
120
122
  violations.push(...diffAggregates(previous, next));
123
+ if (stableStringify(previous.computedMoneyRefs ?? []) !==
124
+ stableStringify(next.computedMoneyRefs ?? [])) {
125
+ violations.push("computed money refs changed; runtime-derived money surfaces are frozen once live");
126
+ }
127
+ if (stableStringify(previous.derivedAmounts ?? []) !==
128
+ stableStringify(next.derivedAmounts ?? [])) {
129
+ violations.push("derived amount rules changed; derived money arithmetic is frozen once live");
130
+ }
121
131
  violations.push(...removedSetEntries(previous.partitions, next.partitions, (law) => `partition law [${law}] was removed`), ...next.partitions
122
132
  .filter((law) => !previous.partitions.includes(law))
123
133
  .map((law) => `partition law [${law}] was added, which can reject existing callers`));
@@ -127,8 +137,10 @@ export function diffNounEvolution(previous, next) {
127
137
  }
128
138
  function snapshotUdlVerb(definition) {
129
139
  return {
140
+ captureInput: definition.captureInput ?? null,
130
141
  deadline: definition.deadline ?? null,
131
142
  decision: definition.decision ?? null,
143
+ distribute: definition.distribute ?? null,
132
144
  due: definition.due ?? null,
133
145
  earnable: definition.earnable ?? false,
134
146
  eventName: definition.eventName ?? null,
@@ -136,8 +148,11 @@ function snapshotUdlVerb(definition) {
136
148
  inputConstraints: definition.input
137
149
  ? snapshotJsonSchemaConstraints(definition.input)
138
150
  : null,
151
+ payout: definition.payout ?? null,
139
152
  port: definition.port ?? null,
153
+ publicIntent: definition.publicIntent ?? null,
140
154
  setsAt: definition.setsAt ?? null,
155
+ signedSum: definition.signedSum ?? null,
141
156
  moves: definition.moves.map((move) => ({
142
157
  bind: move.bind,
143
158
  capture: move.capture ?? {},
@@ -146,7 +161,9 @@ function snapshotUdlVerb(definition) {
146
161
  })),
147
162
  requiresAggregate: definition.requiresAggregate ?? [],
148
163
  requiresDrainedAccount: definition.requiresDrainedAccount ?? null,
164
+ requiresExposure: definition.requiresExposure ?? [],
149
165
  requiresRefs: definition.requiresRefs ?? [],
166
+ requiresSettlement: definition.requiresSettlement ?? null,
150
167
  steps: definition.steps.map((step) => ({
151
168
  bind: step.bind,
152
169
  capture: step.capture ?? {},
@@ -240,6 +257,20 @@ function diffVerbs(previous, next) {
240
257
  stableStringify(current.requiresDrainedAccount)) {
241
258
  violations.push(`verb ${verb} changed its drained-account gate`);
242
259
  }
260
+ if (descriptor.requiresExposure !== undefined &&
261
+ stableStringify(descriptor.requiresExposure) !==
262
+ stableStringify(current.requiresExposure)) {
263
+ violations.push(`verb ${verb} changed its exposure admission gates`);
264
+ }
265
+ if (descriptor.requiresSettlement !== undefined &&
266
+ stableStringify(descriptor.requiresSettlement) !==
267
+ stableStringify(current.requiresSettlement)) {
268
+ violations.push(`verb ${verb} changed its settlement evidence gate`);
269
+ }
270
+ if (stableStringify(descriptor.payout ?? null) !==
271
+ stableStringify(current.payout ?? null)) {
272
+ violations.push(`verb ${verb} changed its payout intent`);
273
+ }
243
274
  if (descriptor.earnable !== current.earnable) {
244
275
  violations.push(`verb ${verb} changed its earnable flag`);
245
276
  }
@@ -255,12 +286,35 @@ function diffVerbs(previous, next) {
255
286
  if (stableStringify(descriptor.decision) !== stableStringify(current.decision)) {
256
287
  violations.push(`verb ${verb} changed its provider decision`);
257
288
  }
289
+ if (stableStringify(descriptor.distribute) !==
290
+ stableStringify(current.distribute)) {
291
+ violations.push(`verb ${verb} changed its distribution rule; money distribution is frozen once live`);
292
+ }
293
+ if (descriptor.captureInput !== undefined &&
294
+ stableStringify(descriptor.captureInput) !==
295
+ stableStringify(current.captureInput)) {
296
+ violations.push(`verb ${verb} changed its captured receipt input`);
297
+ }
258
298
  if (stableStringify(descriptor.port) !== stableStringify(current.port)) {
259
299
  violations.push(`verb ${verb} changed its decision port`);
260
300
  }
301
+ if (descriptor.publicIntent != null &&
302
+ descriptor.publicIntent !== current.publicIntent) {
303
+ violations.push(`verb ${verb} changed its public intent`);
304
+ }
261
305
  if (stableStringify(descriptor.setsAt) !== stableStringify(current.setsAt)) {
262
306
  violations.push(`verb ${verb} changed its computed timestamp`);
263
307
  }
308
+ if (descriptor.signedSum !== undefined &&
309
+ stableStringify(descriptor.signedSum) !==
310
+ stableStringify(current.signedSum)) {
311
+ violations.push(`verb ${verb} changed its signed child sum`);
312
+ }
313
+ }
314
+ for (const [verb, descriptor] of Object.entries(next)) {
315
+ if (previous[verb] || descriptor.payout == null)
316
+ continue;
317
+ violations.push(`verb ${verb} added a payout intent; external money movement is frozen once live`);
264
318
  }
265
319
  return violations;
266
320
  }
@@ -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":"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"}
package/dist/index.d.ts CHANGED
@@ -4,8 +4,8 @@ export { fixedIsoDurationMs } from "./duration.js";
4
4
  export { analyzeNounFinance, type FinanceIssue, type FinanceOptions, } from "./finance.js";
5
5
  export { diffNounEvolution, diffValidatedUdlEvolution, snapshotUdlNoun, } from "./evolution.js";
6
6
  export type { EvolutionFieldSnapshot, EvolutionMoveSnapshot, EvolutionStepSnapshot, EvolutionTransitionSnapshot, EvolutionVerbSnapshot, NounEvolutionSnapshot, } from "./evolution.js";
7
- export { UDL_FORMAT_VERSION, udlDocumentSchema, udlKernelOperationSchema, } from "./schema.js";
8
- export type { UdlAggregate, UdlAggregateCondition, UdlBinding, UdlDeclaredValuePolicy, UdlDecision, UdlDocument, UdlDue, UdlExample, UdlGate, UdlKernelOperation, UdlLifecycle, UdlLifecycleTransition, UdlNoun, UdlNounSubject, UdlStep, UdlSubject, UdlUnwind, UdlVerb, } from "./schema.js";
9
- export { assertValidUdl, openReferenceShapeBudget, UdlError, validateUdl, validateUdlSchemaValue, } from "./validation.js";
7
+ export { UDL_FORMAT_VERSION, udlDocumentSchema, udlKernelOperationSchema, udlPublicIntentSchema, } from "./schema.js";
8
+ export type { UdlAggregate, UdlAggregateCondition, UdlBinding, UdlDeclaredValuePolicy, UdlDecision, UdlDocument, UdlDue, UdlExample, UdlGate, UdlKernelOperation, UdlLifecycle, UdlLifecycleTransition, UdlNoun, UdlNounSubject, UdlPayout, UdlRequiresSettlement, UdlStep, UdlSubject, UdlUnwind, UdlVerb, } from "./schema.js";
9
+ export { assertValidUdl, openReferenceShapeBudget, UdlError, validateUdl, validateUdlJsonSchema, validateUdlSchemaValue, } from "./validation.js";
10
10
  export type { ReferenceShapeBudget, UdlIssue, UdlIssueCode, UdlValidationResult, } from "./validation.js";
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,WAAW,EACX,MAAM,EACN,UAAU,EACV,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,OAAO,EACP,cAAc,EACd,OAAO,EACP,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,QAAQ,EACR,WAAW,EACX,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,mBAAmB,GACpB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,WAAW,EACX,MAAM,EACN,UAAU,EACV,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,OAAO,EACP,cAAc,EACd,SAAS,EACT,qBAAqB,EACrB,OAAO,EACP,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,QAAQ,EACR,WAAW,EACX,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,mBAAmB,GACpB,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,6 @@ export { serializeUdl } from "./canonical.js";
3
3
  export { fixedIsoDurationMs } from "./duration.js";
4
4
  export { analyzeNounFinance, } from "./finance.js";
5
5
  export { diffNounEvolution, diffValidatedUdlEvolution, snapshotUdlNoun, } from "./evolution.js";
6
- export { UDL_FORMAT_VERSION, udlDocumentSchema, udlKernelOperationSchema, } from "./schema.js";
7
- export { assertValidUdl, openReferenceShapeBudget, UdlError, validateUdl, validateUdlSchemaValue, } from "./validation.js";
6
+ export { UDL_FORMAT_VERSION, udlDocumentSchema, udlKernelOperationSchema, udlPublicIntentSchema, } from "./schema.js";
7
+ export { assertValidUdl, openReferenceShapeBudget, UdlError, validateUdl, validateUdlJsonSchema, validateUdlSchemaValue, } from "./validation.js";
8
8
  //# 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,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,kBAAkB,GAGnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AASxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAqBrB,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,QAAQ,EACR,WAAW,EACX,sBAAsB,GACvB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,kBAAkB,GAGnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AASxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAuBrB,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,QAAQ,EACR,WAAW,EACX,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC"}