@astrale-os/kernel-dsl 0.2.0-beta.2 → 0.2.0-beta.21

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.
Files changed (738) hide show
  1. package/CHANGELOG.md +247 -0
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -1
  4. package/dist/upgrade/contract.d.ts +0 -1
  5. package/dist/upgrade/contract.js +0 -1
  6. package/dist/upgrade/index.d.ts +0 -1
  7. package/dist/upgrade/index.js +0 -1
  8. package/dist/v1/addressing/class-key.d.ts +12 -0
  9. package/dist/v1/addressing/class-key.js +39 -0
  10. package/dist/v1/addressing/definition-ref.d.ts +28 -0
  11. package/dist/v1/addressing/definition-ref.js +63 -0
  12. package/dist/v1/addressing/domain-dependency.d.ts +18 -0
  13. package/dist/v1/addressing/domain-dependency.js +6 -0
  14. package/dist/v1/addressing/index.d.ts +10 -4
  15. package/dist/v1/addressing/index.js +5 -3
  16. package/dist/v1/addressing/key.d.ts +14 -16
  17. package/dist/v1/addressing/key.js +24 -34
  18. package/dist/v1/addressing/method-address.d.ts +9 -0
  19. package/dist/v1/addressing/method-address.js +1 -0
  20. package/dist/v1/addressing/method-key.d.ts +15 -0
  21. package/dist/v1/addressing/method-key.js +60 -0
  22. package/dist/v1/addressing/ordering.d.ts +6 -0
  23. package/dist/v1/addressing/ordering.js +20 -0
  24. package/dist/v1/addressing/patterns.d.ts +12 -3
  25. package/dist/v1/addressing/patterns.js +11 -2
  26. package/dist/v1/addressing/property-key.d.ts +10 -15
  27. package/dist/v1/addressing/property-key.js +24 -15
  28. package/dist/v1/addressing/revision.d.ts +8 -0
  29. package/dist/v1/addressing/revision.js +8 -0
  30. package/dist/v1/builder/callable/authoring.d.ts +117 -0
  31. package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -7
  32. package/dist/v1/builder/class/authoring.d.ts +378 -0
  33. package/dist/v1/builder/class/authoring.js +134 -0
  34. package/dist/v1/builder/class/property.d.ts +58 -0
  35. package/dist/v1/builder/class/property.js +57 -0
  36. package/dist/v1/builder/core/authoring.d.ts +42 -0
  37. package/dist/v1/builder/core/authoring.js +39 -0
  38. package/dist/v1/builder/index.d.ts +26 -22
  39. package/dist/v1/builder/index.js +11 -11
  40. package/dist/v1/builder/lowering/callable.d.ts +24 -0
  41. package/dist/v1/builder/{compiler → lowering}/callable.js +11 -14
  42. package/dist/v1/builder/lowering/class.d.ts +22 -0
  43. package/dist/v1/builder/lowering/class.js +134 -0
  44. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  45. package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
  46. package/dist/v1/builder/lowering/core.d.ts +22 -0
  47. package/dist/v1/builder/{compiler → lowering}/core.js +17 -11
  48. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  49. package/dist/v1/builder/{compiler → lowering}/policy.js +19 -14
  50. package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
  51. package/dist/v1/builder/lowering/schema/capture.js +70 -0
  52. package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
  53. package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +34 -44
  54. package/dist/v1/builder/lowering/schema/context.d.ts +44 -0
  55. package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +66 -74
  56. package/dist/v1/builder/{compiler/schema.ownership.d.ts → lowering/schema/ownership.d.ts} +1 -2
  57. package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +1 -2
  58. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  59. package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +44 -61
  60. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  61. package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
  62. package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +8 -9
  63. package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +10 -11
  64. package/dist/v1/builder/lowering/view.d.ts +11 -0
  65. package/dist/v1/builder/{compiler → lowering}/view.js +7 -7
  66. package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +19 -17
  67. package/dist/v1/builder/{policy.js → policy/authoring.js} +23 -12
  68. package/dist/v1/builder/schema/define.d.ts +11 -0
  69. package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
  70. package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
  71. package/dist/v1/builder/schema/diagnostic.js +31 -0
  72. package/dist/v1/builder/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
  73. package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
  74. package/dist/v1/builder/schema/input.d.ts +15 -0
  75. package/dist/v1/builder/schema/input.js +1 -0
  76. package/dist/v1/builder/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
  77. package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
  78. package/dist/v1/builder/schema/projection.d.ts +370 -0
  79. package/dist/v1/builder/schema/projection.js +1 -0
  80. package/dist/v1/builder/value/full-match.d.ts +4 -0
  81. package/dist/v1/builder/value/full-match.js +11 -0
  82. package/dist/v1/builder/value/path-metadata.d.ts +4 -0
  83. package/dist/v1/builder/{internal/path.metadata.js → value/path-metadata.js} +0 -1
  84. package/dist/v1/builder/value/path.d.ts +8 -0
  85. package/dist/v1/builder/{path.js → value/path.js} +4 -5
  86. package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
  87. package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
  88. package/dist/v1/builder/view/authoring.d.ts +17 -0
  89. package/dist/v1/builder/view/authoring.js +16 -0
  90. package/dist/v1/bundle/codec.d.ts +0 -1
  91. package/dist/v1/bundle/codec.js +36 -19
  92. package/dist/v1/bundle/create.d.ts +3 -0
  93. package/dist/v1/bundle/create.js +5 -0
  94. package/dist/v1/bundle/diagnostic.d.ts +10 -0
  95. package/dist/v1/bundle/diagnostic.js +17 -0
  96. package/dist/v1/bundle/index.d.ts +3 -2
  97. package/dist/v1/bundle/index.js +2 -2
  98. package/dist/v1/bundle/model.d.ts +1 -4
  99. package/dist/v1/bundle/model.js +0 -6
  100. package/dist/v1/bundle/structure.d.ts +1 -2
  101. package/dist/v1/bundle/structure.js +6 -6
  102. package/dist/v1/bundle/transport.d.ts +8 -0
  103. package/dist/v1/bundle/transport.js +7 -0
  104. package/dist/v1/compiled/admission/accept.d.ts +3 -0
  105. package/dist/v1/compiled/admission/accept.js +910 -0
  106. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  107. package/dist/v1/compiled/admission/revision.js +73 -0
  108. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  109. package/dist/v1/compiled/admission/semantics.js +1114 -0
  110. package/dist/v1/compiled/codec/json.d.ts +3 -0
  111. package/dist/v1/compiled/codec/json.js +9 -0
  112. package/dist/v1/compiled/compiler/compile.d.ts +4 -0
  113. package/dist/v1/compiled/compiler/compile.js +113 -0
  114. package/dist/v1/compiled/diagnostic.d.ts +11 -0
  115. package/dist/v1/compiled/diagnostic.js +13 -0
  116. package/dist/v1/compiled/generated.d.ts +10 -0
  117. package/dist/v1/compiled/generated.js +15 -0
  118. package/dist/v1/compiled/index.d.ts +7 -0
  119. package/dist/v1/compiled/index.js +5 -0
  120. package/dist/v1/compiled/loader/index.d.ts +1 -0
  121. package/dist/v1/compiled/loader/index.js +1 -0
  122. package/dist/v1/compiled/loader/load.d.ts +9 -0
  123. package/dist/v1/compiled/loader/load.js +147 -0
  124. package/dist/v1/compiled/model/schema.d.ts +73 -0
  125. package/dist/v1/compiled/model/schema.js +1 -0
  126. package/dist/v1/domain/create.d.ts +8 -0
  127. package/dist/v1/domain/create.js +264 -0
  128. package/dist/v1/domain/index.d.ts +2 -0
  129. package/dist/v1/domain/index.js +1 -0
  130. package/dist/v1/domain/model/domain.d.ts +59 -0
  131. package/dist/v1/domain/model/domain.js +1 -0
  132. package/dist/v1/domain/model/input.d.ts +31 -0
  133. package/dist/v1/domain/model/input.js +1 -0
  134. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  135. package/dist/v1/domain/namespace/member-collection.js +81 -0
  136. package/dist/v1/domain/projection/classes.d.ts +4 -0
  137. package/dist/v1/domain/projection/classes.js +198 -0
  138. package/dist/v1/domain/validation/create.d.ts +18 -0
  139. package/dist/v1/domain/validation/create.js +75 -0
  140. package/dist/v1/index.d.ts +14 -5
  141. package/dist/v1/index.js +6 -3
  142. package/dist/v1/language/callable/index.d.ts +2 -0
  143. package/dist/v1/language/callable/index.js +1 -0
  144. package/dist/v1/language/callable/model/callable.d.ts +33 -0
  145. package/dist/v1/language/callable/model/callable.js +1 -0
  146. package/dist/v1/language/callable/resolved.d.ts +68 -0
  147. package/dist/v1/language/callable/resolved.js +1 -0
  148. package/dist/v1/language/class/facets.d.ts +58 -0
  149. package/dist/v1/language/class/facets.js +1 -0
  150. package/dist/v1/language/class/index.d.ts +8 -0
  151. package/dist/v1/language/class/index.js +1 -0
  152. package/dist/v1/language/class/model/class.d.ts +37 -0
  153. package/dist/v1/language/class/model/class.js +1 -0
  154. package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
  155. package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
  156. package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
  157. package/dist/v1/language/class/model/edge.js +1 -0
  158. package/dist/v1/language/class/model/property.d.ts +17 -0
  159. package/dist/v1/language/class/model/property.js +1 -0
  160. package/dist/v1/language/class/property-values.d.ts +15 -0
  161. package/dist/v1/language/class/property-values.js +30 -0
  162. package/dist/v1/language/class/resolved.d.ts +126 -0
  163. package/dist/v1/language/class/resolved.js +1 -0
  164. package/dist/v1/language/core/index.d.ts +2 -0
  165. package/dist/v1/language/core/index.js +1 -0
  166. package/dist/v1/language/core/model/core.d.ts +20 -0
  167. package/dist/v1/language/core/model/core.js +1 -0
  168. package/dist/v1/language/core/resolved.d.ts +21 -0
  169. package/dist/v1/language/core/resolved.js +1 -0
  170. package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
  171. package/dist/v1/{schema → language/definition}/metadata.js +0 -1
  172. package/dist/v1/language/definition.d.ts +7 -0
  173. package/dist/v1/language/definition.js +1 -0
  174. package/dist/v1/language/index.d.ts +25 -0
  175. package/dist/v1/language/index.js +2 -0
  176. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +2 -4
  177. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +14 -30
  178. package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
  179. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  180. package/dist/v1/language/policy/index.d.ts +3 -0
  181. package/dist/v1/language/policy/index.js +1 -0
  182. package/dist/v1/{schema/policy/ast.d.ts → language/policy/model/policy.d.ts} +7 -7
  183. package/dist/v1/language/policy/model/policy.js +1 -0
  184. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  185. package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +12 -16
  186. package/dist/v1/language/policy/resolved.d.ts +9 -0
  187. package/dist/v1/language/policy/resolved.js +1 -0
  188. package/dist/v1/language/resolved.d.ts +10 -0
  189. package/dist/v1/language/resolved.js +1 -0
  190. package/dist/v1/language/state/index.d.ts +3 -0
  191. package/dist/v1/language/state/index.js +1 -0
  192. package/dist/v1/language/state/machine.d.ts +28 -0
  193. package/dist/v1/language/state/machine.js +40 -0
  194. package/dist/v1/language/state/topology.d.ts +14 -0
  195. package/dist/v1/language/state/topology.js +69 -0
  196. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  197. package/dist/v1/language/validation/diagnostic.js +3 -0
  198. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  199. package/dist/v1/language/value/compile/fields.js +60 -0
  200. package/dist/v1/language/value/compile/load.d.ts +4 -0
  201. package/dist/v1/language/value/compile/load.js +41 -0
  202. package/dist/v1/language/value/compile/model.d.ts +27 -0
  203. package/dist/v1/language/value/compile/model.js +1 -0
  204. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
  205. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
  206. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
  207. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +6 -18
  208. package/dist/v1/{schema/value/instance/compiler.d.ts → language/value/evaluate/preparation.d.ts} +4 -4
  209. package/dist/v1/language/value/evaluate/preparation.js +135 -0
  210. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  211. package/dist/v1/language/value/evaluate/program.js +16 -0
  212. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +8 -5
  213. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
  214. package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
  215. package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +5 -6
  216. package/dist/v1/language/value/index.d.ts +11 -0
  217. package/dist/v1/language/value/index.js +8 -0
  218. package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
  219. package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
  220. package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
  221. package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
  222. package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
  223. package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
  224. package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
  225. package/dist/v1/{schema → language}/value/ordering.js +16 -14
  226. package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
  227. package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
  228. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  229. package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
  230. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
  231. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +1 -2
  232. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  233. package/dist/v1/{schema/value/profile/meta-schema.validate.js → language/value/profile/meta-schema.js} +2 -2
  234. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  235. package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
  236. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  237. package/dist/v1/{schema → language}/value/profile/validate.js +14 -22
  238. package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
  239. package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
  240. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  241. package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
  242. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
  243. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
  244. package/dist/v1/language/value/reference/references.d.ts +17 -0
  245. package/dist/v1/language/value/reference/references.js +45 -0
  246. package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
  247. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  248. package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
  249. package/dist/v1/language/value/reference/registry.js +1 -0
  250. package/dist/v1/language/value/regexp/ast.d.ts +21 -0
  251. package/dist/v1/language/value/regexp/ast.js +326 -0
  252. package/dist/v1/language/value/regexp/compile.d.ts +3 -0
  253. package/dist/v1/language/value/regexp/compile.js +96 -0
  254. package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
  255. package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
  256. package/dist/v1/language/value/regexp/matcher.d.ts +7 -0
  257. package/dist/v1/language/value/regexp/matcher.js +50 -0
  258. package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
  259. package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
  260. package/dist/v1/language/value/regexp/syntax.d.ts +2 -0
  261. package/dist/v1/language/value/regexp/syntax.js +5 -0
  262. package/dist/v1/language/value/syntax/full-match.d.ts +6 -0
  263. package/dist/v1/language/value/syntax/full-match.js +20 -0
  264. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
  265. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
  266. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
  267. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
  268. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  269. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +16 -18
  270. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
  271. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
  272. package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
  273. package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
  274. package/dist/v1/language/view/index.d.ts +2 -0
  275. package/dist/v1/language/view/index.js +1 -0
  276. package/dist/v1/language/view/model/view.d.ts +11 -0
  277. package/dist/v1/language/view/model/view.js +1 -0
  278. package/dist/v1/language/view/resolved.d.ts +9 -0
  279. package/dist/v1/language/view/resolved.js +1 -0
  280. package/dist/v1/schema/admission/accept.d.ts +3 -0
  281. package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
  282. package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +17 -18
  283. package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
  284. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  285. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  286. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  287. package/dist/v1/schema/canonical/domain.js +3 -224
  288. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  289. package/dist/v1/schema/canonical/freeze.js +0 -1
  290. package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
  291. package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +3 -4
  292. package/dist/v1/schema/codec/header.d.ts +17 -0
  293. package/dist/v1/schema/codec/header.js +26 -0
  294. package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
  295. package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
  296. package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
  297. package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +121 -124
  298. package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
  299. package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
  300. package/dist/v1/schema/diagnostic.d.ts +7 -7
  301. package/dist/v1/schema/diagnostic.js +9 -9
  302. package/dist/v1/schema/index.d.ts +24 -34
  303. package/dist/v1/schema/index.js +11 -14
  304. package/dist/v1/schema/model/format.d.ts +2 -0
  305. package/dist/v1/schema/model/format.js +2 -0
  306. package/dist/v1/schema/model/schema.d.ts +30 -0
  307. package/dist/v1/schema/model/schema.js +4 -0
  308. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  309. package/dist/v1/schema/normalization/domain.js +210 -0
  310. package/dist/v1/schema/resolution/closure.d.ts +3 -4
  311. package/dist/v1/schema/resolution/closure.js +6 -7
  312. package/dist/v1/schema/resolution/context.d.ts +11 -12
  313. package/dist/v1/schema/resolution/context.js +82 -50
  314. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  315. package/dist/v1/schema/resolution/definition.index.js +8 -18
  316. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  317. package/dist/v1/schema/resolution/domain.js +112 -0
  318. package/dist/v1/schema/resolution/origins.d.ts +11 -14
  319. package/dist/v1/schema/resolution/origins.js +31 -44
  320. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  321. package/dist/v1/schema/resolution/value.registry.js +7 -14
  322. package/dist/v1/schema/revision.d.ts +1 -0
  323. package/dist/v1/schema/revision.js +1 -0
  324. package/dist/v1/schema/validation/class.d.ts +5 -0
  325. package/dist/v1/schema/validation/class.js +257 -0
  326. package/dist/v1/schema/validation/core.d.ts +5 -0
  327. package/dist/v1/schema/{core/validate.js → validation/core.js} +39 -30
  328. package/dist/v1/schema/validation/domain.d.ts +11 -0
  329. package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
  330. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  331. package/dist/v1/schema/validation/domain.route.js +3 -4
  332. package/dist/v1/schema/validation/domain.structure.d.ts +3 -4
  333. package/dist/v1/schema/validation/domain.structure.js +203 -207
  334. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  335. package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +2 -32
  336. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  337. package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
  338. package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
  339. package/dist/v1/schema/{policy/validation → validation/policy}/references.js +18 -11
  340. package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
  341. package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +25 -67
  342. package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
  343. package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +27 -63
  344. package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
  345. package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
  346. package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
  347. package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
  348. package/dist/v1/schema/validation/value.d.ts +4 -5
  349. package/dist/v1/schema/validation/value.js +4 -9
  350. package/dist/v1/schema/validation/view.d.ts +3 -0
  351. package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
  352. package/dist/v1/value/full-match.d.ts +2 -0
  353. package/dist/v1/value/full-match.js +2 -0
  354. package/dist/v1.d.ts +1 -2
  355. package/dist/v1.js +1 -2
  356. package/dist/value/accept.d.ts +0 -1
  357. package/dist/value/accept.js +0 -1
  358. package/dist/value/canonical.d.ts +0 -1
  359. package/dist/value/canonical.js +0 -1
  360. package/dist/value/decode.d.ts +0 -1
  361. package/dist/value/decode.js +0 -1
  362. package/dist/value/equal.d.ts +0 -1
  363. package/dist/value/equal.js +0 -1
  364. package/dist/value/error.d.ts +0 -1
  365. package/dist/value/error.js +0 -1
  366. package/dist/value/index.d.ts +0 -1
  367. package/dist/value/index.js +0 -1
  368. package/dist/value/json.d.ts +0 -1
  369. package/dist/value/json.js +0 -1
  370. package/dist/value/limits.d.ts +0 -1
  371. package/dist/value/limits.js +0 -1
  372. package/dist/value/types.d.ts +0 -1
  373. package/dist/value/types.js +0 -1
  374. package/dist/value/unicode.d.ts +0 -1
  375. package/dist/value/unicode.js +0 -1
  376. package/dist/version/dispatch.d.ts +0 -1
  377. package/dist/version/dispatch.js +0 -1
  378. package/dist/version/index.d.ts +0 -1
  379. package/dist/version/index.js +0 -1
  380. package/package.json +69 -13
  381. package/dist/index.d.ts.map +0 -1
  382. package/dist/index.js.map +0 -1
  383. package/dist/upgrade/contract.d.ts.map +0 -1
  384. package/dist/upgrade/contract.js.map +0 -1
  385. package/dist/upgrade/index.d.ts.map +0 -1
  386. package/dist/upgrade/index.js.map +0 -1
  387. package/dist/v1/addressing/index.d.ts.map +0 -1
  388. package/dist/v1/addressing/index.js.map +0 -1
  389. package/dist/v1/addressing/key.d.ts.map +0 -1
  390. package/dist/v1/addressing/key.js.map +0 -1
  391. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  392. package/dist/v1/addressing/patterns.js.map +0 -1
  393. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  394. package/dist/v1/addressing/property-key.js.map +0 -1
  395. package/dist/v1/addressing/ref.d.ts +0 -35
  396. package/dist/v1/addressing/ref.d.ts.map +0 -1
  397. package/dist/v1/addressing/ref.js +0 -94
  398. package/dist/v1/addressing/ref.js.map +0 -1
  399. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  400. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  401. package/dist/v1/addressing/schema-ref.js +0 -2
  402. package/dist/v1/addressing/schema-ref.js.map +0 -1
  403. package/dist/v1/builder/callable.d.ts +0 -92
  404. package/dist/v1/builder/callable.d.ts.map +0 -1
  405. package/dist/v1/builder/callable.js.map +0 -1
  406. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  407. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  408. package/dist/v1/builder/compiler/callable.js.map +0 -1
  409. package/dist/v1/builder/compiler/core.d.ts +0 -6
  410. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  411. package/dist/v1/builder/compiler/core.js.map +0 -1
  412. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  413. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  414. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  415. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  416. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  417. package/dist/v1/builder/compiler/definition.js +0 -197
  418. package/dist/v1/builder/compiler/definition.js.map +0 -1
  419. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  420. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  421. package/dist/v1/builder/compiler/policy.js.map +0 -1
  422. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  423. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  424. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  425. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  426. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  427. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  428. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  429. package/dist/v1/builder/compiler/schema.js.map +0 -1
  430. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  431. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  432. package/dist/v1/builder/compiler/value.d.ts +0 -26
  433. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  434. package/dist/v1/builder/compiler/value.js.map +0 -1
  435. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  436. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  437. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  438. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  439. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  440. package/dist/v1/builder/compiler/view.d.ts +0 -12
  441. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  442. package/dist/v1/builder/compiler/view.js.map +0 -1
  443. package/dist/v1/builder/core.d.ts +0 -27
  444. package/dist/v1/builder/core.d.ts.map +0 -1
  445. package/dist/v1/builder/core.js +0 -21
  446. package/dist/v1/builder/core.js.map +0 -1
  447. package/dist/v1/builder/definition.d.ts +0 -155
  448. package/dist/v1/builder/definition.d.ts.map +0 -1
  449. package/dist/v1/builder/definition.js +0 -141
  450. package/dist/v1/builder/definition.js.map +0 -1
  451. package/dist/v1/builder/full-match.d.ts +0 -12
  452. package/dist/v1/builder/full-match.d.ts.map +0 -1
  453. package/dist/v1/builder/full-match.js +0 -21
  454. package/dist/v1/builder/full-match.js.map +0 -1
  455. package/dist/v1/builder/index.d.ts.map +0 -1
  456. package/dist/v1/builder/index.js.map +0 -1
  457. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  458. package/dist/v1/builder/internal/authoring.js.map +0 -1
  459. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  460. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  461. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  462. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  463. package/dist/v1/builder/internal/diagnostic.js +0 -16
  464. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  465. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  466. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  467. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  468. package/dist/v1/builder/path.d.ts +0 -9
  469. package/dist/v1/builder/path.d.ts.map +0 -1
  470. package/dist/v1/builder/path.js.map +0 -1
  471. package/dist/v1/builder/policy.d.ts.map +0 -1
  472. package/dist/v1/builder/policy.js.map +0 -1
  473. package/dist/v1/builder/property.d.ts +0 -37
  474. package/dist/v1/builder/property.d.ts.map +0 -1
  475. package/dist/v1/builder/property.js +0 -36
  476. package/dist/v1/builder/property.js.map +0 -1
  477. package/dist/v1/builder/schema.d.ts +0 -6
  478. package/dist/v1/builder/schema.d.ts.map +0 -1
  479. package/dist/v1/builder/schema.input.d.ts +0 -19
  480. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  481. package/dist/v1/builder/schema.input.js +0 -2
  482. package/dist/v1/builder/schema.input.js.map +0 -1
  483. package/dist/v1/builder/schema.js.map +0 -1
  484. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  485. package/dist/v1/builder/value-schema.js.map +0 -1
  486. package/dist/v1/builder/view.d.ts +0 -19
  487. package/dist/v1/builder/view.d.ts.map +0 -1
  488. package/dist/v1/builder/view.js +0 -7
  489. package/dist/v1/builder/view.js.map +0 -1
  490. package/dist/v1/builder.d.ts +0 -3
  491. package/dist/v1/builder.d.ts.map +0 -1
  492. package/dist/v1/builder.js +0 -2
  493. package/dist/v1/builder.js.map +0 -1
  494. package/dist/v1/bundle/codec.d.ts.map +0 -1
  495. package/dist/v1/bundle/codec.js.map +0 -1
  496. package/dist/v1/bundle/index.d.ts.map +0 -1
  497. package/dist/v1/bundle/index.js.map +0 -1
  498. package/dist/v1/bundle/model.d.ts.map +0 -1
  499. package/dist/v1/bundle/model.js.map +0 -1
  500. package/dist/v1/bundle/structure.d.ts.map +0 -1
  501. package/dist/v1/bundle/structure.js.map +0 -1
  502. package/dist/v1/bundle.d.ts +0 -3
  503. package/dist/v1/bundle.d.ts.map +0 -1
  504. package/dist/v1/bundle.js +0 -3
  505. package/dist/v1/bundle.js.map +0 -1
  506. package/dist/v1/index.d.ts.map +0 -1
  507. package/dist/v1/index.js.map +0 -1
  508. package/dist/v1/schema/callable.d.ts +0 -29
  509. package/dist/v1/schema/callable.d.ts.map +0 -1
  510. package/dist/v1/schema/callable.js +0 -2
  511. package/dist/v1/schema/callable.js.map +0 -1
  512. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  513. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  514. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  515. package/dist/v1/schema/canonical/domain.js.map +0 -1
  516. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  517. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  518. package/dist/v1/schema/core/declaration.d.ts +0 -17
  519. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  520. package/dist/v1/schema/core/declaration.js +0 -2
  521. package/dist/v1/schema/core/declaration.js.map +0 -1
  522. package/dist/v1/schema/core/validate.d.ts +0 -6
  523. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  524. package/dist/v1/schema/core/validate.js.map +0 -1
  525. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  526. package/dist/v1/schema/definition/analysis.js.map +0 -1
  527. package/dist/v1/schema/definition/class.d.ts +0 -28
  528. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  529. package/dist/v1/schema/definition/class.js +0 -2
  530. package/dist/v1/schema/definition/class.js.map +0 -1
  531. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  532. package/dist/v1/schema/definition/data.js.map +0 -1
  533. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  534. package/dist/v1/schema/definition/edge.js +0 -2
  535. package/dist/v1/schema/definition/edge.js.map +0 -1
  536. package/dist/v1/schema/definition/interface.d.ts +0 -22
  537. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  538. package/dist/v1/schema/definition/interface.js +0 -2
  539. package/dist/v1/schema/definition/interface.js.map +0 -1
  540. package/dist/v1/schema/definition/property.d.ts +0 -18
  541. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  542. package/dist/v1/schema/definition/property.js +0 -2
  543. package/dist/v1/schema/definition/property.js.map +0 -1
  544. package/dist/v1/schema/definition/validate.d.ts +0 -5
  545. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  546. package/dist/v1/schema/definition/validate.js +0 -221
  547. package/dist/v1/schema/definition/validate.js.map +0 -1
  548. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  549. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  550. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  551. package/dist/v1/schema/diagnostic.js.map +0 -1
  552. package/dist/v1/schema/domain.accept.d.ts +0 -4
  553. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  554. package/dist/v1/schema/domain.accept.js.map +0 -1
  555. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  556. package/dist/v1/schema/domain.codec.js.map +0 -1
  557. package/dist/v1/schema/domain.header.d.ts +0 -15
  558. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  559. package/dist/v1/schema/domain.header.js +0 -21
  560. package/dist/v1/schema/domain.header.js.map +0 -1
  561. package/dist/v1/schema/domain.ir.d.ts +0 -40
  562. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  563. package/dist/v1/schema/domain.ir.js +0 -5
  564. package/dist/v1/schema/domain.ir.js.map +0 -1
  565. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  566. package/dist/v1/schema/domain.lookup.js.map +0 -1
  567. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  568. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  569. package/dist/v1/schema/domain.resolve.js +0 -43
  570. package/dist/v1/schema/domain.resolve.js.map +0 -1
  571. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  572. package/dist/v1/schema/domain.revision.js.map +0 -1
  573. package/dist/v1/schema/domain.validate.d.ts +0 -12
  574. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  575. package/dist/v1/schema/domain.validate.js.map +0 -1
  576. package/dist/v1/schema/index.d.ts.map +0 -1
  577. package/dist/v1/schema/index.js.map +0 -1
  578. package/dist/v1/schema/metadata.d.ts.map +0 -1
  579. package/dist/v1/schema/metadata.js.map +0 -1
  580. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  581. package/dist/v1/schema/policy/ast.js +0 -2
  582. package/dist/v1/schema/policy/ast.js.map +0 -1
  583. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  584. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  585. package/dist/v1/schema/policy/normalize.js.map +0 -1
  586. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  587. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  588. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  589. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  590. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  591. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  592. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  593. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  594. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  595. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  596. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  597. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  598. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  599. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  600. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  601. package/dist/v1/schema/reference.d.ts +0 -43
  602. package/dist/v1/schema/reference.d.ts.map +0 -1
  603. package/dist/v1/schema/reference.js +0 -31
  604. package/dist/v1/schema/reference.js.map +0 -1
  605. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  606. package/dist/v1/schema/resolution/closure.js.map +0 -1
  607. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  608. package/dist/v1/schema/resolution/context.js.map +0 -1
  609. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  610. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  611. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  612. package/dist/v1/schema/resolution/origins.js.map +0 -1
  613. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  614. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  615. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  616. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  617. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  618. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  619. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  620. package/dist/v1/schema/validation/value.js.map +0 -1
  621. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  622. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  623. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  624. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  625. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  626. package/dist/v1/schema/value/index.d.ts.map +0 -1
  627. package/dist/v1/schema/value/index.js.map +0 -1
  628. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  629. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  630. package/dist/v1/schema/value/instance/compiler.d.ts.map +0 -1
  631. package/dist/v1/schema/value/instance/compiler.js +0 -69
  632. package/dist/v1/schema/value/instance/compiler.js.map +0 -1
  633. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  634. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  635. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  636. package/dist/v1/schema/value/instance/types.js.map +0 -1
  637. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  638. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  639. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  640. package/dist/v1/schema/value/instant.js.map +0 -1
  641. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  642. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  643. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  644. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  645. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  646. package/dist/v1/schema/value/location/walk.js.map +0 -1
  647. package/dist/v1/schema/value/object.d.ts.map +0 -1
  648. package/dist/v1/schema/value/object.js.map +0 -1
  649. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  650. package/dist/v1/schema/value/ordering.js.map +0 -1
  651. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  652. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  653. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  654. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  655. package/dist/v1/schema/value/profile/dialect.js +0 -36
  656. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  657. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  658. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  659. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  660. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  661. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  662. package/dist/v1/schema/value/profile/meta-schema.validate.d.ts +0 -4
  663. package/dist/v1/schema/value/profile/meta-schema.validate.d.ts.map +0 -1
  664. package/dist/v1/schema/value/profile/meta-schema.validate.js.map +0 -1
  665. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  666. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  667. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  668. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  669. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  670. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  671. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  672. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  673. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  674. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  675. package/dist/v1/schema/value/regexp/linear.js +0 -24
  676. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  677. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  678. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  679. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  680. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  681. package/dist/v1/schema/value/regexp/syntax.d.ts +0 -3
  682. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  683. package/dist/v1/schema/value/regexp/syntax.js +0 -217
  684. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  685. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  686. package/dist/v1/schema/value/registry.js +0 -2
  687. package/dist/v1/schema/value/registry.js.map +0 -1
  688. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  689. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  690. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  691. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  692. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  693. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  694. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  695. package/dist/v1/schema/value/resources/references.js +0 -93
  696. package/dist/v1/schema/value/resources/references.js.map +0 -1
  697. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  698. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  699. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  700. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  701. package/dist/v1/schema/value/schema.js.map +0 -1
  702. package/dist/v1/schema/view/declaration.d.ts +0 -14
  703. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  704. package/dist/v1/schema/view/declaration.js +0 -2
  705. package/dist/v1/schema/view/declaration.js.map +0 -1
  706. package/dist/v1/schema/view/validate.d.ts +0 -4
  707. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  708. package/dist/v1/schema/view/validate.js.map +0 -1
  709. package/dist/v1/schema.d.ts +0 -3
  710. package/dist/v1/schema.d.ts.map +0 -1
  711. package/dist/v1/schema.js +0 -3
  712. package/dist/v1/schema.js.map +0 -1
  713. package/dist/v1.d.ts.map +0 -1
  714. package/dist/v1.js.map +0 -1
  715. package/dist/value/accept.d.ts.map +0 -1
  716. package/dist/value/accept.js.map +0 -1
  717. package/dist/value/canonical.d.ts.map +0 -1
  718. package/dist/value/canonical.js.map +0 -1
  719. package/dist/value/decode.d.ts.map +0 -1
  720. package/dist/value/decode.js.map +0 -1
  721. package/dist/value/equal.d.ts.map +0 -1
  722. package/dist/value/equal.js.map +0 -1
  723. package/dist/value/error.d.ts.map +0 -1
  724. package/dist/value/error.js.map +0 -1
  725. package/dist/value/index.d.ts.map +0 -1
  726. package/dist/value/index.js.map +0 -1
  727. package/dist/value/json.d.ts.map +0 -1
  728. package/dist/value/json.js.map +0 -1
  729. package/dist/value/limits.d.ts.map +0 -1
  730. package/dist/value/limits.js.map +0 -1
  731. package/dist/value/types.d.ts.map +0 -1
  732. package/dist/value/types.js.map +0 -1
  733. package/dist/value/unicode.d.ts.map +0 -1
  734. package/dist/value/unicode.js.map +0 -1
  735. package/dist/version/dispatch.d.ts.map +0 -1
  736. package/dist/version/dispatch.js.map +0 -1
  737. package/dist/version/index.d.ts.map +0 -1
  738. package/dist/version/index.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { revisionOfDomainSchema } from './domain.revision.js';
1
+ import { revisionOfDomainSchema } from '../canonical/revision.js';
2
2
  export class MemoryDomainSchemaLookup {
3
3
  #entries = new Map();
4
4
  constructor(entries = []) {
@@ -29,4 +29,3 @@ export function emptyDomainSchemaLookup() {
29
29
  function lookupKey(origin, revision) {
30
30
  return `${origin}\u0000${revision}`;
31
31
  }
32
- //# sourceMappingURL=domain.lookup.js.map
@@ -1,12 +1,12 @@
1
- export interface DomainDiagnostic {
2
- readonly code: string;
1
+ export type SchemaDiagnosticCode = 'DM_MEMBER_ROOT_INVALID' | 'DM_DEPENDENCY_CONTEXT_INVALID' | 'DM_DEPENDENCY_NOT_RETAINED' | 'DM_MEANING_INCONSISTENT' | 'DM_MEMBER_ORIGIN_MISMATCH' | 'DV_ACCEPTANCE_CONTEXT' | 'DV_CALLABLE_AUTH' | 'DV_CALLABLE_IO' | 'DV_CALLABLE_POLICY_AUTH' | 'DV_CLASS_ABSTRACT' | 'DV_CLASS_ACYCLIC' | 'DV_CLASS_KIND' | 'DV_CORE_EDGE_CLASS' | 'DV_CORE_EDGE_CONSTRAINTS' | 'DV_CORE_EDGE_KEY' | 'DV_CORE_EDGE_PROPERTIES' | 'DV_CORE_NODE_CLASS' | 'DV_CORE_NODE_PROPERTIES' | 'DV_CORE_REF' | 'DV_DATA_COMPOSITION' | 'DV_DEPENDENCY_ACYCLIC' | 'DV_DEPENDENCY_DIRECT' | 'DV_DEPENDENCY_EXACT' | 'DV_DEPENDENCY_LIMITS' | 'DV_DEPENDENCY_REVISION_COHERENCE' | 'DV_DEPENDENCY_UNIQUE' | 'DV_EDGE_ACCEPTS' | 'DV_EDGE_CLASS_COMPOSITION' | 'DV_EDGE_CONSTRAINT' | 'DV_EDGE_ROLE' | 'DV_EDGE_UNDIRECTED' | 'DV_JSON_VALUE' | 'DV_METHOD_ABSTRACT' | 'DV_METHOD_COMPOSITION' | 'DV_PROPERTY_AUTO' | 'DV_PROPERTY_COMPOSITION' | 'DV_PROPERTY_STATE' | 'DV_REF_RESOLVES' | 'DV_VALUE_SCHEMA' | 'DV_VIEW_TARGET' | 'PL_BUDGET' | 'PL_COMPOSITION' | 'PL_CONNECTIVITY' | 'PL_REF' | 'PL_REPEAT' | 'PL_TARGET' | 'PL_TYPING' | 'PL_USE' | 'PL_VARIABLE_SCOPE' | 'STRUCTURE_ABSTRACT_POLICY' | 'STRUCTURE_CALLABLE_POLICY_AUTH' | 'STRUCTURE_DUPLICATE_ITEM' | 'STRUCTURE_EDGE_ORIENTATION' | 'STRUCTURE_FORMAT' | 'STRUCTURE_INVALID' | 'STRUCTURE_KEY' | 'STRUCTURE_MAXIMUM' | 'STRUCTURE_MINIMUM' | 'STRUCTURE_MULTIPLE' | 'STRUCTURE_REQUIRED' | 'STRUCTURE_TYPE' | 'STRUCTURE_UNION' | 'STRUCTURE_UNKNOWN_FIELD' | 'STRUCTURE_VALUE' | 'UNSUPPORTED_DOCUMENT_FORMAT' | 'UNSUPPORTED_DSL_VERSION';
2
+ export interface SchemaDiagnostic<out Code extends SchemaDiagnosticCode = SchemaDiagnosticCode> {
3
+ readonly code: Code;
3
4
  readonly pointer: string;
4
5
  readonly message: string;
5
6
  readonly ref?: string;
6
7
  }
7
- export declare class DomainSchemaError extends Error {
8
- readonly diagnostics: readonly DomainDiagnostic[];
9
- constructor(diagnostics: readonly DomainDiagnostic[]);
8
+ export declare function diagnostic<const Code extends SchemaDiagnosticCode>(code: Code, pointer: string, message: string, ref?: string): SchemaDiagnostic<Code>;
9
+ export declare class SchemaError extends Error {
10
+ readonly diagnostics: readonly SchemaDiagnostic[];
11
+ constructor(diagnostics: readonly SchemaDiagnostic[]);
10
12
  }
11
- export declare function diagnostic(code: string, pointer: string, message: string, ref?: string): DomainDiagnostic;
12
- //# sourceMappingURL=diagnostic.d.ts.map
@@ -1,21 +1,21 @@
1
- export class DomainSchemaError extends Error {
1
+ import { compareUnicode } from '../addressing/ordering.js';
2
+ export function diagnostic(code, pointer, message, ref) {
3
+ return Object.freeze({ code, pointer, message, ...(ref === undefined ? {} : { ref }) });
4
+ }
5
+ export class SchemaError extends Error {
2
6
  diagnostics;
3
7
  constructor(diagnostics) {
4
8
  const ordered = [...diagnostics].sort(compareDiagnostic);
5
9
  super(ordered.map(formatDiagnostic).join('\n'));
6
- this.name = 'DomainSchemaError';
10
+ this.name = 'SchemaError';
7
11
  this.diagnostics = Object.freeze(ordered);
8
12
  }
9
13
  }
10
- export function diagnostic(code, pointer, message, ref) {
11
- return Object.freeze({ code, pointer, message, ...(ref === undefined ? {} : { ref }) });
12
- }
13
14
  function compareDiagnostic(left, right) {
14
- return (left.pointer.localeCompare(right.pointer) ||
15
- left.code.localeCompare(right.code) ||
16
- left.message.localeCompare(right.message));
15
+ return (compareUnicode(left.pointer, right.pointer) ||
16
+ compareUnicode(left.code, right.code) ||
17
+ compareUnicode(left.message, right.message));
17
18
  }
18
19
  function formatDiagnostic(value) {
19
20
  return `${value.pointer || '/'} [${value.code}] ${value.message}`;
20
21
  }
21
- //# sourceMappingURL=diagnostic.js.map
@@ -1,36 +1,26 @@
1
1
  /** Admit, encode, inspect, and semantically resolve canonical V1 DomainSchemas. */
2
- export type { DomainSchema, DomainSchemaIR, DomainSchemaInputOf as InputOf } from './domain.ir.js';
3
- export { acceptDomainSchema as accept } from './domain.accept.js';
4
- export { decodeDomainSchema as decode, encodeDomainSchema as encode, serializeDomainSchema as serialize, } from './domain.codec.js';
5
- export { revisionOfDomainSchema as revision } from './domain.revision.js';
6
- export { resolveDomainSchema as resolve } from './domain.resolve.js';
7
- export { compareDependencyMeaning, compareMemberMeaning } from './dependency.meaning.js';
8
- export type { DependencyMeaningChange, DependencyMeaningChangeKind, DependencyMeaningComparison, } from './dependency.meaning.js';
9
- export { readDomainSchemaHeader as readHeader } from './domain.header.js';
10
- export { DOMAIN_FORMAT as FORMAT, DOMAIN_VERSION as VERSION } from './reference.js';
11
- export { namedTypeUri as typeUri } from './reference.js';
12
- export { patterns } from '../addressing/index.js';
13
- export { DomainSchemaError as Error } from './diagnostic.js';
14
- export type { DomainDiagnostic as Diagnostic } from './diagnostic.js';
15
- export type { DomainSchemaLookup as Lookup } from './domain.lookup.js';
16
- export type { DomainSchemaHeader as Header } from './domain.header.js';
17
- /** Exact structured identities retained only by schema lifecycle and resolution. */
18
- export type { CoreEndpointRef, CoreRef, ClassFamily, ClassRef, DefinitionKind, DefinitionRef, DomainDependency, DomainMemberKind, DomainRef, Revision, Family, FunctionRef, MemberKind, InterfaceFamily, InterfaceRef, PolicyRef, SchemaRef, ValueTypeRef, ViewRef, } from './reference.js';
19
- export type { ClassDeclaration, NodeClassDeclaration, EdgeClassDeclaration, EdgeClassPolicies, NodeClassPolicies, } from './definition/class.js';
20
- export type { InterfaceDeclaration, NodeInterfaceDeclaration, EdgeInterfaceDeclaration, } from './definition/interface.js';
21
- export type { DefinitionAnalysis } from './definition/analysis.js';
22
- export type { AutoEvent, AutoSet, PropertyFacet, PropertyAuto, PropertyMetadata, PropertyMetadataRecord, PropertyVisibility, } from './definition/property.js';
23
- export type { PropertyObjectSchema } from './value/schema.js';
24
- export type { DirectedEdgeContract, DirectedSourceEndpoint, DirectedTargetEndpoint, EdgeConstraints, EdgeContract, EdgeCount, EdgeEndpointBase, EdgeOrientation, IncidentEndpoint, UndirectedEdgeContract, } from './definition/edge.js';
25
- export type { CallableContract, CallableOutput, FunctionAuth, FunctionDeclaration, MethodDeclaration, MethodInheritance, MethodRecord, OutputMode, } from './callable.js';
26
- export type { DataDeclaration, DataFacet, MediaType } from './definition/data.js';
27
- export type { ViewAuth, ViewDeclaration, ViewTarget } from './view/declaration.js';
28
- export type { PolicyCheckExpression, PolicyCheckObject, PolicyObjectRef, PolicyDeclaration, PolicyEdgePattern, PolicyVariable, PolicyPatternExpression, PolicyPatternTerm, PolicyRepeat, } from './policy/ast.js';
29
- export type { CoreDeclaration, CoreEdgeDeclaration, CoreNodeDeclaration, } from './core/declaration.js';
30
- export type { ResolvedDomainSchema as Resolution, ResolvedDomainSchemaReferences as ResolutionReferences, } from './domain.resolve.js';
31
- export type { ResolvedDefinition } from './resolution/definition.index.js';
2
+ import type { SourceDomain } from '../domain/index.js';
3
+ import type { DomainSchema } from './model/schema.js';
4
+ export type { DomainSchema, DomainSchemaIR, DomainOfSchema as DomainOf } from './model/schema.js';
5
+ export type ResolvedDomainOf<Schema extends DomainSchema> = SourceDomain<Schema>;
6
+ export interface Resolve {
7
+ <const Schema extends DomainSchema>(schema: Schema): ResolvedDomainOf<Schema>;
8
+ }
9
+ export declare const resolve: Resolve;
10
+ export type { SchemaDiagnosticCode as DiagnosticCode } from './diagnostic.js';
11
+ export { acceptDomainSchema as accept } from './admission/accept.js';
12
+ export { decodeDomainSchema as decode, encodeDomainSchema as encode, serializeDomainSchema as serialize, } from './codec/schema.js';
13
+ export { revisionOfDomainSchema as revision } from './canonical/revision.js';
14
+ export { compareDependencyMeaning, compareMemberMeaning } from './compatibility/meaning.js';
15
+ export type { DependencyMeaningChange, DependencyMeaningChangeKind, DependencyMeaningComparison, MeaningFingerprint, } from './compatibility/meaning.js';
16
+ export { header } from './codec/header.js';
17
+ export { DOMAIN_FORMAT as FORMAT, DOMAIN_VERSION as VERSION } from './model/format.js';
18
+ export { compile, load } from '../compiled/index.js';
19
+ export type { CompiledSchema, DomainOfCompiled } from '../compiled/index.js';
20
+ export { SchemaError as Error } from './diagnostic.js';
21
+ export type { SchemaDiagnostic as Diagnostic } from './diagnostic.js';
22
+ export type { DomainSchemaLookup as Lookup } from './dependency/lookup.js';
23
+ export type { DomainSchemaHeader as Header } from './codec/header.js';
24
+ export type { DomainDependency } from '../addressing/index.js';
32
25
  /** The versioned value-schema grammar embedded in declarations. */
33
- export * as values from './value/index.js';
34
- /** Shared exact value bounds for declaration metadata. */
35
- export * as metadata from './metadata.js';
36
- //# sourceMappingURL=index.d.ts.map
26
+ export * as values from './validation/value-api.js';
@@ -1,16 +1,13 @@
1
1
  /** Admit, encode, inspect, and semantically resolve canonical V1 DomainSchemas. */
2
- export { acceptDomainSchema as accept } from './domain.accept.js';
3
- export { decodeDomainSchema as decode, encodeDomainSchema as encode, serializeDomainSchema as serialize, } from './domain.codec.js';
4
- export { revisionOfDomainSchema as revision } from './domain.revision.js';
5
- export { resolveDomainSchema as resolve } from './domain.resolve.js';
6
- export { compareDependencyMeaning, compareMemberMeaning } from './dependency.meaning.js';
7
- export { readDomainSchemaHeader as readHeader } from './domain.header.js';
8
- export { DOMAIN_FORMAT as FORMAT, DOMAIN_VERSION as VERSION } from './reference.js';
9
- export { namedTypeUri as typeUri } from './reference.js';
10
- export { patterns } from '../addressing/index.js';
11
- export { DomainSchemaError as Error } from './diagnostic.js';
2
+ import { resolve as resolveDomainSchema } from './resolution/domain.js';
3
+ export const resolve = resolveDomainSchema;
4
+ export { acceptDomainSchema as accept } from './admission/accept.js';
5
+ export { decodeDomainSchema as decode, encodeDomainSchema as encode, serializeDomainSchema as serialize, } from './codec/schema.js';
6
+ export { revisionOfDomainSchema as revision } from './canonical/revision.js';
7
+ export { compareDependencyMeaning, compareMemberMeaning } from './compatibility/meaning.js';
8
+ export { header } from './codec/header.js';
9
+ export { DOMAIN_FORMAT as FORMAT, DOMAIN_VERSION as VERSION } from './model/format.js';
10
+ export { compile, load } from '../compiled/index.js';
11
+ export { SchemaError as Error } from './diagnostic.js';
12
12
  /** The versioned value-schema grammar embedded in declarations. */
13
- export * as values from './value/index.js';
14
- /** Shared exact value bounds for declaration metadata. */
15
- export * as metadata from './metadata.js';
16
- //# sourceMappingURL=index.js.map
13
+ export * as values from './validation/value-api.js';
@@ -0,0 +1,2 @@
1
+ export declare const DOMAIN_FORMAT: 'astrale.dsl';
2
+ export declare const DOMAIN_VERSION: 'v1';
@@ -0,0 +1,2 @@
1
+ export const DOMAIN_FORMAT = 'astrale.dsl';
2
+ export const DOMAIN_VERSION = 'v1';
@@ -0,0 +1,30 @@
1
+ import type { Key } from '../../addressing/index.js';
2
+ import type { DomainDependencyMap } from '../../addressing/index.js';
3
+ import type { Domain, DomainOfSource, DomainSource } from '../../domain/model/domain.js';
4
+ import type { FunctionDefinition } from '../../language/callable/model/callable.js';
5
+ import type { ClassDefinition } from '../../language/class/model/class.js';
6
+ import type { CoreContent } from '../../language/core/model/core.js';
7
+ import type { PolicyDefinition } from '../../language/policy/model/policy.js';
8
+ import type { ViewDefinition } from '../../language/view/model/view.js';
9
+ export interface DomainSchemaIR {
10
+ readonly format: 'astrale.dsl';
11
+ readonly version: 'v1';
12
+ readonly origin: Key.Origin;
13
+ readonly dependencies: DomainDependencyMap;
14
+ readonly classes: Readonly<Record<string, ClassDefinition>>;
15
+ readonly functions: Readonly<Record<string, FunctionDefinition>>;
16
+ readonly policies: Readonly<Record<string, PolicyDefinition>>;
17
+ readonly views: Readonly<Record<string, ViewDefinition>>;
18
+ readonly core: CoreContent;
19
+ }
20
+ declare const DOMAIN_SCHEMA_BRAND: unique symbol;
21
+ /**
22
+ * Accepted canonical schema carrying its exact resolved Domain projection.
23
+ */
24
+ export type DomainSchema<Origin extends string = string, Resolved extends Domain = Domain> = DomainSchemaIR & DomainSource<Resolved> & {
25
+ readonly origin: Origin;
26
+ readonly [DOMAIN_SCHEMA_BRAND]: true;
27
+ };
28
+ export type DomainOfSchema<Schema extends DomainSchema> = DomainOfSource<Schema>;
29
+ export declare function asDomainSchema<Origin extends string = string, Resolved extends Domain = Domain>(value: DomainSchemaIR): DomainSchema<Origin, Resolved>;
30
+ export {};
@@ -0,0 +1,4 @@
1
+ import { deepFreeze } from '../canonical/freeze.js';
2
+ export function asDomainSchema(value) {
3
+ return deepFreeze(value);
4
+ }
@@ -0,0 +1,2 @@
1
+ import type { DomainSchemaIR } from '../model/schema.js';
2
+ export declare function normalizeDomainSchema(schema: DomainSchemaIR): DomainSchemaIR;
@@ -0,0 +1,210 @@
1
+ import { json } from '@astrale-os/kernel-dsl/value';
2
+ import { compareDefinitionRefs, compareUnicode } from '../../addressing/ordering.js';
3
+ import { normalizePolicyChecks, normalizePolicyExpression, } from '../../language/policy/normalization/normalize.js';
4
+ import { admitStateTopology } from '../../language/state/topology.js';
5
+ import { canonicalizeValueSchema } from '../../language/value/profile/canonicalize.js';
6
+ export function normalizeDomainSchema(schema) {
7
+ const classes = mapRecord(schema.classes, canonicalizeClass);
8
+ const orientationByClass = new Map(Object.entries(classes)
9
+ .filter((entry) => entry[1].kind === 'edge')
10
+ .map(([name, declaration]) => [name, declaration.orientation]));
11
+ const normalized = {
12
+ format: 'astrale.dsl',
13
+ version: 'v1',
14
+ origin: schema.origin,
15
+ dependencies: mapRecord(schema.dependencies, (dependency) => ({ ...dependency })),
16
+ classes,
17
+ functions: mapRecord(schema.functions, canonicalizeFunction),
18
+ policies: mapRecord(schema.policies, canonicalizePolicy),
19
+ views: mapRecord(schema.views, canonicalizeView),
20
+ core: {
21
+ nodes: mapRecord(schema.core.nodes, (node) => ({
22
+ ref: node.ref,
23
+ class: node.class,
24
+ properties: copyJsonValue(node.properties),
25
+ })),
26
+ edges: schema.core.edges
27
+ .map((edge) => canonicalizeCoreEdge(edge, schema.origin, orientationByClass))
28
+ .sort(compareCoreEdges),
29
+ },
30
+ };
31
+ return copyJsonValue(normalized);
32
+ }
33
+ function canonicalizePolicy(value) {
34
+ return {
35
+ ref: value.ref,
36
+ ...withDescription(value),
37
+ expression: normalizePolicyExpression(value.expression),
38
+ };
39
+ }
40
+ function canonicalizeView(value) {
41
+ return {
42
+ ref: value.ref,
43
+ ...withDescription(value),
44
+ target: value.target.kind === 'domain'
45
+ ? { kind: 'domain' }
46
+ : {
47
+ kind: 'definition',
48
+ definitions: [...value.target.definitions].sort(compareDefinitionRefs),
49
+ },
50
+ };
51
+ }
52
+ function canonicalizeClass(value) {
53
+ const base = {
54
+ ...withDescription(value),
55
+ ref: value.ref,
56
+ kind: value.kind,
57
+ abstract: value.abstract,
58
+ extends: [...value.extends].sort(compareDefinitionRefs),
59
+ properties: mapRecord(value.properties, canonicalizeProperty),
60
+ };
61
+ if (value.kind === 'node') {
62
+ return {
63
+ ...base,
64
+ methods: mapRecord(value.methods, canonicalizeMethod),
65
+ ...(value.data === undefined ? {} : { data: { mediaType: value.data.mediaType } }),
66
+ ...(value.icon === undefined ? {} : { icon: value.icon }),
67
+ policies: value.policies,
68
+ };
69
+ }
70
+ return value.orientation === 'directed'
71
+ ? {
72
+ ...base,
73
+ orientation: 'directed',
74
+ endpoints: canonicalizeDirectedEndpoints(value.endpoints),
75
+ policies: value.policies,
76
+ constraints: value.constraints,
77
+ }
78
+ : {
79
+ ...base,
80
+ orientation: 'undirected',
81
+ endpoints: canonicalizeIncidentEndpoints(value.endpoints),
82
+ policies: value.policies,
83
+ constraints: value.constraints,
84
+ };
85
+ }
86
+ function canonicalizeFunction(value) {
87
+ return {
88
+ ref: value.ref,
89
+ ...canonicalizeCallable(value),
90
+ };
91
+ }
92
+ function canonicalizeCallable(value) {
93
+ const base = {
94
+ ...withDescription(value),
95
+ input: canonicalizeValueSchema(value.input, 'callable-input'),
96
+ output: canonicalizeCallableOutput(value.output),
97
+ };
98
+ return value.auth === 'authorized'
99
+ ? {
100
+ ...base,
101
+ auth: value.auth,
102
+ ...(value.policy === undefined ? {} : { policy: normalizePolicyChecks(value.policy) }),
103
+ }
104
+ : { ...base, auth: value.auth };
105
+ }
106
+ function canonicalizeMethod(value) {
107
+ return {
108
+ ...canonicalizeCallable(value),
109
+ static: value.static,
110
+ inheritance: value.inheritance,
111
+ };
112
+ }
113
+ function canonicalizeCallableOutput(value) {
114
+ switch (value.mode) {
115
+ case 'value':
116
+ return { mode: 'value', schema: canonicalizeValueSchema(value.schema, 'callable-output') };
117
+ case 'stream':
118
+ return { mode: 'stream', item: canonicalizeValueSchema(value.item, 'callable-output') };
119
+ case 'binary':
120
+ return { mode: 'binary' };
121
+ }
122
+ }
123
+ function canonicalizeProperty(value) {
124
+ return {
125
+ schema: canonicalizeValueSchema(value.schema, 'property-facet'),
126
+ required: value.required,
127
+ ...(value.auto === undefined
128
+ ? {}
129
+ : {
130
+ auto: {
131
+ on: [...new Set(value.auto.on)].sort(compareUnicode),
132
+ set: value.auto.set,
133
+ },
134
+ }),
135
+ ...(value.description === undefined ? {} : { description: value.description }),
136
+ ...(value.state === undefined
137
+ ? {}
138
+ : { state: admitStateTopology(value.state) }),
139
+ };
140
+ }
141
+ function canonicalizeDirectedEndpoints(value) {
142
+ return {
143
+ ...value,
144
+ source: { ...value.source, accepts: [...value.source.accepts].sort(compareDefinitionRefs) },
145
+ target: { ...value.target, accepts: [...value.target.accepts].sort(compareDefinitionRefs) },
146
+ };
147
+ }
148
+ function canonicalizeIncidentEndpoints(value) {
149
+ return [
150
+ { ...value[0], accepts: [...value[0].accepts].sort(compareDefinitionRefs) },
151
+ { ...value[1], accepts: [...value[1].accepts].sort(compareDefinitionRefs) },
152
+ ];
153
+ }
154
+ function canonicalizeCoreEdge(edge, origin, orientationByClass) {
155
+ const isLocal = edge.class.origin === origin;
156
+ const isUndirected = isLocal && orientationByClass.get(edge.class.name) === 'undirected';
157
+ const [source, target] = isUndirected && compareCoreEndpoints(edge.source, edge.target) > 0
158
+ ? [edge.target, edge.source]
159
+ : [edge.source, edge.target];
160
+ return {
161
+ class: edge.class,
162
+ source,
163
+ target,
164
+ properties: copyJsonValue(edge.properties),
165
+ };
166
+ }
167
+ function compareCoreEdges(left, right) {
168
+ return (compareDefinitionRefs(left.class, right.class) ||
169
+ compareCoreEndpoints(left.source, right.source) ||
170
+ compareCoreEndpoints(left.target, right.target) ||
171
+ compareBytes(json.serialize(left.properties), json.serialize(right.properties)));
172
+ }
173
+ function compareCoreEndpoints(left, right) {
174
+ if (left.kind === 'domain')
175
+ return right.kind === 'domain' ? 0 : -1;
176
+ if (right.kind === 'domain')
177
+ return 1;
178
+ return compareDefinitionRefs(left, right);
179
+ }
180
+ function compareBytes(left, right) {
181
+ const encoder = new TextEncoder();
182
+ const a = encoder.encode(left);
183
+ const b = encoder.encode(right);
184
+ const length = Math.min(a.length, b.length);
185
+ for (let index = 0; index < length; index++) {
186
+ if (a[index] !== b[index])
187
+ return (a[index] ?? 0) - (b[index] ?? 0);
188
+ }
189
+ return a.length - b.length;
190
+ }
191
+ function mapRecord(value, map) {
192
+ return Object.fromEntries(Object.entries(value)
193
+ .sort(([left], [right]) => compareUnicode(left, right))
194
+ .map(([name, entry]) => [name, map(entry, name)]));
195
+ }
196
+ function withDescription(value) {
197
+ return value.description === undefined ? {} : { description: value.description };
198
+ }
199
+ function copyJsonValue(value) {
200
+ if (typeof value === 'number') {
201
+ if (Object.is(value, -0))
202
+ throw new TypeError('Cannot canonicalize negative zero.');
203
+ return value;
204
+ }
205
+ if (value === null || typeof value !== 'object')
206
+ return value;
207
+ if (Array.isArray(value))
208
+ return value.map((entry) => copyJsonValue(entry));
209
+ return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, copyJsonValue(entry)]));
210
+ }
@@ -1,10 +1,9 @@
1
- import type { DomainSchema } from '../domain.ir.js';
2
- import type { DomainSchemaEntry, DomainSchemaLookup } from '../domain.lookup.js';
1
+ import type { DomainSchemaEntry, DomainSchemaLookup } from '../dependency/lookup.js';
2
+ import type { DomainSchema } from '../model/schema.js';
3
3
  /** Retain the exact schema objects used by one successful semantic acceptance. */
4
4
  export declare function rememberDomainClosure(schema: DomainSchema, dependencies: Iterable<DomainSchema>): void;
5
5
  /** Undefined means the value did not pass through this process's acceptance boundary. */
6
6
  export declare function knownDomainClosure(schema: DomainSchema): readonly DomainSchemaEntry[] | undefined;
7
7
  export declare function requireDomainClosure(schema: DomainSchema): readonly DomainSchemaEntry[];
8
8
  export declare function lookupForDomainClosure(schema: DomainSchema): DomainSchemaLookup;
9
- export declare function lookupEntriesForDependencies(dependencies: readonly DomainSchema[]): readonly DomainSchemaEntry[];
10
- //# sourceMappingURL=closure.d.ts.map
9
+ export declare function lookupEntriesForDependencies(dependencies: Readonly<Record<string, DomainSchema>>): readonly DomainSchemaEntry[];
@@ -1,7 +1,7 @@
1
- import { DomainSchemaError, diagnostic } from '../diagnostic.js';
2
- import { MemoryDomainSchemaLookup } from '../domain.lookup.js';
3
- import { revisionOfDomainSchema } from '../domain.revision.js';
4
- import { compareUnicode } from '../reference.js';
1
+ import { compareUnicode } from '../../addressing/ordering.js';
2
+ import { revisionOfDomainSchema } from '../canonical/revision.js';
3
+ import { MemoryDomainSchemaLookup } from '../dependency/lookup.js';
4
+ import { SchemaError, diagnostic } from '../diagnostic.js';
5
5
  const knownClosure = new WeakMap();
6
6
  /** Retain the exact schema objects used by one successful semantic acceptance. */
7
7
  export function rememberDomainClosure(schema, dependencies) {
@@ -20,7 +20,7 @@ export function requireDomainClosure(schema) {
20
20
  const closure = knownDomainClosure(schema);
21
21
  if (closure !== undefined)
22
22
  return closure;
23
- throw new DomainSchemaError([
23
+ throw new SchemaError([
24
24
  diagnostic('DV_ACCEPTANCE_CONTEXT', '', `DomainSchema ${schema.origin} has no retained acceptance context; accept it again against its exact lookup.`),
25
25
  ]);
26
26
  }
@@ -29,7 +29,7 @@ export function lookupForDomainClosure(schema) {
29
29
  }
30
30
  export function lookupEntriesForDependencies(dependencies) {
31
31
  const entries = new Map();
32
- for (const schema of dependencies) {
32
+ for (const schema of Object.values(dependencies)) {
33
33
  const revision = revisionOfDomainSchema(schema);
34
34
  entries.set(closureKey(schema.origin, revision), { schema, revision });
35
35
  for (const entry of requireDomainClosure(schema)) {
@@ -47,4 +47,3 @@ function freezeEntries(entries) {
47
47
  function closureKey(origin, revision) {
48
48
  return `${origin}\u0000${revision}`;
49
49
  }
50
- //# sourceMappingURL=closure.js.map
@@ -1,18 +1,17 @@
1
- import type { DomainDiagnostic } from '../diagnostic.js';
2
- import type { DomainSchema, DomainSchemaIR } from '../domain.ir.js';
3
- import type { DomainSchemaLookup } from '../domain.lookup.js';
4
- import type { PolicyDeclaration } from '../policy/ast.js';
5
- import type { SchemaRef, PolicyRef } from '../reference.js';
6
- import type { ResolvedDefinition } from './definition.index.js';
1
+ import type { DefinitionRef, PolicyRef } from '../../addressing/index.js';
2
+ import type { PolicyDefinition } from '../../language/policy/model/policy.js';
3
+ import type { DomainSchemaLookup } from '../dependency/lookup.js';
4
+ import type { SchemaDiagnostic } from '../diagnostic.js';
5
+ import type { DomainSchema, DomainSchemaIR } from '../model/schema.js';
6
+ import type { IndexedClassDefinition } from './definition.index.js';
7
7
  /** Transient symbol and dependency scope for one DomainSchema analysis pass. */
8
8
  export interface DomainResolutionContext {
9
9
  readonly candidate: DomainSchemaIR;
10
10
  readonly dependencies: ReadonlyMap<string, DomainSchema>;
11
- readonly definitions: ReadonlyMap<string, ResolvedDefinition>;
12
- readonly diagnostics: readonly DomainDiagnostic[];
13
- resolve(ref: SchemaRef): ResolvedDefinition | undefined;
14
- resolveAny(ref: SchemaRef): ResolvedDefinition | undefined;
15
- resolvePolicy(ref: PolicyRef): PolicyDeclaration | undefined;
11
+ readonly definitions: ReadonlyMap<string, IndexedClassDefinition>;
12
+ readonly diagnostics: readonly SchemaDiagnostic[];
13
+ resolve(ref: DefinitionRef): IndexedClassDefinition | undefined;
14
+ resolveAny(ref: DefinitionRef): IndexedClassDefinition | undefined;
15
+ resolvePolicy(ref: PolicyRef): PolicyDefinition | undefined;
16
16
  }
17
17
  export declare function buildDomainResolutionContext(candidate: DomainSchemaIR, lookup: DomainSchemaLookup): DomainResolutionContext;
18
- //# sourceMappingURL=context.d.ts.map