@astrale-os/kernel-protocol 0.5.0-beta.2 → 0.5.0-beta.4

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 (243) hide show
  1. package/dist/invocation/admission.d.ts +4 -2
  2. package/dist/invocation/admission.d.ts.map +1 -1
  3. package/dist/invocation/admission.js +15 -3
  4. package/dist/invocation/admission.js.map +1 -1
  5. package/dist/invocation/binary.d.ts +3 -1
  6. package/dist/invocation/binary.d.ts.map +1 -1
  7. package/dist/invocation/binary.js +5 -4
  8. package/dist/invocation/binary.js.map +1 -1
  9. package/dist/invocation/cancellation.d.ts +1 -1
  10. package/dist/invocation/cancellation.d.ts.map +1 -1
  11. package/dist/invocation/cancellation.js +3 -3
  12. package/dist/invocation/cancellation.js.map +1 -1
  13. package/dist/invocation/http/binary.d.ts +7 -0
  14. package/dist/invocation/http/binary.d.ts.map +1 -1
  15. package/dist/invocation/http/binary.js +46 -2
  16. package/dist/invocation/http/binary.js.map +1 -1
  17. package/dist/invocation/http/index.d.ts +1 -1
  18. package/dist/invocation/http/index.d.ts.map +1 -1
  19. package/dist/invocation/http/index.js +1 -1
  20. package/dist/invocation/http/index.js.map +1 -1
  21. package/dist/invocation/identity.d.ts +17 -0
  22. package/dist/invocation/identity.d.ts.map +1 -0
  23. package/dist/invocation/identity.js +56 -0
  24. package/dist/invocation/identity.js.map +1 -0
  25. package/dist/invocation/index.d.ts +4 -3
  26. package/dist/invocation/index.d.ts.map +1 -1
  27. package/dist/invocation/index.js +3 -2
  28. package/dist/invocation/index.js.map +1 -1
  29. package/dist/invocation/miss.d.ts +4 -2
  30. package/dist/invocation/miss.d.ts.map +1 -1
  31. package/dist/invocation/miss.js +10 -6
  32. package/dist/invocation/miss.js.map +1 -1
  33. package/dist/invocation/redirect.d.ts +19 -11
  34. package/dist/invocation/redirect.d.ts.map +1 -1
  35. package/dist/invocation/redirect.js +30 -16
  36. package/dist/invocation/redirect.js.map +1 -1
  37. package/dist/invocation/request.d.ts +1 -1
  38. package/dist/invocation/request.d.ts.map +1 -1
  39. package/dist/invocation/request.js +3 -3
  40. package/dist/invocation/request.js.map +1 -1
  41. package/dist/invocation/response.d.ts +9 -6
  42. package/dist/invocation/response.d.ts.map +1 -1
  43. package/dist/invocation/response.js +14 -9
  44. package/dist/invocation/response.js.map +1 -1
  45. package/dist/invocation/routing.d.ts +3 -2
  46. package/dist/invocation/routing.d.ts.map +1 -1
  47. package/dist/invocation/routing.js +4 -3
  48. package/dist/invocation/routing.js.map +1 -1
  49. package/dist/invocation/schema.d.ts +2 -2
  50. package/dist/invocation/schema.d.ts.map +1 -1
  51. package/dist/invocation/schema.js +2 -2
  52. package/dist/invocation/schema.js.map +1 -1
  53. package/dist/invocation/service-reason.d.ts +17 -9
  54. package/dist/invocation/service-reason.d.ts.map +1 -1
  55. package/dist/invocation/service-reason.js +18 -6
  56. package/dist/invocation/service-reason.js.map +1 -1
  57. package/dist/invocation/stale-route.d.ts +4 -2
  58. package/dist/invocation/stale-route.d.ts.map +1 -1
  59. package/dist/invocation/stale-route.js +7 -6
  60. package/dist/invocation/stale-route.js.map +1 -1
  61. package/dist/invocation/stream.d.ts +6 -4
  62. package/dist/invocation/stream.d.ts.map +1 -1
  63. package/dist/invocation/stream.js +17 -13
  64. package/dist/invocation/stream.js.map +1 -1
  65. package/dist/invocation/target.d.ts +2 -7
  66. package/dist/invocation/target.d.ts.map +1 -1
  67. package/dist/invocation/target.js.map +1 -1
  68. package/dist/invocation/websocket/binary.d.ts.map +1 -1
  69. package/dist/invocation/websocket/binary.js +2 -1
  70. package/dist/invocation/websocket/binary.js.map +1 -1
  71. package/dist/issuer/configuration.d.ts +1 -1
  72. package/dist/issuer/configuration.d.ts.map +1 -1
  73. package/dist/issuer/hosted.d.ts +1 -1
  74. package/dist/issuer/hosted.d.ts.map +1 -1
  75. package/dist/issuer/key-set.d.ts +1 -1
  76. package/dist/issuer/key-set.d.ts.map +1 -1
  77. package/dist/issuer/key-set.js +3 -2
  78. package/dist/issuer/key-set.js.map +1 -1
  79. package/dist/issuer/url.d.ts +1 -1
  80. package/dist/issuer/url.d.ts.map +1 -1
  81. package/dist/issuer/url.js +3 -2
  82. package/dist/issuer/url.js.map +1 -1
  83. package/dist/publication/bindings/callable.d.ts +1 -1
  84. package/dist/publication/bindings/callable.d.ts.map +1 -1
  85. package/dist/publication/bindings/callable.js +1 -1
  86. package/dist/publication/bindings/callable.js.map +1 -1
  87. package/dist/publication/bindings/view.d.ts +1 -1
  88. package/dist/publication/bindings/view.d.ts.map +1 -1
  89. package/dist/publication/bindings/view.js +1 -1
  90. package/dist/publication/bindings/view.js.map +1 -1
  91. package/dist/publication/bundle-admission.d.ts +5 -0
  92. package/dist/publication/bundle-admission.d.ts.map +1 -0
  93. package/dist/publication/bundle-admission.js +66 -0
  94. package/dist/publication/bundle-admission.js.map +1 -0
  95. package/dist/publication/bundle-descriptor.d.ts +10 -0
  96. package/dist/publication/bundle-descriptor.d.ts.map +1 -0
  97. package/dist/publication/bundle-descriptor.js +20 -0
  98. package/dist/publication/bundle-descriptor.js.map +1 -0
  99. package/dist/publication/bundle-evidence.d.ts +4 -0
  100. package/dist/publication/bundle-evidence.d.ts.map +1 -0
  101. package/dist/publication/bundle-evidence.js +14 -0
  102. package/dist/publication/bundle-evidence.js.map +1 -0
  103. package/dist/publication/bundle.d.ts +4 -10
  104. package/dist/publication/bundle.d.ts.map +1 -1
  105. package/dist/publication/bundle.js +5 -25
  106. package/dist/publication/bundle.js.map +1 -1
  107. package/dist/publication/declaration.d.ts +12 -0
  108. package/dist/publication/declaration.d.ts.map +1 -0
  109. package/dist/publication/declaration.js +2 -0
  110. package/dist/publication/declaration.js.map +1 -0
  111. package/dist/publication/delivery/claims.d.ts +8 -7
  112. package/dist/publication/delivery/claims.d.ts.map +1 -1
  113. package/dist/publication/delivery/claims.js +6 -6
  114. package/dist/publication/delivery/claims.js.map +1 -1
  115. package/dist/publication/delivery/delivery.d.ts +1 -1
  116. package/dist/publication/delivery/delivery.d.ts.map +1 -1
  117. package/dist/publication/delivery/delivery.js +1 -1
  118. package/dist/publication/delivery/delivery.js.map +1 -1
  119. package/dist/publication/delivery/request.d.ts +3 -3
  120. package/dist/publication/delivery/request.d.ts.map +1 -1
  121. package/dist/publication/delivery/request.js +4 -3
  122. package/dist/publication/delivery/request.js.map +1 -1
  123. package/dist/publication/delivery-declaration.d.ts +5 -0
  124. package/dist/publication/delivery-declaration.d.ts.map +1 -0
  125. package/dist/publication/delivery-declaration.js +26 -0
  126. package/dist/publication/delivery-declaration.js.map +1 -0
  127. package/dist/publication/index.d.ts +6 -2
  128. package/dist/publication/index.d.ts.map +1 -1
  129. package/dist/publication/index.js +4 -1
  130. package/dist/publication/index.js.map +1 -1
  131. package/dist/publication/manifest.d.ts +1 -1
  132. package/dist/publication/manifest.d.ts.map +1 -1
  133. package/dist/publication/manifest.js +1 -1
  134. package/dist/publication/manifest.js.map +1 -1
  135. package/dist/publication/publication.d.ts +3 -5
  136. package/dist/publication/publication.d.ts.map +1 -1
  137. package/dist/publication/publication.js +7 -66
  138. package/dist/publication/publication.js.map +1 -1
  139. package/dist/publication/reference.d.ts +3 -2
  140. package/dist/publication/reference.d.ts.map +1 -1
  141. package/dist/publication/reference.js +7 -6
  142. package/dist/publication/reference.js.map +1 -1
  143. package/dist/publication/requirements.d.ts +3 -2
  144. package/dist/publication/requirements.d.ts.map +1 -1
  145. package/dist/publication/requirements.js +16 -11
  146. package/dist/publication/requirements.js.map +1 -1
  147. package/dist/publication/route.d.ts +6 -1
  148. package/dist/publication/route.d.ts.map +1 -1
  149. package/dist/publication/route.js +31 -8
  150. package/dist/publication/route.js.map +1 -1
  151. package/dist/publication/schema.d.ts +3 -3
  152. package/dist/publication/schema.d.ts.map +1 -1
  153. package/dist/publication/schema.js +3 -3
  154. package/dist/publication/schema.js.map +1 -1
  155. package/dist/routes/admission.d.ts +4 -0
  156. package/dist/routes/admission.d.ts.map +1 -0
  157. package/dist/routes/admission.js +90 -0
  158. package/dist/routes/admission.js.map +1 -0
  159. package/dist/routes/binding.d.ts +7 -0
  160. package/dist/routes/binding.d.ts.map +1 -0
  161. package/dist/routes/binding.js +28 -0
  162. package/dist/routes/binding.js.map +1 -0
  163. package/dist/routes/collision.d.ts +3 -0
  164. package/dist/routes/collision.d.ts.map +1 -0
  165. package/dist/routes/collision.js +17 -0
  166. package/dist/routes/collision.js.map +1 -0
  167. package/dist/routes/compiler.d.ts +9 -0
  168. package/dist/routes/compiler.d.ts.map +1 -0
  169. package/dist/routes/compiler.js +48 -0
  170. package/dist/routes/compiler.js.map +1 -0
  171. package/dist/routes/credential.d.ts +7 -7
  172. package/dist/routes/credential.d.ts.map +1 -1
  173. package/dist/routes/credential.js +7 -7
  174. package/dist/routes/credential.js.map +1 -1
  175. package/dist/routes/decode.d.ts +4 -2
  176. package/dist/routes/decode.d.ts.map +1 -1
  177. package/dist/routes/decode.js +36 -31
  178. package/dist/routes/decode.js.map +1 -1
  179. package/dist/routes/encode.d.ts +3 -2
  180. package/dist/routes/encode.d.ts.map +1 -1
  181. package/dist/routes/encode.js +25 -22
  182. package/dist/routes/encode.js.map +1 -1
  183. package/dist/routes/evidence.d.ts +6 -0
  184. package/dist/routes/evidence.d.ts.map +1 -0
  185. package/dist/routes/evidence.js +38 -0
  186. package/dist/routes/evidence.js.map +1 -0
  187. package/dist/routes/index.d.ts +9 -2
  188. package/dist/routes/index.d.ts.map +1 -1
  189. package/dist/routes/index.js +6 -2
  190. package/dist/routes/index.js.map +1 -1
  191. package/dist/routes/mapping.d.ts +1 -1
  192. package/dist/routes/mapping.d.ts.map +1 -1
  193. package/dist/routes/mapping.js +4 -12
  194. package/dist/routes/mapping.js.map +1 -1
  195. package/dist/routes/match.d.ts +3 -3
  196. package/dist/routes/match.d.ts.map +1 -1
  197. package/dist/routes/match.js +3 -4
  198. package/dist/routes/match.js.map +1 -1
  199. package/dist/routes/placement.d.ts +6 -0
  200. package/dist/routes/placement.d.ts.map +1 -0
  201. package/dist/routes/placement.js +19 -0
  202. package/dist/routes/placement.js.map +1 -0
  203. package/dist/routes/plan.d.ts +24 -0
  204. package/dist/routes/plan.d.ts.map +1 -0
  205. package/dist/routes/plan.js +2 -0
  206. package/dist/routes/plan.js.map +1 -0
  207. package/dist/routes/release-unavailable.d.ts +9 -0
  208. package/dist/routes/release-unavailable.d.ts.map +1 -0
  209. package/dist/routes/release-unavailable.js +33 -0
  210. package/dist/routes/release-unavailable.js.map +1 -0
  211. package/dist/routes/reservation.d.ts +3 -3
  212. package/dist/routes/reservation.d.ts.map +1 -1
  213. package/dist/routes/reservation.js +4 -4
  214. package/dist/routes/reservation.js.map +1 -1
  215. package/dist/routes/scalar.d.ts +4 -3
  216. package/dist/routes/scalar.d.ts.map +1 -1
  217. package/dist/routes/scalar.js +14 -10
  218. package/dist/routes/scalar.js.map +1 -1
  219. package/dist/routes/select.d.ts +2 -2
  220. package/dist/routes/select.d.ts.map +1 -1
  221. package/dist/routes/select.js +2 -2
  222. package/dist/routes/select.js.map +1 -1
  223. package/dist/routes/table.d.ts +10 -0
  224. package/dist/routes/table.d.ts.map +1 -0
  225. package/dist/routes/table.js +2 -0
  226. package/dist/routes/table.js.map +1 -0
  227. package/dist/routes/target.d.ts +14 -0
  228. package/dist/routes/target.d.ts.map +1 -0
  229. package/dist/routes/target.js +4 -0
  230. package/dist/routes/target.js.map +1 -0
  231. package/dist/runtime/artifact.d.ts +1 -1
  232. package/dist/runtime/artifact.d.ts.map +1 -1
  233. package/dist/runtime/artifact.js +2 -2
  234. package/dist/runtime/artifact.js.map +1 -1
  235. package/package.json +96 -3
  236. package/dist/routes/compile.d.ts +0 -5
  237. package/dist/routes/compile.d.ts.map +0 -1
  238. package/dist/routes/compile.js +0 -69
  239. package/dist/routes/compile.js.map +0 -1
  240. package/dist/routes/route.d.ts +0 -13
  241. package/dist/routes/route.d.ts.map +0 -1
  242. package/dist/routes/route.js +0 -6
  243. package/dist/routes/route.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"redirect.d.ts","sourceRoot":"","sources":["../../invocation/redirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AAYtD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,mBAAmB,CAAA;IAClD,QAAQ,CAAC,GAAG,EAAE;QACZ,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;QACpB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,cAAc,CAAA;QAChD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;KAC1B,CAAA;CACF;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,mBAAmB,CAAA;IAClD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAA;CAChC;AAMD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAuBjD;AAED,2FAA2F;AAC3F,wBAAgB,WAAW,CACzB,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,QAAQ,GACf,KAAK,CAcP;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAoBvD"}
1
+ {"version":3,"file":"redirect.d.ts","sourceRoot":"","sources":["../../invocation/redirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAA;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAEpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAA;AAChF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAiBvC,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAA;IACtC,QAAQ,CAAC,GAAG,EAAE;QACZ,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;QACpB,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAA;QACpC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;KAC1B,CAAA;CACF;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAA;IACjC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAA;IACtC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;IAC7C,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CACpB;AAOD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAuBjD;AAED,2FAA2F;AAC3F,wBAAgB,WAAW,CACzB,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,QAAQ,GACf,KAAK,CAcP;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAmB7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAYvE"}
@@ -1,9 +1,12 @@
1
- import * as publication from '../publication/index.js';
2
- import { exactFields, invalid, issuerId, portableObject, requestId, required, string, } from './admission.js';
1
+ import { acceptInvocationEndpoints } from '../publication/bindings/invocation.js';
2
+ import { PublicationError } from '../publication/error.js';
3
+ import { acceptReference } from '../publication/reference.js';
4
+ import { exactFields, invalid, issuerId, invocation, portableObject, requestId, required, string, } from './admission.js';
3
5
  import { admitTrace } from './trace.js';
4
6
  const ROUTE_FIELDS = new Set(['endpoint', 'via']);
5
7
  const VIA_FIELDS = new Set(['kind', 'publication', 'issuer']);
6
- const REDIRECT_FIELDS = new Set(['kind', 'id', 'route', 'credential', 'trace']);
8
+ const REDIRECTION_FIELDS = new Set(['route', 'credential', 'trace']);
9
+ const REDIRECT_RESPONSE_FIELDS = new Set(['kind', 'requestId', 'invocation', 'redirect']);
7
10
  export function acceptRoute(input) {
8
11
  const object = portableObject(input, 'route');
9
12
  exactFields(object, ROUTE_FIELDS, 'route');
@@ -15,16 +18,16 @@ export function acceptRoute(input) {
15
18
  if (via.kind !== 'via')
16
19
  invalid('route.via.kind must be "via"');
17
20
  return Object.freeze({
18
- endpoint: publication.acceptInvocationEndpoints(object.endpoint),
21
+ endpoint: acceptInvocationEndpoints(object.endpoint),
19
22
  via: Object.freeze({
20
23
  kind: 'via',
21
- publication: publication.acceptReference(via.publication),
24
+ publication: acceptReference(via.publication),
22
25
  issuer: issuerId(via.issuer, 'route.via.issuer'),
23
26
  }),
24
27
  });
25
28
  }
26
29
  catch (cause) {
27
- if (cause instanceof publication.PublicationError) {
30
+ if (cause instanceof PublicationError) {
28
31
  return invalid(`route is invalid: ${cause.message}`);
29
32
  }
30
33
  throw cause;
@@ -46,23 +49,34 @@ export function remoteRoute(origin, binding, issuer) {
46
49
  },
47
50
  });
48
51
  }
49
- export function decodeRedirect(input) {
50
- const object = portableObject(input, 'redirect');
51
- exactFields(object, REDIRECT_FIELDS, 'redirect');
52
- required(object, ['kind', 'id', 'route'], 'redirect');
53
- if (object.kind !== 'redirect')
54
- invalid('redirect.kind must be "redirect"');
52
+ export function acceptRedirection(input) {
53
+ const object = portableObject(input, 'redirection');
54
+ exactFields(object, REDIRECTION_FIELDS, 'redirection');
55
+ required(object, ['route'], 'redirection');
55
56
  const route = acceptRoute(object.route);
56
- const credential = object.credential === undefined ? undefined : string(object.credential, 'redirect.credential');
57
+ const credential = object.credential === undefined
58
+ ? undefined
59
+ : string(object.credential, 'redirection.credential');
57
60
  const trace = object.trace === undefined ? undefined : admitTrace(object.trace);
58
61
  if (credential !== undefined && credential.length === 0)
59
- invalid('redirect.credential must be non-empty');
62
+ invalid('redirection.credential must be non-empty');
60
63
  return Object.freeze({
61
- kind: 'redirect',
62
- id: requestId(object.id, 'redirect.id'),
63
64
  route,
64
65
  ...(credential === undefined ? {} : { credential }),
65
66
  ...(trace === undefined ? {} : { trace }),
66
67
  });
67
68
  }
69
+ export function decodeRedirectResponse(input) {
70
+ const object = portableObject(input, 'redirect response');
71
+ exactFields(object, REDIRECT_RESPONSE_FIELDS, 'redirect response');
72
+ required(object, ['kind', 'requestId', 'invocation', 'redirect'], 'redirect response');
73
+ if (object.kind !== 'redirect')
74
+ invalid('redirect response.kind must be "redirect"');
75
+ return Object.freeze({
76
+ kind: 'redirect',
77
+ requestId: requestId(object.requestId, 'redirect response.requestId'),
78
+ invocation: invocation(object.invocation, 'redirect response.invocation'),
79
+ redirect: acceptRedirection(object.redirect),
80
+ });
81
+ }
68
82
  //# sourceMappingURL=redirect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"redirect.js","sourceRoot":"","sources":["../../invocation/redirect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redirect.js","sourceRoot":"","sources":["../../invocation/redirect.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import type { Trace } from './trace.js';
8
8
  import type { Version } from './version.js';
9
9
  export interface Request {
10
10
  readonly version: Version;
11
- readonly id: RequestId;
11
+ readonly requestId: RequestId;
12
12
  readonly call: Call;
13
13
  readonly credential?: string;
14
14
  readonly delegate?: Delegate;
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../invocation/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAU3C,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAA;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CACvB;AAcD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAkCrD"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../invocation/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAU3C,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAA;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CACvB;AAcD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAkCrD"}
@@ -7,7 +7,7 @@ import { acceptCall } from './target.js';
7
7
  import { admitTrace } from './trace.js';
8
8
  const REQUEST_FIELDS = new Set([
9
9
  'version',
10
- 'id',
10
+ 'requestId',
11
11
  'call',
12
12
  'credential',
13
13
  'delegate',
@@ -19,7 +19,7 @@ const REQUEST_FIELDS = new Set([
19
19
  export function decodeRequest(input) {
20
20
  const object = portableObject(input, 'request');
21
21
  exactFields(object, REQUEST_FIELDS, 'request');
22
- required(object, ['version', 'id', 'call'], 'request');
22
+ required(object, ['version', 'requestId', 'call'], 'request');
23
23
  if (object.version !== 2)
24
24
  invalid('request.version must be 2');
25
25
  const credential = object.credential === undefined ? undefined : string(object.credential, 'request.credential');
@@ -38,7 +38,7 @@ export function decodeRequest(input) {
38
38
  }
39
39
  return Object.freeze({
40
40
  version: 2,
41
- id: requestId(object.id, 'request.id'),
41
+ requestId: requestId(object.requestId, 'request.requestId'),
42
42
  call: acceptCall(object.call),
43
43
  ...(credential === undefined ? {} : { credential }),
44
44
  ...(delegate === undefined ? {} : { delegate }),
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../invocation/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../invocation/request.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,20 @@
1
1
  import type { Value } from '@astrale-os/kernel-dsl/value';
2
2
  import type { ErrorPayload } from '../errors/index.js';
3
3
  import type { RequestId } from './correlation.js';
4
+ import type { InvocationId } from './identity.js';
4
5
  import type { Miss } from './miss.js';
5
- import type { Redirect } from './redirect.js';
6
+ import type { RedirectResponse } from './redirect.js';
6
7
  import type { Stale } from './stale-route.js';
7
- export interface SuccessResponse<Result extends Value = Value> {
8
+ export interface ResponseContext {
9
+ readonly requestId: RequestId;
10
+ readonly invocation: InvocationId;
11
+ }
12
+ export interface SuccessResponse<Result extends Value = Value> extends ResponseContext {
8
13
  readonly result: Result;
9
- readonly id: RequestId;
10
14
  }
11
- export interface ErrorResponse {
15
+ export interface ErrorResponse extends ResponseContext {
12
16
  readonly error: ErrorPayload;
13
- readonly id: RequestId;
14
17
  }
15
- export type Response<Result extends Value = Value> = SuccessResponse<Result> | ErrorResponse | Redirect | Stale | Miss;
18
+ export type Response<Result extends Value = Value> = SuccessResponse<Result> | ErrorResponse | RedirectResponse | Stale | Miss;
16
19
  export declare function decodeResponse(input: unknown): Response;
17
20
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../invocation/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAEzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAc7C,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;CACvB;AAED,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK,IAC7C,eAAe,CAAC,MAAM,CAAC,GACvB,aAAa,GACb,QAAQ,GACR,KAAK,GACL,IAAI,CAAA;AAKR,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAyBvD"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../invocation/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAEzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAe7C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAA;CAClC;AAED,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK,CAAE,SAAQ,eAAe;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;CAC7B;AAED,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK,IAC7C,eAAe,CAAC,MAAM,CAAC,GACvB,aAAa,GACb,gBAAgB,GAChB,KAAK,GACL,IAAI,CAAA;AAKR,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CA8BvD"}
@@ -1,9 +1,9 @@
1
- import { errorPayload, exactFields, invalid, portableObject, requestId, required, } from './admission.js';
1
+ import { errorPayload, exactFields, invalid, invocation, portableObject, requestId, required, } from './admission.js';
2
2
  import { decodeMiss } from './miss.js';
3
- import { decodeRedirect } from './redirect.js';
3
+ import { decodeRedirectResponse } from './redirect.js';
4
4
  import { decodeStale } from './stale-route.js';
5
- const SUCCESS_FIELDS = new Set(['result', 'id']);
6
- const ERROR_FIELDS = new Set(['error', 'id']);
5
+ const SUCCESS_FIELDS = new Set(['result', 'requestId', 'invocation']);
6
+ const ERROR_FIELDS = new Set(['error', 'requestId', 'invocation']);
7
7
  export function decodeResponse(input) {
8
8
  const object = portableObject(input, 'response');
9
9
  const hasResult = Object.hasOwn(object, 'result');
@@ -13,18 +13,23 @@ export function decodeResponse(input) {
13
13
  invalid('response must contain exactly one of result or error');
14
14
  if (hasResult) {
15
15
  exactFields(object, SUCCESS_FIELDS, 'response');
16
- required(object, ['id'], 'response');
17
- return Object.freeze({ result: object.result, id: requestId(object.id, 'response.id') });
16
+ required(object, ['requestId', 'invocation'], 'response');
17
+ return Object.freeze({
18
+ result: object.result,
19
+ requestId: requestId(object.requestId, 'response.requestId'),
20
+ invocation: invocation(object.invocation, 'response.invocation'),
21
+ });
18
22
  }
19
23
  exactFields(object, ERROR_FIELDS, 'response');
20
- required(object, ['id', 'error'], 'response');
24
+ required(object, ['requestId', 'error', 'invocation'], 'response');
21
25
  return Object.freeze({
22
26
  error: errorPayload(object.error, 'response.error'),
23
- id: requestId(object.id, 'response.id'),
27
+ requestId: requestId(object.requestId, 'response.requestId'),
28
+ invocation: invocation(object.invocation, 'response.invocation'),
24
29
  });
25
30
  }
26
31
  if (object.kind === 'redirect')
27
- return decodeRedirect(object);
32
+ return decodeRedirectResponse(object);
28
33
  if (object.kind === 'stale')
29
34
  return decodeStale(object);
30
35
  if (object.kind === 'miss')
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../invocation/response.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,OAAO,EACP,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAmB9C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;AAChD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;AAE7C,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,SAAS,KAAK,QAAQ;YAAE,OAAO,CAAC,sDAAsD,CAAC,CAAA;QAE3F,IAAI,SAAS,EAAE,CAAC;YACd,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,CAAA;YAC/C,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAA;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAO,EAAE,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,CAAA;QAC3F,CAAC;QAED,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;QAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAA;QAC7C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC;YACnD,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;SACxC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,MAAM,CAAC,CAAA;IAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAA;IACvD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IACrD,OAAO,OAAO,CAAC,yEAAyE,CAAC,CAAA;AAC3F,CAAC"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../invocation/response.ts"],"names":[],"mappings":"AASA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAsB9C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;AACrE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;AAElE,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,SAAS,KAAK,QAAQ;YAAE,OAAO,CAAC,sDAAsD,CAAC,CAAA;QAE3F,IAAI,SAAS,EAAE,CAAC;YACd,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,CAAA;YAC/C,QAAQ,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC,CAAA;YACzD,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAO;gBACtB,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,oBAAoB,CAAC;gBAC5D,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,qBAAqB,CAAC;aACjE,CAAC,CAAA;QACJ,CAAC;QAED,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;QAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC,CAAA;QAClE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC;YACnD,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,oBAAoB,CAAC;YAC5D,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,qBAAqB,CAAC;SACjE,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAA;IACrE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAA;IACvD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IACrD,OAAO,OAAO,CAAC,yEAAyE,CAAC,CAAA;AAC3F,CAAC"}
@@ -1,5 +1,6 @@
1
- import type { IssuerId } from '@astrale-os/kernel-core/auth';
2
- import type { Etag, PublicationRef } from '../publication/index.js';
1
+ import type { IssuerId } from '@astrale-os/kernel-core/auth/issuer';
2
+ import type { Etag } from '../publication/etag.js';
3
+ import type { PublicationRef } from '../publication/reference.js';
3
4
  export interface Via {
4
5
  readonly kind: 'via';
5
6
  readonly publication: PublicationRef;
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../invocation/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAE5D,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAKnE,MAAM,WAAW,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAA;IACpC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;CAC1B;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAA;CACrB;AAED,MAAM,MAAM,OAAO,GAAG,GAAG,GAAG,OAAO,CAAA;AAKnC,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA2BrD"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../invocation/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAA;AAEnE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAMjE,MAAM,WAAW,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAA;IACpC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;CAC1B;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAA;CACrB;AAED,MAAM,MAAM,OAAO,GAAG,GAAG,GAAG,OAAO,CAAA;AAKnC,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA2BrD"}
@@ -1,4 +1,5 @@
1
- import * as publication from '../publication/index.js';
1
+ import { PublicationError } from '../publication/error.js';
2
+ import { acceptReference } from '../publication/reference.js';
2
3
  import { digest, exactFields, invalid, issuerId, portableObject, required } from './admission.js';
3
4
  const VIA_FIELDS = new Set(['kind', 'publication', 'issuer']);
4
5
  const REFRESH_FIELDS = new Set(['kind', 'stale']);
@@ -10,12 +11,12 @@ export function acceptRouting(input) {
10
11
  try {
11
12
  return Object.freeze({
12
13
  kind: 'via',
13
- publication: publication.acceptReference(object.publication),
14
+ publication: acceptReference(object.publication),
14
15
  issuer: issuerId(object.issuer, 'via routing.issuer'),
15
16
  });
16
17
  }
17
18
  catch (cause) {
18
- if (cause instanceof publication.PublicationError) {
19
+ if (cause instanceof PublicationError) {
19
20
  return invalid(`via routing.publication is invalid: ${cause.message}`);
20
21
  }
21
22
  throw cause;
@@ -1 +1 @@
1
- {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../invocation/routing.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAejG,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC7D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAEjD,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC1B,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;QAC9C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAA;QAClE,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,KAAK;gBACX,WAAW,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC;aACtD,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAClD,OAAO,OAAO,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;YACxE,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAA;QACtD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAA;QACtD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC;SACrD,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,yCAAyC,CAAC,CAAA;AAC3D,CAAC"}
1
+ {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../invocation/routing.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAejG,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC7D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAEjD,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC1B,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;QAC9C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAA;QAClE,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,KAAK;gBACX,WAAW,EAAE,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC;gBAChD,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC;aACtD,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;YACxE,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAA;QACtD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAA;QACtD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC;SACrD,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,yCAAyC,CAAC,CAAA;AAC3D,CAAC"}
@@ -1,10 +1,10 @@
1
- import { type schema } from '@astrale-os/kernel-dsl/v1';
1
+ import type { Revision } from '@astrale-os/kernel-dsl/v1/schema';
2
2
  import type { Sha256Digest } from '../publication/index.js';
3
3
  /** Source-Kernel precondition for the active Schema Registration selected by one invocation. */
4
4
  export type SchemaTarget = {
5
5
  readonly target: Sha256Digest;
6
6
  } | {
7
- readonly revision: schema.Revision;
7
+ readonly revision: Revision;
8
8
  };
9
9
  export declare function acceptSchemaTarget(input: unknown): SchemaTarget;
10
10
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../invocation/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAE5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAI3D,gGAAgG;AAChG,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GACjC;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAA;CAAE,CAAA;AAI1C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAe/D"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../invocation/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAIhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAI3D,gGAAgG;AAChG,MAAM,MAAM,YAAY,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,CAAA;AAI9F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAe/D"}
@@ -1,4 +1,4 @@
1
- import { schema as dslSchema } from '@astrale-os/kernel-dsl/v1';
1
+ import { patterns } from '@astrale-os/kernel-dsl/v1/addressing';
2
2
  import { digest, exactFields, invalid, portableObject } from './admission.js';
3
3
  const FIELDS = new Set(['target', 'revision']);
4
4
  export function acceptSchemaTarget(input) {
@@ -12,7 +12,7 @@ export function acceptSchemaTarget(input) {
12
12
  if (hasTarget) {
13
13
  return Object.freeze({ target: digest(object.target, 'schema target.target') });
14
14
  }
15
- if (typeof object.revision !== 'string' || !dslSchema.patterns.revision.test(object.revision)) {
15
+ if (typeof object.revision !== 'string' || !patterns.revision.test(object.revision)) {
16
16
  invalid('schema target.revision must be a Schema revision');
17
17
  }
18
18
  return Object.freeze({ revision: object.revision });
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../invocation/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,SAAS,EAAe,MAAM,2BAA2B,CAAA;AAI5E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAO7E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;AAE9C,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;IACrD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACrD,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,CAAC,8DAA8D,CAAC,CAAA;IACzE,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAA;IACjF,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9F,OAAO,CAAC,kDAAkD,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAA2B,EAAE,CAAC,CAAA;AACxE,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../invocation/schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAA;AAI/D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAK7E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;AAE9C,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;IACrD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACrD,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,CAAC,8DAA8D,CAAC,CAAA;IACzE,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAA;IACjF,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpF,OAAO,CAAC,kDAAkD,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAoB,EAAE,CAAC,CAAA;AACjE,CAAC"}
@@ -1,37 +1,45 @@
1
+ import type { IssuerId } from '@astrale-os/kernel-core/auth/issuer';
2
+ import type { Revision } from '@astrale-os/kernel-dsl/v1/schema';
1
3
  import type { Object as ValueObject } from '@astrale-os/kernel-dsl/value';
2
- import * as auth from '@astrale-os/kernel-core/auth';
3
- import { schema as dslSchema, type Key } from '@astrale-os/kernel-dsl/v1';
4
+ import { type Key } from '@astrale-os/kernel-dsl/v1/addressing';
4
5
  import type { ErrorPayload, ErrorReason } from '../errors/index.js';
5
6
  import { CODES } from '../errors/index.js';
6
7
  export declare const SCHEMA_UPGRADE_REQUIRED: 'SCHEMA_UPGRADE_REQUIRED';
8
+ export declare const SCHEMA_REVISION_MISMATCH: 'SCHEMA_REVISION_MISMATCH';
7
9
  export declare const SERVICE_TRUST_REQUIRED: 'SERVICE_TRUST_REQUIRED';
8
10
  export declare const SERVICE_UNAVAILABLE: 'SERVICE_UNAVAILABLE';
9
11
  export declare const SERVICE_CANDIDATE_INVALID: 'SERVICE_CANDIDATE_INVALID';
10
12
  export type SchemaUpgradeRequiredDetails = ValueObject & {
11
13
  readonly origin: Key.Origin;
12
- readonly installedRevision: dslSchema.Revision;
13
- readonly candidateRevision: dslSchema.Revision;
14
+ readonly installedRevision: Revision;
15
+ readonly candidateRevision: Revision;
16
+ };
17
+ export type SchemaRevisionMismatchDetails = ValueObject & {
18
+ readonly origin: Key.Origin;
19
+ readonly expectedRevision: Revision;
20
+ readonly installedRevision: Revision;
14
21
  };
15
22
  export type ServiceTrustRequiredDetails = ValueObject & {
16
23
  readonly origin: Key.Origin;
17
- readonly installedIssuer: auth.IssuerId;
18
- readonly candidateIssuer: auth.IssuerId;
24
+ readonly installedIssuer: IssuerId;
25
+ readonly candidateIssuer: IssuerId;
19
26
  };
20
27
  export type ServiceUnavailableDetails = ValueObject & {
21
28
  readonly origin: Key.Origin;
22
- readonly revision: dslSchema.Revision;
29
+ readonly revision: Revision;
23
30
  };
24
31
  export type ServiceCandidateInvalidDetails = ValueObject & {
25
32
  readonly origin: Key.Origin;
26
33
  };
27
34
  export type SchemaUpgradeRequiredReason = ErrorReason<typeof SCHEMA_UPGRADE_REQUIRED, SchemaUpgradeRequiredDetails>;
35
+ export type SchemaRevisionMismatchReason = ErrorReason<typeof SCHEMA_REVISION_MISMATCH, SchemaRevisionMismatchDetails>;
28
36
  export type ServiceTrustRequiredReason = ErrorReason<typeof SERVICE_TRUST_REQUIRED, ServiceTrustRequiredDetails>;
29
37
  export type ServiceUnavailableReason = ErrorReason<typeof SERVICE_UNAVAILABLE, ServiceUnavailableDetails>;
30
38
  export type ServiceCandidateInvalidReason = ErrorReason<typeof SERVICE_CANDIDATE_INVALID, ServiceCandidateInvalidDetails>;
31
- export type ServiceReason = SchemaUpgradeRequiredReason | ServiceTrustRequiredReason | ServiceUnavailableReason | ServiceCandidateInvalidReason;
39
+ export type ServiceReason = SchemaRevisionMismatchReason | SchemaUpgradeRequiredReason | ServiceTrustRequiredReason | ServiceUnavailableReason | ServiceCandidateInvalidReason;
32
40
  export type ServiceErrorPayload = (Omit<ErrorPayload, 'code' | 'data'> & {
33
41
  readonly code: typeof CODES.CONFLICT;
34
- readonly data: SchemaUpgradeRequiredReason | ServiceTrustRequiredReason;
42
+ readonly data: SchemaRevisionMismatchReason | SchemaUpgradeRequiredReason | ServiceTrustRequiredReason;
35
43
  }) | (Omit<ErrorPayload, 'code' | 'data'> & {
36
44
  readonly code: typeof CODES.BACKEND_UNAVAILABLE;
37
45
  readonly data: ServiceUnavailableReason | ServiceCandidateInvalidReason;
@@ -1 +1 @@
1
- {"version":3,"file":"service-reason.d.ts","sourceRoot":"","sources":["../../invocation/service-reason.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAEzE,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAA;AACpD,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,KAAK,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEnE,OAAO,EAAE,KAAK,EAAY,MAAM,oBAAoB,CAAA;AAEpD,eAAO,MAAM,uBAAuB,EAAG,yBAAkC,CAAA;AACzE,eAAO,MAAM,sBAAsB,EAAG,wBAAiC,CAAA;AACvE,eAAO,MAAM,mBAAmB,EAAG,qBAA8B,CAAA;AACjE,eAAO,MAAM,yBAAyB,EAAG,2BAAoC,CAAA;AAE7E,MAAM,MAAM,4BAA4B,GAAG,WAAW,GAAG;IACvD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC,QAAQ,CAAA;IAC9C,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC,QAAQ,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG,WAAW,GAAG;IACtD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAC3B,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAA;IACvC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG;IACpD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,WAAW,GAAG;IACzD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG,WAAW,CACnD,OAAO,uBAAuB,EAC9B,4BAA4B,CAC7B,CAAA;AACD,MAAM,MAAM,0BAA0B,GAAG,WAAW,CAClD,OAAO,sBAAsB,EAC7B,2BAA2B,CAC5B,CAAA;AACD,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAChD,OAAO,mBAAmB,EAC1B,yBAAyB,CAC1B,CAAA;AACD,MAAM,MAAM,6BAA6B,GAAG,WAAW,CACrD,OAAO,yBAAyB,EAChC,8BAA8B,CAC/B,CAAA;AAED,MAAM,MAAM,aAAa,GACrB,2BAA2B,GAC3B,0BAA0B,GAC1B,wBAAwB,GACxB,6BAA6B,CAAA;AAEjC,MAAM,MAAM,mBAAmB,GAC3B,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG;IACrC,QAAQ,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,QAAQ,CAAA;IACpC,QAAQ,CAAC,IAAI,EAAE,2BAA2B,GAAG,0BAA0B,CAAA;CACxE,CAAC,GACF,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG;IACrC,QAAQ,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,mBAAmB,CAAA;IAC/C,QAAQ,CAAC,IAAI,EAAE,wBAAwB,GAAG,6BAA6B,CAAA;CACxE,CAAC,CAAA;AAEN,mFAAmF;AACnF,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,mBAAmB,GAAG,SAAS,CAwBnF"}
1
+ {"version":3,"file":"service-reason.d.ts","sourceRoot":"","sources":["../../invocation/service-reason.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
- import * as auth from '@astrale-os/kernel-core/auth';
2
- import { schema as dslSchema } from '@astrale-os/kernel-dsl/v1';
1
+ import { AuthValueError } from '@astrale-os/kernel-core/auth/error';
2
+ import { accept as acceptIssuer } from '@astrale-os/kernel-core/auth/issuer';
3
+ import { patterns } from '@astrale-os/kernel-dsl/v1/addressing';
3
4
  import { CODES, reasonOf } from '../errors/index.js';
4
5
  export const SCHEMA_UPGRADE_REQUIRED = 'SCHEMA_UPGRADE_REQUIRED';
6
+ export const SCHEMA_REVISION_MISMATCH = 'SCHEMA_REVISION_MISMATCH';
5
7
  export const SERVICE_TRUST_REQUIRED = 'SERVICE_TRUST_REQUIRED';
6
8
  export const SERVICE_UNAVAILABLE = 'SERVICE_UNAVAILABLE';
7
9
  export const SERVICE_CANDIDATE_INVALID = 'SERVICE_CANDIDATE_INVALID';
@@ -11,6 +13,10 @@ export function serviceErrorOf(input) {
11
13
  if (reason === undefined)
12
14
  return undefined;
13
15
  switch (reason.code) {
16
+ case SCHEMA_REVISION_MISMATCH:
17
+ return input.code === CODES.CONFLICT && schemaRevisionMismatchDetails(reason.details)
18
+ ? input
19
+ : undefined;
14
20
  case SCHEMA_UPGRADE_REQUIRED:
15
21
  return input.code === CODES.CONFLICT && schemaUpgradeDetails(reason.details)
16
22
  ? input
@@ -31,6 +37,12 @@ export function serviceErrorOf(input) {
31
37
  return undefined;
32
38
  }
33
39
  }
40
+ function schemaRevisionMismatchDetails(input) {
41
+ return (exact(input, ['origin', 'expectedRevision', 'installedRevision']) &&
42
+ isOrigin(input.origin) &&
43
+ isRevision(input.expectedRevision) &&
44
+ isRevision(input.installedRevision));
45
+ }
34
46
  function schemaUpgradeDetails(input) {
35
47
  return (exact(input, ['origin', 'installedRevision', 'candidateRevision']) &&
36
48
  isOrigin(input.origin) &&
@@ -54,19 +66,19 @@ function exact(input, fields) {
54
66
  fields.every((field) => Object.hasOwn(input, field)));
55
67
  }
56
68
  function isOrigin(input) {
57
- return typeof input === 'string' && dslSchema.patterns.origin.test(input);
69
+ return typeof input === 'string' && patterns.origin.test(input);
58
70
  }
59
71
  function isRevision(input) {
60
- return typeof input === 'string' && dslSchema.patterns.revision.test(input);
72
+ return typeof input === 'string' && patterns.revision.test(input);
61
73
  }
62
74
  function isIssuer(input) {
63
75
  if (typeof input !== 'string')
64
76
  return false;
65
77
  try {
66
- return auth.issuer.accept(input) === input;
78
+ return acceptIssuer(input) === input;
67
79
  }
68
80
  catch (cause) {
69
- if (cause instanceof auth.AuthValueError)
81
+ if (cause instanceof AuthValueError)
70
82
  return false;
71
83
  throw cause;
72
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-reason.js","sourceRoot":"","sources":["../../invocation/service-reason.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-reason.js","sourceRoot":"","sources":["../../invocation/service-reason.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import type { Etag } from '../publication/index.js';
2
2
  import type { RequestId } from './correlation.js';
3
+ import type { InvocationId } from './identity.js';
3
4
  /** Reserved pre-handler routing control; never an application ErrorResponse. */
4
5
  export interface Stale {
5
6
  readonly kind: 'stale';
6
- readonly id: RequestId;
7
+ readonly requestId: RequestId;
8
+ readonly invocation: InvocationId;
7
9
  readonly current: Etag;
8
10
  }
9
11
  export declare function decodeStale(input: unknown): Stale;
10
- export declare function stale(id: RequestId, current: Etag): Stale;
12
+ export declare function stale(requestId: RequestId, assigned: InvocationId, current: Etag): Stale;
11
13
  //# sourceMappingURL=stale-route.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stale-route.d.ts","sourceRoot":"","sources":["../../invocation/stale-route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAIjD,gFAAgF;AAChF,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;CACvB;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAYjD;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,GAAG,KAAK,CAEzD"}
1
+ {"version":3,"file":"stale-route.d.ts","sourceRoot":"","sources":["../../invocation/stale-route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAYjD,gFAAgF;AAChF,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;CACvB;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAajD;AAED,wBAAgB,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,GAAG,KAAK,CAExF"}
@@ -1,19 +1,20 @@
1
- import { digest, exactFields, invalid, portableObject, requestId, required } from './admission.js';
2
- const FIELDS = new Set(['kind', 'id', 'current']);
1
+ import { digest, exactFields, invalid, invocation, portableObject, requestId, required, } from './admission.js';
2
+ const FIELDS = new Set(['kind', 'requestId', 'invocation', 'current']);
3
3
  export function decodeStale(input) {
4
4
  const object = portableObject(input, 'stale control');
5
5
  exactFields(object, FIELDS, 'stale control');
6
- required(object, ['kind', 'id', 'current'], 'stale control');
6
+ required(object, ['kind', 'requestId', 'invocation', 'current'], 'stale control');
7
7
  if (object.kind !== 'stale') {
8
8
  invalid('stale control.kind must be "stale"');
9
9
  }
10
10
  return Object.freeze({
11
11
  kind: 'stale',
12
- id: requestId(object.id, 'stale control.id'),
12
+ requestId: requestId(object.requestId, 'stale control.requestId'),
13
+ invocation: invocation(object.invocation, 'stale control.invocation'),
13
14
  current: digest(object.current, 'stale control.current'),
14
15
  });
15
16
  }
16
- export function stale(id, current) {
17
- return Object.freeze({ kind: 'stale', id, current });
17
+ export function stale(requestId, assigned, current) {
18
+ return decodeStale({ kind: 'stale', requestId, invocation: assigned, current });
18
19
  }
19
20
  //# sourceMappingURL=stale-route.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stale-route.js","sourceRoot":"","sources":["../../invocation/stale-route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AASlG,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;AAEjD,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;IACrD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,eAAe,CAAC,CAAA;IAC5D,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,oCAAoC,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,OAAO;QACb,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB,CAAC;QAC5C,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,uBAAuB,CAAC;KACzD,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,EAAa,EAAE,OAAa;IAChD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;AACtD,CAAC"}
1
+ {"version":3,"file":"stale-route.js","sourceRoot":"","sources":["../../invocation/stale-route.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,gBAAgB,CAAA;AAUvB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC,CAAA;AAEtE,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;IACrD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,eAAe,CAAC,CAAA;IACjF,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,oCAAoC,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,yBAAyB,CAAC;QACjE,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;QACrE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,uBAAuB,CAAC;KACzD,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,SAAoB,EAAE,QAAsB,EAAE,OAAa;IAC/E,OAAO,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;AACjF,CAAC"}
@@ -1,24 +1,26 @@
1
1
  import type { Value } from '@astrale-os/kernel-dsl/value';
2
2
  import type { ErrorPayload } from '../errors/index.js';
3
3
  import type { RequestId } from './correlation.js';
4
+ import type { InvocationId } from './identity.js';
4
5
  export interface StreamStartFrame {
5
6
  readonly kind: 'stream.start';
6
- readonly id: RequestId;
7
+ readonly requestId: RequestId;
8
+ readonly invocation: InvocationId;
7
9
  }
8
10
  export interface StreamItemFrame {
9
11
  readonly kind: 'stream.item';
10
- readonly id: RequestId;
12
+ readonly requestId: RequestId;
11
13
  readonly index: number;
12
14
  readonly value: Value;
13
15
  }
14
16
  export interface StreamEndFrame {
15
17
  readonly kind: 'stream.end';
16
- readonly id: RequestId;
18
+ readonly requestId: RequestId;
17
19
  readonly count: number;
18
20
  }
19
21
  export interface StreamErrorFrame {
20
22
  readonly kind: 'stream.error';
21
- readonly id: RequestId;
23
+ readonly requestId: RequestId;
22
24
  readonly error: ErrorPayload;
23
25
  }
24
26
  export type StreamFrame = StreamStartFrame | StreamItemFrame | StreamEndFrame | StreamErrorFrame;