@astrale-os/kernel-dsl 0.2.0-beta.5 → 0.2.0-beta.7

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 (752) hide show
  1. package/dist/index.d.ts +0 -1
  2. package/dist/index.js +0 -1
  3. package/dist/upgrade/contract.d.ts +0 -1
  4. package/dist/upgrade/contract.js +0 -1
  5. package/dist/upgrade/index.d.ts +0 -1
  6. package/dist/upgrade/index.js +0 -1
  7. package/dist/v1/addressing/class-key.d.ts +12 -0
  8. package/dist/v1/addressing/class-key.js +39 -0
  9. package/dist/v1/addressing/definition-ref.d.ts +28 -0
  10. package/dist/v1/addressing/definition-ref.js +63 -0
  11. package/dist/v1/addressing/domain-dependency.d.ts +8 -0
  12. package/dist/v1/addressing/domain-dependency.js +1 -0
  13. package/dist/v1/addressing/index.d.ts +10 -4
  14. package/dist/v1/addressing/index.js +5 -3
  15. package/dist/v1/addressing/key.d.ts +14 -16
  16. package/dist/v1/addressing/key.js +24 -34
  17. package/dist/v1/addressing/method-address.d.ts +9 -0
  18. package/dist/v1/addressing/method-address.js +1 -0
  19. package/dist/v1/addressing/method-key.d.ts +15 -0
  20. package/dist/v1/addressing/method-key.js +60 -0
  21. package/dist/v1/addressing/ordering.d.ts +6 -0
  22. package/dist/v1/addressing/ordering.js +20 -0
  23. package/dist/v1/addressing/patterns.d.ts +8 -3
  24. package/dist/v1/addressing/patterns.js +7 -2
  25. package/dist/v1/addressing/property-key.d.ts +10 -15
  26. package/dist/v1/addressing/property-key.js +24 -15
  27. package/dist/v1/addressing/revision.d.ts +8 -0
  28. package/dist/v1/addressing/revision.js +8 -0
  29. package/dist/v1/builder/{callable.d.ts → callable/authoring.d.ts} +28 -14
  30. package/dist/v1/builder/{callable.js → callable/authoring.js} +23 -5
  31. package/dist/v1/builder/class/authoring.d.ts +128 -0
  32. package/dist/v1/builder/class/authoring.js +135 -0
  33. package/dist/v1/builder/class/property.d.ts +52 -0
  34. package/dist/v1/builder/class/property.js +49 -0
  35. package/dist/v1/builder/core/authoring.d.ts +32 -0
  36. package/dist/v1/builder/{core.js → core/authoring.js} +5 -7
  37. package/dist/v1/builder/index.d.ts +25 -22
  38. package/dist/v1/builder/index.js +11 -11
  39. package/dist/v1/builder/lowering/callable.d.ts +24 -0
  40. package/dist/v1/builder/{compiler → lowering}/callable.js +11 -14
  41. package/dist/v1/builder/lowering/class.d.ts +22 -0
  42. package/dist/v1/builder/lowering/class.js +129 -0
  43. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  44. package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
  45. package/dist/v1/builder/lowering/core.d.ts +22 -0
  46. package/dist/v1/builder/{compiler → lowering}/core.js +9 -6
  47. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  48. package/dist/v1/builder/{compiler → lowering}/policy.js +19 -14
  49. package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
  50. package/dist/v1/builder/lowering/schema/capture.js +70 -0
  51. package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
  52. package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +32 -42
  53. package/dist/v1/builder/lowering/schema/context.d.ts +46 -0
  54. package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +47 -60
  55. package/dist/v1/builder/{compiler/schema.ownership.d.ts → lowering/schema/ownership.d.ts} +1 -2
  56. package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +1 -2
  57. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  58. package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +34 -58
  59. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  60. package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
  61. package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +4 -5
  62. package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +5 -6
  63. package/dist/v1/builder/lowering/view.d.ts +11 -0
  64. package/dist/v1/builder/{compiler → lowering}/view.js +7 -6
  65. package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +19 -17
  66. package/dist/v1/builder/{policy.js → policy/authoring.js} +23 -12
  67. package/dist/v1/builder/schema/define.d.ts +10 -0
  68. package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
  69. package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
  70. package/dist/v1/builder/schema/diagnostic.js +31 -0
  71. package/dist/v1/builder/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
  72. package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
  73. package/dist/v1/builder/schema/input.d.ts +15 -0
  74. package/dist/v1/builder/schema/input.js +1 -0
  75. package/dist/v1/builder/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
  76. package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
  77. package/dist/v1/builder/schema/projection.d.ts +247 -0
  78. package/dist/v1/builder/schema/projection.js +1 -0
  79. package/dist/v1/builder/value/full-match.d.ts +4 -0
  80. package/dist/v1/builder/value/full-match.js +11 -0
  81. package/dist/v1/builder/value/path-metadata.d.ts +4 -0
  82. package/dist/v1/builder/{internal/path.metadata.js → value/path-metadata.js} +0 -1
  83. package/dist/v1/builder/value/path.d.ts +8 -0
  84. package/dist/v1/builder/{path.js → value/path.js} +2 -3
  85. package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
  86. package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
  87. package/dist/v1/builder/view/authoring.d.ts +21 -0
  88. package/dist/v1/builder/view/authoring.js +11 -0
  89. package/dist/v1/bundle/codec.d.ts +0 -1
  90. package/dist/v1/bundle/codec.js +13 -13
  91. package/dist/v1/bundle/create.d.ts +3 -0
  92. package/dist/v1/bundle/create.js +5 -0
  93. package/dist/v1/bundle/diagnostic.d.ts +10 -0
  94. package/dist/v1/bundle/diagnostic.js +17 -0
  95. package/dist/v1/bundle/index.d.ts +3 -2
  96. package/dist/v1/bundle/index.js +2 -2
  97. package/dist/v1/bundle/model.d.ts +1 -4
  98. package/dist/v1/bundle/model.js +0 -6
  99. package/dist/v1/bundle/structure.d.ts +1 -2
  100. package/dist/v1/bundle/structure.js +6 -6
  101. package/dist/v1/bundle/transport.d.ts +8 -0
  102. package/dist/v1/bundle/transport.js +7 -0
  103. package/dist/v1/compiled/admission/accept.d.ts +3 -0
  104. package/dist/v1/compiled/admission/accept.js +840 -0
  105. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  106. package/dist/v1/compiled/admission/revision.js +73 -0
  107. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  108. package/dist/v1/compiled/admission/semantics.js +1091 -0
  109. package/dist/v1/compiled/codec/json.d.ts +3 -0
  110. package/dist/v1/compiled/codec/json.js +9 -0
  111. package/dist/v1/compiled/compiler/compile.d.ts +4 -0
  112. package/dist/v1/compiled/compiler/compile.js +113 -0
  113. package/dist/v1/compiled/diagnostic.d.ts +11 -0
  114. package/dist/v1/compiled/diagnostic.js +13 -0
  115. package/dist/v1/compiled/index.d.ts +7 -0
  116. package/dist/v1/compiled/index.js +5 -0
  117. package/dist/v1/compiled/loader/index.d.ts +1 -0
  118. package/dist/v1/compiled/loader/index.js +1 -0
  119. package/dist/v1/compiled/loader/load.d.ts +4 -0
  120. package/dist/v1/compiled/loader/load.js +139 -0
  121. package/dist/v1/compiled/model/schema.d.ts +73 -0
  122. package/dist/v1/compiled/model/schema.js +1 -0
  123. package/dist/v1/domain/create.d.ts +8 -0
  124. package/dist/v1/domain/create.js +192 -0
  125. package/dist/v1/domain/index.d.ts +2 -0
  126. package/dist/v1/domain/index.js +1 -0
  127. package/dist/v1/domain/model/domain.d.ts +53 -0
  128. package/dist/v1/domain/model/domain.js +1 -0
  129. package/dist/v1/domain/model/input.d.ts +27 -0
  130. package/dist/v1/domain/model/input.js +1 -0
  131. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  132. package/dist/v1/domain/namespace/member-collection.js +81 -0
  133. package/dist/v1/domain/projection/classes.d.ts +4 -0
  134. package/dist/v1/domain/projection/classes.js +200 -0
  135. package/dist/v1/domain/validation/create.d.ts +18 -0
  136. package/dist/v1/domain/validation/create.js +75 -0
  137. package/dist/v1/index.d.ts +12 -5
  138. package/dist/v1/index.js +5 -3
  139. package/dist/v1/language/callable/index.d.ts +2 -0
  140. package/dist/v1/language/callable/index.js +1 -0
  141. package/dist/v1/language/callable/model/callable.d.ts +33 -0
  142. package/dist/v1/language/callable/model/callable.js +1 -0
  143. package/dist/v1/language/callable/resolved.d.ts +68 -0
  144. package/dist/v1/language/callable/resolved.js +1 -0
  145. package/dist/v1/language/class/facets.d.ts +58 -0
  146. package/dist/v1/language/class/facets.js +1 -0
  147. package/dist/v1/language/class/index.d.ts +8 -0
  148. package/dist/v1/language/class/index.js +1 -0
  149. package/dist/v1/language/class/model/class.d.ts +36 -0
  150. package/dist/v1/language/class/model/class.js +1 -0
  151. package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
  152. package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
  153. package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
  154. package/dist/v1/language/class/model/edge.js +1 -0
  155. package/dist/v1/{schema/definition → language/class/model}/property.d.ts +6 -6
  156. package/dist/v1/language/class/model/property.js +1 -0
  157. package/dist/v1/language/class/property-values.d.ts +15 -0
  158. package/dist/v1/language/class/property-values.js +30 -0
  159. package/dist/v1/language/class/resolved.d.ts +123 -0
  160. package/dist/v1/language/class/resolved.js +1 -0
  161. package/dist/v1/language/core/index.d.ts +2 -0
  162. package/dist/v1/language/core/index.js +1 -0
  163. package/dist/v1/language/core/model/core.d.ts +20 -0
  164. package/dist/v1/language/core/model/core.js +1 -0
  165. package/dist/v1/language/core/resolved.d.ts +21 -0
  166. package/dist/v1/language/core/resolved.js +1 -0
  167. package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
  168. package/dist/v1/{schema → language/definition}/metadata.js +0 -1
  169. package/dist/v1/language/definition.d.ts +7 -0
  170. package/dist/v1/language/definition.js +1 -0
  171. package/dist/v1/language/index.d.ts +23 -0
  172. package/dist/v1/language/index.js +1 -0
  173. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +2 -4
  174. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +5 -28
  175. package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
  176. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  177. package/dist/v1/language/policy/index.d.ts +3 -0
  178. package/dist/v1/language/policy/index.js +1 -0
  179. package/dist/v1/{schema/policy/ast.d.ts → language/policy/model/policy.d.ts} +7 -7
  180. package/dist/v1/language/policy/model/policy.js +1 -0
  181. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  182. package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +12 -16
  183. package/dist/v1/language/policy/resolved.d.ts +9 -0
  184. package/dist/v1/language/policy/resolved.js +1 -0
  185. package/dist/v1/language/resolved.d.ts +10 -0
  186. package/dist/v1/language/resolved.js +1 -0
  187. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  188. package/dist/v1/language/validation/diagnostic.js +3 -0
  189. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  190. package/dist/v1/language/value/compile/fields.js +60 -0
  191. package/dist/v1/{schema/compiled/program.d.ts → language/value/compile/load.d.ts} +1 -2
  192. package/dist/v1/{schema/compiled/program.js → language/value/compile/load.js} +2 -3
  193. package/dist/v1/language/value/compile/model.d.ts +27 -0
  194. package/dist/v1/language/value/compile/model.js +1 -0
  195. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
  196. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
  197. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
  198. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +3 -4
  199. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.d.ts +2 -3
  200. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.js +6 -8
  201. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  202. package/dist/v1/language/value/evaluate/program.js +16 -0
  203. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +4 -5
  204. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
  205. package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
  206. package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +4 -5
  207. package/dist/v1/language/value/index.d.ts +11 -0
  208. package/dist/v1/language/value/index.js +8 -0
  209. package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
  210. package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
  211. package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
  212. package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
  213. package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
  214. package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
  215. package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
  216. package/dist/v1/{schema → language}/value/ordering.js +15 -13
  217. package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
  218. package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
  219. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  220. package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
  221. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
  222. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +0 -1
  223. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  224. package/dist/v1/{schema → language}/value/profile/meta-schema.js +1 -2
  225. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  226. package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
  227. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  228. package/dist/v1/{schema → language}/value/profile/validate.js +13 -21
  229. package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
  230. package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
  231. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  232. package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
  233. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
  234. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
  235. package/dist/v1/language/value/reference/references.d.ts +17 -0
  236. package/dist/v1/language/value/reference/references.js +45 -0
  237. package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
  238. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  239. package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
  240. package/dist/v1/language/value/reference/registry.js +1 -0
  241. package/dist/v1/{schema → language}/value/regexp/ast.d.ts +0 -1
  242. package/dist/v1/{schema → language}/value/regexp/ast.js +0 -1
  243. package/dist/v1/{schema → language}/value/regexp/compile.d.ts +1 -2
  244. package/dist/v1/{schema → language}/value/regexp/compile.js +0 -1
  245. package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
  246. package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
  247. package/dist/v1/{schema → language}/value/regexp/matcher.d.ts +1 -2
  248. package/dist/v1/{schema → language}/value/regexp/matcher.js +0 -1
  249. package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
  250. package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
  251. package/dist/v1/{schema → language}/value/regexp/syntax.d.ts +0 -1
  252. package/dist/v1/{schema → language}/value/regexp/syntax.js +0 -1
  253. package/dist/v1/{schema/value → language/value/syntax}/full-match.d.ts +0 -1
  254. package/dist/v1/{schema/value → language/value/syntax}/full-match.js +3 -4
  255. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
  256. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
  257. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
  258. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
  259. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  260. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +12 -12
  261. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
  262. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
  263. package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
  264. package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
  265. package/dist/v1/language/view/index.d.ts +2 -0
  266. package/dist/v1/language/view/index.js +1 -0
  267. package/dist/v1/language/view/model/view.d.ts +11 -0
  268. package/dist/v1/language/view/model/view.js +1 -0
  269. package/dist/v1/language/view/resolved.d.ts +9 -0
  270. package/dist/v1/language/view/resolved.js +1 -0
  271. package/dist/v1/schema/admission/accept.d.ts +3 -0
  272. package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
  273. package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +15 -17
  274. package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
  275. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  276. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  277. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  278. package/dist/v1/schema/canonical/domain.js +3 -223
  279. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  280. package/dist/v1/schema/canonical/freeze.js +0 -1
  281. package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
  282. package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +3 -4
  283. package/dist/v1/schema/{domain.header.d.ts → codec/header.d.ts} +6 -4
  284. package/dist/v1/schema/codec/header.js +23 -0
  285. package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
  286. package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
  287. package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
  288. package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +120 -123
  289. package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
  290. package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
  291. package/dist/v1/schema/diagnostic.d.ts +7 -7
  292. package/dist/v1/schema/diagnostic.js +9 -9
  293. package/dist/v1/schema/index.d.ts +24 -40
  294. package/dist/v1/schema/index.js +11 -18
  295. package/dist/v1/schema/model/format.d.ts +2 -0
  296. package/dist/v1/schema/model/format.js +2 -0
  297. package/dist/v1/schema/model/schema.d.ts +37 -0
  298. package/dist/v1/schema/model/schema.js +4 -0
  299. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  300. package/dist/v1/schema/normalization/domain.js +207 -0
  301. package/dist/v1/schema/resolution/closure.d.ts +2 -3
  302. package/dist/v1/schema/resolution/closure.js +5 -6
  303. package/dist/v1/schema/resolution/context.d.ts +11 -12
  304. package/dist/v1/schema/resolution/context.js +5 -5
  305. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  306. package/dist/v1/schema/resolution/definition.index.js +8 -18
  307. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  308. package/dist/v1/schema/resolution/domain.js +109 -0
  309. package/dist/v1/schema/resolution/origins.d.ts +11 -14
  310. package/dist/v1/schema/resolution/origins.js +31 -42
  311. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  312. package/dist/v1/schema/resolution/value.registry.js +5 -12
  313. package/dist/v1/schema/revision.d.ts +1 -0
  314. package/dist/v1/schema/revision.js +1 -0
  315. package/dist/v1/schema/validation/class.d.ts +5 -0
  316. package/dist/v1/schema/validation/class.js +208 -0
  317. package/dist/v1/schema/validation/core.d.ts +5 -0
  318. package/dist/v1/schema/{core/validate.js → validation/core.js} +35 -28
  319. package/dist/v1/schema/validation/domain.d.ts +11 -0
  320. package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
  321. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  322. package/dist/v1/schema/validation/domain.route.js +3 -4
  323. package/dist/v1/schema/validation/domain.structure.d.ts +1 -2
  324. package/dist/v1/schema/validation/domain.structure.js +53 -82
  325. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  326. package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +2 -32
  327. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  328. package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
  329. package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
  330. package/dist/v1/schema/{policy/validation → validation/policy}/references.js +16 -9
  331. package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
  332. package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +24 -66
  333. package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
  334. package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +20 -34
  335. package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
  336. package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
  337. package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
  338. package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
  339. package/dist/v1/schema/validation/value.d.ts +4 -5
  340. package/dist/v1/schema/validation/value.js +4 -9
  341. package/dist/v1/schema/validation/view.d.ts +3 -0
  342. package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
  343. package/dist/v1/value/full-match.d.ts +2 -0
  344. package/dist/v1/value/full-match.js +2 -0
  345. package/dist/v1.d.ts +1 -2
  346. package/dist/v1.js +1 -2
  347. package/dist/value/accept.d.ts +0 -1
  348. package/dist/value/accept.js +0 -1
  349. package/dist/value/canonical.d.ts +0 -1
  350. package/dist/value/canonical.js +0 -1
  351. package/dist/value/decode.d.ts +0 -1
  352. package/dist/value/decode.js +0 -1
  353. package/dist/value/equal.d.ts +0 -1
  354. package/dist/value/equal.js +0 -1
  355. package/dist/value/error.d.ts +0 -1
  356. package/dist/value/error.js +0 -1
  357. package/dist/value/index.d.ts +0 -1
  358. package/dist/value/index.js +0 -1
  359. package/dist/value/json.d.ts +0 -1
  360. package/dist/value/json.js +0 -1
  361. package/dist/value/limits.d.ts +0 -1
  362. package/dist/value/limits.js +0 -1
  363. package/dist/value/types.d.ts +0 -1
  364. package/dist/value/types.js +0 -1
  365. package/dist/value/unicode.d.ts +0 -1
  366. package/dist/value/unicode.js +0 -1
  367. package/dist/version/dispatch.d.ts +0 -1
  368. package/dist/version/dispatch.js +0 -1
  369. package/dist/version/index.d.ts +0 -1
  370. package/dist/version/index.js +0 -1
  371. package/package.json +39 -19
  372. package/dist/index.d.ts.map +0 -1
  373. package/dist/index.js.map +0 -1
  374. package/dist/upgrade/contract.d.ts.map +0 -1
  375. package/dist/upgrade/contract.js.map +0 -1
  376. package/dist/upgrade/index.d.ts.map +0 -1
  377. package/dist/upgrade/index.js.map +0 -1
  378. package/dist/v1/addressing/index.d.ts.map +0 -1
  379. package/dist/v1/addressing/index.js.map +0 -1
  380. package/dist/v1/addressing/key.d.ts.map +0 -1
  381. package/dist/v1/addressing/key.js.map +0 -1
  382. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  383. package/dist/v1/addressing/patterns.js.map +0 -1
  384. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  385. package/dist/v1/addressing/property-key.js.map +0 -1
  386. package/dist/v1/addressing/ref.d.ts +0 -35
  387. package/dist/v1/addressing/ref.d.ts.map +0 -1
  388. package/dist/v1/addressing/ref.js +0 -94
  389. package/dist/v1/addressing/ref.js.map +0 -1
  390. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  391. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  392. package/dist/v1/addressing/schema-ref.js +0 -2
  393. package/dist/v1/addressing/schema-ref.js.map +0 -1
  394. package/dist/v1/builder/callable.d.ts.map +0 -1
  395. package/dist/v1/builder/callable.js.map +0 -1
  396. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  397. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  398. package/dist/v1/builder/compiler/callable.js.map +0 -1
  399. package/dist/v1/builder/compiler/core.d.ts +0 -6
  400. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  401. package/dist/v1/builder/compiler/core.js.map +0 -1
  402. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  403. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  404. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  405. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  406. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  407. package/dist/v1/builder/compiler/definition.js +0 -197
  408. package/dist/v1/builder/compiler/definition.js.map +0 -1
  409. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  410. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  411. package/dist/v1/builder/compiler/policy.js.map +0 -1
  412. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  413. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  414. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  415. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  416. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  417. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  418. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  419. package/dist/v1/builder/compiler/schema.js.map +0 -1
  420. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  421. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  422. package/dist/v1/builder/compiler/value.d.ts +0 -26
  423. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  424. package/dist/v1/builder/compiler/value.js.map +0 -1
  425. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  426. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  427. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  428. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  429. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  430. package/dist/v1/builder/compiler/view.d.ts +0 -12
  431. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  432. package/dist/v1/builder/compiler/view.js.map +0 -1
  433. package/dist/v1/builder/core.d.ts +0 -27
  434. package/dist/v1/builder/core.d.ts.map +0 -1
  435. package/dist/v1/builder/core.js.map +0 -1
  436. package/dist/v1/builder/definition.d.ts +0 -155
  437. package/dist/v1/builder/definition.d.ts.map +0 -1
  438. package/dist/v1/builder/definition.js +0 -141
  439. package/dist/v1/builder/definition.js.map +0 -1
  440. package/dist/v1/builder/full-match.d.ts +0 -5
  441. package/dist/v1/builder/full-match.d.ts.map +0 -1
  442. package/dist/v1/builder/full-match.js +0 -12
  443. package/dist/v1/builder/full-match.js.map +0 -1
  444. package/dist/v1/builder/index.d.ts.map +0 -1
  445. package/dist/v1/builder/index.js.map +0 -1
  446. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  447. package/dist/v1/builder/internal/authoring.js.map +0 -1
  448. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  449. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  450. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  451. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  452. package/dist/v1/builder/internal/diagnostic.js +0 -16
  453. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  454. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  455. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  456. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  457. package/dist/v1/builder/path.d.ts +0 -9
  458. package/dist/v1/builder/path.d.ts.map +0 -1
  459. package/dist/v1/builder/path.js.map +0 -1
  460. package/dist/v1/builder/policy.d.ts.map +0 -1
  461. package/dist/v1/builder/policy.js.map +0 -1
  462. package/dist/v1/builder/property.d.ts +0 -37
  463. package/dist/v1/builder/property.d.ts.map +0 -1
  464. package/dist/v1/builder/property.js +0 -36
  465. package/dist/v1/builder/property.js.map +0 -1
  466. package/dist/v1/builder/schema.d.ts +0 -6
  467. package/dist/v1/builder/schema.d.ts.map +0 -1
  468. package/dist/v1/builder/schema.input.d.ts +0 -19
  469. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  470. package/dist/v1/builder/schema.input.js +0 -2
  471. package/dist/v1/builder/schema.input.js.map +0 -1
  472. package/dist/v1/builder/schema.js.map +0 -1
  473. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  474. package/dist/v1/builder/value-schema.js.map +0 -1
  475. package/dist/v1/builder/view.d.ts +0 -17
  476. package/dist/v1/builder/view.d.ts.map +0 -1
  477. package/dist/v1/builder/view.js +0 -7
  478. package/dist/v1/builder/view.js.map +0 -1
  479. package/dist/v1/builder.d.ts +0 -3
  480. package/dist/v1/builder.d.ts.map +0 -1
  481. package/dist/v1/builder.js +0 -2
  482. package/dist/v1/builder.js.map +0 -1
  483. package/dist/v1/bundle/codec.d.ts.map +0 -1
  484. package/dist/v1/bundle/codec.js.map +0 -1
  485. package/dist/v1/bundle/index.d.ts.map +0 -1
  486. package/dist/v1/bundle/index.js.map +0 -1
  487. package/dist/v1/bundle/model.d.ts.map +0 -1
  488. package/dist/v1/bundle/model.js.map +0 -1
  489. package/dist/v1/bundle/structure.d.ts.map +0 -1
  490. package/dist/v1/bundle/structure.js.map +0 -1
  491. package/dist/v1/bundle.d.ts +0 -3
  492. package/dist/v1/bundle.d.ts.map +0 -1
  493. package/dist/v1/bundle.js +0 -3
  494. package/dist/v1/bundle.js.map +0 -1
  495. package/dist/v1/index.d.ts.map +0 -1
  496. package/dist/v1/index.js.map +0 -1
  497. package/dist/v1/schema/callable.d.ts +0 -29
  498. package/dist/v1/schema/callable.d.ts.map +0 -1
  499. package/dist/v1/schema/callable.js +0 -2
  500. package/dist/v1/schema/callable.js.map +0 -1
  501. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  502. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  503. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  504. package/dist/v1/schema/canonical/domain.js.map +0 -1
  505. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  506. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  507. package/dist/v1/schema/compiled/admission.d.ts +0 -4
  508. package/dist/v1/schema/compiled/admission.d.ts.map +0 -1
  509. package/dist/v1/schema/compiled/admission.js +0 -217
  510. package/dist/v1/schema/compiled/admission.js.map +0 -1
  511. package/dist/v1/schema/compiled/authored-validator.d.ts +0 -5
  512. package/dist/v1/schema/compiled/authored-validator.d.ts.map +0 -1
  513. package/dist/v1/schema/compiled/authored-validator.js +0 -7
  514. package/dist/v1/schema/compiled/authored-validator.js.map +0 -1
  515. package/dist/v1/schema/compiled/compiler.d.ts +0 -5
  516. package/dist/v1/schema/compiled/compiler.d.ts.map +0 -1
  517. package/dist/v1/schema/compiled/compiler.js +0 -86
  518. package/dist/v1/schema/compiled/compiler.js.map +0 -1
  519. package/dist/v1/schema/compiled/model.d.ts +0 -61
  520. package/dist/v1/schema/compiled/model.d.ts.map +0 -1
  521. package/dist/v1/schema/compiled/model.js +0 -2
  522. package/dist/v1/schema/compiled/model.js.map +0 -1
  523. package/dist/v1/schema/compiled/program.d.ts.map +0 -1
  524. package/dist/v1/schema/compiled/program.js.map +0 -1
  525. package/dist/v1/schema/compiled/validator.d.ts +0 -23
  526. package/dist/v1/schema/compiled/validator.d.ts.map +0 -1
  527. package/dist/v1/schema/compiled/validator.js +0 -62
  528. package/dist/v1/schema/compiled/validator.js.map +0 -1
  529. package/dist/v1/schema/core/declaration.d.ts +0 -17
  530. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  531. package/dist/v1/schema/core/declaration.js +0 -2
  532. package/dist/v1/schema/core/declaration.js.map +0 -1
  533. package/dist/v1/schema/core/validate.d.ts +0 -6
  534. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  535. package/dist/v1/schema/core/validate.js.map +0 -1
  536. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  537. package/dist/v1/schema/definition/analysis.js.map +0 -1
  538. package/dist/v1/schema/definition/class.d.ts +0 -28
  539. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  540. package/dist/v1/schema/definition/class.js +0 -2
  541. package/dist/v1/schema/definition/class.js.map +0 -1
  542. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  543. package/dist/v1/schema/definition/data.js.map +0 -1
  544. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  545. package/dist/v1/schema/definition/edge.js +0 -2
  546. package/dist/v1/schema/definition/edge.js.map +0 -1
  547. package/dist/v1/schema/definition/interface.d.ts +0 -22
  548. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  549. package/dist/v1/schema/definition/interface.js +0 -2
  550. package/dist/v1/schema/definition/interface.js.map +0 -1
  551. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  552. package/dist/v1/schema/definition/property.js +0 -2
  553. package/dist/v1/schema/definition/property.js.map +0 -1
  554. package/dist/v1/schema/definition/validate.d.ts +0 -5
  555. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  556. package/dist/v1/schema/definition/validate.js +0 -221
  557. package/dist/v1/schema/definition/validate.js.map +0 -1
  558. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  559. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  560. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  561. package/dist/v1/schema/diagnostic.js.map +0 -1
  562. package/dist/v1/schema/domain.accept.d.ts +0 -4
  563. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  564. package/dist/v1/schema/domain.accept.js.map +0 -1
  565. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  566. package/dist/v1/schema/domain.codec.js.map +0 -1
  567. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  568. package/dist/v1/schema/domain.header.js +0 -21
  569. package/dist/v1/schema/domain.header.js.map +0 -1
  570. package/dist/v1/schema/domain.ir.d.ts +0 -40
  571. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  572. package/dist/v1/schema/domain.ir.js +0 -5
  573. package/dist/v1/schema/domain.ir.js.map +0 -1
  574. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  575. package/dist/v1/schema/domain.lookup.js.map +0 -1
  576. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  577. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  578. package/dist/v1/schema/domain.resolve.js +0 -43
  579. package/dist/v1/schema/domain.resolve.js.map +0 -1
  580. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  581. package/dist/v1/schema/domain.revision.js.map +0 -1
  582. package/dist/v1/schema/domain.validate.d.ts +0 -12
  583. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  584. package/dist/v1/schema/domain.validate.js.map +0 -1
  585. package/dist/v1/schema/index.d.ts.map +0 -1
  586. package/dist/v1/schema/index.js.map +0 -1
  587. package/dist/v1/schema/metadata.d.ts.map +0 -1
  588. package/dist/v1/schema/metadata.js.map +0 -1
  589. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  590. package/dist/v1/schema/policy/ast.js +0 -2
  591. package/dist/v1/schema/policy/ast.js.map +0 -1
  592. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  593. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  594. package/dist/v1/schema/policy/normalize.js.map +0 -1
  595. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  596. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  597. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  598. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  599. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  600. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  601. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  602. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  603. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  604. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  605. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  606. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  607. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  608. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  609. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  610. package/dist/v1/schema/reference.d.ts +0 -43
  611. package/dist/v1/schema/reference.d.ts.map +0 -1
  612. package/dist/v1/schema/reference.js +0 -31
  613. package/dist/v1/schema/reference.js.map +0 -1
  614. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  615. package/dist/v1/schema/resolution/closure.js.map +0 -1
  616. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  617. package/dist/v1/schema/resolution/context.js.map +0 -1
  618. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  619. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  620. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  621. package/dist/v1/schema/resolution/origins.js.map +0 -1
  622. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  623. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  624. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  625. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  626. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  627. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  628. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  629. package/dist/v1/schema/validation/value.js.map +0 -1
  630. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  631. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  632. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  633. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  634. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  635. package/dist/v1/schema/value/full-match.d.ts.map +0 -1
  636. package/dist/v1/schema/value/full-match.js.map +0 -1
  637. package/dist/v1/schema/value/index.d.ts.map +0 -1
  638. package/dist/v1/schema/value/index.js.map +0 -1
  639. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  640. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  641. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  642. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  643. package/dist/v1/schema/value/instance/preparation.d.ts.map +0 -1
  644. package/dist/v1/schema/value/instance/preparation.js.map +0 -1
  645. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  646. package/dist/v1/schema/value/instance/types.js.map +0 -1
  647. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  648. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  649. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  650. package/dist/v1/schema/value/instant.js.map +0 -1
  651. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  652. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  653. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  654. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  655. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  656. package/dist/v1/schema/value/location/walk.js.map +0 -1
  657. package/dist/v1/schema/value/object.d.ts.map +0 -1
  658. package/dist/v1/schema/value/object.js.map +0 -1
  659. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  660. package/dist/v1/schema/value/ordering.js.map +0 -1
  661. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  662. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  663. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  664. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  665. package/dist/v1/schema/value/profile/dialect.js +0 -36
  666. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  667. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  668. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  669. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  670. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  671. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  672. package/dist/v1/schema/value/profile/meta-schema.d.ts +0 -5
  673. package/dist/v1/schema/value/profile/meta-schema.d.ts.map +0 -1
  674. package/dist/v1/schema/value/profile/meta-schema.js.map +0 -1
  675. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  676. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  677. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  678. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  679. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  680. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  681. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  682. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  683. package/dist/v1/schema/value/regexp/ast.d.ts.map +0 -1
  684. package/dist/v1/schema/value/regexp/ast.js.map +0 -1
  685. package/dist/v1/schema/value/regexp/compile.d.ts.map +0 -1
  686. package/dist/v1/schema/value/regexp/compile.js.map +0 -1
  687. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  688. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  689. package/dist/v1/schema/value/regexp/linear.js +0 -24
  690. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  691. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  692. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  693. package/dist/v1/schema/value/regexp/matcher.d.ts.map +0 -1
  694. package/dist/v1/schema/value/regexp/matcher.js.map +0 -1
  695. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  696. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  697. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  698. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  699. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  700. package/dist/v1/schema/value/registry.js +0 -2
  701. package/dist/v1/schema/value/registry.js.map +0 -1
  702. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  703. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  704. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  705. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  706. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  707. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  708. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  709. package/dist/v1/schema/value/resources/references.js +0 -93
  710. package/dist/v1/schema/value/resources/references.js.map +0 -1
  711. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  712. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  713. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  714. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  715. package/dist/v1/schema/value/schema.js.map +0 -1
  716. package/dist/v1/schema/view/declaration.d.ts +0 -12
  717. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  718. package/dist/v1/schema/view/declaration.js +0 -2
  719. package/dist/v1/schema/view/declaration.js.map +0 -1
  720. package/dist/v1/schema/view/validate.d.ts +0 -4
  721. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  722. package/dist/v1/schema/view/validate.js.map +0 -1
  723. package/dist/v1/schema.d.ts +0 -3
  724. package/dist/v1/schema.d.ts.map +0 -1
  725. package/dist/v1/schema.js +0 -3
  726. package/dist/v1/schema.js.map +0 -1
  727. package/dist/v1.d.ts.map +0 -1
  728. package/dist/v1.js.map +0 -1
  729. package/dist/value/accept.d.ts.map +0 -1
  730. package/dist/value/accept.js.map +0 -1
  731. package/dist/value/canonical.d.ts.map +0 -1
  732. package/dist/value/canonical.js.map +0 -1
  733. package/dist/value/decode.d.ts.map +0 -1
  734. package/dist/value/decode.js.map +0 -1
  735. package/dist/value/equal.d.ts.map +0 -1
  736. package/dist/value/equal.js.map +0 -1
  737. package/dist/value/error.d.ts.map +0 -1
  738. package/dist/value/error.js.map +0 -1
  739. package/dist/value/index.d.ts.map +0 -1
  740. package/dist/value/index.js.map +0 -1
  741. package/dist/value/json.d.ts.map +0 -1
  742. package/dist/value/json.js.map +0 -1
  743. package/dist/value/limits.d.ts.map +0 -1
  744. package/dist/value/limits.js.map +0 -1
  745. package/dist/value/types.d.ts.map +0 -1
  746. package/dist/value/types.js.map +0 -1
  747. package/dist/value/unicode.d.ts.map +0 -1
  748. package/dist/value/unicode.js.map +0 -1
  749. package/dist/version/dispatch.d.ts.map +0 -1
  750. package/dist/version/dispatch.js.map +0 -1
  751. package/dist/version/index.d.ts.map +0 -1
  752. package/dist/version/index.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { prepareValueSchema } from './instance/preparation.js';
2
- import { locationKey } from './resources/closure.js';
1
+ import { loadValueProgram } from './compile/load.js';
2
+ import { prepareValueSchema } from './evaluate/preparation.js';
3
3
  const ALL_JSON_KINDS = new Set([
4
4
  'null',
5
5
  'boolean',
@@ -26,6 +26,17 @@ export function classifyOrdering(contract, registry) {
26
26
  ? kind
27
27
  : undefined;
28
28
  }
29
+ /** Recompute the scalar ordering classification from one admitted portable value program. */
30
+ export function classifyValueProgramOrdering(program) {
31
+ const compiled = loadValueProgram(program);
32
+ const candidates = new OrderingClassifier(compiled).classify(compiled.root);
33
+ if (candidates.size !== 1)
34
+ return undefined;
35
+ const [kind] = candidates;
36
+ return kind === 'boolean' || kind === 'number' || kind === 'string' || kind === 'instant'
37
+ ? kind
38
+ : undefined;
39
+ }
29
40
  class OrderingClassifier {
30
41
  compiled;
31
42
  active = new Set();
@@ -72,10 +83,7 @@ class OrderingClassifier {
72
83
  candidates = intersect(candidates, normalize(new Set(schema.enum.map(kindOfValue))));
73
84
  }
74
85
  if (Object.hasOwn(schema, '$ref')) {
75
- const resolved = this.compiled.resolutions.get(location.key);
76
- if (resolved === undefined)
77
- return new Set();
78
- const target = this.compiled.locations.get(locationKey(resolved.resource.key, resolved.pointer));
86
+ const target = this.compiled.reference(location);
79
87
  if (target === undefined)
80
88
  return new Set();
81
89
  candidates = intersect(candidates, this.classify(target));
@@ -99,12 +107,7 @@ class OrderingClassifier {
99
107
  return candidates;
100
108
  }
101
109
  child(location, keyword, index) {
102
- const suffix = index === undefined ? `/${keyword}` : `/${keyword}/${index}`;
103
- const child = this.compiled.locations.get(`${location.key}${suffix}`);
104
- if (child === undefined) {
105
- throw new TypeError('Prepared value schema child is absent from its closure.');
106
- }
107
- return child;
110
+ return this.compiled.child(location, keyword, index);
108
111
  }
109
112
  }
110
113
  function typesOf(input) {
@@ -169,4 +172,3 @@ function normalize(input) {
169
172
  function schemaList(input) {
170
173
  return Array.isArray(input) ? input : undefined;
171
174
  }
172
- //# sourceMappingURL=ordering.js.map
@@ -1,5 +1,4 @@
1
- import type { ValueSchemaRegistry } from '../registry.js';
2
- import type { JsonSchema, ValueSchemaContext } from '../schema.js';
1
+ import type { JsonSchema, ValueSchemaContext } from '../model/schema.js';
2
+ import type { ValueSchemaRegistry } from '../reference/registry.js';
3
3
  /** Canonicalizes syntax without rewriting the schema's algebra. Validate first. */
4
4
  export declare function canonicalizeValueSchema(schema: JsonSchema, context?: ValueSchemaContext, registry?: ValueSchemaRegistry): JsonSchema;
5
- //# sourceMappingURL=canonicalize.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import { json } from '@astrale-os/kernel-dsl/value';
2
- import { compareSchemaRefs, compareUnicode } from '../../reference.js';
3
- import { SCHEMA_ARRAY_KEYWORDS, SCHEMA_MAP_KEYWORDS, SCHEMA_SINGLE_KEYWORDS, } from '../location/keywords.js';
4
- import { isValueObject as isJsonObject } from '../object.js';
2
+ import { compareDefinitionRefs, compareUnicode } from '../../../addressing/ordering.js';
3
+ import { isValueObject as isJsonObject } from '../model/object.js';
4
+ import { SCHEMA_ARRAY_KEYWORDS, SCHEMA_MAP_KEYWORDS, SCHEMA_SINGLE_KEYWORDS, } from '../syntax/keywords.js';
5
5
  const TYPE_ORDER = ['null', 'boolean', 'integer', 'number', 'string', 'array', 'object'];
6
6
  const TYPE_RANK = new Map(TYPE_ORDER.map((name, index) => [name, index]));
7
7
  const encoder = new TextEncoder();
@@ -17,8 +17,6 @@ function canonicalizeSchema(schema, root, context) {
17
17
  for (const keyword of Object.keys(schema).sort()) {
18
18
  if (root && keyword === '$schema')
19
19
  continue;
20
- if (root && context === 'named-type' && keyword === '$id')
21
- continue;
22
20
  const value = schema[keyword];
23
21
  if (keyword === 'required' && Array.isArray(value)) {
24
22
  assertUnique(value, String, 'required');
@@ -82,7 +80,7 @@ function canonicalizePathAnnotation(value) {
82
80
  if (key === 'accepts' && Array.isArray(entry)) {
83
81
  const accepts = entry.map(canonicalizeJson);
84
82
  assertUnique(accepts, json.serialize, 'x-astrale-path.accepts');
85
- result[key] = accepts.sort((left, right) => compareSchemaRefs(left, right));
83
+ result[key] = accepts.sort((left, right) => compareDefinitionRefs(left, right));
86
84
  }
87
85
  else
88
86
  result[key] = canonicalizeJson(entry);
@@ -130,4 +128,3 @@ function assertUnique(values, keyOf, name) {
130
128
  function isJsonSchema(value) {
131
129
  return typeof value === 'boolean' || isJsonObject(value);
132
130
  }
133
- //# sourceMappingURL=canonicalize.js.map
@@ -0,0 +1,2 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ export declare function validateCanonicalJsonDomain(value: unknown, pointer: string): readonly Diagnostic[];
@@ -1,5 +1,5 @@
1
1
  import { accept as acceptJsonValue, BoundaryError as JsonBoundaryError, } from '@astrale-os/kernel-dsl/value';
2
- import { diagnostic } from '../../diagnostic.js';
2
+ import { diagnostic } from '../../validation/diagnostic.js';
3
3
  export function validateCanonicalJsonDomain(value, pointer) {
4
4
  try {
5
5
  acceptJsonValue(value);
@@ -12,4 +12,3 @@ export function validateCanonicalJsonDomain(value, pointer) {
12
12
  return [diagnostic('VS_META_SCHEMA', pointer, 'Value is outside the JSON data model.')];
13
13
  }
14
14
  }
15
- //# sourceMappingURL=json.validate.js.map
@@ -76,4 +76,3 @@ declare namespace validate20 {
76
76
  dynamicItems: boolean;
77
77
  };
78
78
  }
79
- //# sourceMappingURL=meta-schema.compiled.d.ts.map
@@ -2077,4 +2077,3 @@ function validate20(data, { instancePath = "", parentData, parentDataProperty, r
2077
2077
  return errors === 0;
2078
2078
  }
2079
2079
  validate20.evaluated = { "props": { "fullMatch": true, "x-astrale-path": true, "definitions": true, "dependencies": true, "$recursiveAnchor": true, "$recursiveRef": true, "contentEncoding": true, "contentMediaType": true, "contentSchema": true, "format": true, "title": true, "description": true, "default": true, "deprecated": true, "readOnly": true, "writeOnly": true, "examples": true, "type": true, "const": true, "enum": true, "multipleOf": true, "maximum": true, "exclusiveMaximum": true, "minimum": true, "exclusiveMinimum": true, "maxLength": true, "minLength": true, "pattern": true, "maxItems": true, "minItems": true, "uniqueItems": true, "maxContains": true, "minContains": true, "maxProperties": true, "minProperties": true, "required": true, "dependentRequired": true, "unevaluatedItems": true, "unevaluatedProperties": true, "prefixItems": true, "items": true, "contains": true, "additionalProperties": true, "properties": true, "patternProperties": true, "dependentSchemas": true, "propertyNames": true, "if": true, "then": true, "else": true, "allOf": true, "anyOf": true, "oneOf": true, "not": true, "$id": true, "$schema": true, "$ref": true, "$anchor": true, "$dynamicRef": true, "$dynamicAnchor": true, "$vocabulary": true, "$comment": true, "$defs": true }, "dynamicProps": false, "dynamicItems": false };
2080
- //# sourceMappingURL=meta-schema.compiled.js.map
@@ -0,0 +1,4 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { JsonSchema } from '../model/schema.js';
3
+ /** Validate untrusted value-schema structure with the pinned generated meta-schema validator. */
4
+ export declare function validateValueSchemaMetaSchema(schema: JsonSchema, pointer: string): readonly Diagnostic[];
@@ -1,4 +1,4 @@
1
- import { diagnostic } from '../../diagnostic.js';
1
+ import { diagnostic } from '../../validation/diagnostic.js';
2
2
  import validateMetaSchema from './meta-schema.compiled.js';
3
3
  const validate = validateMetaSchema;
4
4
  /** Validate untrusted value-schema structure with the pinned generated meta-schema validator. */
@@ -17,4 +17,3 @@ export function validateValueSchemaMetaSchema(schema, pointer) {
17
17
  function errorMessage(error) {
18
18
  return error instanceof Error ? error.message : String(error);
19
19
  }
20
- //# sourceMappingURL=meta-schema.js.map
@@ -0,0 +1,3 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { JsonSchema, ValueSchemaContext } from '../model/schema.js';
3
+ export declare function validateSchemaProfile(schema: JsonSchema, context: ValueSchemaContext, pointer: string): readonly Diagnostic[];
@@ -1,16 +1,12 @@
1
1
  import { json } from '@astrale-os/kernel-dsl/value';
2
- import { diagnostic } from '../../diagnostic.js';
3
- import { MEMBER_NAME_PATTERN, namedTypeUri } from '../../reference.js';
4
- import { walkSchema } from '../location/walk.js';
5
- import { isValueObject as isJsonObject } from '../object.js';
2
+ import { diagnostic } from '../../validation/diagnostic.js';
3
+ import { isValueObject as isJsonObject } from '../model/object.js';
4
+ import { VALUE_SCHEMA_DIALECT } from '../model/schema.js';
6
5
  import { isIRegexp } from '../regexp/syntax.js';
7
- import { VALUE_SCHEMA_DIALECT } from '../schema.js';
6
+ import { walkSchema } from '../syntax/walk.js';
8
7
  import { FORBIDDEN_DYNAMIC_KEYWORDS, STANDARD_SCHEMA_KEYWORDS } from './vocabulary.js';
9
- export function validateSchemaProfile(schema, context, pointer, namedType) {
8
+ export function validateSchemaProfile(schema, context, pointer) {
10
9
  const diagnostics = [];
11
- if (context === 'named-type' && namedType === undefined) {
12
- diagnostics.push(diagnostic('VS_RESOURCE_ID', pointer, 'A named-type schema must have one exact identity in the supplied registry.'));
13
- }
14
10
  walkSchema(schema, (location) => {
15
11
  if (!isJsonObject(location.schema))
16
12
  return;
@@ -29,22 +25,13 @@ export function validateSchemaProfile(schema, context, pointer, namedType) {
29
25
  }
30
26
  }
31
27
  if (Object.hasOwn(location.schema, '$id')) {
32
- const expected = location.depth === 0 && context === 'named-type' && namedType !== undefined
33
- ? namedTypeUri(namedType.origin, namedType.name)
34
- : undefined;
35
- if (expected === undefined || location.schema.$id !== expected) {
36
- diagnostics.push(diagnostic('VS_RESOURCE_ID', `${currentPointer}/$id`, expected === undefined
37
- ? '$id is forbidden outside a named-type embedded root.'
38
- : `Named-type $id must be absent or equal ${expected}.`));
39
- }
28
+ diagnostics.push(diagnostic('VS_RESOURCE_ID', `${currentPointer}/$id`, '$id is forbidden in an embedded V1 value schema.'));
40
29
  }
41
30
  validateSemanticSets(location.schema, currentPointer, diagnostics);
42
31
  validateValueKind(location.schema, currentPointer, diagnostics);
43
32
  validateRegexes(location.schema, currentPointer, diagnostics);
44
33
  });
45
- if (context === 'property-facet') {
46
- validateFourKeyFacet(schema, pointer, diagnostics);
47
- }
34
+ void context;
48
35
  return diagnostics;
49
36
  }
50
37
  function validateValueKind(schema, pointer, diagnostics) {
@@ -90,35 +77,6 @@ function validateRegexes(schema, pointer, diagnostics) {
90
77
  }
91
78
  }
92
79
  }
93
- function validateFourKeyFacet(schema, pointer, diagnostics) {
94
- if (!isJsonObject(schema)) {
95
- diagnostics.push(diagnostic('VS_PROPERTY_FACET', pointer, 'A property facet is an object schema.'));
96
- return;
97
- }
98
- const keys = Object.keys(schema);
99
- const expected = ['type', 'properties', 'required', 'additionalProperties'];
100
- if (keys.length !== expected.length || !expected.every((key) => Object.hasOwn(schema, key))) {
101
- diagnostics.push(diagnostic('VS_PROPERTY_FACET', pointer, 'A property facet root contains exactly type, properties, required, and additionalProperties.'));
102
- }
103
- if (schema.type !== 'object' ||
104
- schema.additionalProperties !== false ||
105
- !isJsonObject(schema.properties) ||
106
- !Array.isArray(schema.required)) {
107
- diagnostics.push(diagnostic('VS_PROPERTY_FACET', pointer, 'Facet constants are type object and additionalProperties false, with properties and required collections.'));
108
- return;
109
- }
110
- const propertyNames = new Set(Object.keys(schema.properties));
111
- for (const name of propertyNames) {
112
- if (!MEMBER_NAME_PATTERN.test(name)) {
113
- diagnostics.push(diagnostic('VS_PROPERTY_FACET', `${pointer}/properties/${escapeToken(name)}`, `Property name ${name} violates the V1 member-name grammar.`));
114
- }
115
- }
116
- for (const required of schema.required) {
117
- if (typeof required === 'string' && !propertyNames.has(required)) {
118
- diagnostics.push(diagnostic('VS_PROPERTY_FACET', `${pointer}/required`, `Required member ${required} has no declared property schema.`));
119
- }
120
- }
121
- }
122
80
  function rejectPrimitiveDuplicates(values, pointer, name, diagnostics) {
123
81
  const seen = new Set();
124
82
  for (const value of values) {
@@ -149,4 +107,3 @@ function rejectCanonicalDuplicates(values, pointer, name, diagnostics) {
149
107
  function escapeToken(value) {
150
108
  return value.replaceAll('~', '~0').replaceAll('/', '~1');
151
109
  }
152
- //# sourceMappingURL=rules.js.map
@@ -0,0 +1,4 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { JsonSchema, ValueSchemaContext } from '../model/schema.js';
3
+ import type { ValueSchemaRegistry } from '../reference/registry.js';
4
+ export declare function validateValueSchema(schema: JsonSchema, context: ValueSchemaContext, registry: ValueSchemaRegistry, pointer?: string): Diagnostic[];
@@ -1,8 +1,9 @@
1
- import { GRAPH_NODE_PATH_SCHEMA_ID } from '../extensions/node-path/schema.js';
2
- import { validateNodePathExtension } from '../extensions/node-path/validate.js';
3
- import { collectResourceClosure } from '../resources/closure.js';
4
- import { validateProductiveRecursion } from '../resources/recursion.js';
5
- import { hasNodeDefinition, indexRegistry, inferNamedTypePlacement, } from '../resources/registry.index.js';
1
+ import { compareUnicode } from '../../../addressing/ordering.js';
2
+ import { collectResourceClosure } from '../reference/closure.js';
3
+ import { validateProductiveRecursion } from '../reference/recursion.js';
4
+ import { hasNodeDefinition, indexRegistry } from '../reference/registry.index.js';
5
+ import { GRAPH_NODE_PATH_SCHEMA_ID } from '../syntax/node-path/schema.js';
6
+ import { validateNodePathExtension } from '../syntax/node-path/validate.js';
6
7
  import { validateCanonicalJsonDomain } from './json.validate.js';
7
8
  import { validateValueSchemaMetaSchema } from './meta-schema.js';
8
9
  import { validateSchemaProfile } from './rules.js';
@@ -11,26 +12,18 @@ export function validateValueSchema(schema, context, registry, pointer = '') {
11
12
  diagnostics.push(...validateCanonicalJsonDomain(schema, pointer));
12
13
  const indexed = indexRegistry(registry, pointer);
13
14
  diagnostics.push(...indexed.diagnostics);
14
- const namedType = context === 'named-type' ? inferNamedTypePlacement(schema, indexed.index, pointer) : undefined;
15
- const closure = collectResourceClosure(schema, context, indexed.index, pointer, namedType);
15
+ const closure = collectResourceClosure(schema, context, indexed.index, pointer);
16
16
  diagnostics.push(...closure.diagnostics);
17
17
  for (const resource of closure.resources.values()) {
18
18
  // The Core-owned graph locator artifact is admitted exactly by indexRegistry. It participates
19
- // in instance evaluation, but it is not an embedded V1 value-schema resource and therefore
20
- // must not be reinterpreted under named-type placement rules.
19
+ // in instance evaluation, but it is not an embedded V1 value-schema resource.
21
20
  if (resource.key === GRAPH_NODE_PATH_SCHEMA_ID)
22
21
  continue;
23
22
  const resourcePointer = resource.diagnosticPointer ?? pointer;
24
- const resourceContext = resource === closure.resources.values().next().value ? context : 'named-type';
25
- const resourceIdentity = resource.origin === undefined || resource.name === undefined
26
- ? resourceContext === 'named-type'
27
- ? namedType
28
- : undefined
29
- : { origin: resource.origin, name: resource.name };
30
23
  diagnostics.push(...validateValueSchemaMetaSchema(resource.schema, resourcePointer));
31
24
  diagnostics.push(...validateCanonicalJsonDomain(resource.schema, resourcePointer));
32
- diagnostics.push(...validateSchemaProfile(resource.schema, resourceContext, resourcePointer, resourceIdentity));
33
- diagnostics.push(...validateNodePathExtension(resource.schema, resourceContext, resourcePointer, (ref) => hasNodeDefinition(indexed.index, ref, resource.ownerOrigin)));
25
+ diagnostics.push(...validateSchemaProfile(resource.schema, context, resourcePointer));
26
+ diagnostics.push(...validateNodePathExtension(resource.schema, context, resourcePointer, (ref) => hasNodeDefinition(indexed.index, ref, resource.ownerOrigin)));
34
27
  }
35
28
  diagnostics.push(...validateProductiveRecursion(closure.resources, closure.resolutions));
36
29
  return orderAndDeduplicate(diagnostics);
@@ -40,8 +33,7 @@ function orderAndDeduplicate(diagnostics) {
40
33
  for (const value of diagnostics) {
41
34
  unique.set(`${value.pointer}\u0000${value.code}\u0000${value.ref ?? ''}\u0000${value.message}`, value);
42
35
  }
43
- return [...unique.values()].sort((left, right) => left.pointer.localeCompare(right.pointer) ||
44
- left.code.localeCompare(right.code) ||
45
- left.message.localeCompare(right.message));
36
+ return [...unique.values()].sort((left, right) => compareUnicode(left.pointer, right.pointer) ||
37
+ compareUnicode(left.code, right.code) ||
38
+ compareUnicode(left.message, right.message));
46
39
  }
47
- //# sourceMappingURL=validate.js.map
@@ -1,3 +1,2 @@
1
1
  export declare const STANDARD_SCHEMA_KEYWORDS: Set<string>;
2
2
  export declare const FORBIDDEN_DYNAMIC_KEYWORDS: Set<string>;
3
- //# sourceMappingURL=vocabulary.d.ts.map
@@ -66,4 +66,3 @@ export const FORBIDDEN_DYNAMIC_KEYWORDS = new Set([
66
66
  '$dynamicRef',
67
67
  '$vocabulary',
68
68
  ]);
69
- //# sourceMappingURL=vocabulary.js.map
@@ -0,0 +1,11 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { JsonSchema, ValueSchemaContext } from '../model/schema.js';
3
+ import type { RegistryIndex } from './registry.index.js';
4
+ import { type ResolvedAddressReference, type SchemaResource } from './references.js';
5
+ export interface ValueSchemaResourceClosure {
6
+ readonly resources: ReadonlyMap<string, SchemaResource>;
7
+ readonly resolutions: ReadonlyMap<string, ResolvedAddressReference>;
8
+ readonly diagnostics: readonly Diagnostic[];
9
+ }
10
+ export declare function collectResourceClosure(schema: JsonSchema, context: ValueSchemaContext, index: RegistryIndex, pointer: string): ValueSchemaResourceClosure;
11
+ export declare function locationKey(resourceKey: string, pointer: string): string;
@@ -1,20 +1,16 @@
1
- import { diagnostic } from '../../diagnostic.js';
2
- import { namedTypeUri } from '../../reference.js';
3
- import { GRAPH_NODE_PATH_SCHEMA_ID, hasNodePathAnnotation } from '../extensions/node-path/schema.js';
4
- import { walkSchema } from '../location/walk.js';
5
- import { isValueObject as isJsonObject } from '../object.js';
6
- import { resolveSchemaReference, } from './references.js';
7
- export function collectResourceClosure(schema, context, index, pointer, namedType) {
1
+ import { diagnostic } from '../../validation/diagnostic.js';
2
+ import { isValueObject as isJsonObject } from '../model/object.js';
3
+ import { hasNodePathAnnotation } from '../syntax/node-path/schema.js';
4
+ import { walkSchema } from '../syntax/walk.js';
5
+ import { resolveAddressReference, } from './references.js';
6
+ export function collectResourceClosure(schema, context, index, pointer) {
8
7
  const diagnostics = [];
9
8
  const resources = new Map();
10
9
  const resolutions = new Map();
11
10
  const initial = {
12
- key: namedType === undefined
13
- ? `urn:astrale:dsl:v1:embedded:${context}`
14
- : namedTypeUri(namedType.origin, namedType.name),
11
+ key: `urn:astrale:dsl:v1:embedded:${context}`,
15
12
  schema,
16
- ownerOrigin: namedType?.origin ?? index.registry.current.origin,
17
- ...(namedType === undefined ? {} : namedType),
13
+ ownerOrigin: index.registry.current.origin,
18
14
  diagnosticPointer: pointer,
19
15
  };
20
16
  resources.set(initial.key, initial);
@@ -31,7 +27,7 @@ export function collectResourceClosure(schema, context, index, pointer, namedTyp
31
27
  diagnostics.push(diagnostic('VS_REFERENCE_FORM', refPointer, '$ref must be a string URI-reference.'));
32
28
  return;
33
29
  }
34
- const result = resolveSchemaReference(location.schema.$ref, resource, index, refPointer, hasNodePathAnnotation(location.schema));
30
+ const result = resolveAddressReference(location.schema.$ref, resource, index, refPointer, hasNodePathAnnotation(location.schema));
35
31
  if (result.diagnostic !== undefined)
36
32
  diagnostics.push(result.diagnostic);
37
33
  if (result.resolved === undefined)
@@ -40,10 +36,10 @@ export function collectResourceClosure(schema, context, index, pointer, namedTyp
40
36
  const target = result.resolved.resource;
41
37
  if (resources.has(target.key))
42
38
  return;
43
- const diagnosticPointer = target.key === GRAPH_NODE_PATH_SCHEMA_ID
44
- ? `${pointer}/registry/graphNodePath`
45
- : `${pointer}/registry/${escapeToken(target.origin ?? '')}/types/${escapeToken(target.name ?? '')}`;
46
- const registered = { ...target, diagnosticPointer };
39
+ const registered = {
40
+ ...target,
41
+ diagnosticPointer: `${pointer}/registry/graphNodePath`,
42
+ };
47
43
  resources.set(target.key, registered);
48
44
  queue.push(registered);
49
45
  });
@@ -53,7 +49,3 @@ export function collectResourceClosure(schema, context, index, pointer, namedTyp
53
49
  export function locationKey(resourceKey, pointer) {
54
50
  return `${resourceKey}\u0000${pointer}`;
55
51
  }
56
- function escapeToken(value) {
57
- return value.replaceAll('~', '~0').replaceAll('/', '~1');
58
- }
59
- //# sourceMappingURL=closure.js.map
@@ -1,6 +1,5 @@
1
- import type { DomainDiagnostic } from '../../diagnostic.js';
2
- import type { ResolvedSchemaReference, SchemaResource } from './references.js';
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { ResolvedAddressReference, SchemaResource } from './references.js';
3
3
  export declare const CONSUMING_SCHEMA_KEYWORDS: Set<string>;
4
4
  export declare const NON_CONSUMING_SCHEMA_KEYWORDS: Set<string>;
5
- export declare function validateProductiveRecursion(resources: ReadonlyMap<string, SchemaResource>, resolutions: ReadonlyMap<string, ResolvedSchemaReference>): readonly DomainDiagnostic[];
6
- //# sourceMappingURL=recursion.d.ts.map
5
+ export declare function validateProductiveRecursion(resources: ReadonlyMap<string, SchemaResource>, resolutions: ReadonlyMap<string, ResolvedAddressReference>): readonly Diagnostic[];
@@ -1,8 +1,8 @@
1
- import { diagnostic } from '../../diagnostic.js';
2
- import { SCHEMA_ARRAY_KEYWORDS, SCHEMA_MAP_KEYWORDS, SCHEMA_SINGLE_KEYWORDS, } from '../location/keywords.js';
3
- import { appendPointer } from '../location/pointer.js';
4
- import { isJsonSchema, walkSchema } from '../location/walk.js';
5
- import { isValueObject as isJsonObject } from '../object.js';
1
+ import { diagnostic } from '../../validation/diagnostic.js';
2
+ import { isValueObject as isJsonObject } from '../model/object.js';
3
+ import { SCHEMA_ARRAY_KEYWORDS, SCHEMA_MAP_KEYWORDS, SCHEMA_SINGLE_KEYWORDS, } from '../syntax/keywords.js';
4
+ import { appendPointer } from '../syntax/pointer.js';
5
+ import { isJsonSchema, walkSchema } from '../syntax/walk.js';
6
6
  import { locationKey } from './closure.js';
7
7
  export const CONSUMING_SCHEMA_KEYWORDS = new Set([
8
8
  'additionalProperties',
@@ -93,4 +93,3 @@ function findCycle(node, adjacency, visiting, visited) {
93
93
  visited.add(node);
94
94
  return undefined;
95
95
  }
96
- //# sourceMappingURL=recursion.js.map
@@ -0,0 +1,17 @@
1
+ import type { Diagnostic } from '../../validation/diagnostic.js';
2
+ import type { JsonSchema } from '../model/schema.js';
3
+ import type { RegistryIndex } from './registry.index.js';
4
+ export interface SchemaResource {
5
+ readonly key: string;
6
+ readonly schema: JsonSchema;
7
+ readonly ownerOrigin: string;
8
+ readonly diagnosticPointer?: string;
9
+ }
10
+ export interface ResolvedAddressReference {
11
+ readonly resource: SchemaResource;
12
+ readonly pointer: string;
13
+ }
14
+ export declare function resolveAddressReference(ref: string, from: SchemaResource, index: RegistryIndex, pointer: string, nodePathPlacement: boolean): {
15
+ readonly resolved?: ResolvedAddressReference;
16
+ readonly diagnostic?: Diagnostic;
17
+ };
@@ -0,0 +1,45 @@
1
+ import { diagnostic } from '../../validation/diagnostic.js';
2
+ import { GRAPH_NODE_PATH_SCHEMA_ID } from '../syntax/node-path/schema.js';
3
+ import { parseJsonPointerFragment, resolvePointer, tokensToPointer } from '../syntax/pointer.js';
4
+ import { collectSchemaPointers } from '../syntax/walk.js';
5
+ export function resolveAddressReference(ref, from, index, pointer, nodePathPlacement) {
6
+ if (ref === GRAPH_NODE_PATH_SCHEMA_ID) {
7
+ if (!nodePathPlacement) {
8
+ return {
9
+ diagnostic: diagnostic('VS_REFERENCE_FORM', pointer, 'The graph NodePath schema may be referenced only beside a valid x-astrale-path annotation.', ref),
10
+ };
11
+ }
12
+ return {
13
+ resolved: {
14
+ resource: {
15
+ key: GRAPH_NODE_PATH_SCHEMA_ID,
16
+ schema: index.registry.graphNodePath,
17
+ ownerOrigin: from.ownerOrigin,
18
+ },
19
+ pointer: '',
20
+ },
21
+ };
22
+ }
23
+ if (ref.startsWith('#')) {
24
+ const tokens = parseJsonPointerFragment(ref);
25
+ if (tokens === undefined) {
26
+ return {
27
+ diagnostic: diagnostic('VS_REFERENCE_FORM', pointer, 'A local $ref must be a JSON Pointer fragment; anchors are forbidden.', ref),
28
+ };
29
+ }
30
+ return resolveTarget(from, tokens, pointer, ref);
31
+ }
32
+ return {
33
+ diagnostic: diagnostic('VS_REFERENCE_FORM', pointer, 'A $ref must be a local JSON Pointer or the graph NodePath id at its extension site.', ref),
34
+ };
35
+ }
36
+ function resolveTarget(resource, tokens, diagnosticPointer, ref) {
37
+ const target = resolvePointer(resource.schema, tokens);
38
+ const pointer = tokensToPointer(tokens);
39
+ if (target === undefined || !collectSchemaPointers(resource.schema).has(pointer)) {
40
+ return {
41
+ diagnostic: diagnostic('VS_REFERENCE_RESOLUTION', diagnosticPointer, 'The $ref does not resolve to an exact schema location in the registry.', ref),
42
+ };
43
+ }
44
+ return { resolved: { resource, pointer } };
45
+ }
@@ -1,11 +1,14 @@
1
- import type { DefinitionRef, DomainDependency, Revision } from '../reference.js';
2
- import type { JsonSchema } from './schema.js';
1
+ import type { ClassRef } from '../../../addressing/index.js';
2
+ import type { JsonSchema } from '../model/schema.js';
3
+ export interface ValueSchemaDependency {
4
+ readonly origin: string;
5
+ readonly revision: `sha256:${string}`;
6
+ }
3
7
  export interface ValueSchemaDomainRegistry {
4
8
  readonly origin: string;
5
- readonly revision?: Revision;
6
- readonly dependencies: readonly DomainDependency[];
7
- readonly types: Readonly<Record<string, JsonSchema>>;
8
- readonly nodeDefinitions: readonly DefinitionRef[];
9
+ readonly revision?: `sha256:${string}`;
10
+ readonly dependencies: readonly ValueSchemaDependency[];
11
+ readonly nodeDefinitions: readonly ClassRef[];
9
12
  }
10
13
  /**
11
14
  * The exact closure visible while validating one DomainSchema.
@@ -19,4 +22,3 @@ export interface ValueSchemaRegistry {
19
22
  readonly transitiveDependencies: readonly ValueSchemaDomainRegistry[];
20
23
  readonly graphNodePath: JsonSchema;
21
24
  }
22
- //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1,14 @@
1
+ import type { ClassRef } from '../../../addressing/index.js';
2
+ import type { Diagnostic } from '../../validation/diagnostic.js';
3
+ import type { ValueSchemaDomainRegistry, ValueSchemaRegistry } from './registry.js';
4
+ export interface RegistryIndex {
5
+ readonly registry: ValueSchemaRegistry;
6
+ readonly domains: ReadonlyMap<string, ValueSchemaDomainRegistry>;
7
+ readonly dependenciesByOwner: ReadonlyMap<string, ReadonlyMap<string, string>>;
8
+ }
9
+ export declare function indexRegistry(registry: ValueSchemaRegistry, pointer: string): {
10
+ readonly index: RegistryIndex;
11
+ readonly diagnostics: readonly Diagnostic[];
12
+ };
13
+ export declare function isOriginVisibleFrom(index: RegistryIndex, ownerOrigin: string, targetOrigin: string): boolean;
14
+ export declare function hasNodeDefinition(index: RegistryIndex, ref: ClassRef, ownerOrigin: string): boolean;
@@ -1,8 +1,9 @@
1
- import { diagnostic } from '../../diagnostic.js';
2
- import { schemaRefIndex, DOMAIN_ORIGIN_PATTERN, DOMAIN_REVISION_PATTERN, MEMBER_NAME_PATTERN, namedTypeUri, } from '../../reference.js';
3
- import { GRAPH_NODE_PATH_SCHEMA_ID } from '../extensions/node-path/schema.js';
4
- import { isValueObject as isJsonObject } from '../object.js';
5
- import { JSON_SCHEMA_DIALECT } from '../schema.js';
1
+ import { definitionRefIndex } from '../../../addressing/ordering.js';
2
+ import { DOMAIN_ORIGIN_PATTERN, DOMAIN_REVISION_PATTERN } from '../../../addressing/patterns.js';
3
+ import { diagnostic } from '../../validation/diagnostic.js';
4
+ import { isValueObject as isJsonObject } from '../model/object.js';
5
+ import { JSON_SCHEMA_DIALECT } from '../model/schema.js';
6
+ import { GRAPH_NODE_PATH_SCHEMA_ID } from '../syntax/node-path/schema.js';
6
7
  export function indexRegistry(registry, pointer) {
7
8
  const diagnostics = [];
8
9
  const domains = new Map();
@@ -38,38 +39,6 @@ export function indexRegistry(registry, pointer) {
38
39
  validateGraphNodePathResource(registry.graphNodePath, `${pointer}/registry/graphNodePath`, diagnostics);
39
40
  return { index: { registry, domains, dependenciesByOwner }, diagnostics };
40
41
  }
41
- export function inferNamedTypePlacement(schema, index, pointer = '') {
42
- const pointerMatch = /(?:^|\/)types\/([^/]+)$/u.exec(pointer);
43
- if (pointerMatch !== null) {
44
- const encodedName = pointerMatch[1] ?? '';
45
- const name = encodedName.replaceAll('~1', '/').replaceAll('~0', '~');
46
- if (index.registry.current.types[name] === schema) {
47
- return { origin: index.registry.current.origin, name };
48
- }
49
- }
50
- const matches = [];
51
- for (const domain of index.domains.values()) {
52
- for (const [name, registered] of Object.entries(domain.types)) {
53
- if (registered === schema)
54
- matches.push({ origin: domain.origin, name });
55
- }
56
- }
57
- if (matches.length === 1)
58
- return matches[0];
59
- if (isJsonObject(schema) && typeof schema.$id === 'string') {
60
- for (const domain of index.domains.values()) {
61
- for (const name of Object.keys(domain.types)) {
62
- if (schema.$id === namedTypeUri(domain.origin, name)) {
63
- return { origin: domain.origin, name };
64
- }
65
- }
66
- }
67
- }
68
- return undefined;
69
- }
70
- export function getNamedType(index, origin, name) {
71
- return index.domains.get(origin)?.types[name];
72
- }
73
42
  export function isOriginVisibleFrom(index, ownerOrigin, targetOrigin) {
74
43
  return (ownerOrigin === targetOrigin ||
75
44
  index.dependenciesByOwner.get(ownerOrigin)?.has(targetOrigin) === true);
@@ -79,8 +48,7 @@ export function hasNodeDefinition(index, ref, ownerOrigin) {
79
48
  return false;
80
49
  return (index.domains
81
50
  .get(ref.origin)
82
- ?.nodeDefinitions.some((candidate) => schemaRefIndex(candidate) === schemaRefIndex(ref)) ===
83
- true);
51
+ ?.nodeDefinitions.some((candidate) => definitionRefIndex(candidate) === definitionRefIndex(ref)) === true);
84
52
  }
85
53
  function validateDomainRegistry(domain, pointer, revisionRequired, diagnostics) {
86
54
  if (!DOMAIN_ORIGIN_PATTERN.test(domain.origin)) {
@@ -90,11 +58,6 @@ function validateDomainRegistry(domain, pointer, revisionRequired, diagnostics)
90
58
  (domain.revision !== undefined && !DOMAIN_REVISION_PATTERN.test(domain.revision))) {
91
59
  diagnostics.push(diagnostic('VS_REFERENCE_RESOLUTION', `${pointer}/revision`, 'A dependency-closure registry entry requires its exact sha256 revision.'));
92
60
  }
93
- for (const name of Object.keys(domain.types)) {
94
- if (!MEMBER_NAME_PATTERN.test(name)) {
95
- diagnostics.push(diagnostic('VS_REFERENCE_RESOLUTION', `${pointer}/types`, `Named type ${name} does not satisfy the V1 member-name grammar.`));
96
- }
97
- }
98
61
  for (const ref of domain.nodeDefinitions) {
99
62
  if (ref.origin !== domain.origin) {
100
63
  diagnostics.push(diagnostic('VS_REFERENCE_RESOLUTION', `${pointer}/nodeDefinitions`, 'A registry domain can list only its own Node Definitions.'));
@@ -111,4 +74,3 @@ function validateGraphNodePathResource(schema, pointer, diagnostics) {
111
74
  diagnostics.push(diagnostic('VS_REFERENCE_RESOLUTION', pointer, `The graph NodePath artifact must be preloaded under exact id ${GRAPH_NODE_PATH_SCHEMA_ID}.`, GRAPH_NODE_PATH_SCHEMA_ID));
112
75
  }
113
76
  }
114
- //# sourceMappingURL=registry.index.js.map
@@ -0,0 +1 @@
1
+ export {};
@@ -19,4 +19,3 @@ export type Atom = {
19
19
  };
20
20
  /** Parse the complete RFC 9485 I-Regexp grammar into the one compiler AST. */
21
21
  export declare function parseIRegexp(source: string): Expression | undefined;
22
- //# sourceMappingURL=ast.d.ts.map
@@ -324,4 +324,3 @@ function isUnicodeScalarString(value) {
324
324
  }
325
325
  return true;
326
326
  }
327
- //# sourceMappingURL=ast.js.map