@astrale-os/kernel-client 0.6.0-beta.7 → 0.6.0-beta.70

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 (449) hide show
  1. package/dist/auth/auth.d.ts +9 -6
  2. package/dist/auth/auth.js +2 -3
  3. package/dist/auth/authorization.d.ts +6 -4
  4. package/dist/auth/authorization.js +25 -6
  5. package/dist/auth/credential.d.ts +5 -1
  6. package/dist/auth/credential.js +6 -3
  7. package/dist/auth/identity.d.ts +6 -9
  8. package/dist/auth/identity.js +0 -1
  9. package/dist/auth/index.d.ts +3 -4
  10. package/dist/auth/index.js +2 -3
  11. package/dist/auth/register.d.ts +24 -0
  12. package/dist/auth/register.js +10 -0
  13. package/dist/client/admission.d.ts +4 -2
  14. package/dist/client/admission.js +8 -2
  15. package/dist/client/client.d.ts +0 -1
  16. package/dist/client/client.js +0 -1
  17. package/dist/client/credential.d.ts +0 -1
  18. package/dist/client/credential.js +0 -1
  19. package/dist/client/index.d.ts +0 -1
  20. package/dist/client/index.js +0 -1
  21. package/dist/client/request.d.ts +3 -3
  22. package/dist/client/request.js +3 -1
  23. package/dist/client/result.d.ts +3 -4
  24. package/dist/client/result.js +3 -1
  25. package/dist/client/routing-control.d.ts +0 -1
  26. package/dist/client/routing-control.js +0 -1
  27. package/dist/errors/client-error.d.ts +0 -1
  28. package/dist/errors/client-error.js +2 -1
  29. package/dist/errors/index.d.ts +7 -7
  30. package/dist/errors/index.js +7 -7
  31. package/dist/errors/miss-error.d.ts +0 -1
  32. package/dist/errors/miss-error.js +0 -1
  33. package/dist/errors/protocol-error.d.ts +0 -1
  34. package/dist/errors/protocol-error.js +0 -1
  35. package/dist/errors/response-error.d.ts +0 -1
  36. package/dist/errors/response-error.js +0 -1
  37. package/dist/errors/session-error.d.ts +9 -0
  38. package/dist/errors/session-error.js +9 -0
  39. package/dist/errors/stale-route-error.d.ts +0 -1
  40. package/dist/errors/stale-route-error.js +0 -1
  41. package/dist/errors/transport-error.d.ts +18 -6
  42. package/dist/errors/transport-error.js +11 -7
  43. package/dist/graph/domain/binding.d.ts +22 -0
  44. package/dist/graph/domain/binding.js +123 -0
  45. package/dist/graph/domain/domain.typecheck.d.ts +1 -0
  46. package/dist/graph/domain/domain.typecheck.js +147 -0
  47. package/dist/graph/domain/index.d.ts +3 -0
  48. package/dist/graph/domain/index.js +1 -0
  49. package/dist/graph/domain/model.d.ts +18 -0
  50. package/dist/graph/domain/model.js +1 -0
  51. package/dist/graph/domain/page.d.ts +23 -0
  52. package/dist/graph/domain/page.js +42 -0
  53. package/dist/graph/domain/project.d.ts +8 -0
  54. package/dist/graph/domain/project.js +124 -0
  55. package/dist/graph/domain/provenance.d.ts +6 -0
  56. package/dist/graph/domain/provenance.js +11 -0
  57. package/dist/graph/errors.d.ts +2 -3
  58. package/dist/graph/errors.js +1 -2
  59. package/dist/graph/expectation.d.ts +3 -0
  60. package/dist/graph/expectation.js +6 -0
  61. package/dist/graph/graph.d.ts +12 -8
  62. package/dist/graph/graph.js +0 -1
  63. package/dist/graph/index.d.ts +2 -2
  64. package/dist/graph/index.js +1 -1
  65. package/dist/graph/mutation.d.ts +2 -4
  66. package/dist/graph/mutation.js +10 -2
  67. package/dist/graph/page/index.d.ts +0 -1
  68. package/dist/graph/page/index.js +0 -1
  69. package/dist/graph/page/neighbors.d.ts +4 -5
  70. package/dist/graph/page/neighbors.js +7 -7
  71. package/dist/graph/page/page.d.ts +5 -2
  72. package/dist/graph/page/page.js +0 -1
  73. package/dist/graph/page-contract.d.ts +1 -2
  74. package/dist/graph/page-contract.js +0 -1
  75. package/dist/graph/provenance.d.ts +14 -0
  76. package/dist/graph/provenance.js +42 -0
  77. package/dist/graph/query.d.ts +3 -1
  78. package/dist/graph/query.js +33 -13
  79. package/dist/graph/read.d.ts +3 -4
  80. package/dist/graph/read.js +6 -5
  81. package/dist/index.d.ts +2 -2
  82. package/dist/index.js +2 -2
  83. package/dist/pacer/batcher/batcher.d.ts +0 -1
  84. package/dist/pacer/batcher/batcher.js +0 -1
  85. package/dist/pacer/batcher/defaults.d.ts +0 -1
  86. package/dist/pacer/batcher/defaults.js +0 -1
  87. package/dist/pacer/batcher/index.d.ts +0 -1
  88. package/dist/pacer/batcher/index.js +0 -1
  89. package/dist/pacer/index.d.ts +0 -1
  90. package/dist/pacer/index.js +0 -1
  91. package/dist/pacer/limiter/defaults.d.ts +0 -1
  92. package/dist/pacer/limiter/defaults.js +0 -1
  93. package/dist/pacer/limiter/index.d.ts +0 -1
  94. package/dist/pacer/limiter/index.js +0 -1
  95. package/dist/pacer/limiter/limiter.d.ts +0 -1
  96. package/dist/pacer/limiter/limiter.js +0 -1
  97. package/dist/pacer/queue/defaults.d.ts +0 -1
  98. package/dist/pacer/queue/defaults.js +0 -1
  99. package/dist/pacer/queue/index.d.ts +0 -1
  100. package/dist/pacer/queue/index.js +0 -1
  101. package/dist/pacer/queue/queue.d.ts +0 -1
  102. package/dist/pacer/queue/queue.js +0 -1
  103. package/dist/pacer/retry/defaults.d.ts +0 -1
  104. package/dist/pacer/retry/defaults.js +0 -1
  105. package/dist/pacer/retry/index.d.ts +0 -1
  106. package/dist/pacer/retry/index.js +0 -1
  107. package/dist/pacer/retry/retry.d.ts +0 -1
  108. package/dist/pacer/retry/retry.js +0 -1
  109. package/dist/pool/index.d.ts +0 -1
  110. package/dist/pool/index.js +0 -1
  111. package/dist/pool/pool.d.ts +0 -1
  112. package/dist/pool/pool.js +0 -1
  113. package/dist/pool/target.d.ts +0 -1
  114. package/dist/pool/target.js +0 -1
  115. package/dist/schema/admission.d.ts +1 -2
  116. package/dist/schema/admission.js +0 -1
  117. package/dist/schema/contracts.d.ts +6 -16
  118. package/dist/schema/contracts.js +0 -1
  119. package/dist/schema/index.d.ts +2 -3
  120. package/dist/schema/index.js +1 -2
  121. package/dist/schema/introspection.d.ts +1 -2
  122. package/dist/schema/introspection.js +5 -2
  123. package/dist/schema/operation.d.ts +0 -1
  124. package/dist/schema/operation.js +2 -3
  125. package/dist/schema/schema.d.ts +13 -10
  126. package/dist/schema/schema.js +83 -11
  127. package/dist/session/bound.d.ts +45 -0
  128. package/dist/session/bound.js +91 -0
  129. package/dist/session/context/control.d.ts +0 -1
  130. package/dist/session/context/control.js +0 -1
  131. package/dist/session/context/index.d.ts +0 -1
  132. package/dist/session/context/index.js +0 -1
  133. package/dist/session/context/limits.d.ts +0 -1
  134. package/dist/session/context/limits.js +0 -1
  135. package/dist/session/context/operation.d.ts +0 -1
  136. package/dist/session/context/operation.js +19 -17
  137. package/dist/session/context/policy.d.ts +0 -1
  138. package/dist/session/context/policy.js +0 -1
  139. package/dist/session/credential/index.d.ts +1 -0
  140. package/dist/session/credential/index.js +1 -0
  141. package/dist/session/credential/limits.d.ts +12 -0
  142. package/dist/session/credential/limits.js +12 -0
  143. package/dist/session/credential/provider.d.ts +51 -0
  144. package/dist/session/credential/provider.js +229 -0
  145. package/dist/session/discovery/bundle.d.ts +5 -2
  146. package/dist/session/discovery/bundle.js +34 -15
  147. package/dist/session/discovery/discovery.d.ts +4 -2
  148. package/dist/session/discovery/discovery.js +34 -6
  149. package/dist/session/discovery/index.d.ts +2 -1
  150. package/dist/session/discovery/index.js +0 -1
  151. package/dist/session/discovery/publication.d.ts +0 -1
  152. package/dist/session/discovery/publication.js +4 -4
  153. package/dist/session/discovery/snapshot.d.ts +0 -1
  154. package/dist/session/discovery/snapshot.js +0 -1
  155. package/dist/session/discovery/transport.d.ts +6 -0
  156. package/dist/session/discovery/transport.js +13 -0
  157. package/dist/session/index.d.ts +5 -3
  158. package/dist/session/index.js +3 -1
  159. package/dist/session/reference.d.ts +23 -10
  160. package/dist/session/reference.js +38 -10
  161. package/dist/session/routing/auth.d.ts +0 -1
  162. package/dist/session/routing/auth.js +0 -1
  163. package/dist/session/routing/cache.d.ts +27 -8
  164. package/dist/session/routing/cache.js +218 -25
  165. package/dist/session/routing/dispatch.d.ts +3 -7
  166. package/dist/session/routing/dispatch.js +53 -28
  167. package/dist/session/routing/envelope.d.ts +2 -1
  168. package/dist/session/routing/envelope.js +14 -10
  169. package/dist/session/routing/index.d.ts +1 -3
  170. package/dist/session/routing/index.js +1 -2
  171. package/dist/session/routing/request.d.ts +0 -1
  172. package/dist/session/routing/request.js +0 -1
  173. package/dist/session/session.d.ts +16 -7
  174. package/dist/session/session.js +54 -30
  175. package/dist/session/session.typecheck.d.ts +0 -1
  176. package/dist/session/session.typecheck.js +96 -3
  177. package/dist/session/views/catalog.d.ts +0 -1
  178. package/dist/session/views/catalog.js +14 -5
  179. package/dist/session/views/index.d.ts +0 -1
  180. package/dist/session/views/index.js +0 -1
  181. package/dist/session/views/resolve.d.ts +0 -1
  182. package/dist/session/views/resolve.js +0 -1
  183. package/dist/store/entity-index.d.ts +0 -1
  184. package/dist/store/entity-index.js +0 -1
  185. package/dist/store/index.d.ts +0 -1
  186. package/dist/store/index.js +0 -1
  187. package/dist/store/memory.d.ts +2 -2
  188. package/dist/store/memory.js +38 -15
  189. package/dist/store/mutation.d.ts +1 -2
  190. package/dist/store/mutation.js +6 -4
  191. package/dist/store/observe.d.ts +0 -1
  192. package/dist/store/observe.js +0 -1
  193. package/dist/store/optimistic.d.ts +0 -1
  194. package/dist/store/optimistic.js +0 -1
  195. package/dist/store/query-key.d.ts +2 -2
  196. package/dist/store/query-key.js +7 -3
  197. package/dist/store/shape.d.ts +4 -2
  198. package/dist/store/shape.js +4 -2
  199. package/dist/store/store.d.ts +2 -4
  200. package/dist/store/store.js +6 -5
  201. package/dist/store/store.typecheck.d.ts +0 -1
  202. package/dist/store/store.typecheck.js +3 -9
  203. package/dist/transport/auto/decision.d.ts +0 -1
  204. package/dist/transport/auto/decision.js +0 -1
  205. package/dist/transport/auto/fallback.d.ts +2 -2
  206. package/dist/transport/auto/fallback.js +10 -11
  207. package/dist/transport/auto/index.d.ts +0 -1
  208. package/dist/transport/auto/index.js +0 -1
  209. package/dist/transport/auto/transport.d.ts +0 -1
  210. package/dist/transport/auto/transport.js +5 -6
  211. package/dist/transport/auto/warning.d.ts +0 -1
  212. package/dist/transport/auto/warning.js +5 -3
  213. package/dist/transport/deadline.d.ts +0 -1
  214. package/dist/transport/deadline.js +0 -1
  215. package/dist/transport/failure.d.ts +7 -0
  216. package/dist/transport/failure.js +9 -0
  217. package/dist/transport/http/byte-stream.d.ts +17 -0
  218. package/dist/transport/http/byte-stream.js +86 -0
  219. package/dist/transport/http/index.d.ts +0 -1
  220. package/dist/transport/http/index.js +0 -1
  221. package/dist/transport/http/response.d.ts +0 -1
  222. package/dist/transport/http/response.js +0 -1
  223. package/dist/transport/http/stream.d.ts +0 -1
  224. package/dist/transport/http/stream.js +7 -7
  225. package/dist/transport/http/transport.d.ts +0 -1
  226. package/dist/transport/http/transport.js +43 -20
  227. package/dist/transport/index.d.ts +0 -1
  228. package/dist/transport/index.js +0 -1
  229. package/dist/transport/transport.d.ts +0 -1
  230. package/dist/transport/transport.js +0 -1
  231. package/dist/transport/websocket/connection.d.ts +0 -1
  232. package/dist/transport/websocket/connection.js +16 -26
  233. package/dist/transport/websocket/exchange.d.ts +0 -1
  234. package/dist/transport/websocket/exchange.js +5 -9
  235. package/dist/transport/websocket/index.d.ts +0 -1
  236. package/dist/transport/websocket/index.js +0 -1
  237. package/dist/transport/websocket/transport.d.ts +0 -1
  238. package/dist/transport/websocket/transport.js +7 -20
  239. package/package.json +12 -14
  240. package/dist/auth/auth.d.ts.map +0 -1
  241. package/dist/auth/auth.js.map +0 -1
  242. package/dist/auth/authorization.d.ts.map +0 -1
  243. package/dist/auth/authorization.js.map +0 -1
  244. package/dist/auth/credential.d.ts.map +0 -1
  245. package/dist/auth/credential.js.map +0 -1
  246. package/dist/auth/identity.d.ts.map +0 -1
  247. package/dist/auth/identity.js.map +0 -1
  248. package/dist/auth/index.d.ts.map +0 -1
  249. package/dist/auth/index.js.map +0 -1
  250. package/dist/auth/provision.d.ts +0 -9
  251. package/dist/auth/provision.d.ts.map +0 -1
  252. package/dist/auth/provision.js +0 -11
  253. package/dist/auth/provision.js.map +0 -1
  254. package/dist/client/admission.d.ts.map +0 -1
  255. package/dist/client/admission.js.map +0 -1
  256. package/dist/client/client.d.ts.map +0 -1
  257. package/dist/client/client.js.map +0 -1
  258. package/dist/client/credential.d.ts.map +0 -1
  259. package/dist/client/credential.js.map +0 -1
  260. package/dist/client/index.d.ts.map +0 -1
  261. package/dist/client/index.js.map +0 -1
  262. package/dist/client/request.d.ts.map +0 -1
  263. package/dist/client/request.js.map +0 -1
  264. package/dist/client/result.d.ts.map +0 -1
  265. package/dist/client/result.js.map +0 -1
  266. package/dist/client/routing-control.d.ts.map +0 -1
  267. package/dist/client/routing-control.js.map +0 -1
  268. package/dist/errors/client-error.d.ts.map +0 -1
  269. package/dist/errors/client-error.js.map +0 -1
  270. package/dist/errors/index.d.ts.map +0 -1
  271. package/dist/errors/index.js.map +0 -1
  272. package/dist/errors/miss-error.d.ts.map +0 -1
  273. package/dist/errors/miss-error.js.map +0 -1
  274. package/dist/errors/protocol-error.d.ts.map +0 -1
  275. package/dist/errors/protocol-error.js.map +0 -1
  276. package/dist/errors/response-error.d.ts.map +0 -1
  277. package/dist/errors/response-error.js.map +0 -1
  278. package/dist/errors/stale-route-error.d.ts.map +0 -1
  279. package/dist/errors/stale-route-error.js.map +0 -1
  280. package/dist/errors/transport-error.d.ts.map +0 -1
  281. package/dist/errors/transport-error.js.map +0 -1
  282. package/dist/graph/errors.d.ts.map +0 -1
  283. package/dist/graph/errors.js.map +0 -1
  284. package/dist/graph/graph.d.ts.map +0 -1
  285. package/dist/graph/graph.js.map +0 -1
  286. package/dist/graph/index.d.ts.map +0 -1
  287. package/dist/graph/index.js.map +0 -1
  288. package/dist/graph/mutation.d.ts.map +0 -1
  289. package/dist/graph/mutation.js.map +0 -1
  290. package/dist/graph/page/index.d.ts.map +0 -1
  291. package/dist/graph/page/index.js.map +0 -1
  292. package/dist/graph/page/neighbors.d.ts.map +0 -1
  293. package/dist/graph/page/neighbors.js.map +0 -1
  294. package/dist/graph/page/page.d.ts.map +0 -1
  295. package/dist/graph/page/page.js.map +0 -1
  296. package/dist/graph/page-contract.d.ts.map +0 -1
  297. package/dist/graph/page-contract.js.map +0 -1
  298. package/dist/graph/query.d.ts.map +0 -1
  299. package/dist/graph/query.js.map +0 -1
  300. package/dist/graph/read.d.ts.map +0 -1
  301. package/dist/graph/read.js.map +0 -1
  302. package/dist/index.d.ts.map +0 -1
  303. package/dist/index.js.map +0 -1
  304. package/dist/pacer/batcher/batcher.d.ts.map +0 -1
  305. package/dist/pacer/batcher/batcher.js.map +0 -1
  306. package/dist/pacer/batcher/defaults.d.ts.map +0 -1
  307. package/dist/pacer/batcher/defaults.js.map +0 -1
  308. package/dist/pacer/batcher/index.d.ts.map +0 -1
  309. package/dist/pacer/batcher/index.js.map +0 -1
  310. package/dist/pacer/index.d.ts.map +0 -1
  311. package/dist/pacer/index.js.map +0 -1
  312. package/dist/pacer/limiter/defaults.d.ts.map +0 -1
  313. package/dist/pacer/limiter/defaults.js.map +0 -1
  314. package/dist/pacer/limiter/index.d.ts.map +0 -1
  315. package/dist/pacer/limiter/index.js.map +0 -1
  316. package/dist/pacer/limiter/limiter.d.ts.map +0 -1
  317. package/dist/pacer/limiter/limiter.js.map +0 -1
  318. package/dist/pacer/queue/defaults.d.ts.map +0 -1
  319. package/dist/pacer/queue/defaults.js.map +0 -1
  320. package/dist/pacer/queue/index.d.ts.map +0 -1
  321. package/dist/pacer/queue/index.js.map +0 -1
  322. package/dist/pacer/queue/queue.d.ts.map +0 -1
  323. package/dist/pacer/queue/queue.js.map +0 -1
  324. package/dist/pacer/retry/defaults.d.ts.map +0 -1
  325. package/dist/pacer/retry/defaults.js.map +0 -1
  326. package/dist/pacer/retry/index.d.ts.map +0 -1
  327. package/dist/pacer/retry/index.js.map +0 -1
  328. package/dist/pacer/retry/retry.d.ts.map +0 -1
  329. package/dist/pacer/retry/retry.js.map +0 -1
  330. package/dist/pool/index.d.ts.map +0 -1
  331. package/dist/pool/index.js.map +0 -1
  332. package/dist/pool/pool.d.ts.map +0 -1
  333. package/dist/pool/pool.js.map +0 -1
  334. package/dist/pool/target.d.ts.map +0 -1
  335. package/dist/pool/target.js.map +0 -1
  336. package/dist/schema/admission.d.ts.map +0 -1
  337. package/dist/schema/admission.js.map +0 -1
  338. package/dist/schema/contracts.d.ts.map +0 -1
  339. package/dist/schema/contracts.js.map +0 -1
  340. package/dist/schema/index.d.ts.map +0 -1
  341. package/dist/schema/index.js.map +0 -1
  342. package/dist/schema/introspection.d.ts.map +0 -1
  343. package/dist/schema/introspection.js.map +0 -1
  344. package/dist/schema/operation.d.ts.map +0 -1
  345. package/dist/schema/operation.js.map +0 -1
  346. package/dist/schema/schema.d.ts.map +0 -1
  347. package/dist/schema/schema.js.map +0 -1
  348. package/dist/session/context/control.d.ts.map +0 -1
  349. package/dist/session/context/control.js.map +0 -1
  350. package/dist/session/context/index.d.ts.map +0 -1
  351. package/dist/session/context/index.js.map +0 -1
  352. package/dist/session/context/limits.d.ts.map +0 -1
  353. package/dist/session/context/limits.js.map +0 -1
  354. package/dist/session/context/operation.d.ts.map +0 -1
  355. package/dist/session/context/operation.js.map +0 -1
  356. package/dist/session/context/policy.d.ts.map +0 -1
  357. package/dist/session/context/policy.js.map +0 -1
  358. package/dist/session/discovery/bundle.d.ts.map +0 -1
  359. package/dist/session/discovery/bundle.js.map +0 -1
  360. package/dist/session/discovery/discovery.d.ts.map +0 -1
  361. package/dist/session/discovery/discovery.js.map +0 -1
  362. package/dist/session/discovery/index.d.ts.map +0 -1
  363. package/dist/session/discovery/index.js.map +0 -1
  364. package/dist/session/discovery/publication.d.ts.map +0 -1
  365. package/dist/session/discovery/publication.js.map +0 -1
  366. package/dist/session/discovery/snapshot.d.ts.map +0 -1
  367. package/dist/session/discovery/snapshot.js.map +0 -1
  368. package/dist/session/index.d.ts.map +0 -1
  369. package/dist/session/index.js.map +0 -1
  370. package/dist/session/reference.d.ts.map +0 -1
  371. package/dist/session/reference.js.map +0 -1
  372. package/dist/session/routing/auth.d.ts.map +0 -1
  373. package/dist/session/routing/auth.js.map +0 -1
  374. package/dist/session/routing/cache.d.ts.map +0 -1
  375. package/dist/session/routing/cache.js.map +0 -1
  376. package/dist/session/routing/dispatch.d.ts.map +0 -1
  377. package/dist/session/routing/dispatch.js.map +0 -1
  378. package/dist/session/routing/envelope.d.ts.map +0 -1
  379. package/dist/session/routing/envelope.js.map +0 -1
  380. package/dist/session/routing/expectation.d.ts +0 -7
  381. package/dist/session/routing/expectation.d.ts.map +0 -1
  382. package/dist/session/routing/expectation.js +0 -2
  383. package/dist/session/routing/expectation.js.map +0 -1
  384. package/dist/session/routing/index.d.ts.map +0 -1
  385. package/dist/session/routing/index.js.map +0 -1
  386. package/dist/session/routing/request.d.ts.map +0 -1
  387. package/dist/session/routing/request.js.map +0 -1
  388. package/dist/session/session.d.ts.map +0 -1
  389. package/dist/session/session.js.map +0 -1
  390. package/dist/session/session.typecheck.d.ts.map +0 -1
  391. package/dist/session/session.typecheck.js.map +0 -1
  392. package/dist/session/views/catalog.d.ts.map +0 -1
  393. package/dist/session/views/catalog.js.map +0 -1
  394. package/dist/session/views/index.d.ts.map +0 -1
  395. package/dist/session/views/index.js.map +0 -1
  396. package/dist/session/views/resolve.d.ts.map +0 -1
  397. package/dist/session/views/resolve.js.map +0 -1
  398. package/dist/store/entity-index.d.ts.map +0 -1
  399. package/dist/store/entity-index.js.map +0 -1
  400. package/dist/store/index.d.ts.map +0 -1
  401. package/dist/store/index.js.map +0 -1
  402. package/dist/store/memory.d.ts.map +0 -1
  403. package/dist/store/memory.js.map +0 -1
  404. package/dist/store/mutation.d.ts.map +0 -1
  405. package/dist/store/mutation.js.map +0 -1
  406. package/dist/store/observe.d.ts.map +0 -1
  407. package/dist/store/observe.js.map +0 -1
  408. package/dist/store/optimistic.d.ts.map +0 -1
  409. package/dist/store/optimistic.js.map +0 -1
  410. package/dist/store/query-key.d.ts.map +0 -1
  411. package/dist/store/query-key.js.map +0 -1
  412. package/dist/store/shape.d.ts.map +0 -1
  413. package/dist/store/shape.js.map +0 -1
  414. package/dist/store/store.d.ts.map +0 -1
  415. package/dist/store/store.js.map +0 -1
  416. package/dist/store/store.typecheck.d.ts.map +0 -1
  417. package/dist/store/store.typecheck.js.map +0 -1
  418. package/dist/transport/auto/decision.d.ts.map +0 -1
  419. package/dist/transport/auto/decision.js.map +0 -1
  420. package/dist/transport/auto/fallback.d.ts.map +0 -1
  421. package/dist/transport/auto/fallback.js.map +0 -1
  422. package/dist/transport/auto/index.d.ts.map +0 -1
  423. package/dist/transport/auto/index.js.map +0 -1
  424. package/dist/transport/auto/transport.d.ts.map +0 -1
  425. package/dist/transport/auto/transport.js.map +0 -1
  426. package/dist/transport/auto/warning.d.ts.map +0 -1
  427. package/dist/transport/auto/warning.js.map +0 -1
  428. package/dist/transport/deadline.d.ts.map +0 -1
  429. package/dist/transport/deadline.js.map +0 -1
  430. package/dist/transport/http/index.d.ts.map +0 -1
  431. package/dist/transport/http/index.js.map +0 -1
  432. package/dist/transport/http/response.d.ts.map +0 -1
  433. package/dist/transport/http/response.js.map +0 -1
  434. package/dist/transport/http/stream.d.ts.map +0 -1
  435. package/dist/transport/http/stream.js.map +0 -1
  436. package/dist/transport/http/transport.d.ts.map +0 -1
  437. package/dist/transport/http/transport.js.map +0 -1
  438. package/dist/transport/index.d.ts.map +0 -1
  439. package/dist/transport/index.js.map +0 -1
  440. package/dist/transport/transport.d.ts.map +0 -1
  441. package/dist/transport/transport.js.map +0 -1
  442. package/dist/transport/websocket/connection.d.ts.map +0 -1
  443. package/dist/transport/websocket/connection.js.map +0 -1
  444. package/dist/transport/websocket/exchange.d.ts.map +0 -1
  445. package/dist/transport/websocket/exchange.js.map +0 -1
  446. package/dist/transport/websocket/index.d.ts.map +0 -1
  447. package/dist/transport/websocket/index.js.map +0 -1
  448. package/dist/transport/websocket/transport.d.ts.map +0 -1
  449. package/dist/transport/websocket/transport.js.map +0 -1
@@ -2,10 +2,19 @@ import { MutationAST, MutationResult } from '@astrale-os/kernel-core/graph/mutat
2
2
  import { Path } from '@astrale-os/kernel-core/path';
3
3
  import { mutate } from '@astrale-os/kernel-core/schema/kernel/syscalls/references';
4
4
  import { call as invocation } from '../client/index.js';
5
+ import { captureExpected } from './expectation.js';
5
6
  const KERNEL_MUTATE_PATH = Path.project(mutate).raw;
6
7
  export async function mutateGraph(call, input, options) {
7
8
  const ast = typeof input === 'function' ? MutationAST.build(input) : admitMutation(input);
8
- const output = await call(invocation(KERNEL_MUTATE_PATH, ast), options);
9
+ const expected = options?.expected;
10
+ const request = options === undefined
11
+ ? undefined
12
+ : (({ expected: _expected, ...rest }) => rest)(options);
13
+ const capturedExpected = captureExpected(expected);
14
+ const output = await call(invocation(KERNEL_MUTATE_PATH, Object.freeze({
15
+ ast,
16
+ ...(capturedExpected === undefined ? {} : { expected: capturedExpected }),
17
+ })), request);
9
18
  return MutationResult.decode(output);
10
19
  }
11
20
  function admitMutation(input) {
@@ -15,4 +24,3 @@ function admitMutation(input) {
15
24
  ? MutationAST.create(input)
16
25
  : MutationAST.fromGraph(input);
17
26
  }
18
- //# sourceMappingURL=mutation.js.map
@@ -1,3 +1,2 @@
1
1
  export { type NeighborsOptions, type NeighborSource, type NeighborVia, readNeighbors, } from './neighbors.js';
2
2
  export type { NodePage, PageQuery, PageQueryOptions } from './page.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { readNeighbors, } from './neighbors.js';
2
- //# sourceMappingURL=index.js.map
@@ -1,10 +1,9 @@
1
- import type { QueryDefinitionRef, QueryDirection } from '@astrale-os/kernel-core/graph/query';
2
- import type { PathLike } from '@astrale-os/kernel-core/path';
1
+ import type { QueryDirection, QueryEdgeClassInput } from '@astrale-os/kernel-core/graph/query';
2
+ import type { NodeTarget } from '@astrale-os/kernel-core/path';
3
3
  import type { NodePage, PageQuery, PageQueryOptions } from './page.js';
4
4
  export interface NeighborsOptions extends PageQueryOptions {
5
5
  readonly direction: QueryDirection;
6
6
  }
7
- export type NeighborSource = PathLike;
8
- export type NeighborVia = QueryDefinitionRef | readonly [QueryDefinitionRef, ...QueryDefinitionRef[]];
7
+ export type NeighborSource = NodeTarget;
8
+ export type NeighborVia = QueryEdgeClassInput | readonly [QueryEdgeClassInput, ...QueryEdgeClassInput[]];
9
9
  export declare function readNeighbors(query: PageQuery, source: NeighborSource, via: NeighborVia, options: NeighborsOptions): Promise<NodePage>;
10
- //# sourceMappingURL=neighbors.d.ts.map
@@ -1,13 +1,14 @@
1
1
  import { Query } from '@astrale-os/kernel-core/graph/query';
2
+ import { queryNodePath } from '../query.js';
2
3
  import { createNodePage } from './page.js';
3
4
  export async function readNeighbors(query, source, via, options) {
4
5
  if (options === null || typeof options !== 'object') {
5
6
  throw new TypeError('Neighbor read options are invalid.');
6
7
  }
7
- const definitions = Array.isArray(via) ? via : [via];
8
- const [definition, ...additionalDefinitions] = definitions;
9
- if (definition === undefined)
10
- throw new TypeError('Neighbor read requires at least one Definition.');
8
+ const classes = Array.isArray(via) ? via : [via];
9
+ const [classInput, ...additionalClasses] = classes;
10
+ if (classInput === undefined)
11
+ throw new TypeError('Neighbor read requires at least one Class.');
11
12
  const direction = options.direction === 'outgoing'
12
13
  ? options.direction
13
14
  : options.direction === 'incoming'
@@ -15,8 +16,8 @@ export async function readNeighbors(query, source, via, options) {
15
16
  : options.direction === 'incident'
16
17
  ? options.direction
17
18
  : invalidDirection(options.direction);
18
- const ast = Query.from({ kind: 'node', paths: [source] })
19
- .expand({ via: [definition, ...additionalDefinitions], direction })
19
+ const ast = Query.from({ nodes: [queryNodePath(source)] })
20
+ .expand({ via: [classInput, ...additionalClasses], direction })
20
21
  .select({ kind: 'graph' });
21
22
  const { direction: _, page, ...request } = options;
22
23
  const { idempotencyKey: ___, ...basis } = request;
@@ -32,4 +33,3 @@ export async function readNeighbors(query, source, via, options) {
32
33
  function invalidDirection(input) {
33
34
  throw new TypeError(`Unsupported neighbor direction ${JSON.stringify(input)}.`);
34
35
  }
35
- //# sourceMappingURL=neighbors.js.map
@@ -1,6 +1,7 @@
1
1
  import type { GraphData } from '@astrale-os/kernel-core/graph/graph';
2
2
  import type { Node, NodeCollection } from '@astrale-os/kernel-core/graph/node';
3
3
  import type { NodeBinding, QueryAST, QueryGraphSelect, QueryNodeGraphResult, QueryResultFor } from '@astrale-os/kernel-core/graph/query';
4
+ import type { DomainDependency } from '@astrale-os/kernel-dsl/v1/schema';
4
5
  import type { RequestOptions } from '../../transport/index.js';
5
6
  import type { QueryPageRequest, QueryResponse } from '../page-contract.js';
6
7
  export interface NodePage {
@@ -23,12 +24,14 @@ export interface NodePage {
23
24
  readonly cursor: string | null;
24
25
  }>;
25
26
  }
26
- type PageBasis = Pick<RequestOptions, 'signal' | 'timeoutMs'>;
27
+ type PageBasis = Pick<RequestOptions, 'signal' | 'timeoutMs'> & {
28
+ readonly expected?: readonly DomainDependency[];
29
+ };
27
30
  export interface PageQueryOptions extends RequestOptions {
31
+ readonly expected?: readonly DomainDependency[];
28
32
  readonly page: QueryPageRequest;
29
33
  }
30
34
  export type PageQuery = <Query extends QueryAST>(ast: Query, options: PageQueryOptions) => Promise<QueryResponse<QueryResultFor<Query>>>;
31
35
  type NodeGraphQueryAST = QueryAST<QueryGraphSelect<NodeBinding>>;
32
36
  export declare function createNodePage(query: PageQuery, ast: NodeGraphQueryAST, response: QueryResponse<QueryNodeGraphResult>, basis: PageBasis, size: number): NodePage;
33
37
  export {};
34
- //# sourceMappingURL=page.d.ts.map
@@ -53,4 +53,3 @@ function requireMaximumPages(value) {
53
53
  throw new TypeError('NodePage maximumPages must be a positive safe integer.');
54
54
  }
55
55
  }
56
- //# sourceMappingURL=page.js.map
@@ -4,11 +4,10 @@ export interface QueryPageRequest {
4
4
  readonly size: number;
5
5
  readonly after?: string;
6
6
  }
7
- /** Admitted graph result and its optional opaque continuation. */
7
+ /** Decoded graph result and its optional opaque continuation. */
8
8
  export interface QueryResponse<Result extends QueryResult = QueryResult> {
9
9
  readonly result: Result;
10
10
  readonly page: {
11
11
  readonly next?: string;
12
12
  };
13
13
  }
14
- //# sourceMappingURL=page-contract.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=page-contract.js.map
@@ -0,0 +1,14 @@
1
+ import type { Edge } from '@astrale-os/kernel-core/graph/edge';
2
+ import type { Node } from '@astrale-os/kernel-core/graph/node';
3
+ import type { DomainDependency } from '@astrale-os/kernel-dsl/v1/schema';
4
+ import type { QueryResponse } from './page-contract.js';
5
+ export interface QueryProvenance {
6
+ readonly closure: readonly DomainDependency[];
7
+ readonly page: object;
8
+ }
9
+ /** Retain authenticated query provenance without adding serialized response metadata. */
10
+ export declare function retainQueryProvenance(response: QueryResponse, closure: readonly DomainDependency[]): QueryResponse;
11
+ /** Reattach the exact authenticated closure when Store materialization replaces response objects. */
12
+ export declare function retainDerivedQueryProvenance(source: QueryResponse, derived: QueryResponse): QueryResponse;
13
+ export declare function provenanceOfGraphValue(value: Node | Edge): QueryProvenance | undefined;
14
+ export declare function provenanceOfResponse(value: QueryResponse): QueryProvenance | undefined;
@@ -0,0 +1,42 @@
1
+ const graphValues = new WeakMap();
2
+ const responses = new WeakMap();
3
+ /** Retain authenticated query provenance without adding serialized response metadata. */
4
+ export function retainQueryProvenance(response, closure) {
5
+ const provenance = Object.freeze({ closure, page: Object.freeze({}) });
6
+ responses.set(response, provenance);
7
+ const { result } = response;
8
+ if (result.kind === 'graph') {
9
+ for (const node of result.graph.nodes)
10
+ graphValues.set(node, provenance);
11
+ for (const edge of result.graph.edges)
12
+ graphValues.set(edge, provenance);
13
+ }
14
+ else if (result.kind === 'nodes') {
15
+ for (const item of result.nodes) {
16
+ if (item.kind === 'value')
17
+ graphValues.set(item.value, provenance);
18
+ }
19
+ }
20
+ else {
21
+ for (const item of result.edges) {
22
+ if (item.edge.kind === 'value')
23
+ graphValues.set(item.edge.value, provenance);
24
+ if (item.source.kind === 'value')
25
+ graphValues.set(item.source.value, provenance);
26
+ if (item.target.kind === 'value')
27
+ graphValues.set(item.target.value, provenance);
28
+ }
29
+ }
30
+ return response;
31
+ }
32
+ /** Reattach the exact authenticated closure when Store materialization replaces response objects. */
33
+ export function retainDerivedQueryProvenance(source, derived) {
34
+ const provenance = responses.get(source);
35
+ return provenance === undefined ? derived : retainQueryProvenance(derived, provenance.closure);
36
+ }
37
+ export function provenanceOfGraphValue(value) {
38
+ return graphValues.get(value);
39
+ }
40
+ export function provenanceOfResponse(value) {
41
+ return responses.get(value);
42
+ }
@@ -1,5 +1,7 @@
1
1
  import type { QueryAST as QueryASTValue, QueryResultFor } from '@astrale-os/kernel-core/graph/query';
2
+ import { Path, type NodeTarget } from '@astrale-os/kernel-core/path';
2
3
  import type { GraphCall, GraphQueryOptions } from './graph.js';
3
4
  import type { QueryResponse } from './page-contract.js';
5
+ /** Point/neighbor reads are exact targets, unlike Query's overloaded Class sources. */
6
+ export declare function queryNodePath(target: NodeTarget): Path;
4
7
  export declare function queryGraph<Query extends QueryASTValue>(call: GraphCall, input: Query, options: GraphQueryOptions): Promise<QueryResponse<QueryResultFor<Query>>>;
5
- //# sourceMappingURL=query.d.ts.map
@@ -1,14 +1,36 @@
1
- import { QueryAST, QueryResult } from '@astrale-os/kernel-core/graph/query';
2
- import { Path } from '@astrale-os/kernel-core/path';
1
+ import { QueryAST, QueryASTDecodeError, QueryResult } from '@astrale-os/kernel-core/graph/query';
2
+ import { Path, PathError } from '@astrale-os/kernel-core/path';
3
3
  import { query } from '@astrale-os/kernel-core/schema/kernel/syscalls/references';
4
4
  import { call as invocation } from '../client/index.js';
5
+ import { captureExpected } from './expectation.js';
6
+ import { retainQueryProvenance } from './provenance.js';
5
7
  const KERNEL_QUERY_PATH = Path.project(query).raw;
8
+ /** Point/neighbor reads are exact targets, unlike Query's overloaded Class sources. */
9
+ export function queryNodePath(target) {
10
+ try {
11
+ return Path.target(target);
12
+ }
13
+ catch (cause) {
14
+ // Preserve the graph-read Query error contract; do not relabel unexpected defects.
15
+ if (!(cause instanceof PathError))
16
+ throw cause;
17
+ throw new QueryASTDecodeError('/source/nodes/0', 'Invalid Node target', { cause });
18
+ }
19
+ }
6
20
  export async function queryGraph(call, input, options) {
7
21
  const ast = QueryAST.decode(input);
8
- const { page, ...request } = options;
22
+ const { expected, page, ...request } = options;
9
23
  const admittedPage = admitPage(page);
10
- const output = await call(invocation(KERNEL_QUERY_PATH, Object.freeze({ ast, page: admittedPage })), request);
11
- return decodeResponse(output);
24
+ const capturedExpected = captureExpected(expected);
25
+ const output = await call(invocation(KERNEL_QUERY_PATH, Object.freeze({
26
+ ast,
27
+ ...(capturedExpected === undefined ? {} : { expected: capturedExpected }),
28
+ page: admittedPage,
29
+ })), request);
30
+ const response = decodeResponse(output);
31
+ return capturedExpected === undefined
32
+ ? response
33
+ : retainQueryProvenance(response, capturedExpected);
12
34
  }
13
35
  function admitPage(input) {
14
36
  if (input === null || typeof input !== 'object' || Array.isArray(input)) {
@@ -33,11 +55,11 @@ function decodeResponse(input) {
33
55
  if (!hasExactKeys(value, ['result', 'page'])) {
34
56
  throw new TypeError('Graph query response is invalid.');
35
57
  }
36
- const page = value.page;
37
- if (page === null || typeof page !== 'object' || Array.isArray(page)) {
58
+ const pageInput = value.page;
59
+ if (pageInput === null || typeof pageInput !== 'object' || Array.isArray(pageInput)) {
38
60
  throw new TypeError('Graph query response page is invalid.');
39
61
  }
40
- const pageValue = page;
62
+ const pageValue = pageInput;
41
63
  if (!hasExactKeys(pageValue, pageValue.next === undefined ? [] : ['next'])) {
42
64
  throw new TypeError('Graph query response page is invalid.');
43
65
  }
@@ -45,13 +67,11 @@ function decodeResponse(input) {
45
67
  (typeof pageValue.next !== 'string' || pageValue.next.length === 0)) {
46
68
  throw new TypeError('Graph query response continuation is invalid.');
47
69
  }
48
- return Object.freeze({
49
- result: QueryResult.decode(value.result),
50
- page: Object.freeze(pageValue.next === undefined ? {} : { next: pageValue.next }),
51
- });
70
+ const result = QueryResult.decode(value.result);
71
+ const page = Object.freeze(pageValue.next === undefined ? {} : { next: pageValue.next });
72
+ return Object.freeze({ result, page });
52
73
  }
53
74
  function hasExactKeys(input, expected) {
54
75
  const keys = Object.keys(input);
55
76
  return keys.length === expected.length && keys.every((key) => expected.includes(key));
56
77
  }
57
- //# sourceMappingURL=query.js.map
@@ -1,7 +1,6 @@
1
1
  import type { Node } from '@astrale-os/kernel-core/graph/node';
2
- import type { PathLike } from '@astrale-os/kernel-core/path';
2
+ import type { NodeTarget } from '@astrale-os/kernel-core/path';
3
3
  import type { RequestOptions } from '../transport/index.js';
4
4
  import type { GraphCall } from './graph.js';
5
- export declare function getNode(call: GraphCall, path: PathLike, options?: RequestOptions): Promise<Node | null>;
6
- export declare function requireNode(call: GraphCall, path: PathLike, options?: RequestOptions): Promise<Node>;
7
- //# sourceMappingURL=read.d.ts.map
5
+ export declare function getNode(call: GraphCall, path: NodeTarget, options?: RequestOptions): Promise<Node | null>;
6
+ export declare function requireNode(call: GraphCall, path: NodeTarget, options?: RequestOptions): Promise<Node>;
@@ -1,8 +1,8 @@
1
1
  import { Query } from '@astrale-os/kernel-core/graph/query';
2
2
  import { NodeUnavailableError } from './errors.js';
3
- import { queryGraph } from './query.js';
3
+ import { queryGraph, queryNodePath } from './query.js';
4
4
  export async function getNode(call, path, options) {
5
- const ast = Query.from({ kind: 'node', paths: [path] }).select({ kind: 'graph' });
5
+ const ast = Query.from({ nodes: [queryNodePath(path)] }).select({ kind: 'graph' });
6
6
  const response = await queryGraph(call, ast, { ...options, page: { size: 1 } });
7
7
  const { result } = response;
8
8
  if (result.kind !== 'graph')
@@ -10,9 +10,10 @@ export async function getNode(call, path, options) {
10
10
  return result.graph.nodes[0] ?? null;
11
11
  }
12
12
  export async function requireNode(call, path, options) {
13
- const node = await getNode(call, path, options);
13
+ // Retain one immutable target across I/O, including unavailable-error rendering.
14
+ const target = queryNodePath(path);
15
+ const node = await getNode(call, target, options);
14
16
  if (node === null)
15
- throw new NodeUnavailableError(path);
17
+ throw new NodeUnavailableError(target);
16
18
  return node;
17
19
  }
18
- //# sourceMappingURL=read.js.map
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
+ export { Target, targetPath } from '@astrale-os/kernel-core/callable';
1
2
  export { Client, call, type AuthenticatedClient, type Call, type ClientDispatchOptions, type ClientOptions, type Binary, type BinaryResponse, type Input, type RemoteCredential, type Result, type Stream, type StreamResult, type ValueResult, } from './client/index.js';
2
- export { ClientError, MissError, ProtocolError, type ProtocolErrorOptions, ResponseError, StaleRouteError, TransportError, type TransportDelivery, type TransportErrorOptions, type TransportPhase, } from './errors/index.js';
3
+ export * from './errors/index.js';
3
4
  export { type RequestOptions, type MissControl, type StaleControl, type Transport, type TransportRequest, type TransportResult, } from './transport/index.js';
4
5
  export { HttpTransport, type Fetch, type HttpTransportOptions } from './transport/http/index.js';
5
6
  export { WebSocketTransport, type WebSocketConstructor, type WebSocketTransportOptions, } from './transport/websocket/index.js';
6
7
  export { AutoTransport, formatClientWarning, type AutoTransportOptions, type ClientWarning, } from './transport/auto/index.js';
7
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
+ export { Target, targetPath } from '@astrale-os/kernel-core/callable';
1
2
  export { Client, call, } from './client/index.js';
2
- export { ClientError, MissError, ProtocolError, ResponseError, StaleRouteError, TransportError, } from './errors/index.js';
3
+ export * from './errors/index.js';
3
4
  export {} from './transport/index.js';
4
5
  export { HttpTransport } from './transport/http/index.js';
5
6
  export { WebSocketTransport, } from './transport/websocket/index.js';
6
7
  export { AutoTransport, formatClientWarning, } from './transport/auto/index.js';
7
- //# sourceMappingURL=index.js.map
@@ -5,4 +5,3 @@ export type BatchOptions<Value> = Omit<AsyncBatcherOptions<Value>, 'maxSize' | '
5
5
  readonly wait?: number;
6
6
  };
7
7
  export declare function createBatcher<Value>(consume: (values: Value[]) => Promise<unknown>, options?: BatchOptions<Value>): AsyncBatcher<Value>;
8
- //# sourceMappingURL=batcher.d.ts.map
@@ -11,4 +11,3 @@ export function createBatcher(consume, options = {}) {
11
11
  wait: options.wait ?? DEFAULT_BATCH_WAIT_MS,
12
12
  });
13
13
  }
14
- //# sourceMappingURL=batcher.js.map
@@ -1,3 +1,2 @@
1
1
  export declare const DEFAULT_BATCH_SIZE = 100;
2
2
  export declare const DEFAULT_BATCH_WAIT_MS = 10;
3
- //# sourceMappingURL=defaults.d.ts.map
@@ -1,3 +1,2 @@
1
1
  export const DEFAULT_BATCH_SIZE = 100;
2
2
  export const DEFAULT_BATCH_WAIT_MS = 10;
3
- //# sourceMappingURL=defaults.js.map
@@ -1,2 +1 @@
1
1
  export { createBatcher, type BatchOptions } from './batcher.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { createBatcher } from './batcher.js';
2
- //# sourceMappingURL=index.js.map
@@ -2,4 +2,3 @@ export { retry, type RetryOptions } from './retry/index.js';
2
2
  export { createQueue, type QueueOptions } from './queue/index.js';
3
3
  export { createBatcher, type BatchOptions } from './batcher/index.js';
4
4
  export { createRateLimiter, type RateLimitOptions } from './limiter/index.js';
5
- //# sourceMappingURL=index.d.ts.map
@@ -2,4 +2,3 @@ export { retry } from './retry/index.js';
2
2
  export { createQueue } from './queue/index.js';
3
3
  export { createBatcher } from './batcher/index.js';
4
4
  export { createRateLimiter } from './limiter/index.js';
5
- //# sourceMappingURL=index.js.map
@@ -1,3 +1,2 @@
1
1
  export declare const DEFAULT_RATE_LIMIT = 10;
2
2
  export declare const DEFAULT_RATE_WINDOW_MS = 1000;
3
- //# sourceMappingURL=defaults.d.ts.map
@@ -1,3 +1,2 @@
1
1
  export const DEFAULT_RATE_LIMIT = 10;
2
2
  export const DEFAULT_RATE_WINDOW_MS = 1_000;
3
- //# sourceMappingURL=defaults.js.map
@@ -1,2 +1 @@
1
1
  export { createRateLimiter, type RateLimitOptions } from './limiter.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { createRateLimiter } from './limiter.js';
2
- //# sourceMappingURL=index.js.map
@@ -5,4 +5,3 @@ export type RateLimitOptions<Operation extends AnyAsyncFunction> = Omit<AsyncRat
5
5
  readonly window?: number;
6
6
  };
7
7
  export declare function createRateLimiter<Operation extends AnyAsyncFunction>(operation: Operation, options?: RateLimitOptions<Operation>): AsyncRateLimiter<Operation>;
8
- //# sourceMappingURL=limiter.d.ts.map
@@ -12,4 +12,3 @@ export function createRateLimiter(operation, options = {}) {
12
12
  window: options.window ?? DEFAULT_RATE_WINDOW_MS,
13
13
  });
14
14
  }
15
- //# sourceMappingURL=limiter.js.map
@@ -1,2 +1 @@
1
1
  export declare const DEFAULT_QUEUE_CONCURRENCY = 4;
2
- //# sourceMappingURL=defaults.d.ts.map
@@ -1,2 +1 @@
1
1
  export const DEFAULT_QUEUE_CONCURRENCY = 4;
2
- //# sourceMappingURL=defaults.js.map
@@ -1,2 +1 @@
1
1
  export { createQueue, type QueueOptions } from './queue.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { createQueue } from './queue.js';
2
- //# sourceMappingURL=index.js.map
@@ -4,4 +4,3 @@ export type QueueOptions<Value> = Omit<AsyncQueuerOptions<Value>, 'concurrency'>
4
4
  readonly concurrency?: number;
5
5
  };
6
6
  export declare function createQueue<Value>(consume: (value: Value) => Promise<unknown>, options?: QueueOptions<Value>): AsyncQueuer<Value>;
7
- //# sourceMappingURL=queue.d.ts.map
@@ -10,4 +10,3 @@ export function createQueue(consume, options = {}) {
10
10
  concurrency: options.concurrency ?? DEFAULT_QUEUE_CONCURRENCY,
11
11
  });
12
12
  }
13
- //# sourceMappingURL=queue.js.map
@@ -4,4 +4,3 @@ export declare const DEFAULT_RETRY_MAX_WAIT_MS = 5000;
4
4
  export declare const DEFAULT_RETRY_JITTER = 0.2;
5
5
  export declare function positive(input: number, label: string): number;
6
6
  export declare function nonNegative(input: number, label: string): number;
7
- //# sourceMappingURL=defaults.d.ts.map
@@ -14,4 +14,3 @@ export function nonNegative(input, label) {
14
14
  }
15
15
  return input;
16
16
  }
17
- //# sourceMappingURL=defaults.js.map
@@ -1,2 +1 @@
1
1
  export { retry, type RetryOptions } from './retry.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { retry } from './retry.js';
2
- //# sourceMappingURL=index.js.map
@@ -7,4 +7,3 @@ export interface RetryOptions {
7
7
  }
8
8
  /** Retry with bounded exponential backoff and never swallow the final failure. */
9
9
  export declare function retry<Result>(operation: () => Promise<Result>, options?: RetryOptions): Promise<Result>;
10
- //# sourceMappingURL=retry.d.ts.map
@@ -53,4 +53,3 @@ export async function retry(operation, options = {}) {
53
53
  }
54
54
  return result;
55
55
  }
56
- //# sourceMappingURL=retry.js.map
@@ -1,3 +1,2 @@
1
1
  export { ClientPool, type ClientFactory, type ClientPoolOptions } from './pool.js';
2
2
  export type { ClientTarget } from './target.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { ClientPool } from './pool.js';
2
- //# sourceMappingURL=index.js.map
@@ -21,4 +21,3 @@ export declare class ClientPool {
21
21
  private evictOldest;
22
22
  private requireOpen;
23
23
  }
24
- //# sourceMappingURL=pool.d.ts.map
package/dist/pool/pool.js CHANGED
@@ -67,4 +67,3 @@ export class ClientPool {
67
67
  throw new ClientError('ClientPool is closed.');
68
68
  }
69
69
  }
70
- //# sourceMappingURL=pool.js.map
@@ -13,4 +13,3 @@ export type ClientTarget = {
13
13
  };
14
14
  export declare function admitTarget(input: ClientTarget): ClientTarget;
15
15
  export declare function targetKey(target: ClientTarget): string;
16
- //# sourceMappingURL=target.d.ts.map
@@ -47,4 +47,3 @@ function endpoint(input, protocols) {
47
47
  }
48
48
  return url.toString();
49
49
  }
50
- //# sourceMappingURL=target.js.map
@@ -8,6 +8,5 @@ interface OutputContract {
8
8
  };
9
9
  }
10
10
  /** Admit one value result through its Core-owned syscall contract. */
11
- export declare function acceptOutput<T extends Value>(contract: OutputContract, input: unknown): T;
11
+ export declare function acceptOutput<T>(contract: OutputContract, input: unknown): T;
12
12
  export {};
13
- //# sourceMappingURL=admission.d.ts.map
@@ -15,4 +15,3 @@ function freeze(input) {
15
15
  }
16
16
  return input;
17
17
  }
18
- //# sourceMappingURL=admission.js.map
@@ -1,22 +1,12 @@
1
- import type { InputOf, OutputOf } from '@astrale-os/kernel-core/domain';
2
- import type { syscalls } from '@astrale-os/kernel-core/schema';
3
1
  import type { installation } from '@astrale-os/kernel-core/schema';
2
+ import type { DomainRequest as CoreDomainRequest, InstallInput, InstallReceipt as CoreInstallReceipt, UninstallInput, UninstallOutput } from '@astrale-os/kernel-core/schema/kernel/syscalls/contracts';
4
3
  export type OperationId = installation.OperationId;
5
4
  /** Canonical caller input accepted by the Kernel install syscall. */
6
- export type InstallRequest = Omit<InputOf<(typeof syscalls.install)['callable']>, 'operation'> & {
7
- readonly operation: OperationId;
8
- };
5
+ export type DomainRequest = CoreDomainRequest;
6
+ export type InstallRequest = InstallInput;
9
7
  /** Admitted terminal install receipt returned by the Kernel. */
10
- export type InstallReceipt = Omit<OutputOf<(typeof syscalls.install)['callable']>, 'operation'> & {
11
- readonly operation: OperationId;
12
- };
8
+ export type InstallReceipt = CoreInstallReceipt;
13
9
  /** Canonical caller input accepted by the Kernel uninstall syscall. */
14
- export type UninstallRequest = Omit<InputOf<(typeof syscalls.uninstall)['callable']>, 'operation'> & {
15
- readonly operation: OperationId;
16
- };
10
+ export type UninstallRequest = UninstallInput;
17
11
  /** Admitted terminal uninstall receipt returned by the Kernel. */
18
- export type UninstallReceipt = Omit<OutputOf<(typeof syscalls.uninstall)['callable']>, 'operation'> & {
19
- readonly operation: OperationId;
20
- };
21
- export type DesiredInstallation = InstallRequest['domains'][number];
22
- //# sourceMappingURL=contracts.d.ts.map
12
+ export type UninstallReceipt = UninstallOutput;
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=contracts.js.map
@@ -1,4 +1,3 @@
1
- export { createSchema, type SchemaApi, type SchemaCall, type SchemaOptions, type ReadyInstallation, } from './schema.js';
1
+ export { createSchema, DEFAULT_SCHEMA_LIFECYCLE_TIMEOUT_MS, type SchemaApi, type SchemaCall, type SchemaOptions, type DomainBundle, type DomainDependencies, type DomainInfo, type InstallResult, } from './schema.js';
2
2
  export { acceptOperationId, createOperationId } from './operation.js';
3
- export type { DesiredInstallation, InstallReceipt, InstallRequest, OperationId, UninstallReceipt, UninstallRequest, } from './contracts.js';
4
- //# sourceMappingURL=index.d.ts.map
3
+ export type { DomainRequest, InstallReceipt, InstallRequest, OperationId, UninstallReceipt, UninstallRequest, } from './contracts.js';
@@ -1,3 +1,2 @@
1
- export { createSchema, } from './schema.js';
1
+ export { createSchema, DEFAULT_SCHEMA_LIFECYCLE_TIMEOUT_MS, } from './schema.js';
2
2
  export { acceptOperationId, createOperationId } from './operation.js';
3
- //# sourceMappingURL=index.js.map
@@ -1,6 +1,5 @@
1
1
  import type { introspection as language } from '@astrale-os/kernel-core/schema';
2
- import type { schema as protocol } from '@astrale-os/kernel-protocol';
2
+ import type * as protocol from '@astrale-os/kernel-protocol/schema';
3
3
  import type { RequestOptions } from '../transport/index.js';
4
4
  import type { SchemaCall, SchemaOptions } from './schema.js';
5
5
  export declare function introspect<InputType extends language.Introspection>(invoke: SchemaCall, limits: SchemaOptions, request: InputType, options?: RequestOptions): Promise<protocol.installation.introspection.ResultFor<InputType>>;
6
- //# sourceMappingURL=introspection.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { Path } from '@astrale-os/kernel-core/path';
2
2
  import { introspect as introspectRef } from '@astrale-os/kernel-core/schema/kernel/syscalls/references';
3
- import { schema } from '@astrale-os/kernel-protocol';
3
+ import * as schema from '@astrale-os/kernel-protocol/schema';
4
4
  import { call } from '../client/index.js';
5
5
  const INTROSPECT_PATH = Path.project(introspectRef).raw;
6
6
  export async function introspect(invoke, limits, request, options) {
@@ -11,6 +11,9 @@ export async function introspect(invoke, limits, request, options) {
11
11
  if (result.value.mediaType !== schema.installation.introspection.MEDIA_TYPE) {
12
12
  throw new TypeError('Schema introspection returned an unsupported media type.');
13
13
  }
14
+ if (!(result.value.body instanceof Uint8Array)) {
15
+ await result.value.body[Symbol.asyncIterator]().return?.();
16
+ throw new TypeError('Schema introspection returned a streaming binary result.');
17
+ }
14
18
  return schema.installation.introspection.decode(request, result.value.body, limits);
15
19
  }
16
- //# sourceMappingURL=introspection.js.map
@@ -3,4 +3,3 @@ import type { OperationId } from './contracts.js';
3
3
  export declare function acceptOperationId(input: unknown): OperationId;
4
4
  /** Allocate one cryptographically generated operation identity for a new lifecycle request. */
5
5
  export declare function createOperationId(): OperationId;
6
- //# sourceMappingURL=operation.d.ts.map