@astrale-os/sdk 0.4.19 → 0.5.0-beta.2

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 (1048) hide show
  1. package/README.md +5 -3
  2. package/dist/auth/exchange.d.ts +11 -0
  3. package/dist/auth/exchange.d.ts.map +1 -0
  4. package/dist/auth/exchange.js +8 -0
  5. package/dist/auth/exchange.js.map +1 -0
  6. package/dist/auth/index.d.ts +4 -15
  7. package/dist/auth/index.d.ts.map +1 -1
  8. package/dist/auth/index.js +3 -10
  9. package/dist/auth/index.js.map +1 -1
  10. package/dist/capability/client.d.ts +25 -0
  11. package/dist/capability/client.d.ts.map +1 -0
  12. package/dist/capability/client.js +147 -0
  13. package/dist/capability/client.js.map +1 -0
  14. package/dist/capability/contract.d.ts +70 -0
  15. package/dist/capability/contract.d.ts.map +1 -0
  16. package/dist/capability/contract.js +3 -0
  17. package/dist/capability/contract.js.map +1 -0
  18. package/dist/capability/define.d.ts +14 -0
  19. package/dist/capability/define.d.ts.map +1 -0
  20. package/dist/capability/define.js +145 -0
  21. package/dist/capability/define.js.map +1 -0
  22. package/dist/capability/index.d.ts +3 -0
  23. package/dist/capability/index.d.ts.map +1 -0
  24. package/dist/capability/index.js +2 -0
  25. package/dist/capability/index.js.map +1 -0
  26. package/dist/cli/arguments.d.ts +21 -0
  27. package/dist/cli/arguments.d.ts.map +1 -0
  28. package/dist/cli/arguments.js +220 -0
  29. package/dist/cli/arguments.js.map +1 -0
  30. package/dist/cli/dotenv.d.ts +1 -4
  31. package/dist/cli/dotenv.d.ts.map +1 -1
  32. package/dist/cli/dotenv.js +6 -15
  33. package/dist/cli/dotenv.js.map +1 -1
  34. package/dist/cli/index.d.ts +4 -5
  35. package/dist/cli/index.d.ts.map +1 -1
  36. package/dist/cli/index.js +4 -5
  37. package/dist/cli/index.js.map +1 -1
  38. package/dist/cli/run.d.ts +4 -79
  39. package/dist/cli/run.d.ts.map +1 -1
  40. package/dist/cli/run.js +47 -326
  41. package/dist/cli/run.js.map +1 -1
  42. package/dist/deployment/artifact/bindings.d.ts +7 -0
  43. package/dist/deployment/artifact/bindings.d.ts.map +1 -0
  44. package/dist/deployment/artifact/bindings.js +44 -0
  45. package/dist/deployment/artifact/bindings.js.map +1 -0
  46. package/dist/deployment/artifact/deployment.d.ts +35 -0
  47. package/dist/deployment/artifact/deployment.d.ts.map +1 -0
  48. package/dist/deployment/artifact/deployment.js +91 -0
  49. package/dist/deployment/artifact/deployment.js.map +1 -0
  50. package/dist/deployment/artifact/index.d.ts +5 -0
  51. package/dist/deployment/artifact/index.d.ts.map +1 -0
  52. package/dist/deployment/artifact/index.js +4 -0
  53. package/dist/deployment/artifact/index.js.map +1 -0
  54. package/dist/deployment/check/check.d.ts +8 -0
  55. package/dist/deployment/check/check.d.ts.map +1 -0
  56. package/dist/deployment/check/check.js +94 -0
  57. package/dist/deployment/check/check.js.map +1 -0
  58. package/dist/deployment/check/contract.d.ts +29 -0
  59. package/dist/deployment/check/contract.d.ts.map +1 -0
  60. package/dist/deployment/check/contract.js +2 -0
  61. package/dist/deployment/check/contract.js.map +1 -0
  62. package/dist/deployment/check/index.d.ts +3 -0
  63. package/dist/deployment/check/index.d.ts.map +1 -0
  64. package/dist/deployment/check/index.js +2 -0
  65. package/dist/deployment/check/index.js.map +1 -0
  66. package/dist/deployment/index.d.ts +7 -0
  67. package/dist/deployment/index.d.ts.map +1 -0
  68. package/dist/deployment/index.js +4 -0
  69. package/dist/deployment/index.js.map +1 -0
  70. package/dist/deployment/provider/adapter.d.ts +56 -0
  71. package/dist/deployment/provider/adapter.d.ts.map +1 -0
  72. package/dist/deployment/provider/adapter.js +84 -0
  73. package/dist/deployment/provider/adapter.js.map +1 -0
  74. package/dist/deployment/provider/config.d.ts +10 -0
  75. package/dist/deployment/provider/config.d.ts.map +1 -0
  76. package/dist/deployment/provider/config.js +8 -0
  77. package/dist/deployment/provider/config.js.map +1 -0
  78. package/dist/deployment/provider/index.d.ts +5 -0
  79. package/dist/deployment/provider/index.d.ts.map +1 -0
  80. package/dist/deployment/provider/index.js +3 -0
  81. package/dist/deployment/provider/index.js.map +1 -0
  82. package/dist/domain/app.d.ts +34 -0
  83. package/dist/domain/app.d.ts.map +1 -0
  84. package/dist/domain/app.js +2 -0
  85. package/dist/domain/app.js.map +1 -0
  86. package/dist/domain/context.d.ts +68 -0
  87. package/dist/domain/context.d.ts.map +1 -0
  88. package/dist/domain/context.js +2 -0
  89. package/dist/domain/context.js.map +1 -0
  90. package/dist/domain/define.d.ts +99 -65
  91. package/dist/domain/define.d.ts.map +1 -1
  92. package/dist/domain/define.js +78 -60
  93. package/dist/domain/define.js.map +1 -1
  94. package/dist/domain/handlers.d.ts +53 -0
  95. package/dist/domain/handlers.d.ts.map +1 -0
  96. package/dist/domain/handlers.js +88 -0
  97. package/dist/domain/handlers.js.map +1 -0
  98. package/dist/domain/implement.d.ts +5 -0
  99. package/dist/domain/implement.d.ts.map +1 -0
  100. package/dist/domain/implement.js +23 -0
  101. package/dist/domain/implement.js.map +1 -0
  102. package/dist/domain/index.d.ts +13 -4
  103. package/dist/domain/index.d.ts.map +1 -1
  104. package/dist/domain/index.js +7 -3
  105. package/dist/domain/index.js.map +1 -1
  106. package/dist/domain/requirements.d.ts +26 -0
  107. package/dist/domain/requirements.d.ts.map +1 -0
  108. package/dist/domain/requirements.js +98 -0
  109. package/dist/domain/requirements.js.map +1 -0
  110. package/dist/graph/class/index.d.ts +3 -0
  111. package/dist/graph/class/index.d.ts.map +1 -0
  112. package/dist/graph/class/index.js +3 -0
  113. package/dist/graph/class/index.js.map +1 -0
  114. package/dist/graph/edge/index.d.ts +3 -0
  115. package/dist/graph/edge/index.d.ts.map +1 -0
  116. package/dist/graph/edge/index.js +3 -0
  117. package/dist/graph/edge/index.js.map +1 -0
  118. package/dist/graph/index.d.ts +10 -0
  119. package/dist/graph/index.d.ts.map +1 -0
  120. package/dist/graph/index.js +9 -0
  121. package/dist/graph/index.js.map +1 -0
  122. package/dist/graph/model/index.d.ts +3 -0
  123. package/dist/graph/model/index.d.ts.map +1 -0
  124. package/dist/graph/model/index.js +3 -0
  125. package/dist/graph/model/index.js.map +1 -0
  126. package/dist/graph/node/index.d.ts +3 -0
  127. package/dist/graph/node/index.d.ts.map +1 -0
  128. package/dist/graph/node/index.js +3 -0
  129. package/dist/graph/node/index.js.map +1 -0
  130. package/dist/graph/path/index.d.ts +3 -0
  131. package/dist/graph/path/index.d.ts.map +1 -0
  132. package/dist/graph/path/index.js +3 -0
  133. package/dist/graph/path/index.js.map +1 -0
  134. package/dist/graph/properties/index.d.ts +3 -0
  135. package/dist/graph/properties/index.d.ts.map +1 -0
  136. package/dist/graph/properties/index.js +3 -0
  137. package/dist/graph/properties/index.js.map +1 -0
  138. package/dist/index.d.ts +20 -27
  139. package/dist/index.d.ts.map +1 -1
  140. package/dist/index.js +10 -47
  141. package/dist/index.js.map +1 -1
  142. package/dist/invocation/handler.d.ts +51 -0
  143. package/dist/invocation/handler.d.ts.map +1 -0
  144. package/dist/invocation/handler.js +289 -0
  145. package/dist/invocation/handler.js.map +1 -0
  146. package/dist/invocation/index.d.ts +3 -0
  147. package/dist/invocation/index.d.ts.map +1 -0
  148. package/dist/invocation/index.js +2 -0
  149. package/dist/invocation/index.js.map +1 -0
  150. package/dist/invocation/receiver.d.ts +5 -0
  151. package/dist/invocation/receiver.d.ts.map +1 -0
  152. package/dist/invocation/receiver.js +70 -0
  153. package/dist/invocation/receiver.js.map +1 -0
  154. package/dist/invocation/result.d.ts +5 -0
  155. package/dist/invocation/result.d.ts.map +1 -0
  156. package/dist/invocation/result.js +146 -0
  157. package/dist/invocation/result.js.map +1 -0
  158. package/dist/invocation/selection.d.ts +21 -0
  159. package/dist/invocation/selection.d.ts.map +1 -0
  160. package/dist/invocation/selection.js +107 -0
  161. package/dist/invocation/selection.js.map +1 -0
  162. package/dist/linter/adapters/typescript/discover.d.ts +4 -0
  163. package/dist/linter/adapters/typescript/discover.d.ts.map +1 -0
  164. package/dist/linter/adapters/typescript/discover.js +412 -0
  165. package/dist/linter/adapters/typescript/discover.js.map +1 -0
  166. package/dist/linter/adapters/typescript/evidence-admission.d.ts +5 -0
  167. package/dist/linter/adapters/typescript/evidence-admission.d.ts.map +1 -0
  168. package/dist/linter/adapters/typescript/evidence-admission.js +22 -0
  169. package/dist/linter/adapters/typescript/evidence-admission.js.map +1 -0
  170. package/dist/linter/adapters/typescript/imports.d.ts +7 -0
  171. package/dist/linter/adapters/typescript/imports.d.ts.map +1 -0
  172. package/dist/linter/adapters/typescript/imports.js +171 -0
  173. package/dist/linter/adapters/typescript/imports.js.map +1 -0
  174. package/dist/linter/adapters/typescript/index.d.ts +48 -0
  175. package/dist/linter/adapters/typescript/index.d.ts.map +1 -0
  176. package/dist/linter/adapters/typescript/index.js +8 -0
  177. package/dist/linter/adapters/typescript/index.js.map +1 -0
  178. package/dist/linter/adapters/typescript/query-observation.d.ts +4 -0
  179. package/dist/linter/adapters/typescript/query-observation.d.ts.map +1 -0
  180. package/dist/linter/adapters/typescript/query-observation.js +172 -0
  181. package/dist/linter/adapters/typescript/query-observation.js.map +1 -0
  182. package/dist/linter/adapters/typescript/suppression-directives.d.ts +5 -0
  183. package/dist/linter/adapters/typescript/suppression-directives.d.ts.map +1 -0
  184. package/dist/linter/adapters/typescript/suppression-directives.js +85 -0
  185. package/dist/linter/adapters/typescript/suppression-directives.js.map +1 -0
  186. package/dist/linter/adapters/typescript/syntax.d.ts +39 -0
  187. package/dist/linter/adapters/typescript/syntax.d.ts.map +1 -0
  188. package/dist/linter/adapters/typescript/syntax.js +183 -0
  189. package/dist/linter/adapters/typescript/syntax.js.map +1 -0
  190. package/dist/linter/adapters/typescript/type-universe.d.ts +2 -0
  191. package/dist/linter/adapters/typescript/type-universe.d.ts.map +1 -0
  192. package/dist/linter/adapters/typescript/type-universe.js +265 -0
  193. package/dist/linter/adapters/typescript/type-universe.js.map +1 -0
  194. package/dist/linter/catalog/compile.d.ts +3 -0
  195. package/dist/linter/catalog/compile.d.ts.map +1 -0
  196. package/dist/linter/catalog/compile.js +111 -0
  197. package/dist/linter/catalog/compile.js.map +1 -0
  198. package/dist/linter/catalog/index.d.ts +19 -0
  199. package/dist/linter/catalog/index.d.ts.map +1 -0
  200. package/dist/linter/catalog/index.js +3 -0
  201. package/dist/linter/catalog/index.js.map +1 -0
  202. package/dist/linter/catalog/revision.d.ts +7 -0
  203. package/dist/linter/catalog/revision.d.ts.map +1 -0
  204. package/dist/linter/catalog/revision.js +13 -0
  205. package/dist/linter/catalog/revision.js.map +1 -0
  206. package/dist/linter/diagnostics/error.d.ts +10 -0
  207. package/dist/linter/diagnostics/error.d.ts.map +1 -0
  208. package/dist/linter/diagnostics/error.js +10 -0
  209. package/dist/linter/diagnostics/error.js.map +1 -0
  210. package/dist/linter/diagnostics/index.d.ts +29 -0
  211. package/dist/linter/diagnostics/index.d.ts.map +1 -0
  212. package/dist/linter/diagnostics/index.js +3 -0
  213. package/dist/linter/diagnostics/index.js.map +1 -0
  214. package/dist/linter/diagnostics/sort.d.ts +3 -0
  215. package/dist/linter/diagnostics/sort.d.ts.map +1 -0
  216. package/dist/linter/diagnostics/sort.js +27 -0
  217. package/dist/linter/diagnostics/sort.js.map +1 -0
  218. package/dist/linter/evaluation/binding/bind.d.ts +5 -0
  219. package/dist/linter/evaluation/binding/bind.d.ts.map +1 -0
  220. package/dist/linter/evaluation/binding/bind.js +356 -0
  221. package/dist/linter/evaluation/binding/bind.js.map +1 -0
  222. package/dist/linter/evaluation/binding/diagnostic.d.ts +5 -0
  223. package/dist/linter/evaluation/binding/diagnostic.d.ts.map +1 -0
  224. package/dist/linter/evaluation/binding/diagnostic.js +17 -0
  225. package/dist/linter/evaluation/binding/diagnostic.js.map +1 -0
  226. package/dist/linter/evaluation/binding/index.d.ts +2 -0
  227. package/dist/linter/evaluation/binding/index.d.ts.map +1 -0
  228. package/dist/linter/evaluation/binding/index.js +2 -0
  229. package/dist/linter/evaluation/binding/index.js.map +1 -0
  230. package/dist/linter/evaluation/contract/availability.d.ts +28 -0
  231. package/dist/linter/evaluation/contract/availability.d.ts.map +1 -0
  232. package/dist/linter/evaluation/contract/availability.js +2 -0
  233. package/dist/linter/evaluation/contract/availability.js.map +1 -0
  234. package/dist/linter/evaluation/contract/decision.d.ts +26 -0
  235. package/dist/linter/evaluation/contract/decision.d.ts.map +1 -0
  236. package/dist/linter/evaluation/contract/decision.js +2 -0
  237. package/dist/linter/evaluation/contract/decision.js.map +1 -0
  238. package/dist/linter/evaluation/contract/evidence.d.ts +12 -0
  239. package/dist/linter/evaluation/contract/evidence.d.ts.map +1 -0
  240. package/dist/linter/evaluation/contract/evidence.js +2 -0
  241. package/dist/linter/evaluation/contract/evidence.js.map +1 -0
  242. package/dist/linter/evaluation/contract/implementation.d.ts +22 -0
  243. package/dist/linter/evaluation/contract/implementation.d.ts.map +1 -0
  244. package/dist/linter/evaluation/contract/implementation.js +2 -0
  245. package/dist/linter/evaluation/contract/implementation.js.map +1 -0
  246. package/dist/linter/evaluation/contract/index.d.ts +5 -0
  247. package/dist/linter/evaluation/contract/index.d.ts.map +1 -0
  248. package/dist/linter/evaluation/contract/index.js +2 -0
  249. package/dist/linter/evaluation/contract/index.js.map +1 -0
  250. package/dist/linter/evaluation/index.d.ts +3 -0
  251. package/dist/linter/evaluation/index.d.ts.map +1 -0
  252. package/dist/linter/evaluation/index.js +2 -0
  253. package/dist/linter/evaluation/index.js.map +1 -0
  254. package/dist/linter/implementations/source/capabilities.d.ts +3 -0
  255. package/dist/linter/implementations/source/capabilities.d.ts.map +1 -0
  256. package/dist/linter/implementations/source/capabilities.js +41 -0
  257. package/dist/linter/implementations/source/capabilities.js.map +1 -0
  258. package/dist/linter/implementations/source/contract.d.ts +17 -0
  259. package/dist/linter/implementations/source/contract.d.ts.map +1 -0
  260. package/dist/linter/implementations/source/contract.js +53 -0
  261. package/dist/linter/implementations/source/contract.js.map +1 -0
  262. package/dist/linter/implementations/source/functions.d.ts +3 -0
  263. package/dist/linter/implementations/source/functions.d.ts.map +1 -0
  264. package/dist/linter/implementations/source/functions.js +102 -0
  265. package/dist/linter/implementations/source/functions.js.map +1 -0
  266. package/dist/linter/implementations/source/global.d.ts +3 -0
  267. package/dist/linter/implementations/source/global.d.ts.map +1 -0
  268. package/dist/linter/implementations/source/global.js +812 -0
  269. package/dist/linter/implementations/source/global.js.map +1 -0
  270. package/dist/linter/implementations/source/index.d.ts +4 -0
  271. package/dist/linter/implementations/source/index.d.ts.map +1 -0
  272. package/dist/linter/implementations/source/index.js +4 -0
  273. package/dist/linter/implementations/source/index.js.map +1 -0
  274. package/dist/linter/implementations/source/integrations.d.ts +3 -0
  275. package/dist/linter/implementations/source/integrations.d.ts.map +1 -0
  276. package/dist/linter/implementations/source/integrations.js +186 -0
  277. package/dist/linter/implementations/source/integrations.js.map +1 -0
  278. package/dist/linter/implementations/source/migrations.d.ts +3 -0
  279. package/dist/linter/implementations/source/migrations.d.ts.map +1 -0
  280. package/dist/linter/implementations/source/migrations.js +115 -0
  281. package/dist/linter/implementations/source/migrations.js.map +1 -0
  282. package/dist/linter/implementations/source/mutations.d.ts +3 -0
  283. package/dist/linter/implementations/source/mutations.d.ts.map +1 -0
  284. package/dist/linter/implementations/source/mutations.js +185 -0
  285. package/dist/linter/implementations/source/mutations.js.map +1 -0
  286. package/dist/linter/implementations/source/queries.d.ts +3 -0
  287. package/dist/linter/implementations/source/queries.d.ts.map +1 -0
  288. package/dist/linter/implementations/source/queries.js +1000 -0
  289. package/dist/linter/implementations/source/queries.js.map +1 -0
  290. package/dist/linter/implementations/source/rules.d.ts +3 -0
  291. package/dist/linter/implementations/source/rules.d.ts.map +1 -0
  292. package/dist/linter/implementations/source/rules.js +141 -0
  293. package/dist/linter/implementations/source/rules.js.map +1 -0
  294. package/dist/linter/implementations/source/schema.d.ts +3 -0
  295. package/dist/linter/implementations/source/schema.d.ts.map +1 -0
  296. package/dist/linter/implementations/source/schema.js +105 -0
  297. package/dist/linter/implementations/source/schema.js.map +1 -0
  298. package/dist/linter/implementations/source/shared.d.ts +42 -0
  299. package/dist/linter/implementations/source/shared.d.ts.map +1 -0
  300. package/dist/linter/implementations/source/shared.js +239 -0
  301. package/dist/linter/implementations/source/shared.js.map +1 -0
  302. package/dist/linter/implementations/source/states.d.ts +3 -0
  303. package/dist/linter/implementations/source/states.d.ts.map +1 -0
  304. package/dist/linter/implementations/source/states.js +2 -0
  305. package/dist/linter/implementations/source/states.js.map +1 -0
  306. package/dist/linter/implementations/source/tests.d.ts +3 -0
  307. package/dist/linter/implementations/source/tests.d.ts.map +1 -0
  308. package/dist/linter/implementations/source/tests.js +28 -0
  309. package/dist/linter/implementations/source/tests.js.map +1 -0
  310. package/dist/linter/implementations/source/ui.d.ts +3 -0
  311. package/dist/linter/implementations/source/ui.d.ts.map +1 -0
  312. package/dist/linter/implementations/source/ui.js +21 -0
  313. package/dist/linter/implementations/source/ui.js.map +1 -0
  314. package/dist/linter/implementations/source/utils.d.ts +3 -0
  315. package/dist/linter/implementations/source/utils.d.ts.map +1 -0
  316. package/dist/linter/implementations/source/utils.js +29 -0
  317. package/dist/linter/implementations/source/utils.js.map +1 -0
  318. package/dist/linter/implementations/source/verifiers.d.ts +3 -0
  319. package/dist/linter/implementations/source/verifiers.d.ts.map +1 -0
  320. package/dist/linter/implementations/source/verifiers.js +33 -0
  321. package/dist/linter/implementations/source/verifiers.js.map +1 -0
  322. package/dist/linter/implementations/source/views.d.ts +3 -0
  323. package/dist/linter/implementations/source/views.d.ts.map +1 -0
  324. package/dist/linter/implementations/source/views.js +36 -0
  325. package/dist/linter/implementations/source/views.js.map +1 -0
  326. package/dist/linter/implementations/source/workflows.d.ts +3 -0
  327. package/dist/linter/implementations/source/workflows.d.ts.map +1 -0
  328. package/dist/linter/implementations/source/workflows.js +308 -0
  329. package/dist/linter/implementations/source/workflows.js.map +1 -0
  330. package/dist/linter/index.d.ts +7 -8
  331. package/dist/linter/index.d.ts.map +1 -1
  332. package/dist/linter/index.js +2 -4
  333. package/dist/linter/index.js.map +1 -1
  334. package/dist/linter/lint.d.ts +22 -8
  335. package/dist/linter/lint.d.ts.map +1 -1
  336. package/dist/linter/lint.js +58 -15
  337. package/dist/linter/lint.js.map +1 -1
  338. package/dist/linter/oxlint/index.d.ts +4 -0
  339. package/dist/linter/oxlint/index.d.ts.map +1 -0
  340. package/dist/linter/oxlint/index.js +2 -0
  341. package/dist/linter/oxlint/index.js.map +1 -0
  342. package/dist/linter/oxlint/process.d.ts +6 -6
  343. package/dist/linter/oxlint/process.d.ts.map +1 -1
  344. package/dist/linter/oxlint/process.js +1 -1
  345. package/dist/linter/oxlint/process.js.map +1 -1
  346. package/dist/linter/oxlint/run.d.ts +5 -5
  347. package/dist/linter/oxlint/run.d.ts.map +1 -1
  348. package/dist/linter/oxlint/run.js +140 -20
  349. package/dist/linter/oxlint/run.js.map +1 -1
  350. package/dist/linter/oxlint-config/ignore-patterns.d.ts +6 -0
  351. package/dist/linter/oxlint-config/ignore-patterns.d.ts.map +1 -0
  352. package/dist/linter/oxlint-config/ignore-patterns.js +10 -0
  353. package/dist/linter/oxlint-config/ignore-patterns.js.map +1 -0
  354. package/dist/linter/oxlint-config/index.d.ts +5 -0
  355. package/dist/linter/oxlint-config/index.d.ts.map +1 -0
  356. package/dist/linter/oxlint-config/index.js +18 -0
  357. package/dist/linter/oxlint-config/index.js.map +1 -0
  358. package/dist/linter/packs/domain.d.ts +3 -0
  359. package/dist/linter/packs/domain.d.ts.map +1 -0
  360. package/dist/linter/packs/domain.js +8 -0
  361. package/dist/linter/packs/domain.js.map +1 -0
  362. package/dist/linter/packs/index.d.ts +9 -0
  363. package/dist/linter/packs/index.d.ts.map +1 -0
  364. package/dist/linter/packs/index.js +2 -0
  365. package/dist/linter/packs/index.js.map +1 -0
  366. package/dist/linter/policy/compile.d.ts +3 -0
  367. package/dist/linter/policy/compile.d.ts.map +1 -0
  368. package/dist/linter/policy/compile.js +256 -0
  369. package/dist/linter/policy/compile.js.map +1 -0
  370. package/dist/linter/policy/generated.d.ts +5 -0
  371. package/dist/linter/policy/generated.d.ts.map +1 -0
  372. package/dist/linter/policy/generated.js +764 -0
  373. package/dist/linter/policy/generated.js.map +1 -0
  374. package/dist/linter/policy/index.d.ts +43 -0
  375. package/dist/linter/policy/index.d.ts.map +1 -0
  376. package/dist/linter/policy/index.js +3 -0
  377. package/dist/linter/policy/index.js.map +1 -0
  378. package/dist/linter/qualification/index.d.ts +11 -0
  379. package/dist/linter/qualification/index.d.ts.map +1 -0
  380. package/dist/linter/qualification/index.js +3 -0
  381. package/dist/linter/qualification/index.js.map +1 -0
  382. package/dist/linter/qualification/query-fixtures.d.ts +3 -0
  383. package/dist/linter/qualification/query-fixtures.d.ts.map +1 -0
  384. package/dist/linter/qualification/query-fixtures.js +69 -0
  385. package/dist/linter/qualification/query-fixtures.js.map +1 -0
  386. package/dist/linter/qualification/runner.d.ts +4 -0
  387. package/dist/linter/qualification/runner.d.ts.map +1 -0
  388. package/dist/linter/qualification/runner.js +7 -0
  389. package/dist/linter/qualification/runner.js.map +1 -0
  390. package/dist/linter/report/format.d.ts +4 -0
  391. package/dist/linter/report/format.d.ts.map +1 -0
  392. package/dist/linter/report/format.js +33 -0
  393. package/dist/linter/report/format.js.map +1 -0
  394. package/dist/linter/report/index.d.ts +3 -0
  395. package/dist/linter/report/index.d.ts.map +1 -0
  396. package/dist/linter/report/index.js +2 -0
  397. package/dist/linter/report/index.js.map +1 -0
  398. package/dist/linter/requirements/index.d.ts +3 -0
  399. package/dist/linter/requirements/index.d.ts.map +1 -0
  400. package/dist/linter/requirements/index.js +2 -0
  401. package/dist/linter/requirements/index.js.map +1 -0
  402. package/dist/linter/requirements/model.d.ts +9 -0
  403. package/dist/linter/requirements/model.d.ts.map +1 -0
  404. package/dist/linter/requirements/model.js +2 -0
  405. package/dist/linter/requirements/model.js.map +1 -0
  406. package/dist/linter/requirements/registry.d.ts +4 -0
  407. package/dist/linter/requirements/registry.d.ts.map +1 -0
  408. package/dist/linter/requirements/registry.js +188 -0
  409. package/dist/linter/requirements/registry.js.map +1 -0
  410. package/dist/linter/semantics/query/decision.d.ts +5 -0
  411. package/dist/linter/semantics/query/decision.d.ts.map +1 -0
  412. package/dist/linter/semantics/query/decision.js +74 -0
  413. package/dist/linter/semantics/query/decision.js.map +1 -0
  414. package/dist/linter/semantics/query/index.d.ts +4 -0
  415. package/dist/linter/semantics/query/index.d.ts.map +1 -0
  416. package/dist/linter/semantics/query/index.js +3 -0
  417. package/dist/linter/semantics/query/index.js.map +1 -0
  418. package/dist/linter/semantics/query/observation.d.ts +36 -0
  419. package/dist/linter/semantics/query/observation.d.ts.map +1 -0
  420. package/dist/linter/semantics/query/observation.js +13 -0
  421. package/dist/linter/semantics/query/observation.js.map +1 -0
  422. package/dist/linter/suppression/apply.d.ts +4 -0
  423. package/dist/linter/suppression/apply.d.ts.map +1 -0
  424. package/dist/linter/suppression/apply.js +48 -0
  425. package/dist/linter/suppression/apply.js.map +1 -0
  426. package/dist/linter/suppression/directive.d.ts +11 -0
  427. package/dist/linter/suppression/directive.d.ts.map +1 -0
  428. package/dist/linter/suppression/directive.js +2 -0
  429. package/dist/linter/suppression/directive.js.map +1 -0
  430. package/dist/linter/suppression/index.d.ts +14 -0
  431. package/dist/linter/suppression/index.d.ts.map +1 -0
  432. package/dist/linter/suppression/index.js +2 -0
  433. package/dist/linter/suppression/index.js.map +1 -0
  434. package/dist/mutation/contract.d.ts +134 -0
  435. package/dist/mutation/contract.d.ts.map +1 -0
  436. package/dist/mutation/contract.js +2 -0
  437. package/dist/mutation/contract.js.map +1 -0
  438. package/dist/mutation/define.d.ts +9 -0
  439. package/dist/mutation/define.d.ts.map +1 -0
  440. package/dist/mutation/define.js +24 -0
  441. package/dist/mutation/define.js.map +1 -0
  442. package/dist/mutation/errors.d.ts +3 -0
  443. package/dist/mutation/errors.d.ts.map +1 -0
  444. package/dist/mutation/errors.js +30 -0
  445. package/dist/mutation/errors.js.map +1 -0
  446. package/dist/mutation/execute.d.ts +11 -0
  447. package/dist/mutation/execute.d.ts.map +1 -0
  448. package/dist/mutation/execute.js +24 -0
  449. package/dist/mutation/execute.js.map +1 -0
  450. package/dist/mutation/index.d.ts +8 -0
  451. package/dist/mutation/index.d.ts.map +1 -0
  452. package/dist/mutation/index.js +5 -0
  453. package/dist/mutation/index.js.map +1 -0
  454. package/dist/mutation/rich.d.ts +4 -0
  455. package/dist/mutation/rich.d.ts.map +1 -0
  456. package/dist/mutation/rich.js +147 -0
  457. package/dist/mutation/rich.js.map +1 -0
  458. package/dist/query/composite/contract.d.ts +37 -0
  459. package/dist/query/composite/contract.d.ts.map +1 -0
  460. package/dist/query/composite/contract.js +2 -0
  461. package/dist/query/composite/contract.js.map +1 -0
  462. package/dist/query/composite/errors.d.ts +8 -0
  463. package/dist/query/composite/errors.d.ts.map +1 -0
  464. package/dist/query/composite/errors.js +9 -0
  465. package/dist/query/composite/errors.js.map +1 -0
  466. package/dist/query/composite/index.d.ts +6 -0
  467. package/dist/query/composite/index.d.ts.map +1 -0
  468. package/dist/query/composite/index.js +3 -0
  469. package/dist/query/composite/index.js.map +1 -0
  470. package/dist/query/composite/plan.d.ts +38 -0
  471. package/dist/query/composite/plan.d.ts.map +1 -0
  472. package/dist/query/composite/plan.js +225 -0
  473. package/dist/query/composite/plan.js.map +1 -0
  474. package/dist/query/contract.d.ts +58 -0
  475. package/dist/query/contract.d.ts.map +1 -0
  476. package/dist/query/contract.js +2 -0
  477. package/dist/query/contract.js.map +1 -0
  478. package/dist/query/define.d.ts +3 -0
  479. package/dist/query/define.d.ts.map +1 -0
  480. package/dist/query/define.js +90 -0
  481. package/dist/query/define.js.map +1 -0
  482. package/dist/query/definition.d.ts +29 -0
  483. package/dist/query/definition.d.ts.map +1 -0
  484. package/dist/query/definition.js +2 -0
  485. package/dist/query/definition.js.map +1 -0
  486. package/dist/query/errors.d.ts +9 -0
  487. package/dist/query/errors.d.ts.map +1 -0
  488. package/dist/query/errors.js +15 -0
  489. package/dist/query/errors.js.map +1 -0
  490. package/dist/query/execute.d.ts +20 -0
  491. package/dist/query/execute.d.ts.map +1 -0
  492. package/dist/query/execute.js +97 -0
  493. package/dist/query/execute.js.map +1 -0
  494. package/dist/query/index.d.ts +15 -0
  495. package/dist/query/index.d.ts.map +1 -0
  496. package/dist/query/index.js +8 -0
  497. package/dist/query/index.js.map +1 -0
  498. package/dist/query/node.d.ts +109 -0
  499. package/dist/query/node.d.ts.map +1 -0
  500. package/dist/query/node.js +164 -0
  501. package/dist/query/node.js.map +1 -0
  502. package/dist/query/result/contract.d.ts +23 -0
  503. package/dist/query/result/contract.d.ts.map +1 -0
  504. package/dist/query/result/contract.js +2 -0
  505. package/dist/query/result/contract.js.map +1 -0
  506. package/dist/query/result/index.d.ts +3 -0
  507. package/dist/query/result/index.d.ts.map +1 -0
  508. package/dist/query/result/index.js +2 -0
  509. package/dist/query/result/index.js.map +1 -0
  510. package/dist/query/result/projection.d.ts +3 -0
  511. package/dist/query/result/projection.d.ts.map +1 -0
  512. package/dist/query/result/projection.js +100 -0
  513. package/dist/query/result/projection.js.map +1 -0
  514. package/dist/query/selection.d.ts +4 -0
  515. package/dist/query/selection.d.ts.map +1 -0
  516. package/dist/query/selection.js +25 -0
  517. package/dist/query/selection.js.map +1 -0
  518. package/dist/react/compile.d.ts +9 -0
  519. package/dist/react/compile.d.ts.map +1 -0
  520. package/dist/react/compile.js +64 -0
  521. package/dist/react/compile.js.map +1 -0
  522. package/dist/react/define.d.ts +8 -0
  523. package/dist/react/define.d.ts.map +1 -0
  524. package/dist/react/define.js +89 -0
  525. package/dist/react/define.js.map +1 -0
  526. package/dist/react/definition.d.ts +69 -0
  527. package/dist/react/definition.d.ts.map +1 -0
  528. package/dist/react/definition.js +2 -0
  529. package/dist/react/definition.js.map +1 -0
  530. package/dist/react/index.d.ts +4 -0
  531. package/dist/react/index.d.ts.map +1 -0
  532. package/dist/react/index.js +3 -0
  533. package/dist/react/index.js.map +1 -0
  534. package/dist/result/index.d.ts +3 -0
  535. package/dist/result/index.d.ts.map +1 -0
  536. package/dist/result/index.js +2 -0
  537. package/dist/result/index.js.map +1 -0
  538. package/dist/result/result.d.ts +10 -0
  539. package/dist/result/result.d.ts.map +1 -0
  540. package/dist/result/result.js +7 -0
  541. package/dist/result/result.js.map +1 -0
  542. package/dist/schema/index.d.ts +3 -0
  543. package/dist/schema/index.d.ts.map +1 -0
  544. package/dist/schema/index.js +3 -0
  545. package/dist/schema/index.js.map +1 -0
  546. package/dist/schema/kernel/index.d.ts +3 -0
  547. package/dist/schema/kernel/index.d.ts.map +1 -0
  548. package/dist/schema/kernel/index.js +3 -0
  549. package/dist/schema/kernel/index.js.map +1 -0
  550. package/dist/schema/v1/index.d.ts +3 -0
  551. package/dist/schema/v1/index.d.ts.map +1 -0
  552. package/dist/schema/v1/index.js +3 -0
  553. package/dist/schema/v1/index.js.map +1 -0
  554. package/dist/server/application.d.ts +36 -0
  555. package/dist/server/application.d.ts.map +1 -0
  556. package/dist/server/application.js +126 -0
  557. package/dist/server/application.js.map +1 -0
  558. package/dist/server/index.d.ts +4 -13
  559. package/dist/server/index.d.ts.map +1 -1
  560. package/dist/server/index.js +2 -8
  561. package/dist/server/index.js.map +1 -1
  562. package/dist/server/node/index.d.ts +3 -0
  563. package/dist/server/node/index.d.ts.map +1 -0
  564. package/dist/server/node/index.js +2 -0
  565. package/dist/server/node/index.js.map +1 -0
  566. package/dist/server/node/server.d.ts +14 -0
  567. package/dist/server/node/server.d.ts.map +1 -0
  568. package/dist/server/node/server.js +71 -0
  569. package/dist/server/node/server.js.map +1 -0
  570. package/dist/server/remote.d.ts +56 -0
  571. package/dist/server/remote.d.ts.map +1 -0
  572. package/dist/server/remote.js +798 -0
  573. package/dist/server/remote.js.map +1 -0
  574. package/dist/server/source.d.ts +13 -0
  575. package/dist/server/source.d.ts.map +1 -0
  576. package/dist/server/source.js +38 -0
  577. package/dist/server/source.js.map +1 -0
  578. package/dist/state/index.d.ts +4 -0
  579. package/dist/state/index.d.ts.map +1 -0
  580. package/dist/state/index.js +2 -0
  581. package/dist/state/index.js.map +1 -0
  582. package/dist/state/machine.d.ts +28 -0
  583. package/dist/state/machine.d.ts.map +1 -0
  584. package/dist/state/machine.js +32 -0
  585. package/dist/state/machine.js.map +1 -0
  586. package/dist/state/relation.d.ts +28 -0
  587. package/dist/state/relation.d.ts.map +1 -0
  588. package/dist/state/relation.js +48 -0
  589. package/dist/state/relation.js.map +1 -0
  590. package/dist/value/index.d.ts +3 -0
  591. package/dist/value/index.d.ts.map +1 -0
  592. package/dist/value/index.js +3 -0
  593. package/dist/value/index.js.map +1 -0
  594. package/dist/view/admission.d.ts +6 -0
  595. package/dist/view/admission.d.ts.map +1 -0
  596. package/dist/view/admission.js +43 -0
  597. package/dist/view/admission.js.map +1 -0
  598. package/dist/view/compile.d.ts +15 -0
  599. package/dist/view/compile.d.ts.map +1 -0
  600. package/dist/view/compile.js +189 -0
  601. package/dist/view/compile.js.map +1 -0
  602. package/dist/view/define.d.ts +20 -0
  603. package/dist/view/define.d.ts.map +1 -0
  604. package/dist/view/define.js +236 -0
  605. package/dist/view/define.js.map +1 -0
  606. package/dist/view/definition.d.ts +96 -0
  607. package/dist/view/definition.d.ts.map +1 -0
  608. package/dist/view/definition.js +2 -0
  609. package/dist/view/definition.js.map +1 -0
  610. package/dist/view/index.d.ts +4 -0
  611. package/dist/view/index.d.ts.map +1 -0
  612. package/dist/view/index.js +3 -0
  613. package/dist/view/index.js.map +1 -0
  614. package/dist/workflow/binding.d.ts +43 -0
  615. package/dist/workflow/binding.d.ts.map +1 -0
  616. package/dist/workflow/binding.js +32 -0
  617. package/dist/workflow/binding.js.map +1 -0
  618. package/dist/workflow/contract.d.ts +57 -0
  619. package/dist/workflow/contract.d.ts.map +1 -0
  620. package/dist/workflow/contract.js +2 -0
  621. package/dist/workflow/contract.js.map +1 -0
  622. package/dist/workflow/define.d.ts +4 -0
  623. package/dist/workflow/define.d.ts.map +1 -0
  624. package/dist/workflow/define.js +57 -0
  625. package/dist/workflow/define.js.map +1 -0
  626. package/dist/workflow/index.d.ts +7 -0
  627. package/dist/workflow/index.d.ts.map +1 -0
  628. package/dist/workflow/index.js +4 -0
  629. package/dist/workflow/index.js.map +1 -0
  630. package/dist/workflow/runner.d.ts +4 -0
  631. package/dist/workflow/runner.d.ts.map +1 -0
  632. package/dist/workflow/runner.js +24 -0
  633. package/dist/workflow/runner.js.map +1 -0
  634. package/dist/workflow/step/index.d.ts +3 -0
  635. package/dist/workflow/step/index.d.ts.map +1 -0
  636. package/dist/workflow/step/index.js +2 -0
  637. package/dist/workflow/step/index.js.map +1 -0
  638. package/dist/workflow/step/inline.d.ts +6 -0
  639. package/dist/workflow/step/inline.d.ts.map +1 -0
  640. package/dist/workflow/step/inline.js +44 -0
  641. package/dist/workflow/step/inline.js.map +1 -0
  642. package/dist/workflow/step/step.d.ts +5 -0
  643. package/dist/workflow/step/step.d.ts.map +1 -0
  644. package/dist/workflow/step/step.js +2 -0
  645. package/dist/workflow/step/step.js.map +1 -0
  646. package/package.json +117 -24
  647. package/dist/auth/authenticate.d.ts +0 -24
  648. package/dist/auth/authenticate.d.ts.map +0 -1
  649. package/dist/auth/authenticate.js +0 -29
  650. package/dist/auth/authenticate.js.map +0 -1
  651. package/dist/auth/check.d.ts +0 -38
  652. package/dist/auth/check.d.ts.map +0 -1
  653. package/dist/auth/check.js +0 -50
  654. package/dist/auth/check.js.map +0 -1
  655. package/dist/auth/compose.d.ts +0 -41
  656. package/dist/auth/compose.d.ts.map +0 -1
  657. package/dist/auth/compose.js +0 -45
  658. package/dist/auth/compose.js.map +0 -1
  659. package/dist/auth/errors.d.ts +0 -16
  660. package/dist/auth/errors.d.ts.map +0 -1
  661. package/dist/auth/errors.js +0 -26
  662. package/dist/auth/errors.js.map +0 -1
  663. package/dist/auth/function-context.d.ts +0 -28
  664. package/dist/auth/function-context.d.ts.map +0 -1
  665. package/dist/auth/function-context.js +0 -47
  666. package/dist/auth/function-context.js.map +0 -1
  667. package/dist/auth/identity.d.ts +0 -18
  668. package/dist/auth/identity.d.ts.map +0 -1
  669. package/dist/auth/identity.js +0 -2
  670. package/dist/auth/identity.js.map +0 -1
  671. package/dist/auth/issuer-mint.d.ts +0 -53
  672. package/dist/auth/issuer-mint.d.ts.map +0 -1
  673. package/dist/auth/issuer-mint.js +0 -35
  674. package/dist/auth/issuer-mint.js.map +0 -1
  675. package/dist/auth/kernel-client.d.ts +0 -37
  676. package/dist/auth/kernel-client.d.ts.map +0 -1
  677. package/dist/auth/kernel-client.js +0 -111
  678. package/dist/auth/kernel-client.js.map +0 -1
  679. package/dist/auth/resolve.d.ts +0 -19
  680. package/dist/auth/resolve.d.ts.map +0 -1
  681. package/dist/auth/resolve.js +0 -43
  682. package/dist/auth/resolve.js.map +0 -1
  683. package/dist/auth/sign.d.ts +0 -15
  684. package/dist/auth/sign.d.ts.map +0 -1
  685. package/dist/auth/sign.js +0 -24
  686. package/dist/auth/sign.js.map +0 -1
  687. package/dist/auth/verify.d.ts +0 -28
  688. package/dist/auth/verify.d.ts.map +0 -1
  689. package/dist/auth/verify.js +0 -151
  690. package/dist/auth/verify.js.map +0 -1
  691. package/dist/cli/spec.d.ts +0 -19
  692. package/dist/cli/spec.d.ts.map +0 -1
  693. package/dist/cli/spec.js +0 -33
  694. package/dist/cli/spec.js.map +0 -1
  695. package/dist/config/adapter.d.ts +0 -148
  696. package/dist/config/adapter.d.ts.map +0 -1
  697. package/dist/config/adapter.js +0 -40
  698. package/dist/config/adapter.js.map +0 -1
  699. package/dist/config/define-domain.d.ts +0 -177
  700. package/dist/config/define-domain.d.ts.map +0 -1
  701. package/dist/config/define-domain.js +0 -145
  702. package/dist/config/define-domain.js.map +0 -1
  703. package/dist/config/deploy.d.ts +0 -28
  704. package/dist/config/deploy.d.ts.map +0 -1
  705. package/dist/config/deploy.js +0 -24
  706. package/dist/config/deploy.js.map +0 -1
  707. package/dist/config/index.d.ts +0 -21
  708. package/dist/config/index.d.ts.map +0 -1
  709. package/dist/config/index.js +0 -18
  710. package/dist/config/index.js.map +0 -1
  711. package/dist/define/index.d.ts +0 -5
  712. package/dist/define/index.d.ts.map +0 -1
  713. package/dist/define/index.js +0 -3
  714. package/dist/define/index.js.map +0 -1
  715. package/dist/define/remote-function.d.ts +0 -120
  716. package/dist/define/remote-function.d.ts.map +0 -1
  717. package/dist/define/remote-function.js +0 -26
  718. package/dist/define/remote-function.js.map +0 -1
  719. package/dist/define/view.d.ts +0 -104
  720. package/dist/define/view.d.ts.map +0 -1
  721. package/dist/define/view.js +0 -30
  722. package/dist/define/view.js.map +0 -1
  723. package/dist/deploy/check.d.ts +0 -30
  724. package/dist/deploy/check.d.ts.map +0 -1
  725. package/dist/deploy/check.js +0 -82
  726. package/dist/deploy/check.js.map +0 -1
  727. package/dist/deploy/index.d.ts +0 -3
  728. package/dist/deploy/index.d.ts.map +0 -1
  729. package/dist/deploy/index.js +0 -3
  730. package/dist/deploy/index.js.map +0 -1
  731. package/dist/deploy/meta.d.ts +0 -29
  732. package/dist/deploy/meta.d.ts.map +0 -1
  733. package/dist/deploy/meta.js +0 -45
  734. package/dist/deploy/meta.js.map +0 -1
  735. package/dist/dispatch/authorize.d.ts +0 -14
  736. package/dist/dispatch/authorize.d.ts.map +0 -1
  737. package/dist/dispatch/authorize.js +0 -24
  738. package/dist/dispatch/authorize.js.map +0 -1
  739. package/dist/dispatch/dispatcher.d.ts +0 -59
  740. package/dist/dispatch/dispatcher.d.ts.map +0 -1
  741. package/dist/dispatch/dispatcher.js +0 -237
  742. package/dist/dispatch/dispatcher.js.map +0 -1
  743. package/dist/dispatch/errors.d.ts +0 -47
  744. package/dist/dispatch/errors.d.ts.map +0 -1
  745. package/dist/dispatch/errors.js +0 -76
  746. package/dist/dispatch/errors.js.map +0 -1
  747. package/dist/dispatch/execute.d.ts +0 -44
  748. package/dist/dispatch/execute.d.ts.map +0 -1
  749. package/dist/dispatch/execute.js +0 -29
  750. package/dist/dispatch/execute.js.map +0 -1
  751. package/dist/dispatch/identity.d.ts +0 -75
  752. package/dist/dispatch/identity.d.ts.map +0 -1
  753. package/dist/dispatch/identity.js +0 -101
  754. package/dist/dispatch/identity.js.map +0 -1
  755. package/dist/dispatch/index.d.ts +0 -7
  756. package/dist/dispatch/index.d.ts.map +0 -1
  757. package/dist/dispatch/index.js +0 -7
  758. package/dist/dispatch/index.js.map +0 -1
  759. package/dist/dispatch/resolve.d.ts +0 -27
  760. package/dist/dispatch/resolve.d.ts.map +0 -1
  761. package/dist/dispatch/resolve.js +0 -65
  762. package/dist/dispatch/resolve.js.map +0 -1
  763. package/dist/dispatch/self.d.ts +0 -51
  764. package/dist/dispatch/self.d.ts.map +0 -1
  765. package/dist/dispatch/self.js +0 -116
  766. package/dist/dispatch/self.js.map +0 -1
  767. package/dist/dispatch/validate.d.ts +0 -35
  768. package/dist/dispatch/validate.d.ts.map +0 -1
  769. package/dist/dispatch/validate.js +0 -27
  770. package/dist/dispatch/validate.js.map +0 -1
  771. package/dist/domain/binding.d.ts +0 -18
  772. package/dist/domain/binding.d.ts.map +0 -1
  773. package/dist/domain/binding.js +0 -29
  774. package/dist/domain/binding.js.map +0 -1
  775. package/dist/domain/build-spec.d.ts +0 -37
  776. package/dist/domain/build-spec.d.ts.map +0 -1
  777. package/dist/domain/build-spec.js +0 -114
  778. package/dist/domain/build-spec.js.map +0 -1
  779. package/dist/domain/contract.d.ts +0 -17
  780. package/dist/domain/contract.d.ts.map +0 -1
  781. package/dist/domain/contract.js +0 -26
  782. package/dist/domain/contract.js.map +0 -1
  783. package/dist/domain/extend-functions.d.ts +0 -48
  784. package/dist/domain/extend-functions.d.ts.map +0 -1
  785. package/dist/domain/extend-functions.js +0 -85
  786. package/dist/domain/extend-functions.js.map +0 -1
  787. package/dist/domain/extend-views.d.ts +0 -45
  788. package/dist/domain/extend-views.d.ts.map +0 -1
  789. package/dist/domain/extend-views.js +0 -116
  790. package/dist/domain/extend-views.js.map +0 -1
  791. package/dist/linter/analyze.d.ts +0 -6
  792. package/dist/linter/analyze.d.ts.map +0 -1
  793. package/dist/linter/analyze.js +0 -12
  794. package/dist/linter/analyze.js.map +0 -1
  795. package/dist/linter/diagnostic.d.ts +0 -38
  796. package/dist/linter/diagnostic.d.ts.map +0 -1
  797. package/dist/linter/diagnostic.js +0 -37
  798. package/dist/linter/diagnostic.js.map +0 -1
  799. package/dist/linter/oxlint/config.d.ts +0 -15
  800. package/dist/linter/oxlint/config.d.ts.map +0 -1
  801. package/dist/linter/oxlint/config.js +0 -23
  802. package/dist/linter/oxlint/config.js.map +0 -1
  803. package/dist/linter/oxlint/ignore-patterns.d.ts +0 -9
  804. package/dist/linter/oxlint/ignore-patterns.d.ts.map +0 -1
  805. package/dist/linter/oxlint/ignore-patterns.js +0 -18
  806. package/dist/linter/oxlint/ignore-patterns.js.map +0 -1
  807. package/dist/linter/oxlint/plugin.d.ts +0 -13
  808. package/dist/linter/oxlint/plugin.d.ts.map +0 -1
  809. package/dist/linter/oxlint/plugin.js +0 -14
  810. package/dist/linter/oxlint/plugin.js.map +0 -1
  811. package/dist/linter/preflight.d.ts +0 -2
  812. package/dist/linter/preflight.d.ts.map +0 -1
  813. package/dist/linter/preflight.js +0 -162
  814. package/dist/linter/preflight.js.map +0 -1
  815. package/dist/linter/project.d.ts +0 -18
  816. package/dist/linter/project.d.ts.map +0 -1
  817. package/dist/linter/project.js +0 -150
  818. package/dist/linter/project.js.map +0 -1
  819. package/dist/linter/report.d.ts +0 -4
  820. package/dist/linter/report.d.ts.map +0 -1
  821. package/dist/linter/report.js +0 -22
  822. package/dist/linter/report.js.map +0 -1
  823. package/dist/linter/rules/catalog.d.ts +0 -56
  824. package/dist/linter/rules/catalog.d.ts.map +0 -1
  825. package/dist/linter/rules/catalog.js +0 -53
  826. package/dist/linter/rules/catalog.js.map +0 -1
  827. package/dist/linter/rules/core-has-no-async.d.ts +0 -3
  828. package/dist/linter/rules/core-has-no-async.d.ts.map +0 -1
  829. package/dist/linter/rules/core-has-no-async.js +0 -43
  830. package/dist/linter/rules/core-has-no-async.js.map +0 -1
  831. package/dist/linter/rules/core-is-pure.d.ts +0 -3
  832. package/dist/linter/rules/core-is-pure.d.ts.map +0 -1
  833. package/dist/linter/rules/core-is-pure.js +0 -74
  834. package/dist/linter/rules/core-is-pure.js.map +0 -1
  835. package/dist/linter/rules/no-nested-steps.d.ts +0 -3
  836. package/dist/linter/rules/no-nested-steps.d.ts.map +0 -1
  837. package/dist/linter/rules/no-nested-steps.js +0 -32
  838. package/dist/linter/rules/no-nested-steps.js.map +0 -1
  839. package/dist/linter/rules/no-read-inside-mutate.d.ts +0 -3
  840. package/dist/linter/rules/no-read-inside-mutate.d.ts.map +0 -1
  841. package/dist/linter/rules/no-read-inside-mutate.js +0 -64
  842. package/dist/linter/rules/no-read-inside-mutate.js.map +0 -1
  843. package/dist/linter/rules/one-remote-definition-per-file.d.ts +0 -3
  844. package/dist/linter/rules/one-remote-definition-per-file.d.ts.map +0 -1
  845. package/dist/linter/rules/one-remote-definition-per-file.js +0 -23
  846. package/dist/linter/rules/one-remote-definition-per-file.js.map +0 -1
  847. package/dist/linter/rules/oxlint-ast.d.ts +0 -30
  848. package/dist/linter/rules/oxlint-ast.d.ts.map +0 -1
  849. package/dist/linter/rules/oxlint-ast.js +0 -104
  850. package/dist/linter/rules/oxlint-ast.js.map +0 -1
  851. package/dist/linter/rules/oxlint-rule.d.ts +0 -45
  852. package/dist/linter/rules/oxlint-rule.d.ts.map +0 -1
  853. package/dist/linter/rules/oxlint-rule.js +0 -2
  854. package/dist/linter/rules/oxlint-rule.js.map +0 -1
  855. package/dist/linter/rules/project-rule.d.ts +0 -10
  856. package/dist/linter/rules/project-rule.d.ts.map +0 -1
  857. package/dist/linter/rules/project-rule.js +0 -24
  858. package/dist/linter/rules/project-rule.js.map +0 -1
  859. package/dist/linter/rules/thin-schema-composition-root.d.ts +0 -3
  860. package/dist/linter/rules/thin-schema-composition-root.d.ts.map +0 -1
  861. package/dist/linter/rules/thin-schema-composition-root.js +0 -23
  862. package/dist/linter/rules/thin-schema-composition-root.js.map +0 -1
  863. package/dist/linter/source.d.ts +0 -24
  864. package/dist/linter/source.d.ts.map +0 -1
  865. package/dist/linter/source.js +0 -279
  866. package/dist/linter/source.js.map +0 -1
  867. package/dist/linter/suppression.d.ts +0 -3
  868. package/dist/linter/suppression.d.ts.map +0 -1
  869. package/dist/linter/suppression.js +0 -11
  870. package/dist/linter/suppression.js.map +0 -1
  871. package/dist/method/class.d.ts +0 -71
  872. package/dist/method/class.d.ts.map +0 -1
  873. package/dist/method/class.js +0 -26
  874. package/dist/method/class.js.map +0 -1
  875. package/dist/method/context.d.ts +0 -99
  876. package/dist/method/context.d.ts.map +0 -1
  877. package/dist/method/context.js +0 -11
  878. package/dist/method/context.js.map +0 -1
  879. package/dist/method/index.d.ts +0 -6
  880. package/dist/method/index.d.ts.map +0 -1
  881. package/dist/method/index.js +0 -3
  882. package/dist/method/index.js.map +0 -1
  883. package/dist/method/single.d.ts +0 -81
  884. package/dist/method/single.d.ts.map +0 -1
  885. package/dist/method/single.js +0 -8
  886. package/dist/method/single.js.map +0 -1
  887. package/dist/server/auxiliary-routes.d.ts +0 -48
  888. package/dist/server/auxiliary-routes.d.ts.map +0 -1
  889. package/dist/server/auxiliary-routes.js +0 -322
  890. package/dist/server/auxiliary-routes.js.map +0 -1
  891. package/dist/server/config.d.ts +0 -83
  892. package/dist/server/config.d.ts.map +0 -1
  893. package/dist/server/config.js +0 -8
  894. package/dist/server/config.js.map +0 -1
  895. package/dist/server/create.d.ts +0 -8
  896. package/dist/server/create.d.ts.map +0 -1
  897. package/dist/server/create.js +0 -171
  898. package/dist/server/create.js.map +0 -1
  899. package/dist/server/domain-entry.d.ts +0 -77
  900. package/dist/server/domain-entry.d.ts.map +0 -1
  901. package/dist/server/domain-entry.js +0 -60
  902. package/dist/server/domain-entry.js.map +0 -1
  903. package/dist/server/handle.d.ts +0 -35
  904. package/dist/server/handle.d.ts.map +0 -1
  905. package/dist/server/handle.js +0 -9
  906. package/dist/server/handle.js.map +0 -1
  907. package/dist/server/jwks.d.ts +0 -11
  908. package/dist/server/jwks.d.ts.map +0 -1
  909. package/dist/server/jwks.js +0 -15
  910. package/dist/server/jwks.js.map +0 -1
  911. package/dist/server/require-env.d.ts +0 -15
  912. package/dist/server/require-env.d.ts.map +0 -1
  913. package/dist/server/require-env.js +0 -21
  914. package/dist/server/require-env.js.map +0 -1
  915. package/dist/server/service-entry.d.ts +0 -32
  916. package/dist/server/service-entry.d.ts.map +0 -1
  917. package/dist/server/service-entry.js +0 -150
  918. package/dist/server/service-entry.js.map +0 -1
  919. package/dist/server/serving-url.d.ts +0 -14
  920. package/dist/server/serving-url.d.ts.map +0 -1
  921. package/dist/server/serving-url.js +0 -28
  922. package/dist/server/serving-url.js.map +0 -1
  923. package/dist/server/start.d.ts +0 -11
  924. package/dist/server/start.d.ts.map +0 -1
  925. package/dist/server/start.js +0 -34
  926. package/dist/server/start.js.map +0 -1
  927. package/dist/server/worker-entry.d.ts +0 -157
  928. package/dist/server/worker-entry.d.ts.map +0 -1
  929. package/dist/server/worker-entry.js +0 -201
  930. package/dist/server/worker-entry.js.map +0 -1
  931. package/dist/service/functions.d.ts +0 -148
  932. package/dist/service/functions.d.ts.map +0 -1
  933. package/dist/service/functions.js +0 -115
  934. package/dist/service/functions.js.map +0 -1
  935. package/dist/service/index.d.ts +0 -3
  936. package/dist/service/index.d.ts.map +0 -1
  937. package/dist/service/index.js +0 -2
  938. package/dist/service/index.js.map +0 -1
  939. package/dist/step/index.d.ts +0 -5
  940. package/dist/step/index.d.ts.map +0 -1
  941. package/dist/step/index.js +0 -3
  942. package/dist/step/index.js.map +0 -1
  943. package/dist/step/inline.d.ts +0 -8
  944. package/dist/step/inline.d.ts.map +0 -1
  945. package/dist/step/inline.js +0 -22
  946. package/dist/step/inline.js.map +0 -1
  947. package/dist/step/step.d.ts +0 -28
  948. package/dist/step/step.d.ts.map +0 -1
  949. package/dist/step/step.js +0 -53
  950. package/dist/step/step.js.map +0 -1
  951. package/src/auth/authenticate.ts +0 -51
  952. package/src/auth/check.ts +0 -69
  953. package/src/auth/compose.ts +0 -56
  954. package/src/auth/errors.ts +0 -32
  955. package/src/auth/function-context.ts +0 -108
  956. package/src/auth/identity.ts +0 -17
  957. package/src/auth/index.ts +0 -19
  958. package/src/auth/issuer-mint.ts +0 -76
  959. package/src/auth/kernel-client.ts +0 -153
  960. package/src/auth/resolve.ts +0 -63
  961. package/src/auth/sign.ts +0 -36
  962. package/src/auth/verify.ts +0 -199
  963. package/src/cli/bin.ts +0 -15
  964. package/src/cli/dotenv.ts +0 -65
  965. package/src/cli/index.ts +0 -15
  966. package/src/cli/log.ts +0 -18
  967. package/src/cli/publish.ts +0 -341
  968. package/src/cli/run.ts +0 -769
  969. package/src/cli/spec.ts +0 -44
  970. package/src/config/adapter.ts +0 -177
  971. package/src/config/define-domain.ts +0 -354
  972. package/src/config/deploy.ts +0 -35
  973. package/src/config/index.ts +0 -31
  974. package/src/define/index.ts +0 -10
  975. package/src/define/remote-function.ts +0 -184
  976. package/src/define/view.ts +0 -112
  977. package/src/deploy/check.ts +0 -124
  978. package/src/deploy/index.ts +0 -2
  979. package/src/deploy/meta.ts +0 -50
  980. package/src/dispatch/authorize.ts +0 -29
  981. package/src/dispatch/dispatcher.ts +0 -321
  982. package/src/dispatch/errors.ts +0 -94
  983. package/src/dispatch/execute.ts +0 -67
  984. package/src/dispatch/identity.ts +0 -143
  985. package/src/dispatch/index.ts +0 -16
  986. package/src/dispatch/resolve.ts +0 -78
  987. package/src/dispatch/self.ts +0 -198
  988. package/src/dispatch/validate.ts +0 -41
  989. package/src/domain/binding.ts +0 -37
  990. package/src/domain/build-spec.ts +0 -156
  991. package/src/domain/contract.ts +0 -41
  992. package/src/domain/define.ts +0 -162
  993. package/src/domain/extend-functions.ts +0 -110
  994. package/src/domain/extend-views.ts +0 -151
  995. package/src/domain/index.ts +0 -4
  996. package/src/index.ts +0 -165
  997. package/src/linter/analyze.ts +0 -17
  998. package/src/linter/diagnostic.ts +0 -85
  999. package/src/linter/docs/DIAGNOSTICS.md +0 -47
  1000. package/src/linter/docs/JUDGMENT.md +0 -81
  1001. package/src/linter/docs/PRINCIPLES.md +0 -97
  1002. package/src/linter/docs/README.md +0 -38
  1003. package/src/linter/docs/RULE-AUTHORING.md +0 -144
  1004. package/src/linter/docs/RULES.md +0 -153
  1005. package/src/linter/index.ts +0 -15
  1006. package/src/linter/lint.ts +0 -34
  1007. package/src/linter/oxlint/astrale-ox.d.ts +0 -5
  1008. package/src/linter/oxlint/config.ts +0 -24
  1009. package/src/linter/oxlint/ignore-patterns.ts +0 -17
  1010. package/src/linter/oxlint/plugin.js +0 -16
  1011. package/src/linter/oxlint/process.ts +0 -219
  1012. package/src/linter/oxlint/run.ts +0 -175
  1013. package/src/linter/preflight.ts +0 -182
  1014. package/src/linter/project.ts +0 -190
  1015. package/src/linter/report.ts +0 -25
  1016. package/src/linter/rules/catalog.ts +0 -67
  1017. package/src/linter/rules/core-has-no-async.js +0 -43
  1018. package/src/linter/rules/core-is-pure.ts +0 -103
  1019. package/src/linter/rules/no-nested-steps.js +0 -37
  1020. package/src/linter/rules/no-read-inside-mutate.js +0 -72
  1021. package/src/linter/rules/one-remote-definition-per-file.ts +0 -29
  1022. package/src/linter/rules/oxlint-ast.js +0 -110
  1023. package/src/linter/rules/oxlint-rule.ts +0 -35
  1024. package/src/linter/rules/project-rule.ts +0 -37
  1025. package/src/linter/rules/thin-schema-composition-root.ts +0 -26
  1026. package/src/linter/source.ts +0 -323
  1027. package/src/linter/suppression.ts +0 -11
  1028. package/src/method/class.ts +0 -163
  1029. package/src/method/context.ts +0 -135
  1030. package/src/method/index.ts +0 -19
  1031. package/src/method/single.ts +0 -166
  1032. package/src/server/auxiliary-routes.ts +0 -456
  1033. package/src/server/config.ts +0 -85
  1034. package/src/server/create.ts +0 -210
  1035. package/src/server/domain-entry.ts +0 -125
  1036. package/src/server/handle.ts +0 -37
  1037. package/src/server/index.ts +0 -19
  1038. package/src/server/jwks.ts +0 -18
  1039. package/src/server/require-env.ts +0 -19
  1040. package/src/server/service-entry.ts +0 -209
  1041. package/src/server/serving-url.ts +0 -28
  1042. package/src/server/start.ts +0 -42
  1043. package/src/server/worker-entry.ts +0 -286
  1044. package/src/service/functions.ts +0 -164
  1045. package/src/service/index.ts +0 -18
  1046. package/src/step/index.ts +0 -4
  1047. package/src/step/inline.ts +0 -38
  1048. package/src/step/step.ts +0 -95
@@ -1,157 +0,0 @@
1
- /**
2
- * `createWorkerEntry` — the shared worker `fetch` plumbing every Astrale domain
3
- * worker (and the cloudflare adapter's codegen) needs, so it lives in ONE place
4
- * instead of being copy-pasted per worker:
5
- *
6
- * • resolve the serving URL (== `iss`), canonicalize it (so the value matches
7
- * what `createRemoteServer` signs with and the kernel pins), and cache the
8
- * built app per distinct URL;
9
- * • optional subrequest routing: a `globalThis.fetch` override (installed ONLY
10
- * when `selfBinding` and/or `routeSubrequest` is configured) redirects
11
- * certain outbound fetches through a caller-supplied binding — `selfBinding`
12
- * for same-host fetches (a Worker can't fetch its own hostname), and the
13
- * vendor-neutral `routeSubrequest` for any caller policy (e.g. instance
14
- * hostnames a same-zone Worker→Worker fetch would 522 on). The SDK names no
15
- * backend or topology; the caller owns the predicate + the fetcher;
16
- * • optional SPA hook (e.g. `/ui/*` served from an `ASSETS` binding).
17
- *
18
- * The worker's OWN JWKS (`<url>/.well-known/jwks.json`) is served as a normal
19
- * route by `createRemoteServer`; the verifier resolves a self-issued credential
20
- * from the in-memory key (see `auth/verify.ts`), so no self-fetch shim is needed.
21
- *
22
- * The worker file is then just schema + methods + a `build(url, env)` callback.
23
- */
24
- import type { ExecutionContext } from 'hono';
25
- import type { RemoteServerConfig } from './config.js';
26
- export type Fetcher = {
27
- fetch(request: Request): Response | Promise<Response>;
28
- };
29
- export type WorkerApp = {
30
- fetch(request: Request, env?: unknown, executionCtx?: ExecutionContext): Response | Promise<Response>;
31
- };
32
- /** A built app cached by its serving URL: `origin` for same-origin matching,
33
- * `app` for in-process self-dispatch. */
34
- type CachedApp = {
35
- origin: string;
36
- app: WorkerApp;
37
- };
38
- /**
39
- * Choose where an OUTBOUND subrequest to `u` is routed — or `null` to let the
40
- * real `fetch` handle it. Order matters and same-origin wins FIRST: a call to
41
- * this worker's OWN serving origin is a self-dispatch, not an edge fetch — and
42
- * the caller's `routeSubrequest` policy may itself match our own host (e.g. an
43
- * `isInstanceHost` predicate matches every `*.svc.astrale.ai`, ours included),
44
- * so it must never get first look at a same-origin call.
45
- *
46
- * • same-origin + SELF binding present → the SELF fetcher: a fresh same-script
47
- * invocation. The normal Cloudflare path — a Worker can't fetch its own
48
- * hostname over the edge, so it re-enters itself through the binding.
49
- * • same-origin + NO SELF binding → the cached app, dispatched IN-PROCESS. A
50
- * Workers-for-Platforms dispatch-namespace tenant can't service-bind to
51
- * itself (its script name is platform-renamed), so it has no SELF binding; an
52
- * in-process dispatch reaches the same script with no edge hop and no binding.
53
- * `App` and the SELF `Fetcher` share the `{ fetch(request) }` shape, so the
54
- * caller drives both identically.
55
- * • else, the caller's `routeSubrequest` policy matched → its fetcher.
56
- * • else → `null`: passthrough to the real network fetch.
57
- *
58
- * Pure (no closure over instance state) so the routing decision is unit-testable
59
- * without standing up a real app.
60
- */
61
- export declare function selectSubrequestTarget<TDeps>(u: URL, ctx: {
62
- self: Fetcher | null;
63
- apps: Iterable<CachedApp>;
64
- routeEnv: TDeps | null;
65
- routeSubrequest?: (url: URL, env: TDeps) => Fetcher | null | undefined;
66
- }): {
67
- fetch(request: Request): Response | Promise<Response>;
68
- } | null;
69
- export interface WorkerEntryConfig<TDeps> {
70
- /**
71
- * Build the `createRemoteServer` config for the resolved serving `url`. Called
72
- * once per distinct URL (the resulting app is cached), with the same `env` the
73
- * request carries — so it can read additional bindings (e.g. a base domain).
74
- */
75
- build: (url: string, env: TDeps) => RemoteServerConfig<TDeps>;
76
- /**
77
- * Resolve the raw serving URL from `env` (+ the per-request origin, for workers
78
- * that fall back to the request host). Defaults to the `WORKER_URL` env var.
79
- * The result is always canonicalized before use.
80
- *
81
- * The `requestOrigin` honors an `X-Forwarded-Proto: https` upgrade (see
82
- * `clientOrigin`), so a dev worker behind a TLS-terminating proxy (cloudflared
83
- * tunnel, reverse proxy) resolves its public `https://` origin, not the raw
84
- * `http://` one workerd sees.
85
- */
86
- resolveUrl?: (env: TDeps, requestOrigin: string) => string;
87
- /** Optional: the `SELF` service binding used to route same-host subrequests. */
88
- selfBinding?: (env: TDeps) => Fetcher | null | undefined;
89
- /**
90
- * Optional, vendor-neutral: route an OUTBOUND subrequest through a
91
- * caller-supplied fetcher instead of the network — for hosts a Worker can't
92
- * reach directly over the edge (e.g. a platform router on the SAME zone:
93
- * Cloudflare 522s a same-zone Worker→Worker public `fetch`). Return a `Fetcher`
94
- * to route the request through, or null/undefined to fall through to the normal
95
- * fetch. The SDK names no backend or topology — the CALLER owns BOTH the
96
- * predicate (which hosts) and the fetcher (the binding). This generalizes
97
- * `selfBinding` (same-origin → SELF) to any caller policy; both are honored.
98
- */
99
- routeSubrequest?: (url: URL, env: TDeps) => Fetcher | null | undefined;
100
- /**
101
- * Optional: handle a request before it reaches the kernel app — e.g. serve a
102
- * SPA under `/ui/*` or a same-origin `/api/*` endpoint the view calls. Return
103
- * a `Response` to short-circuit, or `undefined` to fall through to the domain
104
- * dispatch.
105
- */
106
- before?: (env: TDeps, url: URL, request: Request) => Response | undefined | Promise<Response | undefined>;
107
- /**
108
- * Optional: transform the request on the fall-through path, just before it
109
- * reaches the kernel app (e.g. rewrite the hostname for wildcard-subdomain
110
- * routing). Not applied when `before` short-circuits.
111
- */
112
- rewriteRequest?: (env: TDeps, request: Request) => Request;
113
- }
114
- export interface AppWorkerEntryConfig<TDeps> extends Omit<WorkerEntryConfig<TDeps>, 'build'> {
115
- buildApp: (url: string, env: TDeps) => WorkerApp;
116
- }
117
- export interface WorkerEntry<TDeps> {
118
- fetch(request: Request, env: TDeps, executionCtx?: ExecutionContext): Response | Promise<Response>;
119
- }
120
- /**
121
- * The request origin as the CLIENT reached it — i.e. the origin a fallback
122
- * serving URL (and therefore the `iss`) may be derived from. Behind a
123
- * TLS-terminating proxy (a cloudflared tunnel in front of `wrangler dev`, any
124
- * reverse proxy) the worker sees plain HTTP, so `request.url` says `http://…`
125
- * while the public URL is `https://…`; the proxy advertises the original
126
- * scheme via `X-Forwarded-Proto`. Honoring it is restricted to the http→https
127
- * UPGRADE of the SAME host (never a downgrade, never a host change), so a
128
- * spoofed header can at worst derive an `iss` the kernel's JWKS check then
129
- * fails — it can never make this worker speak for another origin.
130
- */
131
- export declare function clientOrigin(url: URL, request: Request): string;
132
- /**
133
- * Build a `before` hook that serves a static-asset `binding` (e.g. a Workers
134
- * Assets binding) mounted under `base` (default `/ui`) — the runtime half of an
135
- * adapter env's client-asset config. Returns `undefined` for non-matching paths
136
- * (and when no binding is present) so the request falls through to domain dispatch.
137
- *
138
- * Asset URLs are rooted at `base` (a client bundler sets `base: '<base>/'`);
139
- * this hook strips that prefix before delegating to the binding, so
140
- * `<base>/x.js` resolves from the binding's root. When `devProxy` yields a URL
141
- * (local dev), requests are proxied there instead — the seam for a bundler's
142
- * HMR dev server. Whether unknown sub-paths fall back to `index.html` is the
143
- * binding's own concern (e.g. wrangler's `not_found_handling`), not baked in
144
- * here.
145
- *
146
- * Lives here, type-checked and testable, instead of being emitted as a string
147
- * by every adapter's worker codegen.
148
- */
149
- export declare function assets<TDeps>(opts: {
150
- base?: string;
151
- binding: (env: TDeps) => Fetcher | null | undefined;
152
- devProxy?: (env: TDeps) => string | null | undefined;
153
- }): (env: TDeps, url: URL, request: Request) => Response | Promise<Response> | undefined;
154
- export declare function createWorkerEntry<TDeps>(config: WorkerEntryConfig<TDeps>): WorkerEntry<TDeps>;
155
- export declare function createAppWorkerEntry<TDeps>(config: AppWorkerEntryConfig<TDeps>): WorkerEntry<TDeps>;
156
- export {};
157
- //# sourceMappingURL=worker-entry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-entry.d.ts","sourceRoot":"","sources":["../../src/server/worker-entry.ts"],"names":[],"mappings":"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"}
@@ -1,201 +0,0 @@
1
- /**
2
- * `createWorkerEntry` — the shared worker `fetch` plumbing every Astrale domain
3
- * worker (and the cloudflare adapter's codegen) needs, so it lives in ONE place
4
- * instead of being copy-pasted per worker:
5
- *
6
- * • resolve the serving URL (== `iss`), canonicalize it (so the value matches
7
- * what `createRemoteServer` signs with and the kernel pins), and cache the
8
- * built app per distinct URL;
9
- * • optional subrequest routing: a `globalThis.fetch` override (installed ONLY
10
- * when `selfBinding` and/or `routeSubrequest` is configured) redirects
11
- * certain outbound fetches through a caller-supplied binding — `selfBinding`
12
- * for same-host fetches (a Worker can't fetch its own hostname), and the
13
- * vendor-neutral `routeSubrequest` for any caller policy (e.g. instance
14
- * hostnames a same-zone Worker→Worker fetch would 522 on). The SDK names no
15
- * backend or topology; the caller owns the predicate + the fetcher;
16
- * • optional SPA hook (e.g. `/ui/*` served from an `ASSETS` binding).
17
- *
18
- * The worker's OWN JWKS (`<url>/.well-known/jwks.json`) is served as a normal
19
- * route by `createRemoteServer`; the verifier resolves a self-issued credential
20
- * from the in-memory key (see `auth/verify.ts`), so no self-fetch shim is needed.
21
- *
22
- * The worker file is then just schema + methods + a `build(url, env)` callback.
23
- */
24
- import { createRemoteServer } from './create.js';
25
- import { requireEnv } from './require-env.js';
26
- import { canonicalizeServingUrl } from './serving-url.js';
27
- /**
28
- * Choose where an OUTBOUND subrequest to `u` is routed — or `null` to let the
29
- * real `fetch` handle it. Order matters and same-origin wins FIRST: a call to
30
- * this worker's OWN serving origin is a self-dispatch, not an edge fetch — and
31
- * the caller's `routeSubrequest` policy may itself match our own host (e.g. an
32
- * `isInstanceHost` predicate matches every `*.svc.astrale.ai`, ours included),
33
- * so it must never get first look at a same-origin call.
34
- *
35
- * • same-origin + SELF binding present → the SELF fetcher: a fresh same-script
36
- * invocation. The normal Cloudflare path — a Worker can't fetch its own
37
- * hostname over the edge, so it re-enters itself through the binding.
38
- * • same-origin + NO SELF binding → the cached app, dispatched IN-PROCESS. A
39
- * Workers-for-Platforms dispatch-namespace tenant can't service-bind to
40
- * itself (its script name is platform-renamed), so it has no SELF binding; an
41
- * in-process dispatch reaches the same script with no edge hop and no binding.
42
- * `App` and the SELF `Fetcher` share the `{ fetch(request) }` shape, so the
43
- * caller drives both identically.
44
- * • else, the caller's `routeSubrequest` policy matched → its fetcher.
45
- * • else → `null`: passthrough to the real network fetch.
46
- *
47
- * Pure (no closure over instance state) so the routing decision is unit-testable
48
- * without standing up a real app.
49
- */
50
- export function selectSubrequestTarget(u, ctx) {
51
- // Same-origin self-subrequest → the same script (SELF binding, else in-process).
52
- for (const cached of ctx.apps) {
53
- if (cached.origin === u.origin)
54
- return ctx.self ?? cached.app;
55
- }
56
- // Caller policy (e.g. a platform router on the same zone) → its fetcher.
57
- if (ctx.routeSubrequest && ctx.routeEnv) {
58
- const via = ctx.routeSubrequest(u, ctx.routeEnv);
59
- if (via)
60
- return via;
61
- }
62
- return null;
63
- }
64
- /**
65
- * The request origin as the CLIENT reached it — i.e. the origin a fallback
66
- * serving URL (and therefore the `iss`) may be derived from. Behind a
67
- * TLS-terminating proxy (a cloudflared tunnel in front of `wrangler dev`, any
68
- * reverse proxy) the worker sees plain HTTP, so `request.url` says `http://…`
69
- * while the public URL is `https://…`; the proxy advertises the original
70
- * scheme via `X-Forwarded-Proto`. Honoring it is restricted to the http→https
71
- * UPGRADE of the SAME host (never a downgrade, never a host change), so a
72
- * spoofed header can at worst derive an `iss` the kernel's JWKS check then
73
- * fails — it can never make this worker speak for another origin.
74
- */
75
- export function clientOrigin(url, request) {
76
- if (url.protocol !== 'http:')
77
- return url.origin;
78
- const forwarded = request.headers.get('x-forwarded-proto');
79
- // Multiple proxies append: "https, http" — the first hop is the client-facing one.
80
- const scheme = forwarded?.split(',')[0]?.trim().toLowerCase();
81
- return scheme === 'https' ? `https://${url.host}` : url.origin;
82
- }
83
- /**
84
- * Build a `before` hook that serves a static-asset `binding` (e.g. a Workers
85
- * Assets binding) mounted under `base` (default `/ui`) — the runtime half of an
86
- * adapter env's client-asset config. Returns `undefined` for non-matching paths
87
- * (and when no binding is present) so the request falls through to domain dispatch.
88
- *
89
- * Asset URLs are rooted at `base` (a client bundler sets `base: '<base>/'`);
90
- * this hook strips that prefix before delegating to the binding, so
91
- * `<base>/x.js` resolves from the binding's root. When `devProxy` yields a URL
92
- * (local dev), requests are proxied there instead — the seam for a bundler's
93
- * HMR dev server. Whether unknown sub-paths fall back to `index.html` is the
94
- * binding's own concern (e.g. wrangler's `not_found_handling`), not baked in
95
- * here.
96
- *
97
- * Lives here, type-checked and testable, instead of being emitted as a string
98
- * by every adapter's worker codegen.
99
- */
100
- export function assets(opts) {
101
- const base = (opts.base ?? '/ui').replace(/\/+$/, '');
102
- const prefix = `${base}/`;
103
- return (env, url, request) => {
104
- const binding = opts.binding(env);
105
- if (!binding)
106
- return undefined;
107
- if (url.pathname !== base && !url.pathname.startsWith(prefix))
108
- return undefined;
109
- const devUrl = opts.devProxy?.(env);
110
- if (devUrl) {
111
- const devBase = devUrl.replace(/\/+$/, '');
112
- return fetch(new Request(`${devBase}${url.pathname}${url.search}`, request));
113
- }
114
- // `<base>` → `/`, `<base>/x` → `/x`: serve from the binding's root.
115
- const stripped = url.pathname.slice(base.length) || '/';
116
- const rewritten = new URL(stripped + url.search, url.origin);
117
- return binding.fetch(new Request(rewritten, request));
118
- };
119
- }
120
- export function createWorkerEntry(config) {
121
- return createAppWorkerEntry({
122
- ...config,
123
- buildApp: (url, env) => createRemoteServer(config.build(url, env)).app,
124
- });
125
- }
126
- export function createAppWorkerEntry(config) {
127
- // Cache the built app per distinct resolved URL — plural and bounded. On the
128
- // request-origin fallback the URL legitimately alternates for one worker
129
- // (direct http hits vs https-upgraded tunnel hits, workers.dev + custom
130
- // domain), and a single slot would tear down and rebuild the whole app on
131
- // every alternation. The bound caps abuse via attacker-minted Host /
132
- // X-Forwarded-Proto values on that same fallback path.
133
- const MAX_CACHED_APPS = 4;
134
- const apps = new Map();
135
- let self = null;
136
- let routeEnv = null;
137
- function getApp(url, env) {
138
- const cached = apps.get(url);
139
- if (cached)
140
- return cached.app;
141
- const app = config.buildApp(url, env);
142
- if (apps.size >= MAX_CACHED_APPS) {
143
- const oldest = apps.keys().next().value;
144
- if (oldest !== undefined)
145
- apps.delete(oldest);
146
- }
147
- apps.set(url, { origin: new URL(url).origin, app });
148
- return app;
149
- }
150
- // A Worker can't fetch its own hostname over the edge, nor — on Cloudflare — a
151
- // same-zone hostname routed to another Worker (the `routeSubrequest` case).
152
- // When either is configured, override `globalThis.fetch` to redirect those
153
- // subrequests through the right target (see `selectSubrequestTarget`). Workers
154
- // with neither selfBinding nor routeSubrequest get no global mutation. (A
155
- // self-issued credential's JWKS is resolved in-memory by the verifier, not
156
- // fetched — see `auth/verify.ts` — so no self-JWKS shim is needed.)
157
- if (config.selfBinding || config.routeSubrequest) {
158
- const originalFetch = globalThis.fetch;
159
- globalThis.fetch = (async (input, init) => {
160
- const href = typeof input === 'string' ? input : input instanceof URL ? input.href : input.url;
161
- try {
162
- const target = selectSubrequestTarget(new URL(href), {
163
- self,
164
- apps: apps.values(),
165
- routeEnv,
166
- routeSubrequest: config.routeSubrequest,
167
- });
168
- if (target)
169
- return target.fetch(new Request(input, init));
170
- }
171
- catch {
172
- // non-absolute URL — fall through to the original fetch
173
- }
174
- return originalFetch(input, init);
175
- });
176
- }
177
- return {
178
- async fetch(request, env, executionCtx) {
179
- if (config.selfBinding)
180
- self ??= config.selfBinding(env) ?? null;
181
- if (config.routeSubrequest)
182
- routeEnv = env;
183
- // Only parse the request URL when a hook actually needs it.
184
- const requestUrl = config.before || config.resolveUrl ? new URL(request.url) : null;
185
- if (config.before && requestUrl) {
186
- // Await so an async `before` that resolves to `undefined` falls through
187
- // (a returned Promise<undefined> would otherwise be sent as the response).
188
- const handled = await config.before(env, requestUrl, request);
189
- if (handled !== undefined)
190
- return handled;
191
- }
192
- const raw = config.resolveUrl
193
- ? config.resolveUrl(env, clientOrigin(requestUrl, request))
194
- : requireEnv(env, 'WORKER_URL', "the worker's public serving URL (its iss identity)");
195
- const url = canonicalizeServingUrl(raw);
196
- const dispatched = config.rewriteRequest ? config.rewriteRequest(env, request) : request;
197
- return getApp(url, env).fetch(dispatched, env, executionCtx);
198
- },
199
- };
200
- }
201
- //# sourceMappingURL=worker-entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/server/worker-entry.ts"],"names":[],"mappings":"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"}
@@ -1,148 +0,0 @@
1
- import type { FunctionBinding } from '@astrale-os/kernel-api/routed';
2
- import type { FunctionSchema } from '@astrale-os/kernel-core/domain';
3
- import { z } from 'zod';
4
- import type { RemoteIdentityConfig } from '../auth/identity.js';
5
- export declare const SERVICE_FUNCTIONS_PATH = "/_astrale/functions";
6
- export declare const SERVICE_FUNCTIONS_PURPOSE = "astrale.service-functions.v1";
7
- export declare const ServiceFunctionManifestEntrySchema: z.ZodObject<{
8
- slug: z.ZodString;
9
- ref: z.ZodString;
10
- inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
11
- outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
12
- output: z.ZodDefault<z.ZodEnum<{
13
- binary: "binary";
14
- stream: "stream";
15
- value: "value";
16
- }>>;
17
- binding: z.ZodObject<{
18
- remoteUrl: z.ZodOptional<z.ZodString>;
19
- route: z.ZodOptional<z.ZodObject<{
20
- method: z.ZodEnum<{
21
- "*": "*";
22
- DELETE: "DELETE";
23
- GET: "GET";
24
- PATCH: "PATCH";
25
- POST: "POST";
26
- PUT: "PUT";
27
- }>;
28
- path: z.ZodString;
29
- self: z.ZodOptional<z.ZodString>;
30
- query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
31
- headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
32
- body: z.ZodOptional<z.ZodUnknown>;
33
- credential: z.ZodOptional<z.ZodUnknown>;
34
- }, z.core.$strip>>;
35
- auth: z.ZodOptional<z.ZodEnum<{
36
- optional: "optional";
37
- public: "public";
38
- required: "required";
39
- }>>;
40
- }, z.core.$strip>;
41
- }, z.core.$strip>;
42
- export declare const ServiceFunctionManifestSchema: z.ZodObject<{
43
- version: z.ZodLiteral<1>;
44
- service: z.ZodObject<{
45
- issuer: z.ZodString;
46
- subject: z.ZodString;
47
- }, z.core.$strip>;
48
- functions: z.ZodArray<z.ZodObject<{
49
- slug: z.ZodString;
50
- ref: z.ZodString;
51
- inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
52
- outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
53
- output: z.ZodDefault<z.ZodEnum<{
54
- binary: "binary";
55
- stream: "stream";
56
- value: "value";
57
- }>>;
58
- binding: z.ZodObject<{
59
- remoteUrl: z.ZodOptional<z.ZodString>;
60
- route: z.ZodOptional<z.ZodObject<{
61
- method: z.ZodEnum<{
62
- "*": "*";
63
- DELETE: "DELETE";
64
- GET: "GET";
65
- PATCH: "PATCH";
66
- POST: "POST";
67
- PUT: "PUT";
68
- }>;
69
- path: z.ZodString;
70
- self: z.ZodOptional<z.ZodString>;
71
- query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
72
- headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
73
- body: z.ZodOptional<z.ZodUnknown>;
74
- credential: z.ZodOptional<z.ZodUnknown>;
75
- }, z.core.$strip>>;
76
- auth: z.ZodOptional<z.ZodEnum<{
77
- optional: "optional";
78
- public: "public";
79
- required: "required";
80
- }>>;
81
- }, z.core.$strip>;
82
- }, z.core.$strip>>;
83
- }, z.core.$strip>;
84
- export declare const ServiceFunctionDiscoveryRequestSchema: z.ZodObject<{
85
- kernelIssuer: z.ZodString;
86
- nonce: z.ZodString;
87
- }, z.core.$strip>;
88
- export declare const ServiceFunctionDiscoveryResponseSchema: z.ZodObject<{
89
- version: z.ZodLiteral<1>;
90
- service: z.ZodObject<{
91
- issuer: z.ZodString;
92
- subject: z.ZodString;
93
- }, z.core.$strip>;
94
- functions: z.ZodArray<z.ZodObject<{
95
- slug: z.ZodString;
96
- ref: z.ZodString;
97
- inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
98
- outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
99
- output: z.ZodDefault<z.ZodEnum<{
100
- binary: "binary";
101
- stream: "stream";
102
- value: "value";
103
- }>>;
104
- binding: z.ZodObject<{
105
- remoteUrl: z.ZodOptional<z.ZodString>;
106
- route: z.ZodOptional<z.ZodObject<{
107
- method: z.ZodEnum<{
108
- "*": "*";
109
- DELETE: "DELETE";
110
- GET: "GET";
111
- PATCH: "PATCH";
112
- POST: "POST";
113
- PUT: "PUT";
114
- }>;
115
- path: z.ZodString;
116
- self: z.ZodOptional<z.ZodString>;
117
- query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
118
- headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
119
- body: z.ZodOptional<z.ZodUnknown>;
120
- credential: z.ZodOptional<z.ZodUnknown>;
121
- }, z.core.$strip>>;
122
- auth: z.ZodOptional<z.ZodEnum<{
123
- optional: "optional";
124
- public: "public";
125
- required: "required";
126
- }>>;
127
- }, z.core.$strip>;
128
- }, z.core.$strip>>;
129
- identity: z.ZodObject<{
130
- credential: z.ZodString;
131
- }, z.core.$strip>;
132
- }, z.core.$strip>;
133
- export type ServiceFunctionManifestEntry = z.infer<typeof ServiceFunctionManifestEntrySchema>;
134
- export type ServiceFunctionManifest = z.infer<typeof ServiceFunctionManifestSchema>;
135
- export type ServiceFunctionDiscoveryRequest = z.infer<typeof ServiceFunctionDiscoveryRequestSchema>;
136
- export type ServiceFunctionDiscoveryResponse = z.infer<typeof ServiceFunctionDiscoveryResponseSchema>;
137
- export declare function toServiceFunctionManifestEntries(schemas: readonly FunctionSchema[]): ServiceFunctionManifestEntry[];
138
- export declare function signServiceFunctionManifest(manifest: ServiceFunctionManifest, request: ServiceFunctionDiscoveryRequest, identity: RemoteIdentityConfig): Promise<ServiceFunctionDiscoveryResponse>;
139
- export declare function verifyServiceFunctionManifest(input: unknown, expected: {
140
- kernelIssuer: string;
141
- nonce: string;
142
- serviceIssuer: string;
143
- serviceSubject: string;
144
- publicKey: JsonWebKey;
145
- }): Promise<ServiceFunctionDiscoveryResponse>;
146
- export declare function hashServiceFunctionManifest(manifest: ServiceFunctionManifest): Promise<string>;
147
- export declare function functionBindingForManifest(binding: FunctionBinding, auth: 'required' | 'optional' | 'public' | undefined): FunctionBinding;
148
- //# sourceMappingURL=functions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/service/functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAKpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAI/D,eAAO,MAAM,sBAAsB,wBAAwB,CAAA;AAC3D,eAAO,MAAM,yBAAyB,iCAAiC,CAAA;AAIvE,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO7C,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIxC,CAAA;AAEF,eAAO,MAAM,qCAAqC;;;iBAGhD,CAAA;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEjD,CAAA;AAEF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAA;AAC7F,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AACnF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAA;AACnG,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,SAAS,cAAc,EAAE,GACjC,4BAA4B,EAAE,CAchC;AAED,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,uBAAuB,EACjC,OAAO,EAAE,+BAA+B,EACxC,QAAQ,EAAE,oBAAoB,GAC7B,OAAO,CAAC,gCAAgC,CAAC,CAc3C;AAED,wBAAsB,6BAA6B,CACjD,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE;IACR,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,UAAU,CAAA;CACtB,GACA,OAAO,CAAC,gCAAgC,CAAC,CAkC3C;AAED,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GACnD,eAAe,CAEjB"}
@@ -1,115 +0,0 @@
1
- import { deriveAllowedAlgorithms } from '@astrale-os/kernel-core';
2
- import { functionBindingSchema, functionOutputSchema } from '@astrale-os/kernel-core/domain';
3
- import { importJWK, jwtVerify } from 'jose';
4
- import { z } from 'zod';
5
- import { signCredential } from '../auth/sign.js';
6
- export const SERVICE_FUNCTIONS_PATH = '/_astrale/functions';
7
- export const SERVICE_FUNCTIONS_PURPOSE = 'astrale.service-functions.v1';
8
- const JsonSchema = z.record(z.string(), z.unknown());
9
- export const ServiceFunctionManifestEntrySchema = z.object({
10
- slug: z.string().regex(/^[a-z][a-z0-9-]*$/),
11
- ref: z.string().regex(/^function\.[a-z][a-z0-9-]*$/),
12
- inputSchema: JsonSchema,
13
- outputSchema: JsonSchema,
14
- output: functionOutputSchema.default('value'),
15
- binding: functionBindingSchema.unwrap(),
16
- });
17
- export const ServiceFunctionManifestSchema = z.object({
18
- version: z.literal(1),
19
- service: z.object({ issuer: z.string().min(1), subject: z.string().min(1) }),
20
- functions: z.array(ServiceFunctionManifestEntrySchema).max(500),
21
- });
22
- export const ServiceFunctionDiscoveryRequestSchema = z.object({
23
- kernelIssuer: z.string().url(),
24
- nonce: z.string().min(16).max(256),
25
- });
26
- export const ServiceFunctionDiscoveryResponseSchema = ServiceFunctionManifestSchema.extend({
27
- identity: z.object({ credential: z.string().min(1) }),
28
- });
29
- export function toServiceFunctionManifestEntries(schemas) {
30
- return schemas
31
- .map((schema) => {
32
- const slug = schema.ref.slice('function.'.length);
33
- return ServiceFunctionManifestEntrySchema.parse({
34
- slug,
35
- ref: schema.ref,
36
- inputSchema: schema.inputSchema,
37
- outputSchema: schema.outputSchema,
38
- output: schema.output ?? 'value',
39
- binding: schema.binding,
40
- });
41
- })
42
- .sort((a, b) => a.slug.localeCompare(b.slug));
43
- }
44
- export async function signServiceFunctionManifest(manifest, request, identity) {
45
- const parsedManifest = ServiceFunctionManifestSchema.parse(manifest);
46
- const manifestHash = await hashServiceFunctionManifest(parsedManifest);
47
- const credential = await signCredential({ purpose: SERVICE_FUNCTIONS_PURPOSE, nonce: request.nonce, manifestHash }, {
48
- issuer: identity.issuer,
49
- subject: identity.subject,
50
- audience: request.kernelIssuer,
51
- privateKey: identity.privateKey,
52
- ttl: '2m',
53
- });
54
- return { ...parsedManifest, identity: { credential } };
55
- }
56
- export async function verifyServiceFunctionManifest(input, expected) {
57
- const response = ServiceFunctionDiscoveryResponseSchema.parse(input);
58
- if (response.service.issuer !== expected.serviceIssuer ||
59
- response.service.subject !== expected.serviceSubject) {
60
- throw new Error('service function manifest identity does not match the deployed Service');
61
- }
62
- const algorithms = deriveAllowedAlgorithms(expected.publicKey);
63
- const algorithm = algorithms[0];
64
- if (!algorithm)
65
- throw new Error('service function manifest public key has no supported algorithm');
66
- const key = await importJWK(expected.publicKey, algorithm);
67
- const verified = await jwtVerify(response.identity.credential, key, {
68
- algorithms,
69
- issuer: expected.serviceIssuer,
70
- subject: expected.serviceSubject,
71
- audience: expected.kernelIssuer,
72
- });
73
- const expectedHash = await hashServiceFunctionManifest({
74
- version: response.version,
75
- service: response.service,
76
- functions: response.functions,
77
- });
78
- if (verified.payload.purpose !== SERVICE_FUNCTIONS_PURPOSE) {
79
- throw new Error('service function manifest credential has the wrong purpose');
80
- }
81
- if (verified.payload.nonce !== expected.nonce) {
82
- throw new Error('service function manifest credential has the wrong nonce');
83
- }
84
- if (verified.payload.manifestHash !== expectedHash) {
85
- throw new Error('service function manifest credential does not cover the returned manifest');
86
- }
87
- return response;
88
- }
89
- export async function hashServiceFunctionManifest(manifest) {
90
- const bytes = new TextEncoder().encode(canonicalJson(ServiceFunctionManifestSchema.parse(manifest)));
91
- const digest = await crypto.subtle.digest('SHA-256', bytes);
92
- return `sha256:${hex(new Uint8Array(digest))}`;
93
- }
94
- export function functionBindingForManifest(binding, auth) {
95
- return { ...binding, auth: auth ?? 'required' };
96
- }
97
- function canonicalJson(value) {
98
- if (value === null || typeof value !== 'object')
99
- return JSON.stringify(value);
100
- if (Array.isArray(value))
101
- return `[${value.map(canonicalJson).join(',')}]`;
102
- const entries = Object.entries(value)
103
- .filter(([, item]) => item !== undefined)
104
- .sort(([a], [b]) => a.localeCompare(b));
105
- return `{${entries
106
- .map(([key, item]) => `${JSON.stringify(key)}:${canonicalJson(item)}`)
107
- .join(',')}}`;
108
- }
109
- function hex(bytes) {
110
- let value = '';
111
- for (const byte of bytes)
112
- value += byte.toString(16).padStart(2, '0');
113
- return value;
114
- }
115
- //# sourceMappingURL=functions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/service/functions.ts"],"names":[],"mappings":"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"}