@plurnk/plurnk-service 1.29.0 → 3.0.0

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 (385) hide show
  1. package/.env.defaults +14 -33
  2. package/INSTALL.md +68 -17
  3. package/README.md +9 -7
  4. package/SPEC.md +503 -741
  5. package/dist/build-info.json +1 -1
  6. package/dist/content/body-preview.d.ts.map +1 -1
  7. package/dist/content/body-preview.js +11 -2
  8. package/dist/content/body-preview.js.map +1 -1
  9. package/dist/content/edit-receipt.d.ts +1 -1
  10. package/dist/content/edit-receipt.d.ts.map +1 -1
  11. package/dist/content/edit-receipt.js +1 -1
  12. package/dist/content/edit-receipt.js.map +1 -1
  13. package/dist/content/line-marker.js +1 -1
  14. package/dist/content/line-marker.js.map +1 -1
  15. package/dist/content/path-mimetype.js +1 -1
  16. package/dist/content/path-mimetype.js.map +1 -1
  17. package/dist/content/read-projector.d.ts.map +1 -1
  18. package/dist/content/read-projector.js +3 -12
  19. package/dist/content/read-projector.js.map +1 -1
  20. package/dist/core/AdministrativeLoop.d.ts +1 -1
  21. package/dist/core/AdministrativeLoop.d.ts.map +1 -1
  22. package/dist/core/AdministrativeLoop.js +2 -6
  23. package/dist/core/AdministrativeLoop.js.map +1 -1
  24. package/dist/core/AdmittedTurnExecutor.d.ts +4 -3
  25. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  26. package/dist/core/AdmittedTurnExecutor.js +19 -17
  27. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  28. package/dist/core/BareBatchRunner.d.ts +2 -2
  29. package/dist/core/BareBatchRunner.d.ts.map +1 -1
  30. package/dist/core/BareBatchRunner.js.map +1 -1
  31. package/dist/core/BudgetReadout.d.ts +1 -0
  32. package/dist/core/BudgetReadout.d.ts.map +1 -1
  33. package/dist/core/BudgetReadout.js +12 -0
  34. package/dist/core/BudgetReadout.js.map +1 -1
  35. package/dist/core/CapabilityPolicies.d.ts +2 -4
  36. package/dist/core/CapabilityPolicies.d.ts.map +1 -1
  37. package/dist/core/CapabilityPolicies.js +3 -23
  38. package/dist/core/CapabilityPolicies.js.map +1 -1
  39. package/dist/core/CapabilityResolver.d.ts +9 -2
  40. package/dist/core/CapabilityResolver.d.ts.map +1 -1
  41. package/dist/core/CapabilityResolver.js +34 -5
  42. package/dist/core/CapabilityResolver.js.map +1 -1
  43. package/dist/core/ChannelWrite.d.ts +0 -2
  44. package/dist/core/ChannelWrite.d.ts.map +1 -1
  45. package/dist/core/ChannelWrite.js.map +1 -1
  46. package/dist/core/ClientInteractions.d.ts +3 -2
  47. package/dist/core/ClientInteractions.d.ts.map +1 -1
  48. package/dist/core/ClientInteractions.js +21 -12
  49. package/dist/core/ClientInteractions.js.map +1 -1
  50. package/dist/core/ClientInteractions.sql +8 -2
  51. package/dist/core/CoreSchemeServices.d.ts +1 -0
  52. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  53. package/dist/core/CoreSchemeServices.js +1 -0
  54. package/dist/core/CoreSchemeServices.js.map +1 -1
  55. package/dist/core/DataStatementRunner.js +1 -1
  56. package/dist/core/DataStatementRunner.js.map +1 -1
  57. package/dist/core/Dispatcher.d.ts +3 -2
  58. package/dist/core/Dispatcher.d.ts.map +1 -1
  59. package/dist/core/Dispatcher.js +15 -21
  60. package/dist/core/Dispatcher.js.map +1 -1
  61. package/dist/core/Engine.d.ts +2 -2
  62. package/dist/core/Engine.d.ts.map +1 -1
  63. package/dist/core/Engine.js +4 -3
  64. package/dist/core/Engine.js.map +1 -1
  65. package/dist/core/EnvFlags.d.ts.map +1 -1
  66. package/dist/core/EnvFlags.js +4 -3
  67. package/dist/core/EnvFlags.js.map +1 -1
  68. package/dist/core/ExecutorRegistry.d.ts +3 -17
  69. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  70. package/dist/core/ExecutorRegistry.js +6 -6
  71. package/dist/core/ExecutorRegistry.js.map +1 -1
  72. package/dist/core/FabricatedLog.js +1 -1
  73. package/dist/core/FabricatedLog.js.map +1 -1
  74. package/dist/core/HostPaths.d.ts +2 -1
  75. package/dist/core/HostPaths.d.ts.map +1 -1
  76. package/dist/core/HostPaths.js +14 -2
  77. package/dist/core/HostPaths.js.map +1 -1
  78. package/dist/core/KillHandler.js +1 -1
  79. package/dist/core/KillHandler.js.map +1 -1
  80. package/dist/core/LogVisibility.d.ts.map +1 -1
  81. package/dist/core/LogVisibility.js +8 -17
  82. package/dist/core/LogVisibility.js.map +1 -1
  83. package/dist/core/LoopDriver.d.ts.map +1 -1
  84. package/dist/core/LoopDriver.js +4 -6
  85. package/dist/core/LoopDriver.js.map +1 -1
  86. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  87. package/dist/core/LoopLifecycle.js +4 -9
  88. package/dist/core/LoopLifecycle.js.map +1 -1
  89. package/dist/core/LoopLifecycle.sql +6 -6
  90. package/dist/core/OperatorConfig.d.ts +1 -0
  91. package/dist/core/OperatorConfig.d.ts.map +1 -1
  92. package/dist/core/OperatorConfig.js +10 -2
  93. package/dist/core/OperatorConfig.js.map +1 -1
  94. package/dist/core/PacketBuilder.d.ts +5 -7
  95. package/dist/core/PacketBuilder.d.ts.map +1 -1
  96. package/dist/core/PacketBuilder.js +49 -119
  97. package/dist/core/PacketBuilder.js.map +1 -1
  98. package/dist/core/PacketBuilder.sql +15 -0
  99. package/dist/core/ProposalLifecycle.d.ts +1 -1
  100. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  101. package/dist/core/ProposalLifecycle.js +18 -20
  102. package/dist/core/ProposalLifecycle.js.map +1 -1
  103. package/dist/core/ProposalPolicies.d.ts +6 -0
  104. package/dist/core/ProposalPolicies.d.ts.map +1 -0
  105. package/dist/core/ProposalPolicies.js +28 -0
  106. package/dist/core/ProposalPolicies.js.map +1 -0
  107. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  108. package/dist/core/ProviderInstantiate.js +3 -4
  109. package/dist/core/ProviderInstantiate.js.map +1 -1
  110. package/dist/core/ResourceSelector.js +2 -2
  111. package/dist/core/ResourceSelector.js.map +1 -1
  112. package/dist/core/ResourceTransfers.js +3 -3
  113. package/dist/core/ResourceTransfers.js.map +1 -1
  114. package/dist/core/RuntimeWorker.sql +1 -2
  115. package/dist/core/SchemeRegistry.d.ts +5 -4
  116. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  117. package/dist/core/SchemeRegistry.js +11 -12
  118. package/dist/core/SchemeRegistry.js.map +1 -1
  119. package/dist/core/ToolInputSchema.d.ts +1 -0
  120. package/dist/core/ToolInputSchema.d.ts.map +1 -1
  121. package/dist/core/ToolInputSchema.js +8 -2
  122. package/dist/core/ToolInputSchema.js.map +1 -1
  123. package/dist/core/ToolResources.d.ts +1 -0
  124. package/dist/core/ToolResources.d.ts.map +1 -1
  125. package/dist/core/ToolResources.js +12 -6
  126. package/dist/core/ToolResources.js.map +1 -1
  127. package/dist/core/Turn.js +1 -1
  128. package/dist/core/Turn.js.map +1 -1
  129. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  130. package/dist/core/TurnDispositionHandler.js +1 -7
  131. package/dist/core/TurnDispositionHandler.js.map +1 -1
  132. package/dist/core/TurnMaterialization.js +1 -1
  133. package/dist/core/TurnMaterialization.js.map +1 -1
  134. package/dist/core/TurnOps.d.ts +1 -1
  135. package/dist/core/TurnOps.d.ts.map +1 -1
  136. package/dist/core/TurnOps.js +4 -12
  137. package/dist/core/TurnOps.js.map +1 -1
  138. package/dist/core/TurnRunner.d.ts +1 -2
  139. package/dist/core/TurnRunner.d.ts.map +1 -1
  140. package/dist/core/TurnRunner.js +85 -81
  141. package/dist/core/TurnRunner.js.map +1 -1
  142. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  143. package/dist/core/WorkerControlHandler.js +1 -8
  144. package/dist/core/WorkerControlHandler.js.map +1 -1
  145. package/dist/core/WorkerName.d.ts +1 -0
  146. package/dist/core/WorkerName.d.ts.map +1 -1
  147. package/dist/core/WorkerName.js +2 -0
  148. package/dist/core/WorkerName.js.map +1 -1
  149. package/dist/core/WorkerName.sql +2 -2
  150. package/dist/core/WorkerOwners.d.ts +13 -0
  151. package/dist/core/WorkerOwners.d.ts.map +1 -0
  152. package/dist/core/WorkerOwners.js +44 -0
  153. package/dist/core/WorkerOwners.js.map +1 -0
  154. package/dist/core/WorkerOwners.sql +55 -0
  155. package/dist/core/caps/DbNotifyCaps.js +2 -2
  156. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  157. package/dist/core/caps/DbProjectionCaps.js +1 -1
  158. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  159. package/dist/core/env-catalog.d.ts +3 -0
  160. package/dist/core/env-catalog.d.ts.map +1 -1
  161. package/dist/core/env-catalog.js +44 -9
  162. package/dist/core/env-catalog.js.map +1 -1
  163. package/dist/core/env-defaults.d.ts +2 -1
  164. package/dist/core/env-defaults.d.ts.map +1 -1
  165. package/dist/core/env-defaults.js +17 -9
  166. package/dist/core/env-defaults.js.map +1 -1
  167. package/dist/core/fork.sql +3 -4
  168. package/dist/core/packet-inject.js +0 -2
  169. package/dist/core/packet-inject.js.map +1 -1
  170. package/dist/core/packet-wire.d.ts +2 -11
  171. package/dist/core/packet-wire.d.ts.map +1 -1
  172. package/dist/core/packet-wire.js +31 -111
  173. package/dist/core/packet-wire.js.map +1 -1
  174. package/dist/core/plurnk-uri.d.ts +1 -1
  175. package/dist/core/plurnk-uri.d.ts.map +1 -1
  176. package/dist/core/plurnk-uri.js +4 -4
  177. package/dist/core/plurnk-uri.js.map +1 -1
  178. package/dist/core/scheme-types.d.ts +2 -1
  179. package/dist/core/scheme-types.d.ts.map +1 -1
  180. package/dist/core/types.d.ts +0 -1
  181. package/dist/core/types.d.ts.map +1 -1
  182. package/dist/core/unregistered-scheme.d.ts +1 -3
  183. package/dist/core/unregistered-scheme.d.ts.map +1 -1
  184. package/dist/core/unregistered-scheme.js +3 -11
  185. package/dist/core/unregistered-scheme.js.map +1 -1
  186. package/dist/evidence/EvidenceReader.d.ts +14 -0
  187. package/dist/evidence/EvidenceReader.d.ts.map +1 -0
  188. package/dist/evidence/EvidenceReader.js +137 -0
  189. package/dist/evidence/EvidenceReader.js.map +1 -0
  190. package/dist/{digest → evidence}/digest.sql +1 -2
  191. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  192. package/dist/schemes/EffectPolicy.js +1 -10
  193. package/dist/schemes/EffectPolicy.js.map +1 -1
  194. package/dist/schemes/Exec.d.ts.map +1 -1
  195. package/dist/schemes/Exec.js +19 -26
  196. package/dist/schemes/Exec.js.map +1 -1
  197. package/dist/schemes/ExecOutputScheme.d.ts +1 -1
  198. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  199. package/dist/schemes/File.d.ts.map +1 -1
  200. package/dist/schemes/File.js +11 -17
  201. package/dist/schemes/File.js.map +1 -1
  202. package/dist/schemes/Log.d.ts.map +1 -1
  203. package/dist/schemes/Log.js +14 -11
  204. package/dist/schemes/Log.js.map +1 -1
  205. package/dist/schemes/QuestionTool.d.ts.map +1 -1
  206. package/dist/schemes/QuestionTool.js +1 -3
  207. package/dist/schemes/QuestionTool.js.map +1 -1
  208. package/dist/schemes/{Skill.d.ts → ResourceTreeScheme.d.ts} +5 -6
  209. package/dist/schemes/ResourceTreeScheme.d.ts.map +1 -0
  210. package/dist/schemes/{Skill.js → ResourceTreeScheme.js} +63 -43
  211. package/dist/schemes/ResourceTreeScheme.js.map +1 -0
  212. package/dist/schemes/Worker.d.ts.map +1 -1
  213. package/dist/schemes/Worker.js +7 -9
  214. package/dist/schemes/Worker.js.map +1 -1
  215. package/dist/schemes/_entry-crud.sql +1 -1
  216. package/dist/schemes/_entry-find.js +2 -2
  217. package/dist/schemes/_entry-find.js.map +1 -1
  218. package/dist/schemes/_entry-find.sql +1 -1
  219. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  220. package/dist/schemes/_entry-fts.js +3 -9
  221. package/dist/schemes/_entry-fts.js.map +1 -1
  222. package/dist/schemes/_entry-manifest.js +1 -1
  223. package/dist/schemes/_entry-manifest.js.map +1 -1
  224. package/dist/schemes/_entry-ops.js +1 -1
  225. package/dist/schemes/_entry-ops.js.map +1 -1
  226. package/dist/server/AgentRoots.d.ts +2 -1
  227. package/dist/server/AgentRoots.d.ts.map +1 -1
  228. package/dist/server/AgentRoots.js +13 -10
  229. package/dist/server/AgentRoots.js.map +1 -1
  230. package/dist/server/ConfigurationDiagnostics.d.ts +5 -3
  231. package/dist/server/ConfigurationDiagnostics.d.ts.map +1 -1
  232. package/dist/server/ConfigurationDiagnostics.js +24 -8
  233. package/dist/server/ConfigurationDiagnostics.js.map +1 -1
  234. package/dist/server/Daemon.d.ts +25 -16
  235. package/dist/server/Daemon.d.ts.map +1 -1
  236. package/dist/server/Daemon.js +137 -96
  237. package/dist/server/Daemon.js.map +1 -1
  238. package/dist/server/DrainSupervisor.d.ts +1 -4
  239. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  240. package/dist/server/DrainSupervisor.js +1 -11
  241. package/dist/server/DrainSupervisor.js.map +1 -1
  242. package/dist/server/EnvFunctionality.d.ts +3 -5
  243. package/dist/server/EnvFunctionality.d.ts.map +1 -1
  244. package/dist/server/EnvFunctionality.js +5 -7
  245. package/dist/server/EnvFunctionality.js.map +1 -1
  246. package/dist/server/Functionality.d.ts +3 -2
  247. package/dist/server/Functionality.d.ts.map +1 -1
  248. package/dist/server/Functionality.js +43 -14
  249. package/dist/server/Functionality.js.map +1 -1
  250. package/dist/server/FunctionalityManager.d.ts +3 -4
  251. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  252. package/dist/server/FunctionalityManager.js +17 -9
  253. package/dist/server/FunctionalityManager.js.map +1 -1
  254. package/dist/server/HttpListener.d.ts +2 -0
  255. package/dist/server/HttpListener.d.ts.map +1 -1
  256. package/dist/server/HttpListener.js +23 -9
  257. package/dist/server/HttpListener.js.map +1 -1
  258. package/dist/server/MembersFunctionality.d.ts +2 -5
  259. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  260. package/dist/server/MembersFunctionality.js +5 -3
  261. package/dist/server/MembersFunctionality.js.map +1 -1
  262. package/dist/server/ModuleHost.d.ts +33 -0
  263. package/dist/server/ModuleHost.d.ts.map +1 -0
  264. package/dist/server/ModuleHost.js +2 -0
  265. package/dist/server/ModuleHost.js.map +1 -0
  266. package/dist/server/PlurnkSkill.d.ts.map +1 -1
  267. package/dist/server/PlurnkSkill.js +54 -6
  268. package/dist/server/PlurnkSkill.js.map +1 -1
  269. package/dist/server/ServiceModules.d.ts +0 -2
  270. package/dist/server/ServiceModules.d.ts.map +1 -1
  271. package/dist/server/ServiceModules.js +5 -9
  272. package/dist/server/ServiceModules.js.map +1 -1
  273. package/dist/server/WorkspacePlugins.d.ts +2 -11
  274. package/dist/server/WorkspacePlugins.d.ts.map +1 -1
  275. package/dist/server/WorkspacePlugins.js.map +1 -1
  276. package/dist/server/WorkspaceResidency.d.ts +2 -1
  277. package/dist/server/WorkspaceResidency.d.ts.map +1 -1
  278. package/dist/server/WorkspaceStorage.d.ts.map +1 -1
  279. package/dist/server/WorkspaceStorage.js +7 -4
  280. package/dist/server/WorkspaceStorage.js.map +1 -1
  281. package/dist/server/client-input.d.ts +1 -2
  282. package/dist/server/client-input.d.ts.map +1 -1
  283. package/dist/server/client-input.js +2 -13
  284. package/dist/server/client-input.js.map +1 -1
  285. package/dist/server/dispatch-as-plurnk.js +1 -1
  286. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  287. package/dist/server/drain.sql +6 -6
  288. package/dist/server/envelope.d.ts +2 -1
  289. package/dist/server/envelope.d.ts.map +1 -1
  290. package/dist/server/envelope.js +7 -17
  291. package/dist/server/envelope.js.map +1 -1
  292. package/dist/server/envelope.sql +5 -5
  293. package/dist/server/module-discovery.d.ts +11 -3
  294. package/dist/server/module-discovery.d.ts.map +1 -1
  295. package/dist/server/module-discovery.js +32 -18
  296. package/dist/server/module-discovery.js.map +1 -1
  297. package/dist/server/seam-proposal-list.sql +6 -4
  298. package/dist/service.d.ts.map +1 -1
  299. package/dist/service.js +58 -65
  300. package/dist/service.js.map +1 -1
  301. package/migrations/003_loops.sql +2 -2
  302. package/migrations/006_log.sql +1 -1
  303. package/migrations/016_selection_statements.sql +44 -0
  304. package/migrations/017_skills_module.sql +6 -0
  305. package/migrations/018_worker_owners.sql +102 -0
  306. package/migrations/019_interactive_owners.sql +6 -0
  307. package/migrations/020_log_projection.sql +143 -0
  308. package/package.json +71 -76
  309. package/dist/core/EmissionHead.d.ts +0 -8
  310. package/dist/core/EmissionHead.d.ts.map +0 -1
  311. package/dist/core/EmissionHead.js +0 -29
  312. package/dist/core/EmissionHead.js.map +0 -1
  313. package/dist/core/LegacyHome.d.ts +0 -10
  314. package/dist/core/LegacyHome.d.ts.map +0 -1
  315. package/dist/core/LegacyHome.js +0 -170
  316. package/dist/core/LegacyHome.js.map +0 -1
  317. package/dist/core/LoopPolicies.d.ts +0 -7
  318. package/dist/core/LoopPolicies.d.ts.map +0 -1
  319. package/dist/core/LoopPolicies.js +0 -42
  320. package/dist/core/LoopPolicies.js.map +0 -1
  321. package/dist/core/LoopPolicyReader.d.ts +0 -7
  322. package/dist/core/LoopPolicyReader.d.ts.map +0 -1
  323. package/dist/core/LoopPolicyReader.js +0 -33
  324. package/dist/core/LoopPolicyReader.js.map +0 -1
  325. package/dist/core/LoopPolicyReader.sql +0 -6
  326. package/dist/core/operation-target-groups.d.ts +0 -3
  327. package/dist/core/operation-target-groups.d.ts.map +0 -1
  328. package/dist/core/operation-target-groups.js +0 -77
  329. package/dist/core/operation-target-groups.js.map +0 -1
  330. package/dist/digest/Digest.d.ts +0 -10
  331. package/dist/digest/Digest.d.ts.map +0 -1
  332. package/dist/digest/Digest.js +0 -252
  333. package/dist/digest/Digest.js.map +0 -1
  334. package/dist/digest/DigestEvidence.d.ts +0 -11
  335. package/dist/digest/DigestEvidence.d.ts.map +0 -1
  336. package/dist/digest/DigestEvidence.js +0 -66
  337. package/dist/digest/DigestEvidence.js.map +0 -1
  338. package/dist/digest/DigestRender.d.ts +0 -18
  339. package/dist/digest/DigestRender.d.ts.map +0 -1
  340. package/dist/digest/DigestRender.js +0 -1044
  341. package/dist/digest/DigestRender.js.map +0 -1
  342. package/dist/digest/DigestRequiem.d.ts +0 -13
  343. package/dist/digest/DigestRequiem.d.ts.map +0 -1
  344. package/dist/digest/DigestRequiem.js +0 -337
  345. package/dist/digest/DigestRequiem.js.map +0 -1
  346. package/dist/digest/digest-db.d.ts +0 -3
  347. package/dist/digest/digest-db.d.ts.map +0 -1
  348. package/dist/digest/digest-db.js +0 -68
  349. package/dist/digest/digest-db.js.map +0 -1
  350. package/dist/digest/digest-paths.d.ts +0 -6
  351. package/dist/digest/digest-paths.d.ts.map +0 -1
  352. package/dist/digest/digest-paths.js +0 -14
  353. package/dist/digest/digest-paths.js.map +0 -1
  354. package/dist/digest/digest-rows.d.ts +0 -346
  355. package/dist/digest/digest-rows.d.ts.map +0 -1
  356. package/dist/digest/digest-rows.js +0 -2
  357. package/dist/digest/digest-rows.js.map +0 -1
  358. package/dist/index.d.ts +0 -15
  359. package/dist/index.d.ts.map +0 -1
  360. package/dist/index.js +0 -23
  361. package/dist/index.js.map +0 -1
  362. package/dist/schemes/Skill.d.ts.map +0 -1
  363. package/dist/schemes/Skill.js.map +0 -1
  364. package/dist/server/DaemonModule.d.ts +0 -101
  365. package/dist/server/DaemonModule.d.ts.map +0 -1
  366. package/dist/server/DaemonModule.js +0 -2
  367. package/dist/server/DaemonModule.js.map +0 -1
  368. package/dist/server/SkillSource.d.ts +0 -37
  369. package/dist/server/SkillSource.d.ts.map +0 -1
  370. package/dist/server/SkillSource.js +0 -267
  371. package/dist/server/SkillSource.js.map +0 -1
  372. package/dist/server/SkillsFunctionality.d.ts +0 -45
  373. package/dist/server/SkillsFunctionality.d.ts.map +0 -1
  374. package/dist/server/SkillsFunctionality.js +0 -405
  375. package/dist/server/SkillsFunctionality.js.map +0 -1
  376. package/dist/server/skills-problems.d.ts +0 -8
  377. package/dist/server/skills-problems.d.ts.map +0 -1
  378. package/dist/server/skills-problems.js +0 -18
  379. package/dist/server/skills-problems.js.map +0 -1
  380. package/dist/share/Share.d.ts +0 -15
  381. package/dist/share/Share.d.ts.map +0 -1
  382. package/dist/share/Share.js +0 -106
  383. package/dist/share/Share.js.map +0 -1
  384. package/dist/share/share.sql +0 -6
  385. package/docs/skills.md +0 -73
@@ -1,14 +1,15 @@
1
1
  // {§http-host} — the daemon's one HTTP listener. Core binds it before it admits durable state
2
2
  // ({§startup-listener-admission}); exterior adapters mount routes on it at start() and never open
3
- // a socket of their own (#641). Until a root ("/") is mounted nothing has admitted the client
4
- // interface, so every request is answered 503; after that each request goes to the longest
5
- // mounted prefix, and the root receives whatever nothing more specific claimed.
3
+ // a socket of their own (#641). Until the daemon admits it, after every module has started
4
+ // ({§module-http-mounts}), every request is answered 503; after that each request goes to the
5
+ // longest mounted prefix, or receives 404 when no mounted prefix claims it.
6
6
  import { createServer } from "node:http";
7
7
  import { Problems } from "@plurnk/plurnk-contracts";
8
8
  export default class HttpListener {
9
9
  #server;
10
10
  #host;
11
11
  #mounts = [];
12
+ #admitted = false;
12
13
  #closing = null;
13
14
  constructor(host) {
14
15
  this.#host = host;
@@ -41,16 +42,23 @@ export default class HttpListener {
41
42
  }
42
43
  // A prefix is an absolute pathname. "/" is the root and receives what nothing longer claims;
43
44
  // any other prefix claims itself and the subtree beneath it, never a longer sibling name.
44
- registerHttpRoute(prefix, handler) {
45
+ static isPrefix(prefix) {
45
46
  const absolute = prefix.startsWith("/") && !prefix.includes("?") && !prefix.includes("#");
46
- if (!absolute || (prefix.length > 1 && prefix.endsWith("/"))) {
47
+ return absolute && !(prefix.length > 1 && prefix.endsWith("/"));
48
+ }
49
+ registerHttpRoute(prefix, handler) {
50
+ if (!HttpListener.isPrefix(prefix))
47
51
  throw new Error(`http listener: '${prefix}' is not an absolute pathname prefix`);
48
- }
49
52
  if (this.#mounts.some((mount) => mount.prefix === prefix)) {
50
53
  throw new Error(`http listener: '${prefix}' is already mounted`);
51
54
  }
52
55
  this.#mounts = [...this.#mounts, { prefix, handler }].toSorted((a, b) => b.prefix.length - a.prefix.length);
53
56
  }
57
+ // {§module-http-mounts} — the daemon admits the listener once every module has started, so
58
+ // readiness never depends on the order modules mounted in.
59
+ admit() {
60
+ this.#admitted = true;
61
+ }
54
62
  async close() {
55
63
  this.#closing ??= new Promise((resolve, reject) => {
56
64
  this.#server.close((cause) => (cause === undefined ? resolve() : reject(cause)));
@@ -66,11 +74,17 @@ export default class HttpListener {
66
74
  }
67
75
  async #dispatch(req, res) {
68
76
  const pathname = new URL(req.url ?? "/", "http://listener").pathname;
77
+ if (!this.#admitted) {
78
+ // The daemon has not admitted its client interface. A request that arrives in that
79
+ // window is told to come back, not that the address is wrong.
80
+ const problem = Problems.create("http", "service-starting", 503, "The PLURNK service owns this listener but has not admitted its client interface yet.", { stage: "startup", retryable: true });
81
+ res.writeHead(problem.status, { "content-type": "application/problem+json" });
82
+ res.end(JSON.stringify(problem));
83
+ return;
84
+ }
69
85
  const handler = this.#route(pathname);
70
86
  if (handler === null) {
71
- // No root is mounted: the service has not admitted its client interface. A request that
72
- // arrives in that window is told to come back, not that the address is wrong.
73
- const problem = Problems.create("http", "service-starting", 503, "The PLURNK service owns this listener but has not admitted its client interface yet.", { stage: "startup", retryable: true });
87
+ const problem = Problems.create("http", "route-not-found", 404, "The requested HTTP route does not exist.", { stage: "routing", retryable: false });
74
88
  res.writeHead(problem.status, { "content-type": "application/problem+json" });
75
89
  res.end(JSON.stringify(problem));
76
90
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"HttpListener.js","sourceRoot":"","sources":["../../src/server/HttpListener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpListener.js","sourceRoot":"","sources":["../../src/server/HttpListener.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { Db } from "../core/Db.ts";
3
3
  import type Engine from "../core/Engine.ts";
4
4
  import { type FileCreateScope } from "../core/file-creation-policy.ts";
5
5
  import type { FunctionalityCaller, FunctionalityDefinitionSource, FunctionalityPreparation, FunctionalityPrepared, FunctionalityServiceDefinition, WorkspaceCapabilityIdentity } from "@plurnk/plurnk-contracts";
6
- import type { FunctionalityAdapter } from "./DaemonModule.ts";
6
+ import type { FunctionalityAdapter, FunctionalityDiscovery } from "@plurnk/plurnk-modules";
7
7
  export declare const aliasOf: (glob: string) => string;
8
8
  export declare const serviceMembers: (environ?: NodeJS.ProcessEnv) => FunctionalityServiceDefinition[];
9
9
  export declare const modelScope: (environ?: NodeJS.ProcessEnv) => FileCreateScope;
@@ -20,10 +20,7 @@ export default class MembersFunctionality implements FunctionalityAdapter {
20
20
  };
21
21
  };
22
22
  readonly docsDir: string;
23
- readonly discovery: {
24
- signature: string;
25
- details: string;
26
- };
23
+ readonly discovery: FunctionalityDiscovery;
27
24
  constructor({ db, engine, environ }: {
28
25
  db: Db;
29
26
  engine: () => Engine;
@@ -1 +1 @@
1
- {"version":3,"file":"MembersFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"AASA,OAAO,EAAa,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACpI,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAA2B,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAK3F,OAAO,KAAK,EACR,mBAAmB,EACnB,6BAA6B,EAE7B,wBAAwB,EACxB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACR,oBAAoB,EACvB,MAAM,mBAAmB,CAAC;AAiE3B,eAAO,MAAM,OAAO,SAAU,MAAM,KAAG,MAItC,CAAC;AAGF,eAAO,MAAM,cAAc,aAAa,MAAM,CAAC,UAAU,KAAiB,8BAA8B,EAavG,CAAC;AAIF,eAAO,MAAM,UAAU,aAAa,MAAM,CAAC,UAAU,KAAiB,eACX,CAAC;AAmE5D,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,oBAAoB;;IACrE,QAAQ,CAAC,MAAM,aAAkB;IACjC,QAAQ,CAAC,cAAc,iCAAiB;IACxC,QAAQ,CAAC,OAAO,4BAA4B;IAC5C,QAAQ,CAAC,gBAAgB,aAAc;IACvC,QAAQ,CAAC,OAAO;QAAK,KAAK;QAAU,UAAU;YAAI,IAAI;;MAAgB;IACtE,QAAQ,CAAC,OAAO,SAAqB;IACrC,QAAQ,CAAC,SAAS;QACd,SAAS;QACT,OAAO;MACT;IAKF,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,OAAqB,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE,EAI/G;IAEK,SAAS,IAAI,OAAO,CAAC,SAAS,8BAA8B,EAAE,CAAC,CAEpE;IAIK,QAAQ,CAAC,KAAK,EAAE,0BAA0B,EAAE,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC,CAanI;IA6CK,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,GAAE,mBAA8B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAoCjJ;IAMK,OAAO,CAAC,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBnF;IAEK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;CA2BJ"}
1
+ {"version":3,"file":"MembersFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"AASA,OAAO,EAAa,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACpI,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAA2B,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAK3F,OAAO,KAAK,EACR,mBAAmB,EACnB,6BAA6B,EAE7B,wBAAwB,EACxB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAiE3F,eAAO,MAAM,OAAO,SAAU,MAAM,KAAG,MAItC,CAAC;AAGF,eAAO,MAAM,cAAc,aAAa,MAAM,CAAC,UAAU,KAAiB,8BAA8B,EAavG,CAAC;AAIF,eAAO,MAAM,UAAU,aAAa,MAAM,CAAC,UAAU,KAAiB,eACX,CAAC;AAmE5D,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,oBAAoB;;IACrE,QAAQ,CAAC,MAAM,aAAkB;IACjC,QAAQ,CAAC,cAAc,iCAAiB;IACxC,QAAQ,CAAC,OAAO,4BAA4B;IAC5C,QAAQ,CAAC,gBAAgB,aAAc;IACvC,QAAQ,CAAC,OAAO;QAAK,KAAK;QAAU,UAAU;YAAI,IAAI;;MAAgB;IACtE,QAAQ,CAAC,OAAO,SAAqB;IACrC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAGxC;IAKF,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,OAAqB,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE,EAI/G;IAEK,SAAS,IAAI,OAAO,CAAC,SAAS,8BAA8B,EAAE,CAAC,CAEpE;IAIK,QAAQ,CAAC,KAAK,EAAE,0BAA0B,EAAE,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC,CAenI;IA6CK,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,GAAE,mBAA8B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAoCjJ;IAMK,OAAO,CAAC,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBnF;IAEK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;CA2BJ"}
@@ -140,7 +140,7 @@ export default class MembersFunctionality {
140
140
  example = { alias: "docs", definition: { glob: "docs/**" } };
141
141
  docsDir = Paths.packageRoot;
142
142
  discovery = {
143
- signature: '{"query": string}',
143
+ inputs: ["query"],
144
144
  details: "A path answers why it is or is not visible — tracked, included by which pattern, a creation record, excluded by which `!glob`, ignored, untracked, or absent. A glob (or `!glob`) previews what `add` would include or exclude. Names only; nothing is added.",
145
145
  };
146
146
  #db;
@@ -157,10 +157,12 @@ export default class MembersFunctionality {
157
157
  // Introspection, never a catalog: a path answers why it is or is not visible; a glob previews
158
158
  // what `add` would resolve to. Names only, never content.
159
159
  async discover(query, identity) {
160
- const raw = typeof query.query === "string" ? query.query : typeof query.source === "string" ? query.source : "";
160
+ const raw = query.query;
161
161
  const glob = raw.trim();
162
162
  if (patternOf(glob).length === 0) {
163
- throw refuse("query-required", 400, "discover takes a path or a glob.", { recovery: "Supply { \"query\": \"<path or glob>\" }." });
163
+ throw refuse("query-invalid", 400, `'${raw}' names no path or pattern.`, {
164
+ recovery: "Supply a path such as `docs/guide.md` or a pattern such as `docs/**`.",
165
+ });
164
166
  }
165
167
  const overlay = await GitMembership.resolveOverlay(this.#db, identity.workspaceId, undefined, undefined);
166
168
  if (overlay === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"MembersFunctionality.js","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MembersFunctionality.js","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { WorkspacePluginsSeam } from "@plurnk/plurnk-agent-plugins";
2
+ import type { ProvidedSkillsSeam } from "@plurnk/plurnk-agent-skills";
3
+ import type { WorkspaceCapabilityGate, WorkspaceCapabilityIdentity } from "@plurnk/plurnk-contracts";
4
+ import type { RuntimeRegistration } from "@plurnk/plurnk-execs";
5
+ import type { FunctionalityAdapter, FunctionalitySeam, ModuleSetupSeam } from "@plurnk/plurnk-modules";
6
+ import type { RuntimeSchemeFacet, SchemeRegistrationSeam, ResourceTreeRegistrationSeam } from "@plurnk/plurnk-schemes";
7
+ import type { AgentRootScope } from "./AgentRoots.ts";
8
+ export type HostFunctionalityAdapter = FunctionalityAdapter<RuntimeRegistration, RuntimeSchemeFacet>;
9
+ interface WorkspaceCapabilityContext extends WorkspaceCapabilityIdentity {
10
+ retain(): () => void;
11
+ }
12
+ export interface WorkspaceCapabilityProvider {
13
+ activate(context: WorkspaceCapabilityContext): void | Promise<void>;
14
+ deactivate(identity: WorkspaceCapabilityIdentity): void | Promise<void>;
15
+ }
16
+ export interface WorkspaceCapabilityReplacement extends WorkspaceCapabilityIdentity {
17
+ readonly namespaceOwner: string;
18
+ readonly state: unknown | null;
19
+ readonly runtimes: readonly RuntimeRegistration[];
20
+ }
21
+ export interface WorkspaceCapabilityPublication {
22
+ readonly gate?: WorkspaceCapabilityGate;
23
+ readonly publish?: () => () => void;
24
+ }
25
+ export interface CapabilityProviderSeam {
26
+ registerRuntimes(registrations: readonly RuntimeRegistration[]): Promise<void>;
27
+ registerWorkspaceCapabilityProvider(namespaceOwner: string, provider: WorkspaceCapabilityProvider): void;
28
+ readWorkspaceModuleState(workspaceId: number, namespaceOwner: string): Promise<unknown | null>;
29
+ replaceWorkspaceCapabilities(replacement: WorkspaceCapabilityReplacement): Promise<void>;
30
+ }
31
+ export type HostSetupSeam = ModuleSetupSeam & FunctionalitySeam<RuntimeRegistration, RuntimeSchemeFacet> & SchemeRegistrationSeam & ResourceTreeRegistrationSeam & WorkspacePluginsSeam<AgentRootScope> & ProvidedSkillsSeam & CapabilityProviderSeam;
32
+ export {};
33
+ //# sourceMappingURL=ModuleHost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleHost.d.ts","sourceRoot":"","sources":["../../src/server/ModuleHost.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACvG,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACvH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAItD,MAAM,MAAM,wBAAwB,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;AAErG,UAAU,0BAA2B,SAAQ,2BAA2B;IACpE,MAAM,IAAI,MAAM,IAAI,CAAC;CACxB;AAGD,MAAM,WAAW,2BAA2B;IACxC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,UAAU,CAAC,QAAQ,EAAE,2BAA2B,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAGD,MAAM,WAAW,8BAA+B,SAAQ,2BAA2B;IAC/E,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,8BAA8B;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC;IAGxC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,MAAM,IAAI,CAAC;CACvC;AAGD,MAAM,WAAW,sBAAsB;IACnC,gBAAgB,CAAC,aAAa,EAAE,SAAS,mBAAmB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,mCAAmC,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAAC;IACzG,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC/F,4BAA4B,CAAC,WAAW,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5F;AAGD,MAAM,MAAM,aAAa,GAAG,eAAe,GACrC,iBAAiB,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,GAC1D,sBAAsB,GACtB,4BAA4B,GAC5B,oBAAoB,CAAC,cAAc,CAAC,GACpC,kBAAkB,GAClB,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ModuleHost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleHost.js","sourceRoot":"","sources":["../../src/server/ModuleHost.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"PlurnkSkill.d.ts","sourceRoot":"","sources":["../../src/server/PlurnkSkill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7F,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAK9F,MAAM,CAAC,OAAO,OAAO,WAAY,YAAW,SAAS;;IACjD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IASjC,OAAO,eAGN;IAED,OAAa,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAG3D;IAEK,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAE9B;IAED,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAQrC;CACJ"}
1
+ {"version":3,"file":"PlurnkSkill.d.ts","sourceRoot":"","sources":["../../src/server/PlurnkSkill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7F,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAO9F,MAAM,CAAC,OAAO,OAAO,WAAY,YAAW,SAAS;;IACjD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAUjC,OAAO,eAGN;IAED,OAAa,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAG3D;IAEK,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAE9B;IAED,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CASrC;CAuCJ"}
@@ -1,19 +1,22 @@
1
- import { readFile } from "node:fs/promises";
2
- import { dirname, resolve } from "node:path";
1
+ var _a;
2
+ import { readdir, readFile, stat } from "node:fs/promises";
3
+ import { dirname, join, relative, resolve } from "node:path";
3
4
  import { fileURLToPath } from "node:url";
4
5
  import { parseSkill } from "@plurnk/plurnk-agent-skills";
5
- import { TEACHING_CORPUS } from "@plurnk/plurnk-meta";
6
+ import Meta, { TEACHING_CORPUS } from "@plurnk/plurnk-meta";
6
7
  import { FileByteSource, GeneratedByteSource } from "@plurnk/plurnk-schemes";
7
8
  import Paths from "../Paths.js";
8
9
  import EnvDefaults from "../core/env-defaults.js";
10
+ const SERVICE = "@plurnk/plurnk-service";
9
11
  // {§plurnk-skill} Core composes sources; their packages remain their authors.
10
- export default class PlurnkSkill {
12
+ class PlurnkSkill {
11
13
  document;
12
14
  #nodeModules;
13
15
  #files = new Map([
14
16
  ["SKILL.md", Paths.teachingSource(TEACHING_CORPUS.skill)],
15
17
  ["references/configuration.md", Paths.configuration],
16
18
  ["references/copy-move.md", resolve(dirname(Paths.configuration), "docs/copy-move.md")],
19
+ ["references/extensibility.md", Paths.teachingSource(TEACHING_CORPUS.skillChapters.extensibility)],
17
20
  ["references/models.md", resolve(dirname(fileURLToPath(import.meta.resolve("@plurnk/plurnk-providers/package.json"))), "docs/models.md")],
18
21
  ]);
19
22
  constructor(document, nodeModules) {
@@ -22,15 +25,17 @@ export default class PlurnkSkill {
22
25
  }
23
26
  static async load(nodeModules) {
24
27
  const file = Paths.teachingSource(TEACHING_CORPUS.skill);
25
- return new PlurnkSkill(parseSkill(file, "plurnk", await readFile(file, "utf8")), nodeModules);
28
+ return new _a(parseSkill(file, "plurnk", await readFile(file, "utf8")), nodeModules);
26
29
  }
27
30
  async list() {
28
- return [...this.#files.keys(), ".env.defaults"].sort();
31
+ return [...this.#files.keys(), ".env.defaults", ...(await this.#contracts()).keys()].sort();
29
32
  }
30
33
  resource(pathname) {
31
34
  const file = this.#files.get(pathname);
32
35
  if (file !== undefined)
33
36
  return new FileByteSource(async () => file);
37
+ if (pathname.startsWith("packages/"))
38
+ return new FileByteSource(async () => (await this.#contracts()).get(pathname) ?? null);
34
39
  return new GeneratedByteSource(async () => {
35
40
  if (pathname !== ".env.defaults")
36
41
  return null;
@@ -38,5 +43,48 @@ export default class PlurnkSkill {
38
43
  return new TextEncoder().encode(EnvDefaults.renderCatalog(sources.files));
39
44
  });
40
45
  }
46
+ // The service's own contract, then each installed ecosystem member's that ships one with its
47
+ // published type declarations, read where its package installed them: the membership of the
48
+ // defaults catalog, observed when asked. The service's declarations are its internals, not a contract.
49
+ async #contracts() {
50
+ const members = await EnvDefaults.members(await Meta.packageDirs(this.#nodeModules));
51
+ const contracts = new Map();
52
+ for (const { name, dir } of [{ name: SERVICE, dir: Paths.packageRoot }, ...members.filter(({ name }) => name !== SERVICE)]) {
53
+ if (!await _a.#isFile(join(dir, "SPEC.md")))
54
+ continue;
55
+ contracts.set(`packages/${name}/SPEC.md`, join(dir, "SPEC.md"));
56
+ if (name === SERVICE)
57
+ continue;
58
+ for (const file of await _a.#declarations(join(dir, "dist"))) {
59
+ contracts.set(`packages/${name}/${relative(dir, file)}`, file);
60
+ }
61
+ }
62
+ return contracts;
63
+ }
64
+ static async #isFile(file) {
65
+ try {
66
+ return (await stat(file)).isFile();
67
+ }
68
+ catch (cause) {
69
+ if (cause.code === "ENOENT")
70
+ return false;
71
+ throw cause;
72
+ }
73
+ }
74
+ // Regular `.d.ts` files beneath `dist/`; a symbolic link is never followed out of the package.
75
+ static async #declarations(dist) {
76
+ try {
77
+ return (await readdir(dist, { recursive: true, withFileTypes: true }))
78
+ .filter((entry) => entry.isFile() && entry.name.endsWith(".d.ts"))
79
+ .map((entry) => join(entry.parentPath, entry.name));
80
+ }
81
+ catch (cause) {
82
+ if (cause.code === "ENOENT")
83
+ return [];
84
+ throw cause;
85
+ }
86
+ }
41
87
  }
88
+ _a = PlurnkSkill;
89
+ export default PlurnkSkill;
42
90
  //# sourceMappingURL=PlurnkSkill.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlurnkSkill.js","sourceRoot":"","sources":["../../src/server/PlurnkSkill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAsC,MAAM,6BAA6B,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAmB,MAAM,wBAAwB,CAAC;AAC9F,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAElD,8EAA8E;AAC9E,MAAM,CAAC,OAAO,OAAO,WAAW;IACnB,QAAQ,CAAgB;IACxB,YAAY,CAAS;IACrB,MAAM,GAAG,IAAI,GAAG,CAAC;QACtB,CAAC,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACzD,CAAC,6BAA6B,EAAE,KAAK,CAAC,aAAa,CAAC;QACpD,CAAC,yBAAyB,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACvF,CAAC,sBAAsB,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;KAC5I,CAAC,CAAC;IAEH,YAAoB,QAAuB,EAAE,WAAmB;QAC5D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAmB;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACzD,OAAO,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,IAAI;QACN,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;IAED,QAAQ,CAAC,QAAgB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QACpE,OAAO,IAAI,mBAAmB,CAAC,KAAK,IAAI,EAAE;YACtC,IAAI,QAAQ,KAAK,eAAe;gBAAE,OAAO,IAAI,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3F,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"PlurnkSkill.js","sourceRoot":"","sources":["../../src/server/PlurnkSkill.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,4 @@
1
- import type Daemon from "./Daemon.ts";
2
1
  export default class ServiceModules {
3
2
  static validateConfiguration(directories: readonly string[]): Promise<void>;
4
- static registerWorkspaceCapabilities(daemon: Pick<Daemon, "registerModule">): void;
5
3
  }
6
4
  //# sourceMappingURL=ServiceModules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceModules.d.ts","sourceRoot":"","sources":["../../src/server/ServiceModules.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAGtC,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,OAAa,qBAAqB,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhF;IAED,MAAM,CAAC,6BAA6B,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAIjF;CACJ"}
1
+ {"version":3,"file":"ServiceModules.d.ts","sourceRoot":"","sources":["../../src/server/ServiceModules.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,OAAa,qBAAqB,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhF;CACJ"}
@@ -1,7 +1,8 @@
1
- import { OutboundModule as A2aOutboundModule, validateConfiguration as validateA2a } from "@plurnk/plurnk-a2a";
2
- import { Module as McpModule, configuredDefinitions, validateConfiguration as validateMcp } from "@plurnk/plurnk-mcp";
3
- import { Module as ScheduleModule, validateConfiguration as validateSchedule } from "@plurnk/plurnk-schedule";
4
- // {§service-worker-composition} — listeners and host hooks remain launcher-owned.
1
+ import { validateConfiguration as validateA2a } from "@plurnk/plurnk-a2a";
2
+ import { configuredDefinitions, validateConfiguration as validateMcp } from "@plurnk/plurnk-mcp";
3
+ import { validateConfiguration as validateSchedule } from "@plurnk/plurnk-schedule";
4
+ // {§service-worker-composition} — the offline check validates the default modules' own settings; the
5
+ // modules themselves load by discovery ({§module-discovery}).
5
6
  export default class ServiceModules {
6
7
  static async validateConfiguration(directories) {
7
8
  validateMcp();
@@ -9,10 +10,5 @@ export default class ServiceModules {
9
10
  validateA2a();
10
11
  validateSchedule();
11
12
  }
12
- static registerWorkspaceCapabilities(daemon) {
13
- daemon.registerModule(McpModule.init());
14
- daemon.registerModule(A2aOutboundModule.init());
15
- daemon.registerModule(ScheduleModule.init());
16
- }
17
13
  }
18
14
  //# sourceMappingURL=ServiceModules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceModules.js","sourceRoot":"","sources":["../../src/server/ServiceModules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,qBAAqB,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC/G,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,qBAAqB,EAAE,qBAAqB,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtH,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,qBAAqB,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG9G,kFAAkF;AAClF,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,WAA8B;QAC7D,WAAW,EAAE,CAAC;QACd,MAAM,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACzC,WAAW,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,6BAA6B,CAAC,MAAsC;QACvE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;CACJ"}
1
+ {"version":3,"file":"ServiceModules.js","sourceRoot":"","sources":["../../src/server/ServiceModules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,qBAAqB,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEpF,qGAAqG;AACrG,8DAA8D;AAC9D,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,WAA8B;QAC7D,WAAW,EAAE,CAAC;QACd,MAAM,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACzC,WAAW,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;IACvB,CAAC;CACJ"}
@@ -1,17 +1,8 @@
1
- import { type DiscoveredPlugin, type PluginReport } from "@plurnk/plurnk-agent-plugins";
1
+ import type { WorkspacePluginSet } from "@plurnk/plurnk-agent-plugins";
2
2
  import type { Db } from "../core/Db.ts";
3
3
  import HostPaths from "../core/HostPaths.ts";
4
4
  import type { AgentRootScope } from "./AgentRoots.ts";
5
5
  import type { Notice } from "@plurnk/plurnk-contracts";
6
- export interface InstalledPlugin extends DiscoveredPlugin {
7
- readonly data: string;
8
- }
9
- export interface WorkspacePluginSet {
10
- readonly plugins: readonly InstalledPlugin[];
11
- readonly reports: readonly PluginReport[];
12
- readonly signature: string;
13
- readonly roots: Readonly<Record<AgentRootScope, string | null>>;
14
- }
15
6
  export default class WorkspacePlugins {
16
7
  #private;
17
8
  constructor({ db, hostPaths, nodeModules }: {
@@ -19,7 +10,7 @@ export default class WorkspacePlugins {
19
10
  readonly hostPaths: HostPaths;
20
11
  readonly nodeModules?: string;
21
12
  });
22
- read(workspaceId: number): Promise<WorkspacePluginSet>;
13
+ read(workspaceId: number): Promise<WorkspacePluginSet<AgentRootScope>>;
23
14
  notices(workspaceId: number): readonly Notice[];
24
15
  }
25
16
  //# sourceMappingURL=WorkspacePlugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspacePlugins.d.ts","sourceRoot":"","sources":["../../src/server/WorkspacePlugins.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IAErD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAE1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAG3B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CACnE;AAED,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAMjC,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,WAAiD,EAAE,EAAE;QAC9E,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;KACjF,EAIA;IAEK,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAmB3D;IAED,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAE9C;CAEJ"}
1
+ {"version":3,"file":"WorkspacePlugins.d.ts","sourceRoot":"","sources":["../../src/server/WorkspacePlugins.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAMjC,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,WAAiD,EAAE,EAAE;QAC9E,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;KACjF,EAIA;IAEK,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAmB3E;IAED,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAE9C;CAEJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspacePlugins.js","sourceRoot":"","sources":["../../src/server/WorkspacePlugins.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,iGAAiG;AACjG,sCAAsC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQzC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AAiBrE,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,GAAG,CAAK;IACR,UAAU,CAAY;IACtB,YAAY,CAAS;IACrB,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAEzD,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAE7E;QACG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAmB;QAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAkC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAClH,MAAM,WAAW,GAAG,SAAS,EAAE,YAAY,IAAI,IAAI,CAAC;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC;YAC9E,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY;SAC1E,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,wBAAwB,EAAE,CAAC;QACnD,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,MAAM,KAAK,IAAI,mBAAmB;YAAE,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAmB,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpJ,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YACnF,MAAM,CAAC,KAAK;YACZ,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;YAC1D,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACzE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,WAAmB;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;CAEJ"}
1
+ {"version":3,"file":"WorkspacePlugins.js","sourceRoot":"","sources":["../../src/server/WorkspacePlugins.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,iGAAiG;AACjG,sCAAsC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AAErE,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,GAAG,CAAK;IACR,UAAU,CAAY;IACtB,YAAY,CAAS;IACrB,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAEzD,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAE7E;QACG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAmB;QAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAkC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAClH,MAAM,WAAW,GAAG,SAAS,EAAE,YAAY,IAAI,IAAI,CAAC;QACpD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC;YAC9E,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY;SAC1E,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,wBAAwB,EAAE,CAAC;QACnD,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,MAAM,KAAK,IAAI,mBAAmB;YAAE,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAmB,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpJ,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YACnF,MAAM,CAAC,KAAK;YACZ,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;YAC1D,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACzE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,WAAmB;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;CAEJ"}
@@ -4,7 +4,8 @@ import type { Db } from "../core/Db.ts";
4
4
  import type { RegistryEntry } from "../core/ExecutorRegistry.ts";
5
5
  import { type WorkspaceCapabilityRelease } from "./WorkspaceCapabilities.ts";
6
6
  import type { WorkspaceCapabilityIdentity, WorkspaceCapabilityGate } from "@plurnk/plurnk-contracts";
7
- import type { RuntimeRegistration, WorkspaceCapabilityPublication, WorkspaceCapabilityProvider, WorkspaceCapabilityReplacement } from "./DaemonModule.ts";
7
+ import type { RuntimeRegistration } from "@plurnk/plurnk-execs";
8
+ import type { WorkspaceCapabilityPublication, WorkspaceCapabilityProvider, WorkspaceCapabilityReplacement } from "./ModuleHost.ts";
8
9
  type NormalizedRuntime = {
9
10
  tag: string;
10
11
  entry: RegistryEntry;
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceResidency.d.ts","sourceRoot":"","sources":["../../src/server/WorkspaceResidency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAA8B,EAE1B,KAAK,0BAA0B,EAClC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACR,2BAA2B,EAC3B,uBAAuB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACR,mBAAmB,EACnB,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EACjC,MAAM,mBAAmB,CAAC;AAS3B,KAAK,iBAAiB,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAGF,MAAM,CAAC,OAAO,OAAO,kBAAkB;;IASnC,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,EAAE;QACzD,EAAE,EAAE,EAAE,CAAC;QACP,MAAM,EAAE,MAAM,MAAM,CAAC;QACrB,aAAa,EAAE,aAAa,CAAC;QAC7B,gBAAgB,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,iBAAiB,CAAC;KAC9E,EAYA;IAED,IAAI,SAAS,IAAI,OAAO,CAA4B;IACpD,OAAO,IAAI,IAAI,CAA4B;IAC3C,SAAS,IAAI,IAAI,CAAoC;IACrD,kBAAkB,IAAI,MAAM,EAAE,CAAoD;IAClF,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAqD;IAC3F,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,0BAA0B,CAAmD;IAE1G,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAOpF;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAQxE;IAEK,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAGtE;IA8CK,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAO1F;IAKK,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAM7F;IAKK,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAa7G;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;IAOK,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzC;IAEK,OAAO,CAAC,EACV,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,GAC/C,EAAE,8BAA8B,EAAE,OAAO,GAAE,8BAAmC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9F;IAEK,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAgBlI;CACJ"}
1
+ {"version":3,"file":"WorkspaceResidency.d.ts","sourceRoot":"","sources":["../../src/server/WorkspaceResidency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAA8B,EAE1B,KAAK,0BAA0B,EAClC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACR,2BAA2B,EAC3B,uBAAuB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EACR,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EACjC,MAAM,iBAAiB,CAAC;AASzB,KAAK,iBAAiB,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAGF,MAAM,CAAC,OAAO,OAAO,kBAAkB;;IASnC,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,EAAE;QACzD,EAAE,EAAE,EAAE,CAAC;QACP,MAAM,EAAE,MAAM,MAAM,CAAC;QACrB,aAAa,EAAE,aAAa,CAAC;QAC7B,gBAAgB,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,iBAAiB,CAAC;KAC9E,EAYA;IAED,IAAI,SAAS,IAAI,OAAO,CAA4B;IACpD,OAAO,IAAI,IAAI,CAA4B;IAC3C,SAAS,IAAI,IAAI,CAAoC;IACrD,kBAAkB,IAAI,MAAM,EAAE,CAAoD;IAClF,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAqD;IAC3F,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,0BAA0B,CAAmD;IAE1G,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAOpF;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAQxE;IAEK,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAGtE;IA8CK,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAO1F;IAKK,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAM7F;IAKK,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAa7G;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;IAOK,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzC;IAEK,OAAO,CAAC,EACV,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,GAC/C,EAAE,8BAA8B,EAAE,OAAO,GAAE,8BAAmC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9F;IAEK,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAgBlI;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceStorage.d.ts","sourceRoot":"","sources":["../../src/server/WorkspaceStorage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAGlD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAIjC,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAGnC;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAU5E;CACJ"}
1
+ {"version":3,"file":"WorkspaceStorage.d.ts","sourceRoot":"","sources":["../../src/server/WorkspaceStorage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAGlD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAIjC,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAGnC;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO5E;CAQJ"}
@@ -14,13 +14,16 @@ export default class WorkspaceStorage {
14
14
  const row = await this.#db.workspace_storage_key.get({ workspace_id: workspaceId });
15
15
  if (row === undefined)
16
16
  throw new Error(`Workspace ${workspaceId} does not exist.`);
17
- const state = JSON.parse(row.state);
17
+ const directory = join(this.#workspaceRoot(workspaceId, row.state), encodeURIComponent(namespaceOwner));
18
+ await mkdir(directory, { recursive: true, mode: 0o700 });
19
+ return directory;
20
+ }
21
+ #workspaceRoot(workspaceId, encoded) {
22
+ const state = JSON.parse(encoded);
18
23
  const key = state !== null && typeof state === "object" && "key" in state ? state.key : undefined;
19
24
  if (typeof key !== "string" || !/^[a-f0-9]{32}$/u.test(key))
20
25
  throw new Error(`Workspace ${workspaceId} has an invalid storage key.`);
21
- const directory = join(this.#paths.stateDir, "workspaces", key, encodeURIComponent(namespaceOwner));
22
- await mkdir(directory, { recursive: true, mode: 0o700 });
23
- return directory;
26
+ return join(this.#paths.stateDir, "workspaces", key);
24
27
  }
25
28
  }
26
29
  //# sourceMappingURL=WorkspaceStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceStorage.js","sourceRoot":"","sources":["../../src/server/WorkspaceStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,gCAAgC;AAChC,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,GAAG,CAAK;IACR,MAAM,CAAY;IAE3B,YAAY,EAAM,EAAE,KAAgB;QAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,cAAsB;QACvD,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAoB,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QACvG,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,kBAAkB,CAAC,CAAC;QACnF,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,8BAA8B,CAAC,CAAC;QACrI,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC;QACpG,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"WorkspaceStorage.js","sourceRoot":"","sources":["../../src/server/WorkspaceStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,gCAAgC;AAChC,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,GAAG,CAAK;IACR,MAAM,CAAY;IAE3B,YAAY,EAAM,EAAE,KAAgB;QAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,cAAsB;QACvD,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAoB,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QACvG,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,kBAAkB,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC;QACxG,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,WAAmB,EAAE,OAAe;QAC/C,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,8BAA8B,CAAC,CAAC;QACrI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import type { ProposalResolution } from "@plurnk/plurnk-contracts";
2
- import { type LoopPolicyRequest, type ClientInteractionResolution, type MessageResource } from "@plurnk/plurnk-contracts";
2
+ import { type ClientInteractionResolution, type MessageResource } from "@plurnk/plurnk-contracts";
3
3
  export default class ClientInput {
4
4
  #private;
5
5
  static assertShareFolder(context: string, folder: unknown): string;
@@ -20,7 +20,6 @@ export default class ClientInput {
20
20
  static assertLimit(context: string, limit: unknown): number | undefined;
21
21
  static assertProposalResolution(context: string, resolution: unknown): ProposalResolution;
22
22
  static assertClientInteractionResolution(context: string, resolution: unknown): ClientInteractionResolution;
23
- static normalizeLoopPolicy(context: string, policy: unknown): LoopPolicyRequest;
24
23
  static parseSettings(raw: unknown): string;
25
24
  }
26
25
  //# sourceMappingURL=client-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-input.d.ts","sourceRoot":"","sources":["../../src/server/client-input.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAIH,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACvB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,CAAC,OAAO,OAAO,WAAW;;IAyB5B,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,CAUjE;IAED,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoB7E;IAED,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAW5F;IAED,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAsBlG;IAED,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAYtH;IAED,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAYlG;IAED,MAAM,CAAC,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAG7F;IAED,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGzE;IAED,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWlF;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAUtE;IAED,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,UAAQ,GAAG,MAAM,CAUhF;IAED,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,eAAe,EAAE,CAU7F;IAED,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWhF;IAED,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAe5E;IAED,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAqBhF;IAED,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWtE;IAED,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,kBAAkB,CA0DxF;IAED,MAAM,CAAC,iCAAiC,CACpC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,GACpB,2BAA2B,CAgB7B;IAID,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,iBAAiB,CAW9E;IAKD,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CA4IzC;CAEJ"}
1
+ {"version":3,"file":"client-input.d.ts","sourceRoot":"","sources":["../../src/server/client-input.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAGH,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACvB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,CAAC,OAAO,OAAO,WAAW;;IAyB5B,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,CAUjE;IAED,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoB7E;IAED,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAW5F;IAED,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAsBlG;IAED,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAYtH;IAED,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAYlG;IAED,MAAM,CAAC,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAG7F;IAED,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGzE;IAED,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWlF;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAUtE;IAED,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,UAAQ,GAAG,MAAM,CAUhF;IAED,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,eAAe,EAAE,CAU7F;IAED,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWhF;IAED,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAe5E;IAED,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAqBhF;IAED,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWtE;IAED,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,kBAAkB,CA0DxF;IAED,MAAM,CAAC,iCAAiC,CACpC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,GACpB,2BAA2B,CAgB7B;IAID,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CA4IzC;CAEJ"}
@@ -5,7 +5,7 @@ import { isAbsolute } from "node:path";
5
5
  import Results, { OperationFailureError } from "../core/results.js";
6
6
  import FileCreationPolicy, { FILE_CREATE_SCOPES } from "../core/file-creation-policy.js";
7
7
  import WorkerName, { WorkerNameError } from "../core/WorkerName.js";
8
- import { PROPOSAL_POLICIES, Validator, } from "@plurnk/plurnk-contracts";
8
+ import { Validator, } from "@plurnk/plurnk-contracts";
9
9
  export default class ClientInput {
10
10
  static #invalid(context, code, detail, extensions = {}) {
11
11
  throw new OperationFailureError(Results.failure("daemon:input", code, 400, detail, {}, {
@@ -207,18 +207,7 @@ export default class ClientInput {
207
207
  });
208
208
  }
209
209
  }
210
- // {§loop-policy-composition} — the stated part of a policy, exactly as stated. Nothing is filled
211
- // in here: an omitted field is no opinion until a fresh loop composes it against the panel.
212
- static normalizeLoopPolicy(context, policy) {
213
- if (Validator.validateLoopPolicyRequest(policy).valid)
214
- return policy;
215
- ClientInput.#invalid(context, "loop-policy-invalid", "policy is not a valid loop policy request.", {
216
- field: "policy",
217
- recovery: `State proposals ${PROPOSAL_POLICIES.join(", ")} and attended true or false; omit what you leave to the daemon.`,
218
- });
219
- }
220
- // {§operator-config} — validate and serialize the client open-context bag. filesItems is a scalar (replace);
221
- // mdDocs is [{alias, content}] (union'd with env at turn-0). A module may
210
+ // {§operator-config} — validate and serialize the client open-context bag. A module may
222
211
  // serialize the object at its edge; core still parses and validates it here.
223
212
  static parseSettings(raw) {
224
213
  if (raw === undefined || raw === null)