@aigne/aos 0.2.0-beta

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 (533) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/LICENSE.md +26 -0
  3. package/dist/agent-dsl.cjs +116 -0
  4. package/dist/agent-dsl.d.cts +31 -0
  5. package/dist/agent-dsl.d.cts.map +1 -0
  6. package/dist/agent-dsl.d.mts +31 -0
  7. package/dist/agent-dsl.d.mts.map +1 -0
  8. package/dist/agent-dsl.mjs +115 -0
  9. package/dist/agent-dsl.mjs.map +1 -0
  10. package/dist/arc-compat.cjs +125 -0
  11. package/dist/arc-compat.d.cts +17 -0
  12. package/dist/arc-compat.d.cts.map +1 -0
  13. package/dist/arc-compat.d.mts +17 -0
  14. package/dist/arc-compat.d.mts.map +1 -0
  15. package/dist/arc-compat.mjs +123 -0
  16. package/dist/arc-compat.mjs.map +1 -0
  17. package/dist/auto-surface/compiler.cjs +36 -0
  18. package/dist/auto-surface/compiler.d.cts +7 -0
  19. package/dist/auto-surface/compiler.d.cts.map +1 -0
  20. package/dist/auto-surface/compiler.d.mts +7 -0
  21. package/dist/auto-surface/compiler.d.mts.map +1 -0
  22. package/dist/auto-surface/compiler.mjs +37 -0
  23. package/dist/auto-surface/compiler.mjs.map +1 -0
  24. package/dist/auto-surface/definition-dsl.cjs +333 -0
  25. package/dist/auto-surface/definition-dsl.d.cts +41 -0
  26. package/dist/auto-surface/definition-dsl.d.cts.map +1 -0
  27. package/dist/auto-surface/definition-dsl.d.mts +41 -0
  28. package/dist/auto-surface/definition-dsl.d.mts.map +1 -0
  29. package/dist/auto-surface/definition-dsl.mjs +332 -0
  30. package/dist/auto-surface/definition-dsl.mjs.map +1 -0
  31. package/dist/auto-surface/fragments.cjs +177 -0
  32. package/dist/auto-surface/fragments.d.cts +23 -0
  33. package/dist/auto-surface/fragments.d.cts.map +1 -0
  34. package/dist/auto-surface/fragments.d.mts +23 -0
  35. package/dist/auto-surface/fragments.d.mts.map +1 -0
  36. package/dist/auto-surface/fragments.mjs +175 -0
  37. package/dist/auto-surface/fragments.mjs.map +1 -0
  38. package/dist/auto-surface/index.d.mts +9 -0
  39. package/dist/auto-surface/layering.cjs +43 -0
  40. package/dist/auto-surface/layering.d.cts +7 -0
  41. package/dist/auto-surface/layering.d.cts.map +1 -0
  42. package/dist/auto-surface/layering.d.mts +7 -0
  43. package/dist/auto-surface/layering.d.mts.map +1 -0
  44. package/dist/auto-surface/layering.mjs +43 -0
  45. package/dist/auto-surface/layering.mjs.map +1 -0
  46. package/dist/auto-surface/projection.cjs +11 -0
  47. package/dist/auto-surface/projection.d.cts +11 -0
  48. package/dist/auto-surface/projection.d.cts.map +1 -0
  49. package/dist/auto-surface/projection.d.mts +11 -0
  50. package/dist/auto-surface/projection.d.mts.map +1 -0
  51. package/dist/auto-surface/projection.mjs +12 -0
  52. package/dist/auto-surface/projection.mjs.map +1 -0
  53. package/dist/auto-surface/projectors/settings-shell.cjs +114 -0
  54. package/dist/auto-surface/projectors/settings-shell.d.cts +10 -0
  55. package/dist/auto-surface/projectors/settings-shell.d.cts.map +1 -0
  56. package/dist/auto-surface/projectors/settings-shell.d.mts +10 -0
  57. package/dist/auto-surface/projectors/settings-shell.d.mts.map +1 -0
  58. package/dist/auto-surface/projectors/settings-shell.mjs +114 -0
  59. package/dist/auto-surface/projectors/settings-shell.mjs.map +1 -0
  60. package/dist/auto-surface/scenario.cjs +38 -0
  61. package/dist/auto-surface/scenario.d.cts +31 -0
  62. package/dist/auto-surface/scenario.d.cts.map +1 -0
  63. package/dist/auto-surface/scenario.d.mts +31 -0
  64. package/dist/auto-surface/scenario.d.mts.map +1 -0
  65. package/dist/auto-surface/scenario.mjs +37 -0
  66. package/dist/auto-surface/scenario.mjs.map +1 -0
  67. package/dist/auto-surface/types.cjs +9 -0
  68. package/dist/auto-surface/types.d.cts +153 -0
  69. package/dist/auto-surface/types.d.cts.map +1 -0
  70. package/dist/auto-surface/types.d.mts +153 -0
  71. package/dist/auto-surface/types.d.mts.map +1 -0
  72. package/dist/auto-surface/types.mjs +9 -0
  73. package/dist/auto-surface/types.mjs.map +1 -0
  74. package/dist/auto-surface/value-dsl.cjs +80 -0
  75. package/dist/auto-surface/value-dsl.d.cts +24 -0
  76. package/dist/auto-surface/value-dsl.d.cts.map +1 -0
  77. package/dist/auto-surface/value-dsl.d.mts +24 -0
  78. package/dist/auto-surface/value-dsl.d.mts.map +1 -0
  79. package/dist/auto-surface/value-dsl.mjs +79 -0
  80. package/dist/auto-surface/value-dsl.mjs.map +1 -0
  81. package/dist/blocklet/activation.cjs +94 -0
  82. package/dist/blocklet/activation.d.cts +30 -0
  83. package/dist/blocklet/activation.d.cts.map +1 -0
  84. package/dist/blocklet/activation.d.mts +30 -0
  85. package/dist/blocklet/activation.d.mts.map +1 -0
  86. package/dist/blocklet/activation.mjs +94 -0
  87. package/dist/blocklet/activation.mjs.map +1 -0
  88. package/dist/blocklet/did-space-registry.cjs +282 -0
  89. package/dist/blocklet/did-space-registry.d.cts +82 -0
  90. package/dist/blocklet/did-space-registry.d.cts.map +1 -0
  91. package/dist/blocklet/did-space-registry.d.mts +82 -0
  92. package/dist/blocklet/did-space-registry.d.mts.map +1 -0
  93. package/dist/blocklet/did-space-registry.mjs +281 -0
  94. package/dist/blocklet/did-space-registry.mjs.map +1 -0
  95. package/dist/blocklet/handlers.cjs +66 -0
  96. package/dist/blocklet/handlers.d.cts +16 -0
  97. package/dist/blocklet/handlers.d.cts.map +1 -0
  98. package/dist/blocklet/handlers.d.mts +16 -0
  99. package/dist/blocklet/handlers.d.mts.map +1 -0
  100. package/dist/blocklet/handlers.mjs +65 -0
  101. package/dist/blocklet/handlers.mjs.map +1 -0
  102. package/dist/blocklet/index.d.mts +7 -0
  103. package/dist/blocklet/manifest.d.cts +2 -0
  104. package/dist/blocklet/manifest.d.mts +2 -0
  105. package/dist/blocklet/manifest.mjs +3 -0
  106. package/dist/blocklet/registry.cjs +447 -0
  107. package/dist/blocklet/registry.d.cts +197 -0
  108. package/dist/blocklet/registry.d.cts.map +1 -0
  109. package/dist/blocklet/registry.d.mts +197 -0
  110. package/dist/blocklet/registry.d.mts.map +1 -0
  111. package/dist/blocklet/registry.mjs +441 -0
  112. package/dist/blocklet/registry.mjs.map +1 -0
  113. package/dist/blocklet/static-render.cjs +183 -0
  114. package/dist/blocklet/static-render.d.cts +55 -0
  115. package/dist/blocklet/static-render.d.cts.map +1 -0
  116. package/dist/blocklet/static-render.d.mts +55 -0
  117. package/dist/blocklet/static-render.d.mts.map +1 -0
  118. package/dist/blocklet/static-render.mjs +181 -0
  119. package/dist/blocklet/static-render.mjs.map +1 -0
  120. package/dist/blocklet/types.d.cts +70 -0
  121. package/dist/blocklet/types.d.cts.map +1 -0
  122. package/dist/blocklet/types.d.mts +70 -0
  123. package/dist/blocklet/types.d.mts.map +1 -0
  124. package/dist/devices/chain.cjs +127 -0
  125. package/dist/devices/chain.d.cts +48 -0
  126. package/dist/devices/chain.d.cts.map +1 -0
  127. package/dist/devices/chain.d.mts +48 -0
  128. package/dist/devices/chain.d.mts.map +1 -0
  129. package/dist/devices/chain.mjs +125 -0
  130. package/dist/devices/chain.mjs.map +1 -0
  131. package/dist/dsl-shared.cjs +290 -0
  132. package/dist/dsl-shared.d.cts +54 -0
  133. package/dist/dsl-shared.d.cts.map +1 -0
  134. package/dist/dsl-shared.d.mts +54 -0
  135. package/dist/dsl-shared.d.mts.map +1 -0
  136. package/dist/dsl-shared.mjs +287 -0
  137. package/dist/dsl-shared.mjs.map +1 -0
  138. package/dist/http/afs-mcp.cjs +85 -0
  139. package/dist/http/afs-mcp.d.cts +14 -0
  140. package/dist/http/afs-mcp.d.cts.map +1 -0
  141. package/dist/http/afs-mcp.d.mts +14 -0
  142. package/dist/http/afs-mcp.d.mts.map +1 -0
  143. package/dist/http/afs-mcp.mjs +86 -0
  144. package/dist/http/afs-mcp.mjs.map +1 -0
  145. package/dist/http/afs-raw.cjs +264 -0
  146. package/dist/http/afs-raw.d.cts +31 -0
  147. package/dist/http/afs-raw.d.cts.map +1 -0
  148. package/dist/http/afs-raw.d.mts +31 -0
  149. package/dist/http/afs-raw.d.mts.map +1 -0
  150. package/dist/http/afs-raw.mjs +264 -0
  151. package/dist/http/afs-raw.mjs.map +1 -0
  152. package/dist/http/afs-rest.cjs +30 -0
  153. package/dist/http/afs-rest.d.cts +21 -0
  154. package/dist/http/afs-rest.d.cts.map +1 -0
  155. package/dist/http/afs-rest.d.mts +21 -0
  156. package/dist/http/afs-rest.d.mts.map +1 -0
  157. package/dist/http/afs-rest.mjs +31 -0
  158. package/dist/http/afs-rest.mjs.map +1 -0
  159. package/dist/http/afs-rpc-wire.cjs +271 -0
  160. package/dist/http/afs-rpc-wire.d.cts +195 -0
  161. package/dist/http/afs-rpc-wire.d.cts.map +1 -0
  162. package/dist/http/afs-rpc-wire.d.mts +195 -0
  163. package/dist/http/afs-rpc-wire.d.mts.map +1 -0
  164. package/dist/http/afs-rpc-wire.mjs +262 -0
  165. package/dist/http/afs-rpc-wire.mjs.map +1 -0
  166. package/dist/http/afs-rpc.cjs +729 -0
  167. package/dist/http/afs-rpc.d.cts +103 -0
  168. package/dist/http/afs-rpc.d.cts.map +1 -0
  169. package/dist/http/afs-rpc.d.mts +103 -0
  170. package/dist/http/afs-rpc.d.mts.map +1 -0
  171. package/dist/http/afs-rpc.mjs +729 -0
  172. package/dist/http/afs-rpc.mjs.map +1 -0
  173. package/dist/http/afs-upload.cjs +116 -0
  174. package/dist/http/afs-upload.d.cts +40 -0
  175. package/dist/http/afs-upload.d.cts.map +1 -0
  176. package/dist/http/afs-upload.d.mts +40 -0
  177. package/dist/http/afs-upload.d.mts.map +1 -0
  178. package/dist/http/afs-upload.mjs +116 -0
  179. package/dist/http/afs-upload.mjs.map +1 -0
  180. package/dist/http/aup-client.cjs +60 -0
  181. package/dist/http/aup-client.d.cts +22 -0
  182. package/dist/http/aup-client.d.cts.map +1 -0
  183. package/dist/http/aup-client.d.mts +22 -0
  184. package/dist/http/aup-client.d.mts.map +1 -0
  185. package/dist/http/aup-client.mjs +59 -0
  186. package/dist/http/aup-client.mjs.map +1 -0
  187. package/dist/http/aup-event.cjs +100 -0
  188. package/dist/http/aup-event.d.cts +38 -0
  189. package/dist/http/aup-event.d.cts.map +1 -0
  190. package/dist/http/aup-event.d.mts +38 -0
  191. package/dist/http/aup-event.d.mts.map +1 -0
  192. package/dist/http/aup-event.mjs +101 -0
  193. package/dist/http/aup-event.mjs.map +1 -0
  194. package/dist/http/auth-context.cjs +66 -0
  195. package/dist/http/auth-context.d.cts +64 -0
  196. package/dist/http/auth-context.d.cts.map +1 -0
  197. package/dist/http/auth-context.d.mts +64 -0
  198. package/dist/http/auth-context.d.mts.map +1 -0
  199. package/dist/http/auth-context.mjs +66 -0
  200. package/dist/http/auth-context.mjs.map +1 -0
  201. package/dist/http/csrf.cjs +50 -0
  202. package/dist/http/csrf.d.cts +8 -0
  203. package/dist/http/csrf.d.cts.map +1 -0
  204. package/dist/http/csrf.d.mts +8 -0
  205. package/dist/http/csrf.d.mts.map +1 -0
  206. package/dist/http/csrf.mjs +49 -0
  207. package/dist/http/csrf.mjs.map +1 -0
  208. package/dist/http/handlers.cjs +106 -0
  209. package/dist/http/handlers.d.cts +39 -0
  210. package/dist/http/handlers.d.cts.map +1 -0
  211. package/dist/http/handlers.d.mts +39 -0
  212. package/dist/http/handlers.d.mts.map +1 -0
  213. package/dist/http/handlers.mjs +104 -0
  214. package/dist/http/handlers.mjs.map +1 -0
  215. package/dist/http/index.d.mts +1 -0
  216. package/dist/http/ingest-facade.cjs +315 -0
  217. package/dist/http/ingest-facade.mjs +314 -0
  218. package/dist/http/ingest-facade.mjs.map +1 -0
  219. package/dist/http/raw-url.cjs +136 -0
  220. package/dist/http/raw-url.d.cts +54 -0
  221. package/dist/http/raw-url.d.cts.map +1 -0
  222. package/dist/http/raw-url.d.mts +54 -0
  223. package/dist/http/raw-url.d.mts.map +1 -0
  224. package/dist/http/raw-url.mjs +136 -0
  225. package/dist/http/raw-url.mjs.map +1 -0
  226. package/dist/http/request-context.cjs +178 -0
  227. package/dist/http/request-context.d.cts +76 -0
  228. package/dist/http/request-context.d.cts.map +1 -0
  229. package/dist/http/request-context.d.mts +76 -0
  230. package/dist/http/request-context.d.mts.map +1 -0
  231. package/dist/http/request-context.mjs +179 -0
  232. package/dist/http/request-context.mjs.map +1 -0
  233. package/dist/index.cjs +197 -0
  234. package/dist/index.d.cts +63 -0
  235. package/dist/index.d.mts +68 -0
  236. package/dist/index.mjs +61 -0
  237. package/dist/mcp/index.cjs +9 -0
  238. package/dist/mcp/index.d.cts +5 -0
  239. package/dist/mcp/index.d.mts +5 -0
  240. package/dist/mcp/index.mjs +6 -0
  241. package/dist/mcp/prompts.cjs +17 -0
  242. package/dist/mcp/prompts.d.cts +8 -0
  243. package/dist/mcp/prompts.d.cts.map +1 -0
  244. package/dist/mcp/prompts.d.mts +8 -0
  245. package/dist/mcp/prompts.d.mts.map +1 -0
  246. package/dist/mcp/prompts.mjs +17 -0
  247. package/dist/mcp/prompts.mjs.map +1 -0
  248. package/dist/mcp/resources.cjs +22 -0
  249. package/dist/mcp/resources.d.cts +8 -0
  250. package/dist/mcp/resources.d.cts.map +1 -0
  251. package/dist/mcp/resources.d.mts +8 -0
  252. package/dist/mcp/resources.d.mts.map +1 -0
  253. package/dist/mcp/resources.mjs +22 -0
  254. package/dist/mcp/resources.mjs.map +1 -0
  255. package/dist/mcp/server.cjs +51 -0
  256. package/dist/mcp/server.d.cts +20 -0
  257. package/dist/mcp/server.d.cts.map +1 -0
  258. package/dist/mcp/server.d.mts +20 -0
  259. package/dist/mcp/server.d.mts.map +1 -0
  260. package/dist/mcp/server.mjs +52 -0
  261. package/dist/mcp/server.mjs.map +1 -0
  262. package/dist/mcp/tools.cjs +218 -0
  263. package/dist/mcp/tools.d.cts +8 -0
  264. package/dist/mcp/tools.d.cts.map +1 -0
  265. package/dist/mcp/tools.d.mts +8 -0
  266. package/dist/mcp/tools.d.mts.map +1 -0
  267. package/dist/mcp/tools.mjs +219 -0
  268. package/dist/mcp/tools.mjs.map +1 -0
  269. package/dist/mcp/utils.cjs +75 -0
  270. package/dist/mcp/utils.mjs +69 -0
  271. package/dist/mcp/utils.mjs.map +1 -0
  272. package/dist/mount/index.cjs +4 -0
  273. package/dist/mount/index.d.cts +3 -0
  274. package/dist/mount/index.d.mts +3 -0
  275. package/dist/mount/index.mjs +3 -0
  276. package/dist/mount/materializer.cjs +167 -0
  277. package/dist/mount/materializer.d.cts +97 -0
  278. package/dist/mount/materializer.d.cts.map +1 -0
  279. package/dist/mount/materializer.d.mts +97 -0
  280. package/dist/mount/materializer.d.mts.map +1 -0
  281. package/dist/mount/materializer.mjs +167 -0
  282. package/dist/mount/materializer.mjs.map +1 -0
  283. package/dist/mount/types.d.cts +90 -0
  284. package/dist/mount/types.d.cts.map +1 -0
  285. package/dist/mount/types.d.mts +90 -0
  286. package/dist/mount/types.d.mts.map +1 -0
  287. package/dist/mount-config.cjs +61 -0
  288. package/dist/mount-config.d.cts +19 -0
  289. package/dist/mount-config.d.cts.map +1 -0
  290. package/dist/mount-config.d.mts +19 -0
  291. package/dist/mount-config.d.mts.map +1 -0
  292. package/dist/mount-config.mjs +61 -0
  293. package/dist/mount-config.mjs.map +1 -0
  294. package/dist/projectors/aup-projector.cjs +190 -0
  295. package/dist/projectors/aup-projector.d.cts +59 -0
  296. package/dist/projectors/aup-projector.d.cts.map +1 -0
  297. package/dist/projectors/aup-projector.d.mts +59 -0
  298. package/dist/projectors/aup-projector.d.mts.map +1 -0
  299. package/dist/projectors/aup-projector.mjs +188 -0
  300. package/dist/projectors/aup-projector.mjs.map +1 -0
  301. package/dist/projectors/index.cjs +6 -0
  302. package/dist/projectors/index.d.cts +2 -0
  303. package/dist/projectors/index.d.mts +2 -0
  304. package/dist/projectors/index.mjs +3 -0
  305. package/dist/scaffold/afs.cjs +195 -0
  306. package/dist/scaffold/afs.d.cts +16 -0
  307. package/dist/scaffold/afs.d.cts.map +1 -0
  308. package/dist/scaffold/afs.d.mts +16 -0
  309. package/dist/scaffold/afs.d.mts.map +1 -0
  310. package/dist/scaffold/afs.mjs +195 -0
  311. package/dist/scaffold/afs.mjs.map +1 -0
  312. package/dist/scaffold/composition.cjs +92 -0
  313. package/dist/scaffold/composition.d.cts +10 -0
  314. package/dist/scaffold/composition.d.cts.map +1 -0
  315. package/dist/scaffold/composition.d.mts +10 -0
  316. package/dist/scaffold/composition.d.mts.map +1 -0
  317. package/dist/scaffold/composition.mjs +92 -0
  318. package/dist/scaffold/composition.mjs.map +1 -0
  319. package/dist/scaffold/dsl-error.cjs +21 -0
  320. package/dist/scaffold/dsl-error.d.cts +11 -0
  321. package/dist/scaffold/dsl-error.d.cts.map +1 -0
  322. package/dist/scaffold/dsl-error.d.mts +11 -0
  323. package/dist/scaffold/dsl-error.d.mts.map +1 -0
  324. package/dist/scaffold/dsl-error.mjs +20 -0
  325. package/dist/scaffold/dsl-error.mjs.map +1 -0
  326. package/dist/scaffold/index.d.mts +12 -0
  327. package/dist/scaffold/manifest-dsl.cjs +188 -0
  328. package/dist/scaffold/manifest-dsl.d.cts +8 -0
  329. package/dist/scaffold/manifest-dsl.d.cts.map +1 -0
  330. package/dist/scaffold/manifest-dsl.d.mts +8 -0
  331. package/dist/scaffold/manifest-dsl.d.mts.map +1 -0
  332. package/dist/scaffold/manifest-dsl.mjs +188 -0
  333. package/dist/scaffold/manifest-dsl.mjs.map +1 -0
  334. package/dist/scaffold/module-dsl.cjs +284 -0
  335. package/dist/scaffold/module-dsl.d.cts +8 -0
  336. package/dist/scaffold/module-dsl.d.cts.map +1 -0
  337. package/dist/scaffold/module-dsl.d.mts +8 -0
  338. package/dist/scaffold/module-dsl.d.mts.map +1 -0
  339. package/dist/scaffold/module-dsl.mjs +284 -0
  340. package/dist/scaffold/module-dsl.mjs.map +1 -0
  341. package/dist/scaffold/resolver.cjs +156 -0
  342. package/dist/scaffold/resolver.d.cts +7 -0
  343. package/dist/scaffold/resolver.d.cts.map +1 -0
  344. package/dist/scaffold/resolver.d.mts +7 -0
  345. package/dist/scaffold/resolver.d.mts.map +1 -0
  346. package/dist/scaffold/resolver.mjs +156 -0
  347. package/dist/scaffold/resolver.mjs.map +1 -0
  348. package/dist/scaffold/runtime.cjs +24 -0
  349. package/dist/scaffold/runtime.d.cts +19 -0
  350. package/dist/scaffold/runtime.d.cts.map +1 -0
  351. package/dist/scaffold/runtime.d.mts +19 -0
  352. package/dist/scaffold/runtime.d.mts.map +1 -0
  353. package/dist/scaffold/runtime.mjs +25 -0
  354. package/dist/scaffold/runtime.mjs.map +1 -0
  355. package/dist/scaffold/shell-dsl.cjs +279 -0
  356. package/dist/scaffold/shell-dsl.d.cts +8 -0
  357. package/dist/scaffold/shell-dsl.d.cts.map +1 -0
  358. package/dist/scaffold/shell-dsl.d.mts +8 -0
  359. package/dist/scaffold/shell-dsl.d.mts.map +1 -0
  360. package/dist/scaffold/shell-dsl.mjs +279 -0
  361. package/dist/scaffold/shell-dsl.mjs.map +1 -0
  362. package/dist/scaffold/surface-dsl.cjs +182 -0
  363. package/dist/scaffold/surface-dsl.d.cts +8 -0
  364. package/dist/scaffold/surface-dsl.d.cts.map +1 -0
  365. package/dist/scaffold/surface-dsl.d.mts +8 -0
  366. package/dist/scaffold/surface-dsl.d.mts.map +1 -0
  367. package/dist/scaffold/surface-dsl.mjs +182 -0
  368. package/dist/scaffold/surface-dsl.mjs.map +1 -0
  369. package/dist/scaffold/surfaces.cjs +84 -0
  370. package/dist/scaffold/surfaces.d.cts +23 -0
  371. package/dist/scaffold/surfaces.d.cts.map +1 -0
  372. package/dist/scaffold/surfaces.d.mts +24 -0
  373. package/dist/scaffold/surfaces.d.mts.map +1 -0
  374. package/dist/scaffold/surfaces.mjs +84 -0
  375. package/dist/scaffold/surfaces.mjs.map +1 -0
  376. package/dist/scaffold/types.d.cts +264 -0
  377. package/dist/scaffold/types.d.cts.map +1 -0
  378. package/dist/scaffold/types.d.mts +265 -0
  379. package/dist/scaffold/types.d.mts.map +1 -0
  380. package/dist/scaffold/workspace-dsl.cjs +339 -0
  381. package/dist/scaffold/workspace-dsl.d.cts +49 -0
  382. package/dist/scaffold/workspace-dsl.d.cts.map +1 -0
  383. package/dist/scaffold/workspace-dsl.d.mts +49 -0
  384. package/dist/scaffold/workspace-dsl.d.mts.map +1 -0
  385. package/dist/scaffold/workspace-dsl.mjs +337 -0
  386. package/dist/scaffold/workspace-dsl.mjs.map +1 -0
  387. package/dist/scope/index.d.mts +3 -0
  388. package/dist/scope/read-blocklet-scope.cjs +29 -0
  389. package/dist/scope/read-blocklet-scope.d.cts +8 -0
  390. package/dist/scope/read-blocklet-scope.d.cts.map +1 -0
  391. package/dist/scope/read-blocklet-scope.d.mts +8 -0
  392. package/dist/scope/read-blocklet-scope.d.mts.map +1 -0
  393. package/dist/scope/read-blocklet-scope.mjs +30 -0
  394. package/dist/scope/read-blocklet-scope.mjs.map +1 -0
  395. package/dist/scope/resolve-scoped-afs.cjs +87 -0
  396. package/dist/scope/resolve-scoped-afs.d.cts +7 -0
  397. package/dist/scope/resolve-scoped-afs.d.cts.map +1 -0
  398. package/dist/scope/resolve-scoped-afs.d.mts +7 -0
  399. package/dist/scope/resolve-scoped-afs.d.mts.map +1 -0
  400. package/dist/scope/resolve-scoped-afs.mjs +88 -0
  401. package/dist/scope/resolve-scoped-afs.mjs.map +1 -0
  402. package/dist/scope/types.d.cts +25 -0
  403. package/dist/scope/types.d.cts.map +1 -0
  404. package/dist/scope/types.d.mts +25 -0
  405. package/dist/scope/types.d.mts.map +1 -0
  406. package/dist/session/backends.cjs +90 -0
  407. package/dist/session/backends.d.cts +35 -0
  408. package/dist/session/backends.d.cts.map +1 -0
  409. package/dist/session/backends.d.mts +35 -0
  410. package/dist/session/backends.d.mts.map +1 -0
  411. package/dist/session/backends.mjs +89 -0
  412. package/dist/session/backends.mjs.map +1 -0
  413. package/dist/session/replication-resolver.cjs +323 -0
  414. package/dist/session/replication-resolver.d.cts +71 -0
  415. package/dist/session/replication-resolver.d.cts.map +1 -0
  416. package/dist/session/replication-resolver.d.mts +71 -0
  417. package/dist/session/replication-resolver.d.mts.map +1 -0
  418. package/dist/session/replication-resolver.mjs +323 -0
  419. package/dist/session/replication-resolver.mjs.map +1 -0
  420. package/dist/session/role-level.cjs +36 -0
  421. package/dist/session/role-level.d.cts +24 -0
  422. package/dist/session/role-level.d.cts.map +1 -0
  423. package/dist/session/role-level.d.mts +24 -0
  424. package/dist/session/role-level.d.mts.map +1 -0
  425. package/dist/session/role-level.mjs +35 -0
  426. package/dist/session/role-level.mjs.map +1 -0
  427. package/dist/session/session-dir-providers.cjs +254 -0
  428. package/dist/session/session-dir-providers.d.cts +32 -0
  429. package/dist/session/session-dir-providers.d.cts.map +1 -0
  430. package/dist/session/session-dir-providers.d.mts +32 -0
  431. package/dist/session/session-dir-providers.d.mts.map +1 -0
  432. package/dist/session/session-dir-providers.mjs +252 -0
  433. package/dist/session/session-dir-providers.mjs.map +1 -0
  434. package/dist/session/session-id.cjs +20 -0
  435. package/dist/session/session-id.d.cts +15 -0
  436. package/dist/session/session-id.d.cts.map +1 -0
  437. package/dist/session/session-id.d.mts +15 -0
  438. package/dist/session/session-id.d.mts.map +1 -0
  439. package/dist/session/session-id.mjs +20 -0
  440. package/dist/session/session-id.mjs.map +1 -0
  441. package/dist/session/session-user-afs.cjs +899 -0
  442. package/dist/session/session-user-afs.d.cts +296 -0
  443. package/dist/session/session-user-afs.d.cts.map +1 -0
  444. package/dist/session/session-user-afs.d.mts +296 -0
  445. package/dist/session/session-user-afs.d.mts.map +1 -0
  446. package/dist/session/session-user-afs.mjs +896 -0
  447. package/dist/session/session-user-afs.mjs.map +1 -0
  448. package/dist/session/settings-cascade.cjs +69 -0
  449. package/dist/session/settings-cascade.d.cts +81 -0
  450. package/dist/session/settings-cascade.d.cts.map +1 -0
  451. package/dist/session/settings-cascade.d.mts +81 -0
  452. package/dist/session/settings-cascade.d.mts.map +1 -0
  453. package/dist/session/settings-cascade.mjs +69 -0
  454. package/dist/session/settings-cascade.mjs.map +1 -0
  455. package/dist/session/settings-resolver.cjs +770 -0
  456. package/dist/session/settings-resolver.d.cts +177 -0
  457. package/dist/session/settings-resolver.d.cts.map +1 -0
  458. package/dist/session/settings-resolver.d.mts +177 -0
  459. package/dist/session/settings-resolver.d.mts.map +1 -0
  460. package/dist/session/settings-resolver.mjs +771 -0
  461. package/dist/session/settings-resolver.mjs.map +1 -0
  462. package/dist/session/settings-schema-store.cjs +0 -0
  463. package/dist/session/settings-schema-store.d.cts +72 -0
  464. package/dist/session/settings-schema-store.d.cts.map +1 -0
  465. package/dist/session/settings-schema-store.d.mts +72 -0
  466. package/dist/session/settings-schema-store.d.mts.map +1 -0
  467. package/dist/session/settings-schema-store.mjs +0 -0
  468. package/dist/session/settings-schema-store.mjs.map +1 -0
  469. package/dist/system-mounts/index.cjs +14 -0
  470. package/dist/system-mounts/index.d.cts +6 -0
  471. package/dist/system-mounts/index.d.mts +6 -0
  472. package/dist/system-mounts/index.mjs +6 -0
  473. package/dist/system-mounts/install.cjs +101 -0
  474. package/dist/system-mounts/install.d.cts +36 -0
  475. package/dist/system-mounts/install.d.cts.map +1 -0
  476. package/dist/system-mounts/install.d.mts +37 -0
  477. package/dist/system-mounts/install.d.mts.map +1 -0
  478. package/dist/system-mounts/install.mjs +102 -0
  479. package/dist/system-mounts/install.mjs.map +1 -0
  480. package/dist/system-mounts/installers.cjs +247 -0
  481. package/dist/system-mounts/installers.d.cts +13 -0
  482. package/dist/system-mounts/installers.d.cts.map +1 -0
  483. package/dist/system-mounts/installers.d.mts +14 -0
  484. package/dist/system-mounts/installers.d.mts.map +1 -0
  485. package/dist/system-mounts/installers.mjs +244 -0
  486. package/dist/system-mounts/installers.mjs.map +1 -0
  487. package/dist/system-mounts/lists.cjs +122 -0
  488. package/dist/system-mounts/lists.d.cts +34 -0
  489. package/dist/system-mounts/lists.d.cts.map +1 -0
  490. package/dist/system-mounts/lists.d.mts +34 -0
  491. package/dist/system-mounts/lists.d.mts.map +1 -0
  492. package/dist/system-mounts/lists.mjs +122 -0
  493. package/dist/system-mounts/lists.mjs.map +1 -0
  494. package/dist/system-mounts/types.d.cts +124 -0
  495. package/dist/system-mounts/types.d.cts.map +1 -0
  496. package/dist/system-mounts/types.d.mts +125 -0
  497. package/dist/system-mounts/types.d.mts.map +1 -0
  498. package/dist/system-mounts/validate.cjs +56 -0
  499. package/dist/system-mounts/validate.d.cts +34 -0
  500. package/dist/system-mounts/validate.d.cts.map +1 -0
  501. package/dist/system-mounts/validate.d.mts +34 -0
  502. package/dist/system-mounts/validate.d.mts.map +1 -0
  503. package/dist/system-mounts/validate.mjs +56 -0
  504. package/dist/system-mounts/validate.mjs.map +1 -0
  505. package/dist/terminal-llm.cjs +90 -0
  506. package/dist/terminal-llm.d.cts +50 -0
  507. package/dist/terminal-llm.d.cts.map +1 -0
  508. package/dist/terminal-llm.d.mts +50 -0
  509. package/dist/terminal-llm.d.mts.map +1 -0
  510. package/dist/terminal-llm.mjs +90 -0
  511. package/dist/terminal-llm.mjs.map +1 -0
  512. package/dist/terminal-repl.cjs +371 -0
  513. package/dist/terminal-repl.d.cts +69 -0
  514. package/dist/terminal-repl.d.cts.map +1 -0
  515. package/dist/terminal-repl.d.mts +69 -0
  516. package/dist/terminal-repl.d.mts.map +1 -0
  517. package/dist/terminal-repl.mjs +370 -0
  518. package/dist/terminal-repl.mjs.map +1 -0
  519. package/dist/transport/idle-timer.cjs +136 -0
  520. package/dist/transport/idle-timer.d.cts +92 -0
  521. package/dist/transport/idle-timer.d.cts.map +1 -0
  522. package/dist/transport/idle-timer.d.mts +92 -0
  523. package/dist/transport/idle-timer.d.mts.map +1 -0
  524. package/dist/transport/idle-timer.mjs +132 -0
  525. package/dist/transport/idle-timer.mjs.map +1 -0
  526. package/dist/web-component-dsl.cjs +153 -0
  527. package/dist/web-component-dsl.d.cts +27 -0
  528. package/dist/web-component-dsl.d.cts.map +1 -0
  529. package/dist/web-component-dsl.d.mts +27 -0
  530. package/dist/web-component-dsl.d.mts.map +1 -0
  531. package/dist/web-component-dsl.mjs +152 -0
  532. package/dist/web-component-dsl.mjs.map +1 -0
  533. package/package.json +81 -0
@@ -0,0 +1,282 @@
1
+ const require_registry = require('./registry.cjs');
2
+ let ufo = require("ufo");
3
+ let _aigne_afs_did_space = require("@aigne/afs-did-space");
4
+ let _aigne_afs_logger = require("@aigne/afs-logger");
5
+ let _aigne_afs_timing = require("@aigne/afs-timing");
6
+
7
+ //#region src/blocklet/did-space-registry.ts
8
+ /**
9
+ * DID-Space-backed BlockletRegistry — runtime-agnostic engine (#674 v2).
10
+ *
11
+ * Resolves blocklets published to a DID Space via the global resolve table
12
+ * (`resolve/blocklet/<id>` → { owner, path }, written by the did-space provider's
13
+ * blocklet write-hook) and reads their files back through AFS. This lives in
14
+ * @aigne/aos (NOT @aigne/afs-did-space) because it needs `createAfsBlockletReader`
15
+ * + the Blocklet types, and aos already depends on did-space — the reverse
16
+ * dependency would be a cycle. Both runtimes (Node + CF) depend on aos, so this
17
+ * engine is shared: each runtime injects only the two things it does
18
+ * differently — how to read the resolve table and how to open an owner's space.
19
+ *
20
+ * Lookup path:
21
+ * 1. resolver.resolveBlocklet(name) → { owner, path }
22
+ * 2. openUserSpace(owner) → AFS rooted at the owner's whole space
23
+ * 3. createAfsBlockletReader(afs, "/"+path) → file reader for the blocklet
24
+ *
25
+ * The engine is decoupled from any concrete class via two minimal structural
26
+ * interfaces (BlockletResolveSource + the loose BlockletAfsReader): a
27
+ * `DIDSpaceResolver` satisfies the former, a mounted `AFS` the latter.
28
+ */
29
+ /**
30
+ * Publish-time serve bundle for a DID-Space blocklet (#674 Phase 4): small text
31
+ * files inlined so a cold serve reads one object instead of one-per-file. Sits
32
+ * at the blocklet root as the matched partner of the `.blocklet-publish.json`
33
+ * register marker (a distinct name — NOT http-mount's `.afs/bundle.json`, which
34
+ * is a different mechanism / consumer).
35
+ */
36
+ const BLOCKLET_BUNDLE_PATH = ".blocklet-bundle.json";
37
+ const BUNDLE_DECODER = new TextDecoder();
38
+ /** Extract UTF-8 text from an AFS read result's `content` (string | bytes). */
39
+ function decodeAfsText(raw) {
40
+ const content = raw?.content;
41
+ if (typeof content === "string") return content;
42
+ if (content instanceof Uint8Array) return BUNDLE_DECODER.decode(content);
43
+ if (content instanceof ArrayBuffer) return BUNDLE_DECODER.decode(new Uint8Array(content));
44
+ return "";
45
+ }
46
+ /**
47
+ * A BlockletReader backed by a publish-time `.afs/bundle.json` (small text files
48
+ * inlined at publish; see `shouldBundle`) layered over the live per-file AFS
49
+ * reader — the fallback serves large/binary files (not bundled) and blocklets
50
+ * that have no bundle.
51
+ *
52
+ * Why this exists: blocklet serve is one-file-per-request, so a cold isolate's
53
+ * first page load of a many-file blocklet would otherwise do one object read per
54
+ * file. Reading the bundle once serves every small file from memory instead.
55
+ *
56
+ * Why it does NOT go stale (the trap #729 fell into): the reader is memoized per
57
+ * name for the isolate lifetime, but it never freezes content. Every call does a
58
+ * cheap `stat` of the bundle to read its cid (a fresh path→cid index lookup, no
59
+ * object read); the parsed map is memoized by that cid (immutable). An unchanged
60
+ * bundle skips the re-read/re-parse; a re-publish yields a new cid and is picked
61
+ * up on the very next request.
62
+ */
63
+ function createBundleBackedReader(afs, root, fallback) {
64
+ const bundlePath = (0, ufo.joinURL)(root, BLOCKLET_BUNDLE_PATH);
65
+ let memoCid;
66
+ let memoReader;
67
+ async function currentBundle() {
68
+ const rc = (0, _aigne_afs_logger.getRequestScope)();
69
+ const rcKey = `bundle-cid:${bundlePath}`;
70
+ let cid;
71
+ if (rc?.has(rcKey)) cid = rc.get(rcKey);
72
+ else {
73
+ try {
74
+ const meta = (await afs.stat(bundlePath, {
75
+ includeActions: "none",
76
+ noReadFallback: true
77
+ }))?.data?.meta;
78
+ cid = meta?.version ?? meta?.cid;
79
+ } catch {
80
+ cid = void 0;
81
+ }
82
+ rc?.set(rcKey, cid);
83
+ }
84
+ if (!cid) {
85
+ memoCid = void 0;
86
+ memoReader = void 0;
87
+ return;
88
+ }
89
+ if (cid === memoCid && memoReader) return memoReader;
90
+ try {
91
+ memoReader = require_registry.createMapBlockletReader(JSON.parse(decodeAfsText((await afs.read(bundlePath, { includeActions: "none" }))?.data)));
92
+ memoCid = cid;
93
+ return memoReader;
94
+ } catch {
95
+ return;
96
+ }
97
+ }
98
+ const reader = {
99
+ async exists(relPath) {
100
+ const b = await currentBundle();
101
+ if (b && await b.exists(relPath)) return true;
102
+ return fallback.exists(relPath);
103
+ },
104
+ async readText(relPath) {
105
+ const b = await currentBundle();
106
+ if (b) {
107
+ const v = await b.readText(relPath);
108
+ if (v !== void 0) return v;
109
+ }
110
+ return fallback.readText(relPath);
111
+ },
112
+ async readBytes(relPath) {
113
+ const b = await currentBundle();
114
+ if (b) {
115
+ const v = await b.readBytes(relPath);
116
+ if (v !== void 0) return v;
117
+ }
118
+ return fallback.readBytes(relPath);
119
+ },
120
+ async hasDir(relDir) {
121
+ const b = await currentBundle();
122
+ if (b && await b.hasDir(relDir)) return true;
123
+ return fallback.hasDir(relDir);
124
+ },
125
+ async listDir(relDir) {
126
+ const b = await currentBundle();
127
+ const fromBundle = b ? await b.listDir(relDir) : [];
128
+ const fromFallback = await fallback.listDir(relDir);
129
+ return [...new Set([...fromBundle, ...fromFallback])];
130
+ }
131
+ };
132
+ if (fallback.listEntries) reader.listEntries = (relDir) => fallback.listEntries(relDir);
133
+ return reader;
134
+ }
135
+ /**
136
+ * Create a runtime-agnostic DID-Space BlockletRegistry. Positive resolves are
137
+ * cached per-instance; misses are NOT cached, so a newly published blocklet is
138
+ * visible on the next lookup.
139
+ */
140
+ function createDidSpaceBlockletRegistry(deps) {
141
+ const { resolver, openUserSpace } = deps;
142
+ const warn = deps.onWarn ?? (() => {});
143
+ const entryCache = /* @__PURE__ */ new Map();
144
+ async function lookup(name) {
145
+ const cached = entryCache.get(name);
146
+ if (cached !== void 0) return cached;
147
+ const rc = (0, _aigne_afs_logger.getRequestScope)();
148
+ const rcKey = `blocklet-lookup:${name}`;
149
+ if (rc?.has(rcKey)) return rc.get(rcKey);
150
+ const result = await lookupUncached(name);
151
+ rc?.set(rcKey, result);
152
+ return result;
153
+ }
154
+ async function lookupUncached(name) {
155
+ if (resolver.resolveBlockletOrDomain) try {
156
+ const r = await resolver.resolveBlockletOrDomain(name);
157
+ if (!r) return null;
158
+ const result = r.source === "blocklet" ? {
159
+ owner: r.owner,
160
+ path: r.path ?? "",
161
+ canonicalName: name
162
+ } : {
163
+ owner: r.owner,
164
+ path: r.path ?? "",
165
+ canonicalName: (0, _aigne_afs_did_space.normalizeId)(r.did)
166
+ };
167
+ entryCache.set(name, result);
168
+ return result;
169
+ } catch (err) {
170
+ warn(`resolveBlockletOrDomain("${name}") failed: ${err instanceof Error ? err.message : err}`);
171
+ return null;
172
+ }
173
+ try {
174
+ const entry = await resolver.resolveBlocklet(name);
175
+ if (entry?.owner) {
176
+ const result = {
177
+ owner: entry.owner,
178
+ path: entry.path ?? "",
179
+ canonicalName: name
180
+ };
181
+ entryCache.set(name, result);
182
+ return result;
183
+ }
184
+ } catch (err) {
185
+ warn(`resolveBlocklet("${name}") failed: ${err instanceof Error ? err.message : err}`);
186
+ return null;
187
+ }
188
+ if (!resolver.resolveDomain) return null;
189
+ try {
190
+ const domainEntry = await resolver.resolveDomain(name);
191
+ if (!domainEntry?.owner) return null;
192
+ const result = {
193
+ owner: domainEntry.owner,
194
+ path: domainEntry.path ?? "",
195
+ canonicalName: (0, _aigne_afs_did_space.normalizeId)(domainEntry.did)
196
+ };
197
+ entryCache.set(name, result);
198
+ return result;
199
+ } catch (err) {
200
+ warn(`resolveDomain("${name}") failed: ${err instanceof Error ? err.message : err}`);
201
+ return null;
202
+ }
203
+ }
204
+ return {
205
+ source: "remote",
206
+ async list() {
207
+ try {
208
+ return (await resolver.listBlocklets()).map((b) => b.id);
209
+ } catch {
210
+ return [];
211
+ }
212
+ },
213
+ async resolveName(name) {
214
+ return (await lookup(name))?.canonicalName ?? null;
215
+ },
216
+ async reader(name) {
217
+ const entry = await lookup(name);
218
+ if (!entry) return null;
219
+ try {
220
+ const afs = await openUserSpace(entry.owner);
221
+ const root = (0, ufo.joinURL)("/", entry.path);
222
+ return createBundleBackedReader(afs, root, require_registry.createAfsBlockletReader(afs, root));
223
+ } catch (err) {
224
+ warn(`reader("${name}") failed: ${err instanceof Error ? err.message : err}`);
225
+ return null;
226
+ }
227
+ },
228
+ async afsRoot(name) {
229
+ const entry = await lookup(name);
230
+ if (!entry) return null;
231
+ try {
232
+ return {
233
+ afs: await openUserSpace(entry.owner),
234
+ rootPath: (0, ufo.joinURL)("/", entry.path)
235
+ };
236
+ } catch (err) {
237
+ warn(`afsRoot("${name}") failed: ${err instanceof Error ? err.message : err}`);
238
+ return null;
239
+ }
240
+ }
241
+ };
242
+ }
243
+ /**
244
+ * Combine a static-bundle registry with a fallback registry (e.g. DID Space).
245
+ *
246
+ * The static bundle always wins — the fallback is only tried when the static
247
+ * registry returns null/empty. This preserves zero-regression for existing
248
+ * built-in blocklets. Fully generic (composes two BlockletRegistry objects).
249
+ */
250
+ function createCompositeBlockletRegistry(staticRegistry, fallbackRegistry) {
251
+ if (!fallbackRegistry) return staticRegistry;
252
+ return {
253
+ source: "remote",
254
+ async list() {
255
+ const [staticNames, fallbackNames] = await Promise.all([staticRegistry.list(), fallbackRegistry.list()]);
256
+ const seen = new Set(staticNames);
257
+ const merged = [...staticNames];
258
+ for (const name of fallbackNames) if (!seen.has(name)) merged.push(name);
259
+ return merged;
260
+ },
261
+ async resolveName(name) {
262
+ const staticResult = await staticRegistry.resolveName?.(name);
263
+ if (staticResult) return staticResult;
264
+ return fallbackRegistry.resolveName?.(name) ?? null;
265
+ },
266
+ async reader(name) {
267
+ const staticReader = await (0, _aigne_afs_timing.time)("resolve.static", () => staticRegistry.reader(name));
268
+ if (staticReader) return staticReader;
269
+ return (0, _aigne_afs_timing.time)("resolve.didspace", () => fallbackRegistry.reader(name));
270
+ },
271
+ async afsRoot(name) {
272
+ const staticRoot = await staticRegistry.afsRoot?.(name);
273
+ if (staticRoot) return staticRoot;
274
+ return await fallbackRegistry.afsRoot?.(name) ?? null;
275
+ }
276
+ };
277
+ }
278
+
279
+ //#endregion
280
+ exports.BLOCKLET_BUNDLE_PATH = BLOCKLET_BUNDLE_PATH;
281
+ exports.createCompositeBlockletRegistry = createCompositeBlockletRegistry;
282
+ exports.createDidSpaceBlockletRegistry = createDidSpaceBlockletRegistry;
@@ -0,0 +1,82 @@
1
+ import { BlockletAfsReader, BlockletRegistry } from "./registry.cjs";
2
+
3
+ //#region src/blocklet/did-space-registry.d.ts
4
+ /**
5
+ * Publish-time serve bundle for a DID-Space blocklet (#674 Phase 4): small text
6
+ * files inlined so a cold serve reads one object instead of one-per-file. Sits
7
+ * at the blocklet root as the matched partner of the `.blocklet-publish.json`
8
+ * register marker (a distinct name — NOT http-mount's `.afs/bundle.json`, which
9
+ * is a different mechanism / consumer).
10
+ */
11
+ declare const BLOCKLET_BUNDLE_PATH = ".blocklet-bundle.json";
12
+ /**
13
+ * Minimal resolve-table surface the engine needs. `DIDSpaceResolver`
14
+ * (@aigne/afs-did-space) satisfies this structurally — typed here so aos doesn't
15
+ * import the concrete class just for two methods.
16
+ *
17
+ * `resolveDomain` is OPTIONAL (#764 Phase 4b): a custom-domain fallback for
18
+ * `lookup()` when the id-keyed `resolveBlocklet` misses. Optional so any other
19
+ * structural implementer of this interface (e.g. a test fake, or a future
20
+ * resolve-table backend that never grew domain support) degrades gracefully —
21
+ * `lookup()` just skips straight to "not found" instead of throwing.
22
+ */
23
+ interface BlockletResolveSource {
24
+ resolveBlocklet(id: string): Promise<{
25
+ owner?: string;
26
+ path?: string;
27
+ } | null>;
28
+ listBlocklets(): Promise<Array<{
29
+ id: string;
30
+ }>>;
31
+ resolveDomain?(domain: string): Promise<{
32
+ did: string;
33
+ owner: string;
34
+ path: string;
35
+ } | null>;
36
+ /**
37
+ * Optional batched host resolution (issue #808): one backend round trip for
38
+ * BOTH the `resolve/blocklet/<name>` and `resolve/domain/<name>` lookups the
39
+ * sequential `resolveBlocklet` → `resolveDomain` ladder below performs. Blocklet
40
+ * wins (id key), same priority. Preferred when present; absent → the ladder
41
+ * runs (any structural implementer without it still works). `DIDSpaceResolver`
42
+ * satisfies it structurally on both the D1 (CF) and SQLite (Node) stores.
43
+ */
44
+ resolveBlockletOrDomain?(name: string): Promise<{
45
+ source: "blocklet";
46
+ owner: string;
47
+ path: string;
48
+ } | {
49
+ source: "domain";
50
+ owner: string;
51
+ path: string;
52
+ did: string;
53
+ } | null>;
54
+ }
55
+ interface DidSpaceBlockletRegistryDeps {
56
+ /** Global DID Space resolve table (resolve/blocklet/<id> → {owner, path}). */
57
+ resolver: BlockletResolveSource;
58
+ /**
59
+ * Open the whole user-space AFS for a publisher's PLAINTEXT owner DID. The
60
+ * runtime constructs the backend (CloudflareDIDSpace / local) and may cache it.
61
+ */
62
+ openUserSpace: (ownerDid: string) => Promise<BlockletAfsReader> | BlockletAfsReader;
63
+ /** Optional sink for non-fatal failures (resolve/read errors are swallowed). */
64
+ onWarn?: (message: string) => void;
65
+ }
66
+ /**
67
+ * Create a runtime-agnostic DID-Space BlockletRegistry. Positive resolves are
68
+ * cached per-instance; misses are NOT cached, so a newly published blocklet is
69
+ * visible on the next lookup.
70
+ */
71
+ declare function createDidSpaceBlockletRegistry(deps: DidSpaceBlockletRegistryDeps): BlockletRegistry;
72
+ /**
73
+ * Combine a static-bundle registry with a fallback registry (e.g. DID Space).
74
+ *
75
+ * The static bundle always wins — the fallback is only tried when the static
76
+ * registry returns null/empty. This preserves zero-regression for existing
77
+ * built-in blocklets. Fully generic (composes two BlockletRegistry objects).
78
+ */
79
+ declare function createCompositeBlockletRegistry(staticRegistry: BlockletRegistry, fallbackRegistry: BlockletRegistry | null): BlockletRegistry;
80
+ //#endregion
81
+ export { BLOCKLET_BUNDLE_PATH, BlockletResolveSource, DidSpaceBlockletRegistryDeps, createCompositeBlockletRegistry, createDidSpaceBlockletRegistry };
82
+ //# sourceMappingURL=did-space-registry.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-space-registry.d.cts","names":[],"sources":["../../src/blocklet/did-space-registry.ts"],"mappings":";;;;;;;;;;cAyCa,oBAAA;;;;;;;;;;;;UA8II,qBAAA;EACf,eAAA,CAAgB,EAAA,WAAa,OAAA;IAAU,KAAA;IAAgB,IAAA;EAAA;EACvD,aAAA,IAAiB,OAAA,CAAQ,KAAA;IAAQ,EAAA;EAAA;EACjC,aAAA,EAAe,MAAA,WAAiB,OAAA;IAAU,GAAA;IAAa,KAAA;IAAe,IAAA;EAAA;EAoBtE;;;;;;;;EAXA,uBAAA,EACE,IAAA,WACC,OAAA;IACG,MAAA;IAAoB,KAAA;IAAe,IAAA;EAAA;IACnC,MAAA;IAAkB,KAAA;IAAe,IAAA;IAAc,GAAA;EAAA;AAAA;AAAA,UAKtC,4BAAA;EAmKD;EAjKd,QAAA,EAAU,qBAAA;;;;;EAKV,aAAA,GAAgB,QAAA,aAAqB,OAAA,CAAQ,iBAAA,IAAqB,iBAAA;EA+JjD;EA7JjB,MAAA,IAAU,OAAA;AAAA;;;;;;iBAQI,8BAAA,CACd,IAAA,EAAM,4BAAA,GACL,gBAAA;;;;;;;;iBAgJa,+BAAA,CACd,cAAA,EAAgB,gBAAA,EAChB,gBAAA,EAAkB,gBAAA,UACjB,gBAAA"}
@@ -0,0 +1,82 @@
1
+ import { BlockletAfsReader, BlockletRegistry } from "./registry.mjs";
2
+
3
+ //#region src/blocklet/did-space-registry.d.ts
4
+ /**
5
+ * Publish-time serve bundle for a DID-Space blocklet (#674 Phase 4): small text
6
+ * files inlined so a cold serve reads one object instead of one-per-file. Sits
7
+ * at the blocklet root as the matched partner of the `.blocklet-publish.json`
8
+ * register marker (a distinct name — NOT http-mount's `.afs/bundle.json`, which
9
+ * is a different mechanism / consumer).
10
+ */
11
+ declare const BLOCKLET_BUNDLE_PATH = ".blocklet-bundle.json";
12
+ /**
13
+ * Minimal resolve-table surface the engine needs. `DIDSpaceResolver`
14
+ * (@aigne/afs-did-space) satisfies this structurally — typed here so aos doesn't
15
+ * import the concrete class just for two methods.
16
+ *
17
+ * `resolveDomain` is OPTIONAL (#764 Phase 4b): a custom-domain fallback for
18
+ * `lookup()` when the id-keyed `resolveBlocklet` misses. Optional so any other
19
+ * structural implementer of this interface (e.g. a test fake, or a future
20
+ * resolve-table backend that never grew domain support) degrades gracefully —
21
+ * `lookup()` just skips straight to "not found" instead of throwing.
22
+ */
23
+ interface BlockletResolveSource {
24
+ resolveBlocklet(id: string): Promise<{
25
+ owner?: string;
26
+ path?: string;
27
+ } | null>;
28
+ listBlocklets(): Promise<Array<{
29
+ id: string;
30
+ }>>;
31
+ resolveDomain?(domain: string): Promise<{
32
+ did: string;
33
+ owner: string;
34
+ path: string;
35
+ } | null>;
36
+ /**
37
+ * Optional batched host resolution (issue #808): one backend round trip for
38
+ * BOTH the `resolve/blocklet/<name>` and `resolve/domain/<name>` lookups the
39
+ * sequential `resolveBlocklet` → `resolveDomain` ladder below performs. Blocklet
40
+ * wins (id key), same priority. Preferred when present; absent → the ladder
41
+ * runs (any structural implementer without it still works). `DIDSpaceResolver`
42
+ * satisfies it structurally on both the D1 (CF) and SQLite (Node) stores.
43
+ */
44
+ resolveBlockletOrDomain?(name: string): Promise<{
45
+ source: "blocklet";
46
+ owner: string;
47
+ path: string;
48
+ } | {
49
+ source: "domain";
50
+ owner: string;
51
+ path: string;
52
+ did: string;
53
+ } | null>;
54
+ }
55
+ interface DidSpaceBlockletRegistryDeps {
56
+ /** Global DID Space resolve table (resolve/blocklet/<id> → {owner, path}). */
57
+ resolver: BlockletResolveSource;
58
+ /**
59
+ * Open the whole user-space AFS for a publisher's PLAINTEXT owner DID. The
60
+ * runtime constructs the backend (CloudflareDIDSpace / local) and may cache it.
61
+ */
62
+ openUserSpace: (ownerDid: string) => Promise<BlockletAfsReader> | BlockletAfsReader;
63
+ /** Optional sink for non-fatal failures (resolve/read errors are swallowed). */
64
+ onWarn?: (message: string) => void;
65
+ }
66
+ /**
67
+ * Create a runtime-agnostic DID-Space BlockletRegistry. Positive resolves are
68
+ * cached per-instance; misses are NOT cached, so a newly published blocklet is
69
+ * visible on the next lookup.
70
+ */
71
+ declare function createDidSpaceBlockletRegistry(deps: DidSpaceBlockletRegistryDeps): BlockletRegistry;
72
+ /**
73
+ * Combine a static-bundle registry with a fallback registry (e.g. DID Space).
74
+ *
75
+ * The static bundle always wins — the fallback is only tried when the static
76
+ * registry returns null/empty. This preserves zero-regression for existing
77
+ * built-in blocklets. Fully generic (composes two BlockletRegistry objects).
78
+ */
79
+ declare function createCompositeBlockletRegistry(staticRegistry: BlockletRegistry, fallbackRegistry: BlockletRegistry | null): BlockletRegistry;
80
+ //#endregion
81
+ export { BLOCKLET_BUNDLE_PATH, BlockletResolveSource, DidSpaceBlockletRegistryDeps, createCompositeBlockletRegistry, createDidSpaceBlockletRegistry };
82
+ //# sourceMappingURL=did-space-registry.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-space-registry.d.mts","names":[],"sources":["../../src/blocklet/did-space-registry.ts"],"mappings":";;;;;;;;;;cAyCa,oBAAA;;;;;;;;;;;;UA8II,qBAAA;EACf,eAAA,CAAgB,EAAA,WAAa,OAAA;IAAU,KAAA;IAAgB,IAAA;EAAA;EACvD,aAAA,IAAiB,OAAA,CAAQ,KAAA;IAAQ,EAAA;EAAA;EACjC,aAAA,EAAe,MAAA,WAAiB,OAAA;IAAU,GAAA;IAAa,KAAA;IAAe,IAAA;EAAA;EAoBtE;;;;;;;;EAXA,uBAAA,EACE,IAAA,WACC,OAAA;IACG,MAAA;IAAoB,KAAA;IAAe,IAAA;EAAA;IACnC,MAAA;IAAkB,KAAA;IAAe,IAAA;IAAc,GAAA;EAAA;AAAA;AAAA,UAKtC,4BAAA;EAmKD;EAjKd,QAAA,EAAU,qBAAA;;;;;EAKV,aAAA,GAAgB,QAAA,aAAqB,OAAA,CAAQ,iBAAA,IAAqB,iBAAA;EA+JjD;EA7JjB,MAAA,IAAU,OAAA;AAAA;;;;;;iBAQI,8BAAA,CACd,IAAA,EAAM,4BAAA,GACL,gBAAA;;;;;;;;iBAgJa,+BAAA,CACd,cAAA,EAAgB,gBAAA,EAChB,gBAAA,EAAkB,gBAAA,UACjB,gBAAA"}