@astrale-os/kernel-protocol 0.5.0-beta.3 → 0.5.0-beta.31

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 (428) hide show
  1. package/CHANGELOG.md +683 -0
  2. package/dist/artifact/index.d.ts +0 -1
  3. package/dist/artifact/index.js +0 -1
  4. package/dist/artifact/ref.d.ts +0 -1
  5. package/dist/artifact/ref.js +0 -1
  6. package/dist/codecs/codec.d.ts +0 -1
  7. package/dist/codecs/codec.js +0 -1
  8. package/dist/codecs/index.d.ts +0 -1
  9. package/dist/codecs/index.js +0 -1
  10. package/dist/codecs/json.d.ts +0 -1
  11. package/dist/codecs/json.js +0 -1
  12. package/dist/codecs/media-types.d.ts +0 -1
  13. package/dist/codecs/media-types.js +0 -1
  14. package/dist/codecs/msgpack.d.ts +0 -1
  15. package/dist/codecs/msgpack.js +1 -5
  16. package/dist/errors/codes.d.ts +0 -1
  17. package/dist/errors/codes.js +0 -1
  18. package/dist/errors/http-status.d.ts +0 -1
  19. package/dist/errors/http-status.js +0 -1
  20. package/dist/errors/index.d.ts +0 -1
  21. package/dist/errors/index.js +0 -1
  22. package/dist/errors/payload.d.ts +0 -1
  23. package/dist/errors/payload.js +3 -3
  24. package/dist/errors/protocol-error.d.ts +0 -1
  25. package/dist/errors/protocol-error.js +4 -3
  26. package/dist/errors/reason.d.ts +0 -1
  27. package/dist/errors/reason.js +0 -1
  28. package/dist/index.d.ts +0 -1
  29. package/dist/index.js +0 -1
  30. package/dist/invocation/admission.d.ts +2 -3
  31. package/dist/invocation/admission.js +5 -8
  32. package/dist/invocation/binary.d.ts +1 -1
  33. package/dist/invocation/binary.js +14 -2
  34. package/dist/invocation/binding-codecs.d.ts +0 -1
  35. package/dist/invocation/binding-codecs.js +0 -1
  36. package/dist/invocation/cancellation.d.ts +0 -1
  37. package/dist/invocation/cancellation.js +0 -1
  38. package/dist/invocation/correlation.d.ts +0 -1
  39. package/dist/invocation/correlation.js +0 -1
  40. package/dist/invocation/delegate.d.ts +0 -1
  41. package/dist/invocation/delegate.js +0 -1
  42. package/dist/invocation/http/binary.d.ts +3 -2
  43. package/dist/invocation/http/binary.js +4 -2
  44. package/dist/invocation/http/index.d.ts +1 -2
  45. package/dist/invocation/http/index.js +1 -2
  46. package/dist/invocation/http/negotiation.d.ts +0 -1
  47. package/dist/invocation/http/negotiation.js +0 -1
  48. package/dist/invocation/http/stream.d.ts +0 -1
  49. package/dist/invocation/http/stream.js +0 -1
  50. package/dist/invocation/http/trace.d.ts +0 -1
  51. package/dist/invocation/http/trace.js +0 -1
  52. package/dist/invocation/idempotency.d.ts +0 -1
  53. package/dist/invocation/idempotency.js +0 -1
  54. package/dist/invocation/identity.d.ts +0 -1
  55. package/dist/invocation/identity.js +0 -1
  56. package/dist/invocation/index.d.ts +1 -2
  57. package/dist/invocation/index.js +1 -2
  58. package/dist/invocation/miss.d.ts +0 -1
  59. package/dist/invocation/miss.js +0 -1
  60. package/dist/invocation/redirect.d.ts +9 -8
  61. package/dist/invocation/redirect.js +6 -5
  62. package/dist/invocation/request.d.ts +0 -1
  63. package/dist/invocation/request.js +0 -1
  64. package/dist/invocation/response.d.ts +0 -1
  65. package/dist/invocation/response.js +0 -1
  66. package/dist/invocation/routing.d.ts +3 -3
  67. package/dist/invocation/routing.js +4 -4
  68. package/dist/invocation/schema.d.ts +2 -3
  69. package/dist/invocation/schema.js +2 -3
  70. package/dist/invocation/service-reason.d.ts +13 -13
  71. package/dist/invocation/service-reason.js +14 -14
  72. package/dist/invocation/stale-route.d.ts +0 -1
  73. package/dist/invocation/stale-route.js +0 -1
  74. package/dist/invocation/stream.d.ts +0 -1
  75. package/dist/invocation/stream.js +0 -1
  76. package/dist/invocation/target.d.ts +2 -3
  77. package/dist/invocation/target.js +0 -1
  78. package/dist/invocation/trace.d.ts +0 -1
  79. package/dist/invocation/trace.js +0 -1
  80. package/dist/invocation/version.d.ts +0 -1
  81. package/dist/invocation/version.js +0 -1
  82. package/dist/invocation/websocket/binary.d.ts +0 -1
  83. package/dist/invocation/websocket/binary.js +2 -2
  84. package/dist/invocation/websocket/index.d.ts +0 -1
  85. package/dist/invocation/websocket/index.js +0 -1
  86. package/dist/invocation/websocket/subprotocol.d.ts +0 -1
  87. package/dist/invocation/websocket/subprotocol.js +0 -1
  88. package/dist/issuer/configuration.d.ts +1 -2
  89. package/dist/issuer/configuration.js +0 -1
  90. package/dist/issuer/error.d.ts +0 -1
  91. package/dist/issuer/error.js +0 -1
  92. package/dist/issuer/exchange.d.ts +0 -1
  93. package/dist/issuer/exchange.js +0 -1
  94. package/dist/issuer/hosted.d.ts +1 -2
  95. package/dist/issuer/hosted.js +0 -1
  96. package/dist/issuer/index.d.ts +0 -1
  97. package/dist/issuer/index.js +0 -1
  98. package/dist/issuer/key-set.d.ts +1 -2
  99. package/dist/issuer/key-set.js +3 -3
  100. package/dist/issuer/paths.d.ts +0 -1
  101. package/dist/issuer/paths.js +0 -1
  102. package/dist/issuer/url.d.ts +1 -2
  103. package/dist/issuer/url.js +3 -3
  104. package/dist/publication/bindings/callable.d.ts +1 -2
  105. package/dist/publication/bindings/callable.js +8 -6
  106. package/dist/publication/bindings/index.d.ts +1 -2
  107. package/dist/publication/bindings/index.js +0 -1
  108. package/dist/publication/bindings/invocation.d.ts +0 -1
  109. package/dist/publication/bindings/invocation.js +0 -1
  110. package/dist/publication/bindings/view.d.ts +8 -2
  111. package/dist/publication/bindings/view.js +112 -4
  112. package/dist/publication/bundle-admission.d.ts +4 -0
  113. package/dist/publication/bundle-admission.js +65 -0
  114. package/dist/publication/bundle-descriptor.d.ts +9 -0
  115. package/dist/publication/bundle-descriptor.js +19 -0
  116. package/dist/publication/bundle-evidence.d.ts +3 -0
  117. package/dist/publication/bundle-evidence.js +13 -0
  118. package/dist/publication/bundle.d.ts +5 -12
  119. package/dist/publication/bundle.js +8 -29
  120. package/dist/publication/content.d.ts +0 -1
  121. package/dist/publication/content.js +0 -1
  122. package/dist/publication/declaration.d.ts +11 -0
  123. package/dist/publication/declaration.js +1 -0
  124. package/dist/publication/delivery/attestation.d.ts +0 -1
  125. package/dist/publication/delivery/attestation.js +0 -1
  126. package/dist/publication/delivery/claims.d.ts +8 -8
  127. package/dist/publication/delivery/claims.js +6 -7
  128. package/dist/publication/delivery/delivery.d.ts +1 -2
  129. package/dist/publication/delivery/delivery.js +1 -2
  130. package/dist/publication/delivery/error.d.ts +0 -1
  131. package/dist/publication/delivery/error.js +0 -1
  132. package/dist/publication/delivery/index.d.ts +0 -1
  133. package/dist/publication/delivery/index.js +0 -1
  134. package/dist/publication/delivery/limits.d.ts +0 -1
  135. package/dist/publication/delivery/limits.js +0 -1
  136. package/dist/publication/delivery/request.d.ts +3 -4
  137. package/dist/publication/delivery/request.js +4 -4
  138. package/dist/publication/delivery-declaration.d.ts +4 -0
  139. package/dist/publication/delivery-declaration.js +25 -0
  140. package/dist/publication/delivery-endpoint.d.ts +0 -1
  141. package/dist/publication/delivery-endpoint.js +0 -1
  142. package/dist/publication/error.d.ts +0 -1
  143. package/dist/publication/error.js +0 -1
  144. package/dist/publication/etag.d.ts +0 -1
  145. package/dist/publication/etag.js +0 -1
  146. package/dist/publication/index.d.ts +8 -5
  147. package/dist/publication/index.js +4 -2
  148. package/dist/publication/manifest.d.ts +2 -3
  149. package/dist/publication/manifest.js +10 -6
  150. package/dist/publication/publication.d.ts +13 -6
  151. package/dist/publication/publication.js +50 -71
  152. package/dist/publication/reference.d.ts +3 -3
  153. package/dist/publication/reference.js +7 -7
  154. package/dist/publication/requirements.d.ts +15 -7
  155. package/dist/publication/requirements.js +137 -47
  156. package/dist/publication/route.d.ts +6 -2
  157. package/dist/publication/route.js +31 -9
  158. package/dist/publication/schema.d.ts +3 -4
  159. package/dist/publication/schema.js +3 -4
  160. package/dist/routes/admission.d.ts +3 -0
  161. package/dist/routes/admission.js +89 -0
  162. package/dist/routes/binding.d.ts +6 -0
  163. package/dist/routes/binding.js +27 -0
  164. package/dist/routes/collision.d.ts +2 -0
  165. package/dist/routes/collision.js +16 -0
  166. package/dist/routes/compiler.d.ts +8 -0
  167. package/dist/routes/compiler.js +50 -0
  168. package/dist/routes/credential.d.ts +7 -8
  169. package/dist/routes/credential.js +7 -8
  170. package/dist/routes/decode.d.ts +4 -3
  171. package/dist/routes/decode.js +42 -42
  172. package/dist/routes/encode.d.ts +3 -3
  173. package/dist/routes/encode.js +31 -33
  174. package/dist/routes/error-response.d.ts +0 -1
  175. package/dist/routes/error-response.js +0 -1
  176. package/dist/routes/error.d.ts +0 -1
  177. package/dist/routes/error.js +0 -1
  178. package/dist/routes/evidence.d.ts +5 -0
  179. package/dist/routes/evidence.js +38 -0
  180. package/dist/routes/index.d.ts +9 -3
  181. package/dist/routes/index.js +6 -3
  182. package/dist/routes/mapping.d.ts +1 -2
  183. package/dist/routes/mapping.js +4 -13
  184. package/dist/routes/match.d.ts +3 -4
  185. package/dist/routes/match.js +3 -5
  186. package/dist/routes/placement.d.ts +5 -0
  187. package/dist/routes/placement.js +18 -0
  188. package/dist/routes/plan.d.ts +24 -0
  189. package/dist/routes/plan.js +1 -0
  190. package/dist/routes/release-unavailable.d.ts +8 -0
  191. package/dist/routes/release-unavailable.js +32 -0
  192. package/dist/routes/request.d.ts +0 -1
  193. package/dist/routes/request.js +3 -2
  194. package/dist/routes/reservation.d.ts +3 -4
  195. package/dist/routes/reservation.js +8 -5
  196. package/dist/routes/routing.d.ts +0 -1
  197. package/dist/routes/routing.js +0 -1
  198. package/dist/routes/scalar.d.ts +4 -4
  199. package/dist/routes/scalar.js +14 -11
  200. package/dist/routes/select.d.ts +2 -3
  201. package/dist/routes/select.js +2 -3
  202. package/dist/routes/stream.d.ts +0 -1
  203. package/dist/routes/stream.js +0 -1
  204. package/dist/routes/table.d.ts +9 -0
  205. package/dist/routes/table.js +1 -0
  206. package/dist/routes/target.d.ts +13 -0
  207. package/dist/routes/target.js +3 -0
  208. package/dist/routes/template.d.ts +0 -1
  209. package/dist/routes/template.js +0 -1
  210. package/dist/runtime/artifact.d.ts +3 -4
  211. package/dist/runtime/artifact.js +5 -6
  212. package/dist/runtime/index.d.ts +0 -1
  213. package/dist/runtime/index.js +0 -1
  214. package/dist/schema/index.d.ts +0 -1
  215. package/dist/schema/index.js +0 -1
  216. package/dist/schema/installation/codec.d.ts +4 -0
  217. package/dist/schema/installation/codec.js +70 -0
  218. package/dist/schema/installation/index.d.ts +2 -1
  219. package/dist/schema/installation/index.js +1 -1
  220. package/dist/schema/installation/introspection/codec.d.ts +3 -3
  221. package/dist/schema/installation/introspection/codec.js +144 -204
  222. package/dist/schema/installation/introspection/index.d.ts +2 -3
  223. package/dist/schema/installation/introspection/index.js +1 -2
  224. package/dist/schema/installation/introspection/result.d.ts +18 -23
  225. package/dist/schema/installation/introspection/result.js +0 -1
  226. package/dist/schema/installation/result.d.ts +9 -0
  227. package/dist/schema/installation/result.js +1 -0
  228. package/package.json +116 -13
  229. package/dist/artifact/index.d.ts.map +0 -1
  230. package/dist/artifact/index.js.map +0 -1
  231. package/dist/artifact/ref.d.ts.map +0 -1
  232. package/dist/artifact/ref.js.map +0 -1
  233. package/dist/codecs/codec.d.ts.map +0 -1
  234. package/dist/codecs/codec.js.map +0 -1
  235. package/dist/codecs/index.d.ts.map +0 -1
  236. package/dist/codecs/index.js.map +0 -1
  237. package/dist/codecs/json.d.ts.map +0 -1
  238. package/dist/codecs/json.js.map +0 -1
  239. package/dist/codecs/media-types.d.ts.map +0 -1
  240. package/dist/codecs/media-types.js.map +0 -1
  241. package/dist/codecs/msgpack.d.ts.map +0 -1
  242. package/dist/codecs/msgpack.js.map +0 -1
  243. package/dist/errors/codes.d.ts.map +0 -1
  244. package/dist/errors/codes.js.map +0 -1
  245. package/dist/errors/http-status.d.ts.map +0 -1
  246. package/dist/errors/http-status.js.map +0 -1
  247. package/dist/errors/index.d.ts.map +0 -1
  248. package/dist/errors/index.js.map +0 -1
  249. package/dist/errors/payload.d.ts.map +0 -1
  250. package/dist/errors/payload.js.map +0 -1
  251. package/dist/errors/protocol-error.d.ts.map +0 -1
  252. package/dist/errors/protocol-error.js.map +0 -1
  253. package/dist/errors/reason.d.ts.map +0 -1
  254. package/dist/errors/reason.js.map +0 -1
  255. package/dist/index.d.ts.map +0 -1
  256. package/dist/index.js.map +0 -1
  257. package/dist/invocation/admission.d.ts.map +0 -1
  258. package/dist/invocation/admission.js.map +0 -1
  259. package/dist/invocation/binary.d.ts.map +0 -1
  260. package/dist/invocation/binary.js.map +0 -1
  261. package/dist/invocation/binding-codecs.d.ts.map +0 -1
  262. package/dist/invocation/binding-codecs.js.map +0 -1
  263. package/dist/invocation/cancellation.d.ts.map +0 -1
  264. package/dist/invocation/cancellation.js.map +0 -1
  265. package/dist/invocation/correlation.d.ts.map +0 -1
  266. package/dist/invocation/correlation.js.map +0 -1
  267. package/dist/invocation/delegate.d.ts.map +0 -1
  268. package/dist/invocation/delegate.js.map +0 -1
  269. package/dist/invocation/http/binary.d.ts.map +0 -1
  270. package/dist/invocation/http/binary.js.map +0 -1
  271. package/dist/invocation/http/index.d.ts.map +0 -1
  272. package/dist/invocation/http/index.js.map +0 -1
  273. package/dist/invocation/http/negotiation.d.ts.map +0 -1
  274. package/dist/invocation/http/negotiation.js.map +0 -1
  275. package/dist/invocation/http/stream.d.ts.map +0 -1
  276. package/dist/invocation/http/stream.js.map +0 -1
  277. package/dist/invocation/http/trace.d.ts.map +0 -1
  278. package/dist/invocation/http/trace.js.map +0 -1
  279. package/dist/invocation/idempotency.d.ts.map +0 -1
  280. package/dist/invocation/idempotency.js.map +0 -1
  281. package/dist/invocation/identity.d.ts.map +0 -1
  282. package/dist/invocation/identity.js.map +0 -1
  283. package/dist/invocation/index.d.ts.map +0 -1
  284. package/dist/invocation/index.js.map +0 -1
  285. package/dist/invocation/miss.d.ts.map +0 -1
  286. package/dist/invocation/miss.js.map +0 -1
  287. package/dist/invocation/redirect.d.ts.map +0 -1
  288. package/dist/invocation/redirect.js.map +0 -1
  289. package/dist/invocation/request.d.ts.map +0 -1
  290. package/dist/invocation/request.js.map +0 -1
  291. package/dist/invocation/response.d.ts.map +0 -1
  292. package/dist/invocation/response.js.map +0 -1
  293. package/dist/invocation/routing.d.ts.map +0 -1
  294. package/dist/invocation/routing.js.map +0 -1
  295. package/dist/invocation/schema.d.ts.map +0 -1
  296. package/dist/invocation/schema.js.map +0 -1
  297. package/dist/invocation/service-reason.d.ts.map +0 -1
  298. package/dist/invocation/service-reason.js.map +0 -1
  299. package/dist/invocation/stale-route.d.ts.map +0 -1
  300. package/dist/invocation/stale-route.js.map +0 -1
  301. package/dist/invocation/stream.d.ts.map +0 -1
  302. package/dist/invocation/stream.js.map +0 -1
  303. package/dist/invocation/target.d.ts.map +0 -1
  304. package/dist/invocation/target.js.map +0 -1
  305. package/dist/invocation/trace.d.ts.map +0 -1
  306. package/dist/invocation/trace.js.map +0 -1
  307. package/dist/invocation/version.d.ts.map +0 -1
  308. package/dist/invocation/version.js.map +0 -1
  309. package/dist/invocation/websocket/binary.d.ts.map +0 -1
  310. package/dist/invocation/websocket/binary.js.map +0 -1
  311. package/dist/invocation/websocket/index.d.ts.map +0 -1
  312. package/dist/invocation/websocket/index.js.map +0 -1
  313. package/dist/invocation/websocket/subprotocol.d.ts.map +0 -1
  314. package/dist/invocation/websocket/subprotocol.js.map +0 -1
  315. package/dist/issuer/configuration.d.ts.map +0 -1
  316. package/dist/issuer/configuration.js.map +0 -1
  317. package/dist/issuer/error.d.ts.map +0 -1
  318. package/dist/issuer/error.js.map +0 -1
  319. package/dist/issuer/exchange.d.ts.map +0 -1
  320. package/dist/issuer/exchange.js.map +0 -1
  321. package/dist/issuer/hosted.d.ts.map +0 -1
  322. package/dist/issuer/hosted.js.map +0 -1
  323. package/dist/issuer/index.d.ts.map +0 -1
  324. package/dist/issuer/index.js.map +0 -1
  325. package/dist/issuer/key-set.d.ts.map +0 -1
  326. package/dist/issuer/key-set.js.map +0 -1
  327. package/dist/issuer/paths.d.ts.map +0 -1
  328. package/dist/issuer/paths.js.map +0 -1
  329. package/dist/issuer/url.d.ts.map +0 -1
  330. package/dist/issuer/url.js.map +0 -1
  331. package/dist/publication/bindings/callable.d.ts.map +0 -1
  332. package/dist/publication/bindings/callable.js.map +0 -1
  333. package/dist/publication/bindings/index.d.ts.map +0 -1
  334. package/dist/publication/bindings/index.js.map +0 -1
  335. package/dist/publication/bindings/invocation.d.ts.map +0 -1
  336. package/dist/publication/bindings/invocation.js.map +0 -1
  337. package/dist/publication/bindings/view.d.ts.map +0 -1
  338. package/dist/publication/bindings/view.js.map +0 -1
  339. package/dist/publication/bundle.d.ts.map +0 -1
  340. package/dist/publication/bundle.js.map +0 -1
  341. package/dist/publication/content.d.ts.map +0 -1
  342. package/dist/publication/content.js.map +0 -1
  343. package/dist/publication/delivery/attestation.d.ts.map +0 -1
  344. package/dist/publication/delivery/attestation.js.map +0 -1
  345. package/dist/publication/delivery/claims.d.ts.map +0 -1
  346. package/dist/publication/delivery/claims.js.map +0 -1
  347. package/dist/publication/delivery/delivery.d.ts.map +0 -1
  348. package/dist/publication/delivery/delivery.js.map +0 -1
  349. package/dist/publication/delivery/error.d.ts.map +0 -1
  350. package/dist/publication/delivery/error.js.map +0 -1
  351. package/dist/publication/delivery/index.d.ts.map +0 -1
  352. package/dist/publication/delivery/index.js.map +0 -1
  353. package/dist/publication/delivery/limits.d.ts.map +0 -1
  354. package/dist/publication/delivery/limits.js.map +0 -1
  355. package/dist/publication/delivery/request.d.ts.map +0 -1
  356. package/dist/publication/delivery/request.js.map +0 -1
  357. package/dist/publication/delivery-endpoint.d.ts.map +0 -1
  358. package/dist/publication/delivery-endpoint.js.map +0 -1
  359. package/dist/publication/error.d.ts.map +0 -1
  360. package/dist/publication/error.js.map +0 -1
  361. package/dist/publication/etag.d.ts.map +0 -1
  362. package/dist/publication/etag.js.map +0 -1
  363. package/dist/publication/index.d.ts.map +0 -1
  364. package/dist/publication/index.js.map +0 -1
  365. package/dist/publication/manifest.d.ts.map +0 -1
  366. package/dist/publication/manifest.js.map +0 -1
  367. package/dist/publication/publication.d.ts.map +0 -1
  368. package/dist/publication/publication.js.map +0 -1
  369. package/dist/publication/reference.d.ts.map +0 -1
  370. package/dist/publication/reference.js.map +0 -1
  371. package/dist/publication/requirements.d.ts.map +0 -1
  372. package/dist/publication/requirements.js.map +0 -1
  373. package/dist/publication/route.d.ts.map +0 -1
  374. package/dist/publication/route.js.map +0 -1
  375. package/dist/publication/schema.d.ts.map +0 -1
  376. package/dist/publication/schema.js.map +0 -1
  377. package/dist/routes/compile.d.ts +0 -5
  378. package/dist/routes/compile.d.ts.map +0 -1
  379. package/dist/routes/compile.js +0 -69
  380. package/dist/routes/compile.js.map +0 -1
  381. package/dist/routes/credential.d.ts.map +0 -1
  382. package/dist/routes/credential.js.map +0 -1
  383. package/dist/routes/decode.d.ts.map +0 -1
  384. package/dist/routes/decode.js.map +0 -1
  385. package/dist/routes/encode.d.ts.map +0 -1
  386. package/dist/routes/encode.js.map +0 -1
  387. package/dist/routes/error-response.d.ts.map +0 -1
  388. package/dist/routes/error-response.js.map +0 -1
  389. package/dist/routes/error.d.ts.map +0 -1
  390. package/dist/routes/error.js.map +0 -1
  391. package/dist/routes/index.d.ts.map +0 -1
  392. package/dist/routes/index.js.map +0 -1
  393. package/dist/routes/mapping.d.ts.map +0 -1
  394. package/dist/routes/mapping.js.map +0 -1
  395. package/dist/routes/match.d.ts.map +0 -1
  396. package/dist/routes/match.js.map +0 -1
  397. package/dist/routes/request.d.ts.map +0 -1
  398. package/dist/routes/request.js.map +0 -1
  399. package/dist/routes/reservation.d.ts.map +0 -1
  400. package/dist/routes/reservation.js.map +0 -1
  401. package/dist/routes/route.d.ts +0 -13
  402. package/dist/routes/route.d.ts.map +0 -1
  403. package/dist/routes/route.js +0 -6
  404. package/dist/routes/route.js.map +0 -1
  405. package/dist/routes/routing.d.ts.map +0 -1
  406. package/dist/routes/routing.js.map +0 -1
  407. package/dist/routes/scalar.d.ts.map +0 -1
  408. package/dist/routes/scalar.js.map +0 -1
  409. package/dist/routes/select.d.ts.map +0 -1
  410. package/dist/routes/select.js.map +0 -1
  411. package/dist/routes/stream.d.ts.map +0 -1
  412. package/dist/routes/stream.js.map +0 -1
  413. package/dist/routes/template.d.ts.map +0 -1
  414. package/dist/routes/template.js.map +0 -1
  415. package/dist/runtime/artifact.d.ts.map +0 -1
  416. package/dist/runtime/artifact.js.map +0 -1
  417. package/dist/runtime/index.d.ts.map +0 -1
  418. package/dist/runtime/index.js.map +0 -1
  419. package/dist/schema/index.d.ts.map +0 -1
  420. package/dist/schema/index.js.map +0 -1
  421. package/dist/schema/installation/index.d.ts.map +0 -1
  422. package/dist/schema/installation/index.js.map +0 -1
  423. package/dist/schema/installation/introspection/codec.d.ts.map +0 -1
  424. package/dist/schema/installation/introspection/codec.js.map +0 -1
  425. package/dist/schema/installation/introspection/index.d.ts.map +0 -1
  426. package/dist/schema/installation/introspection/index.js.map +0 -1
  427. package/dist/schema/installation/introspection/result.d.ts.map +0 -1
  428. package/dist/schema/installation/introspection/result.js.map +0 -1
@@ -0,0 +1,32 @@
1
+ import { fail } from './error.js';
2
+ export const HTTP_ROUTE_RELEASE_UNAVAILABLE = 'x-astrale-release-unavailable';
3
+ export const HTTP_ROUTE_RELEASE_UNAVAILABLE_STATUS = 410;
4
+ export function releaseUnavailableHeaders() {
5
+ return Object.freeze({
6
+ [HTTP_ROUTE_RELEASE_UNAVAILABLE]: '1',
7
+ 'cache-control': 'no-store',
8
+ });
9
+ }
10
+ export function decodeReleaseUnavailable(status, headers) {
11
+ const encoded = header(headers, HTTP_ROUTE_RELEASE_UNAVAILABLE);
12
+ if (encoded === undefined)
13
+ return undefined;
14
+ if (status !== HTTP_ROUTE_RELEASE_UNAVAILABLE_STATUS || encoded !== '1') {
15
+ fail('NATIVE_ROUTE_ROUTING_INVALID', `${HTTP_ROUTE_RELEASE_UNAVAILABLE} is reserved for status ${HTTP_ROUTE_RELEASE_UNAVAILABLE_STATUS} with value 1.`);
16
+ }
17
+ return Object.freeze({ kind: 'release-unavailable' });
18
+ }
19
+ function header(input, name) {
20
+ if (input instanceof Headers)
21
+ return input.get(name) ?? undefined;
22
+ let found;
23
+ for (const [candidate, value] of Object.entries(input ?? {})) {
24
+ if (candidate.toLowerCase() !== name || value === undefined)
25
+ continue;
26
+ if (found !== undefined || (Array.isArray(value) && value.length !== 1)) {
27
+ fail('NATIVE_ROUTE_ROUTING_INVALID', `Header ${name} must occur at most once.`);
28
+ }
29
+ found = typeof value === 'string' ? value : value[0];
30
+ }
31
+ return found;
32
+ }
@@ -24,4 +24,3 @@ export interface HttpRequest {
24
24
  export declare function bodyText(body: HttpRequest['body']): string;
25
25
  export declare function parseJsonObject(body: HttpRequest['body']): Record<string, Value>;
26
26
  export declare function normalizeHeaders(input: HttpRequest['headers']): Record<string, string>;
27
- //# sourceMappingURL=request.d.ts.map
@@ -4,7 +4,9 @@ export function bodyText(body) {
4
4
  if (body === undefined)
5
5
  return '';
6
6
  try {
7
- return typeof body === 'string' ? body : new TextDecoder('utf-8', { fatal: true }).decode(body);
7
+ return typeof body === 'string'
8
+ ? body
9
+ : new TextDecoder('utf-8', { fatal: true, ignoreBOM: false }).decode(body);
8
10
  }
9
11
  catch (cause) {
10
12
  if (cause instanceof TypeError) {
@@ -49,4 +51,3 @@ export function normalizeHeaders(input) {
49
51
  }
50
52
  return output;
51
53
  }
52
- //# sourceMappingURL=request.js.map
@@ -1,4 +1,3 @@
1
- import type { Publication } from '../publication/index.js';
2
- import type { CompiledRoute } from './route.js';
3
- export declare function rejectReserved(publication: Publication, entries: readonly CompiledRoute[]): void;
4
- //# sourceMappingURL=reservation.d.ts.map
1
+ import type { Publication } from '../publication/publication.js';
2
+ import type { Route } from './table.js';
3
+ export declare function rejectReserved(publication: Publication, entries: readonly Route[]): void;
@@ -1,5 +1,5 @@
1
1
  import * as issuer from '../issuer/index.js';
2
- import { PATH as PUBLICATION_PATH } from '../publication/index.js';
2
+ import { PATH as PUBLICATION_PATH } from '../publication/publication.js';
3
3
  import { fail } from './error.js';
4
4
  import { templateUrl, templatesOverlap } from './template.js';
5
5
  const STATIC_RESERVED_PATHS = new Set([PUBLICATION_PATH]);
@@ -15,10 +15,10 @@ export function rejectReserved(publication, entries) {
15
15
  ]),
16
16
  ];
17
17
  for (const entry of entries) {
18
- const claimed = [...reservedPaths].some((path) => templateClaimsPath(entry.route.href, path)) ||
19
- reservedUrls.some((reserved) => templatesOverlap(entry.route.href, reserved));
18
+ const claimed = [...reservedPaths].some((path) => templateClaimsPath(entry.href, path)) ||
19
+ reservedUrls.some((reserved) => templatesOverlap(entry.href, routeLocation(reserved)));
20
20
  if (claimed) {
21
- fail('NATIVE_ROUTE_RESERVED', `Route ${entry.name} claims reserved URL ${templateUrl(entry.route.href).href}.`);
21
+ fail('NATIVE_ROUTE_RESERVED', `Route ${entry.name} claims reserved URL ${templateUrl(entry.href).href}.`);
22
22
  }
23
23
  }
24
24
  }
@@ -27,8 +27,11 @@ function httpUrlForWebSocket(input) {
27
27
  url.protocol = url.protocol === 'wss:' ? 'https:' : 'http:';
28
28
  return url.toString();
29
29
  }
30
+ function routeLocation(input) {
31
+ const url = new URL(input);
32
+ return `${url.origin}${url.pathname}`;
33
+ }
30
34
  function templateClaimsPath(template, path) {
31
35
  const url = templateUrl(template);
32
36
  return templatesOverlap(template, `${url.origin}${path}`);
33
37
  }
34
- //# sourceMappingURL=reservation.js.map
@@ -20,4 +20,3 @@ export declare function decodeStale(status: number, headers: HttpRequest['header
20
20
  export declare function missHeaders(): Readonly<Record<string, string>>;
21
21
  export declare function decodeMiss(status: number, headers: HttpRequest['headers']): MissControl | undefined;
22
22
  export declare function encodeStrongEtag(input: Etag): string;
23
- //# sourceMappingURL=routing.d.ts.map
@@ -85,4 +85,3 @@ function routingHeader(input, name) {
85
85
  }
86
86
  return found;
87
87
  }
88
- //# sourceMappingURL=routing.js.map
@@ -1,7 +1,7 @@
1
+ import type { Domain } from '@astrale-os/kernel-dsl/v1';
1
2
  import type * as portable from '@astrale-os/kernel-dsl/value';
2
- import type { CompiledRoute } from './route.js';
3
- export declare function encodeScalar(entry: CompiledRoute, name: string, value: unknown): string;
4
- export declare function decodeScalar(entry: CompiledRoute, name: string, encoded: string): portable.Value;
3
+ import type { Route } from './table.js';
4
+ export declare function encodeScalar(entry: Route, name: string, value: unknown, domain: Domain): string;
5
+ export declare function decodeScalar(entry: Route, name: string, encoded: string, domain: Domain): portable.Value;
5
6
  export declare function scalar(value: unknown): string;
6
7
  export declare function asObject(value: unknown): Record<string, portable.Value>;
7
- //# sourceMappingURL=scalar.d.ts.map
@@ -1,23 +1,22 @@
1
- import { schema } from '@astrale-os/kernel-dsl/v1';
2
1
  import { invalidRequest } from './error.js';
3
2
  const JSON_NUMBER = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/u;
4
- export function encodeScalar(entry, name, value) {
3
+ export function encodeScalar(entry, name, value, domain) {
5
4
  const encoded = scalar(value);
6
- if (name === entry.route.receiver)
5
+ if (name === receiver(entry))
7
6
  return encoded;
8
- const decoded = decodeScalar(entry, name, encoded);
7
+ const decoded = decodeScalar(entry, name, encoded, domain);
9
8
  if (!sameScalar(decoded, value)) {
10
9
  invalidRequest(`Native route field ${name} does not round-trip through its declared value schema.`);
11
10
  }
12
11
  return encoded;
13
12
  }
14
- export function decodeScalar(entry, name, encoded) {
15
- if (name === entry.route.receiver)
13
+ export function decodeScalar(entry, name, encoded, domain) {
14
+ if (name === receiver(entry))
16
15
  return encoded;
17
- const input = asObject(entry.declaration.input);
18
- const contract = asObject(input.properties)[name];
19
- if (contract === undefined)
16
+ const meaning = domain.callable(entry.callable);
17
+ if (meaning?.inputFields?.includes(name) !== true) {
20
18
  invalidRequest(`Native route maps unknown input field ${name}.`);
19
+ }
21
20
  const candidates = [encoded];
22
21
  if (encoded === 'true')
23
22
  candidates.push(true);
@@ -30,7 +29,7 @@ export function decodeScalar(entry, name, encoded) {
30
29
  if (Number.isFinite(number))
31
30
  candidates.push(number);
32
31
  }
33
- const accepted = candidates.filter((candidate) => schema.values.validate(entry.owner, contract, candidate).length === 0);
32
+ const accepted = candidates.filter((candidate) => meaning.validateInputField(name, candidate).length === 0);
34
33
  if (accepted.length === 0) {
35
34
  invalidRequest(`Native route field ${name} is invalid under its declared value schema.`);
36
35
  }
@@ -39,6 +38,11 @@ export function decodeScalar(entry, name, encoded) {
39
38
  }
40
39
  return accepted[0];
41
40
  }
41
+ function receiver(entry) {
42
+ return entry.target.kind === 'method' && entry.target.dispatch === 'instance'
43
+ ? entry.target.receiver
44
+ : undefined;
45
+ }
42
46
  export function scalar(value) {
43
47
  if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
44
48
  return String(value);
@@ -55,4 +59,3 @@ function sameScalar(left, right) {
55
59
  return (Object.is(left, right) ||
56
60
  (typeof left === 'number' && typeof right === 'number' && left === 0 && right === 0));
57
61
  }
58
- //# sourceMappingURL=scalar.js.map
@@ -1,4 +1,3 @@
1
1
  import type { Key } from '@astrale-os/kernel-dsl/v1';
2
- import type { CompiledRoute } from './route.js';
3
- export declare function select(entries: readonly CompiledRoute[], callable: Key.Callable, route?: string): CompiledRoute | undefined;
4
- //# sourceMappingURL=select.d.ts.map
2
+ import type { Route, Table } from './table.js';
3
+ export declare function select(table: Table, callable: Key.Callable, route?: string): Route | undefined;
@@ -1,6 +1,6 @@
1
1
  import { RouteError } from './error.js';
2
- export function select(entries, callable, route) {
3
- const candidates = entries.filter((entry) => entry.callable === callable);
2
+ export function select(table, callable, route) {
3
+ const candidates = table.entries.filter((entry) => entry.callable === callable);
4
4
  if (route !== undefined) {
5
5
  const selected = candidates.find((entry) => entry.name === route);
6
6
  if (selected === undefined) {
@@ -14,4 +14,3 @@ export function select(entries, callable, route) {
14
14
  return candidates[0];
15
15
  return candidates.find((entry) => entry.default);
16
16
  }
17
- //# sourceMappingURL=select.js.map
@@ -12,4 +12,3 @@ export type StreamFrame = {
12
12
  };
13
13
  export declare function encodeStreamFrame(input: StreamFrame): string;
14
14
  export declare function decodeStreamFrame(event: string, data: string): StreamFrame;
15
- //# sourceMappingURL=stream.d.ts.map
@@ -48,4 +48,3 @@ export function decodeStreamFrame(event, data) {
48
48
  }
49
49
  return fail('NATIVE_ROUTE_RESPONSE_INVALID', `Unknown native stream event ${JSON.stringify(event)}.`);
50
50
  }
51
- //# sourceMappingURL=stream.js.map
@@ -0,0 +1,9 @@
1
+ import type { PublicationRef } from '../publication/index.js';
2
+ import type { PlanEntry } from './plan.js';
3
+ export interface Route extends Omit<PlanEntry, 'path'> {
4
+ readonly href: string;
5
+ }
6
+ export interface Table {
7
+ readonly publication: PublicationRef;
8
+ readonly entries: readonly Route[];
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ export type RouteTarget = {
2
+ readonly kind: 'function';
3
+ } | {
4
+ readonly kind: 'method';
5
+ readonly dispatch: 'static';
6
+ } | {
7
+ readonly kind: 'method';
8
+ readonly dispatch: 'instance';
9
+ readonly receiver: string;
10
+ };
11
+ export declare function requiresReceiver(entry: {
12
+ readonly target: RouteTarget;
13
+ }): boolean;
@@ -0,0 +1,3 @@
1
+ export function requiresReceiver(entry) {
2
+ return entry.target.kind === 'method' && entry.target.dispatch === 'instance';
3
+ }
@@ -6,4 +6,3 @@ export declare function templatesOverlap(left: string, right: string): boolean;
6
6
  export declare function matchTemplate(template: string, input: string): Record<string, string> | undefined;
7
7
  export declare function encodeTemplate(value: unknown, catchall: string | undefined, host: boolean): string;
8
8
  export declare function authorityEnd(input: string): number;
9
- //# sourceMappingURL=template.d.ts.map
@@ -225,4 +225,3 @@ function segmentsOverlap(left, right) {
225
225
  function escapePattern(value) {
226
226
  return value.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&');
227
227
  }
228
- //# sourceMappingURL=template.js.map
@@ -1,5 +1,5 @@
1
- import type { IssuerId } from '@astrale-os/kernel-core/auth';
2
- import type { Key, schema } from '@astrale-os/kernel-dsl/v1';
1
+ import type { IssuerId } from '@astrale-os/kernel-core/auth/issuer';
2
+ import type { Key, Revision } from '@astrale-os/kernel-dsl/v1';
3
3
  import type { Digest, Ref } from '../artifact/index.js';
4
4
  import type { PublicationRequirements } from '../publication/index.js';
5
5
  export interface ExecutableDependency {
@@ -24,7 +24,7 @@ export interface Export {
24
24
  }
25
25
  export interface Module {
26
26
  readonly origin: Key.Origin;
27
- readonly revision: schema.Revision;
27
+ readonly revision: Revision;
28
28
  readonly factory: Export;
29
29
  readonly configuration: Ref | null;
30
30
  }
@@ -45,4 +45,3 @@ export declare function acceptExecutable(input: unknown): Executable;
45
45
  export declare function executableDigest(input: Omit<Executable, 'digest'>): Digest;
46
46
  export declare function executableClosure(input: readonly ExecutableDependency[]): Digest;
47
47
  export type { Digest, Ref };
48
- //# sourceMappingURL=artifact.d.ts.map
@@ -1,5 +1,5 @@
1
- import { issuer } from '@astrale-os/kernel-core/auth';
2
- import { schema as dslSchema } from '@astrale-os/kernel-dsl/v1';
1
+ import { accept as acceptIssuer } from '@astrale-os/kernel-core/auth/issuer';
2
+ import { patterns } from '@astrale-os/kernel-dsl/v1/addressing';
3
3
  import * as portable from '@astrale-os/kernel-dsl/value';
4
4
  import { sha256 } from '@noble/hashes/sha2.js';
5
5
  import * as artifact from '../artifact/index.js';
@@ -13,7 +13,7 @@ export function accept(input) {
13
13
  }
14
14
  if (typeof root.issuer !== 'string')
15
15
  invalid('Domain Runtime artifact issuer is invalid.');
16
- const admittedIssuer = issuer.accept(root.issuer);
16
+ const admittedIssuer = acceptIssuer(root.issuer);
17
17
  const bundle = artifact.accept(root.bundle);
18
18
  const requirements = admitRequirements(root.requirements);
19
19
  if (!Array.isArray(root.modules) || root.modules.length === 0) {
@@ -51,10 +51,10 @@ export function executableClosure(input) {
51
51
  function module(input, index) {
52
52
  const value = record(input, `Domain Runtime Module ${index}`);
53
53
  exact(value, ['configuration', 'factory', 'origin', 'revision']);
54
- if (typeof value.origin !== 'string' || !dslSchema.patterns.origin.test(value.origin)) {
54
+ if (typeof value.origin !== 'string' || !patterns.origin.test(value.origin)) {
55
55
  invalid(`Domain Runtime Module ${index} origin is invalid.`);
56
56
  }
57
- if (typeof value.revision !== 'string' || !dslSchema.patterns.revision.test(value.revision)) {
57
+ if (typeof value.revision !== 'string' || !patterns.revision.test(value.revision)) {
58
58
  invalid(`Domain Runtime Module ${index} revision is invalid.`);
59
59
  }
60
60
  const factory = executableExport(value.factory, index);
@@ -174,4 +174,3 @@ function exact(input, expected) {
174
174
  function invalid(message) {
175
175
  throw new TypeError(message);
176
176
  }
177
- //# sourceMappingURL=artifact.js.map
@@ -1,2 +1 @@
1
1
  export { MEDIA_TYPE, accept, acceptExecutable, encode, executableClosure, executableDigest, runtimeDigest, type Digest, type Executable, type ExecutableDependency, type Export, type Module, type RuntimeArtifact, type Ref, } from './artifact.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { MEDIA_TYPE, accept, acceptExecutable, encode, executableClosure, executableDigest, runtimeDigest, } from './artifact.js';
2
- //# sourceMappingURL=index.js.map
@@ -1,2 +1 @@
1
1
  export * as installation from './installation/index.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export * as installation from './installation/index.js';
2
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,4 @@
1
+ import type { InstallResult } from './result.js';
2
+ export declare const MEDIA_TYPE: 'application/vnd.astrale.schema-installation.v1+msgpack';
3
+ export declare function encode(result: InstallResult): Promise<Uint8Array>;
4
+ export declare function decode(bytes: Uint8Array, maximumBytes: number): Promise<InstallResult>;
@@ -0,0 +1,70 @@
1
+ import { installReceipt } from '@astrale-os/kernel-core/schema/kernel/syscalls/contracts';
2
+ import { acceptDomainInfo } from './introspection/index.js';
3
+ export const MEDIA_TYPE = 'application/vnd.astrale.schema-installation.v1+msgpack';
4
+ export async function encode(result) {
5
+ const { pack } = await import('msgpackr/pack');
6
+ return new Uint8Array(pack(accept(result)));
7
+ }
8
+ export async function decode(bytes, maximumBytes) {
9
+ if (!(bytes instanceof Uint8Array) ||
10
+ !Number.isSafeInteger(maximumBytes) ||
11
+ maximumBytes < 1 ||
12
+ bytes.byteLength > maximumBytes) {
13
+ throw new TypeError('Schema installation evidence is invalid or exceeds its bound.');
14
+ }
15
+ const { unpack } = await import('msgpackr');
16
+ let value;
17
+ try {
18
+ value = unpack(bytes);
19
+ }
20
+ catch (cause) {
21
+ throw new TypeError('Schema installation evidence is malformed.', { cause });
22
+ }
23
+ return accept(value);
24
+ }
25
+ function accept(input) {
26
+ const value = record(input);
27
+ if (value.changed === true) {
28
+ exact(value, ['changed', 'receipt']);
29
+ const receipt = installReceipt.parse(value.receipt);
30
+ if (receipt.transitions.some((transition) => transition.intent.operation !== receipt.operation)) {
31
+ throw new TypeError('Schema installation Transition belongs to another operation.');
32
+ }
33
+ uniqueOrigins(receipt.transitions.map((transition) => transition.intent.origin), 'Schema installation Transitions');
34
+ return Object.freeze({
35
+ changed: true,
36
+ receipt,
37
+ });
38
+ }
39
+ if (value.changed === false) {
40
+ exact(value, ['changed', 'domains']);
41
+ if (!Array.isArray(value.domains) || value.domains.length === 0) {
42
+ throw new TypeError('Schema installation unchanged Domains are empty.');
43
+ }
44
+ const domains = value.domains.map(acceptDomainInfo);
45
+ uniqueOrigins(domains.map((domain) => domain.origin), 'Schema installation unchanged Domains');
46
+ return Object.freeze({
47
+ changed: false,
48
+ domains: Object.freeze(domains),
49
+ });
50
+ }
51
+ throw new TypeError('Schema installation result kind is invalid.');
52
+ }
53
+ function uniqueOrigins(origins, label) {
54
+ if (new Set(origins).size !== origins.length) {
55
+ throw new TypeError(`${label} contain duplicate origins.`);
56
+ }
57
+ }
58
+ function record(input) {
59
+ if (input === null || typeof input !== 'object' || Array.isArray(input)) {
60
+ throw new TypeError('Schema installation result is invalid.');
61
+ }
62
+ return input;
63
+ }
64
+ function exact(input, expected) {
65
+ const keys = Object.keys(input).sort();
66
+ const wanted = [...expected].sort();
67
+ if (keys.length !== wanted.length || keys.some((key, index) => key !== wanted[index])) {
68
+ throw new TypeError('Schema installation result fields are invalid.');
69
+ }
70
+ }
@@ -1,2 +1,3 @@
1
+ export { MEDIA_TYPE, decode, encode } from './codec.js';
1
2
  export * as introspection from './introspection/index.js';
2
- //# sourceMappingURL=index.d.ts.map
3
+ export type { InstallResult } from './result.js';
@@ -1,2 +1,2 @@
1
+ export { MEDIA_TYPE, decode, encode } from './codec.js';
1
2
  export * as introspection from './introspection/index.js';
2
- //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  import type { introspection } from '@astrale-os/kernel-core/schema';
2
- import type { Limits, ResultFor } from './result.js';
3
- export declare const MEDIA_TYPE: 'application/vnd.astrale.schema-introspection.v1+msgpack';
2
+ import type { DomainInfo, Limits, ResultFor } from './result.js';
3
+ export declare const MEDIA_TYPE: 'application/vnd.astrale.schema-introspection.v2+msgpack';
4
4
  export declare function encode<Input extends introspection.Introspection>(input: Input, result: ResultFor<Input>): Promise<Uint8Array>;
5
5
  export declare function decode<Input extends introspection.Introspection>(input: Input, bytes: Uint8Array, limits: Limits): Promise<ResultFor<Input>>;
6
- //# sourceMappingURL=codec.d.ts.map
6
+ export declare function acceptDomainInfo(input: unknown): DomainInfo;