@agimon-ai/po-core 0.0.0-alpha.2 → 0.0.0-alpha.21

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 (1149) hide show
  1. package/LICENSE +149 -21
  2. package/NOTICE +41 -0
  3. package/dist/agentModel.cjs +1 -1
  4. package/dist/agentModel.d.mts +2 -2
  5. package/dist/agentModel.mjs +1 -2
  6. package/dist/apiContracts.cjs +623 -802
  7. package/dist/apiContracts.cjs.map +1 -1
  8. package/dist/apiContracts.d.mts +277 -615
  9. package/dist/apiContracts.d.mts.map +1 -1
  10. package/dist/apiContracts.mjs +617 -794
  11. package/dist/apiContracts.mjs.map +1 -1
  12. package/dist/askUser.cjs +2 -2
  13. package/dist/askUser.d.mts +2 -2
  14. package/dist/askUser.mjs +1 -2
  15. package/dist/authorTools.mjs +1 -2
  16. package/dist/backgroundWork.cjs +3 -3
  17. package/dist/backgroundWork.d.mts +2 -2
  18. package/dist/backgroundWork.mjs +1 -2
  19. package/dist/bundleAssetPolicy.mjs +1 -2
  20. package/dist/chatgptAuth.cjs +3 -2
  21. package/dist/chatgptAuth.d.mts +3 -2
  22. package/dist/chatgptAuth.mjs +2 -1
  23. package/dist/childProcess.cjs +1 -1
  24. package/dist/childProcess.d.mts +2 -2
  25. package/dist/childProcess.mjs +1 -2
  26. package/dist/childSession.cjs +11 -6
  27. package/dist/childSession.d.mts +3 -3
  28. package/dist/childSession.mjs +3 -3
  29. package/dist/cockpitContainer.mjs +1 -2
  30. package/dist/config.cjs +1 -1
  31. package/dist/config.d.mts +3 -3
  32. package/dist/config.mjs +1 -2
  33. package/dist/contextApi.cjs +1 -0
  34. package/dist/contextApi.d.mts +2 -2
  35. package/dist/contextApi.mjs +2 -2
  36. package/dist/contextContributions.cjs +4 -4
  37. package/dist/contextContributions.d.mts +3 -3
  38. package/dist/contextContributions.mjs +3 -3
  39. package/dist/contextDetailStore.cjs +7 -5
  40. package/dist/contextDetailStore.cjs.map +1 -1
  41. package/dist/contextDetailStore.d.mts +2 -1
  42. package/dist/contextDetailStore.d.mts.map +1 -1
  43. package/dist/contextDetailStore.mjs +6 -4
  44. package/dist/contextDetailStore.mjs.map +1 -1
  45. package/dist/contextProjection.cjs +7 -2
  46. package/dist/contextProjection.cjs.map +1 -1
  47. package/dist/contextProjection.d.mts +4 -1
  48. package/dist/contextProjection.d.mts.map +1 -1
  49. package/dist/contextProjection.mjs +5 -2
  50. package/dist/contextProjection.mjs.map +1 -1
  51. package/dist/cordisHost.cjs +11 -11
  52. package/dist/cordisHost.d.mts +2 -2
  53. package/dist/cordisHost.mjs +1 -2
  54. package/dist/delegation.cjs +8 -8
  55. package/dist/delegation.d.mts +2 -2
  56. package/dist/delegation.mjs +1 -2
  57. package/dist/executionBudget.cjs +4 -3
  58. package/dist/executionBudget.cjs.map +1 -1
  59. package/dist/executionBudget.d.mts +2 -2
  60. package/dist/executionBudget.d.mts.map +1 -1
  61. package/dist/executionBudget.mjs +4 -3
  62. package/dist/executionBudget.mjs.map +1 -1
  63. package/dist/extensionFile.cjs +5 -0
  64. package/dist/extensionFile.d.mts +4 -2
  65. package/dist/extensionFile.mjs +4 -2
  66. package/dist/footer.d.mts +2 -2
  67. package/dist/footer.mjs +1 -2
  68. package/dist/headless.cjs +14 -14
  69. package/dist/headless.d.mts +2 -2
  70. package/dist/headless.mjs +1 -2
  71. package/dist/headlessHub.cjs +308 -109
  72. package/dist/headlessHub.cjs.map +1 -1
  73. package/dist/headlessHub.d.mts +71 -36
  74. package/dist/headlessHub.d.mts.map +1 -1
  75. package/dist/headlessHub.mjs +309 -110
  76. package/dist/headlessHub.mjs.map +1 -1
  77. package/dist/headlessProtocol.cjs +327 -0
  78. package/dist/headlessProtocol.cjs.map +1 -0
  79. package/dist/headlessProtocol.d.mts +30 -0
  80. package/dist/headlessProtocol.d.mts.map +1 -0
  81. package/dist/headlessProtocol.mjs +326 -0
  82. package/dist/headlessProtocol.mjs.map +1 -0
  83. package/dist/headlessServer.cjs +166 -151
  84. package/dist/headlessServer.cjs.map +1 -1
  85. package/dist/headlessServer.d.mts +13 -5
  86. package/dist/headlessServer.d.mts.map +1 -1
  87. package/dist/headlessServer.mjs +166 -151
  88. package/dist/headlessServer.mjs.map +1 -1
  89. package/dist/headlessSessionHost.d.mts +58 -21
  90. package/dist/headlessSessionHost.d.mts.map +1 -1
  91. package/dist/help.cjs +20 -20
  92. package/dist/help.d.mts +2 -2
  93. package/dist/help.mjs +2 -2
  94. package/dist/history.cjs +16 -20
  95. package/dist/history.d.mts +9 -7
  96. package/dist/history.mjs +6 -7
  97. package/dist/historyOwnership.cjs.map +1 -1
  98. package/dist/historyOwnership.d.mts +1 -1
  99. package/dist/historyOwnership.mjs.map +1 -1
  100. package/dist/hubChannel.cjs +9 -0
  101. package/dist/hubChannel.d.mts +3 -2
  102. package/dist/hubChannel.mjs +3 -2
  103. package/dist/index.cjs +26 -28
  104. package/dist/index.d.mts +6 -6
  105. package/dist/index.mjs +6 -6
  106. package/dist/interop/chord.mjs +1 -0
  107. package/dist/interop/chordContext.mjs +1 -0
  108. package/dist/json.cjs +11 -5
  109. package/dist/json.d.mts +4 -2
  110. package/dist/json.mjs +4 -2
  111. package/dist/kernel.cjs +1 -1
  112. package/dist/kernel.d.mts +3 -3
  113. package/dist/kernel.mjs +1 -2
  114. package/dist/leader.d.mts +2 -2
  115. package/dist/leader.mjs +1 -2
  116. package/dist/logSinkTelemetry.mjs +1 -2
  117. package/dist/machineApi.cjs +80 -74
  118. package/dist/machineApi.cjs.map +1 -1
  119. package/dist/machineApi.d.mts +5 -2
  120. package/dist/machineApi.d.mts.map +1 -1
  121. package/dist/machineApi.mjs +78 -71
  122. package/dist/machineApi.mjs.map +1 -1
  123. package/dist/main.cjs +2 -1
  124. package/dist/main.d.mts +2 -1
  125. package/dist/main.mjs +2 -1
  126. package/dist/mcpFacet.d.mts +3 -3
  127. package/dist/mcpProjection.cjs +13 -13
  128. package/dist/mcpProjection.d.mts +2 -2
  129. package/dist/mcpProjection.mjs +1 -2
  130. package/dist/mcpSchemaCost.cjs +4 -4
  131. package/dist/mcpSchemaCost.cjs.map +1 -1
  132. package/dist/mcpSchemaCost.d.mts +2 -2
  133. package/dist/mcpSchemaCost.mjs +4 -4
  134. package/dist/mcpSchemaCost.mjs.map +1 -1
  135. package/dist/mcpSession.cjs +7 -7
  136. package/dist/mcpSession.d.mts +2 -2
  137. package/dist/mcpSession.mjs +1 -2
  138. package/dist/mcpStatus.cjs +2 -2
  139. package/dist/mcpStatus.d.mts +2 -2
  140. package/dist/mcpStatus.mjs +1 -2
  141. package/dist/mcpToolResolver.cjs +3 -3
  142. package/dist/mcpToolResolver.d.mts +2 -2
  143. package/dist/mcpToolResolver.mjs +1 -2
  144. package/dist/mcpWidget.d.mts +2 -2
  145. package/dist/moduleResolution.cjs +43 -8
  146. package/dist/moduleResolution.cjs.map +1 -1
  147. package/dist/moduleResolution.d.mts +10 -1
  148. package/dist/moduleResolution.d.mts.map +1 -1
  149. package/dist/moduleResolution.mjs +40 -7
  150. package/dist/moduleResolution.mjs.map +1 -1
  151. package/dist/narration.cjs +3 -3
  152. package/dist/narration.d.mts +2 -2
  153. package/dist/narration.mjs +1 -2
  154. package/dist/native.cjs +9 -0
  155. package/dist/native.d.mts +4 -3
  156. package/dist/native.mjs +3 -2
  157. package/dist/nodePlatform.cjs +77 -0
  158. package/dist/nodePlatform.cjs.map +1 -0
  159. package/dist/nodePlatform.d.mts +17 -0
  160. package/dist/nodePlatform.d.mts.map +1 -0
  161. package/dist/nodePlatform.mjs +72 -0
  162. package/dist/nodePlatform.mjs.map +1 -0
  163. package/dist/notification.cjs +15 -15
  164. package/dist/notification.d.mts +2 -2
  165. package/dist/notification.mjs +1 -2
  166. package/dist/packageApi.cjs +11 -11
  167. package/dist/packageApi.d.mts +2 -2
  168. package/dist/packageApi.mjs +2 -2
  169. package/dist/packageApiServer.cjs +45 -27
  170. package/dist/packageApiServer.cjs.map +1 -1
  171. package/dist/packageApiServer.d.mts +36 -26
  172. package/dist/packageApiServer.d.mts.map +1 -1
  173. package/dist/packageApiServer.mjs +44 -26
  174. package/dist/packageApiServer.mjs.map +1 -1
  175. package/dist/piSettings.cjs +41 -20
  176. package/dist/piSettings.d.mts +4 -2
  177. package/dist/piSettings.mjs +4 -2
  178. package/dist/platform.cjs +62 -0
  179. package/dist/platform.d.mts +10 -0
  180. package/dist/platform.mjs +10 -0
  181. package/dist/pluginProtocol.cjs +7 -8
  182. package/dist/pluginProtocol.d.mts +2 -2
  183. package/dist/pluginProtocol.mjs +1 -2
  184. package/dist/poPackage.cjs +12 -0
  185. package/dist/poPackage.d.mts +3 -0
  186. package/dist/poPackage.mjs +3 -0
  187. package/dist/profileIdentity.cjs +1 -1
  188. package/dist/profileIdentity.d.mts +2 -2
  189. package/dist/profileIdentity.mjs +1 -2
  190. package/dist/protocol.cjs +3 -3
  191. package/dist/protocol.d.mts +2 -2
  192. package/dist/protocol.mjs +1 -2
  193. package/dist/readiness.cjs +6 -6
  194. package/dist/readiness.d.mts +2 -2
  195. package/dist/readiness.mjs +1 -2
  196. package/dist/remoteApi.cjs.map +1 -1
  197. package/dist/remoteApi.d.mts +2 -2
  198. package/dist/remoteApi.mjs.map +1 -1
  199. package/dist/remoteRuntime.cjs +42 -65
  200. package/dist/remoteRuntime.cjs.map +1 -1
  201. package/dist/remoteRuntime.d.mts +3 -2
  202. package/dist/remoteRuntime.d.mts.map +1 -1
  203. package/dist/remoteRuntime.mjs +41 -62
  204. package/dist/remoteRuntime.mjs.map +1 -1
  205. package/dist/runtimeConfig.cjs +4 -4
  206. package/dist/runtimeConfig.cjs.map +1 -1
  207. package/dist/runtimeConfig.d.mts +10 -9
  208. package/dist/runtimeConfig.d.mts.map +1 -1
  209. package/dist/runtimeConfig.mjs +4 -4
  210. package/dist/runtimeConfig.mjs.map +1 -1
  211. package/dist/runtimeContextApi.cjs +10 -3
  212. package/dist/runtimeContextApi.cjs.map +1 -1
  213. package/dist/runtimeContextApi.d.mts +3 -3
  214. package/dist/runtimeContextApi.d.mts.map +1 -1
  215. package/dist/runtimeContextApi.mjs +10 -3
  216. package/dist/runtimeContextApi.mjs.map +1 -1
  217. package/dist/runtimeCordisHost.cjs +46 -46
  218. package/dist/runtimeCordisHost.cjs.map +1 -1
  219. package/dist/runtimeCordisHost.d.mts +29 -28
  220. package/dist/runtimeCordisHost.d.mts.map +1 -1
  221. package/dist/runtimeCordisHost.mjs +42 -42
  222. package/dist/runtimeCordisHost.mjs.map +1 -1
  223. package/dist/runtimeIdentity.cjs +6 -9
  224. package/dist/runtimeIdentity.cjs.map +1 -1
  225. package/dist/runtimeIdentity.d.mts +5 -1
  226. package/dist/runtimeIdentity.d.mts.map +1 -1
  227. package/dist/runtimeIdentity.mjs +5 -8
  228. package/dist/runtimeIdentity.mjs.map +1 -1
  229. package/dist/runtimeJson.cjs +10 -45
  230. package/dist/runtimeJson.d.mts +3 -22
  231. package/dist/runtimeJson.mjs +3 -39
  232. package/dist/runtimeLogSinkTelemetry.cjs +19 -19
  233. package/dist/runtimeLogSinkTelemetry.cjs.map +1 -1
  234. package/dist/runtimeLogSinkTelemetry.d.mts +19 -19
  235. package/dist/runtimeLogSinkTelemetry.mjs +19 -19
  236. package/dist/runtimeLogSinkTelemetry.mjs.map +1 -1
  237. package/dist/runtimePackages.cjs +7 -2
  238. package/dist/runtimePackages.cjs.map +1 -1
  239. package/dist/runtimePackages.d.mts +4 -1
  240. package/dist/runtimePackages.d.mts.map +1 -1
  241. package/dist/runtimePackages.mjs +7 -2
  242. package/dist/runtimePackages.mjs.map +1 -1
  243. package/dist/runtimePiSettings.cjs +40 -263
  244. package/dist/runtimePiSettings.d.mts +3 -72
  245. package/dist/runtimePiSettings.mjs +3 -241
  246. package/dist/runtimeProtocol.cjs +19 -19
  247. package/dist/runtimeProtocol.cjs.map +1 -1
  248. package/dist/runtimeProtocol.d.mts +7 -7
  249. package/dist/runtimeProtocol.d.mts.map +1 -1
  250. package/dist/runtimeProtocol.mjs +17 -17
  251. package/dist/runtimeProtocol.mjs.map +1 -1
  252. package/dist/runtimeTransition.cjs +9 -9
  253. package/dist/runtimeTransition.cjs.map +1 -1
  254. package/dist/runtimeTransition.d.mts +10 -10
  255. package/dist/runtimeTransition.d.mts.map +1 -1
  256. package/dist/runtimeTransition.mjs +7 -7
  257. package/dist/runtimeTransition.mjs.map +1 -1
  258. package/dist/sandboxHarness.mjs +1 -2
  259. package/dist/server.cjs +3 -7
  260. package/dist/server.d.mts +6 -6
  261. package/dist/server.mjs +3 -4
  262. package/dist/serverPlugin.cjs +39 -0
  263. package/dist/serverPlugin.d.mts +12 -0
  264. package/dist/serverPlugin.mjs +11 -0
  265. package/dist/serverTelemetry.cjs +1 -1
  266. package/dist/serverTelemetry.cjs.map +1 -1
  267. package/dist/serverTelemetry.d.mts +2 -2
  268. package/dist/serverTelemetry.mjs +2 -2
  269. package/dist/serverTelemetry.mjs.map +1 -1
  270. package/dist/sessionFilesApi.cjs +41 -37
  271. package/dist/sessionFilesApi.cjs.map +1 -1
  272. package/dist/sessionFilesApi.d.mts +6 -3
  273. package/dist/sessionFilesApi.d.mts.map +1 -1
  274. package/dist/sessionFilesApi.mjs +41 -36
  275. package/dist/sessionFilesApi.mjs.map +1 -1
  276. package/dist/sessionProtocol.cjs +31 -6
  277. package/dist/sessionProtocol.d.mts +8 -3
  278. package/dist/sessionProtocol.mjs +8 -2
  279. package/dist/skills.cjs +5 -5
  280. package/dist/skills.d.mts +2 -2
  281. package/dist/skills.mjs +1 -2
  282. package/dist/sqliteSessionStorage.cjs +28 -50
  283. package/dist/sqliteSessionStorage.cjs.map +1 -1
  284. package/dist/sqliteSessionStorage.d.mts +13 -20
  285. package/dist/sqliteSessionStorage.d.mts.map +1 -1
  286. package/dist/sqliteSessionStorage.mjs +25 -48
  287. package/dist/sqliteSessionStorage.mjs.map +1 -1
  288. package/dist/src/constants/agentSettled.cjs +7 -0
  289. package/dist/src/constants/agentSettled.cjs.map +1 -0
  290. package/dist/src/constants/agentSettled.mjs +7 -0
  291. package/dist/src/constants/agentSettled.mjs.map +1 -0
  292. package/dist/src/constants/contextApi.cjs +3 -1
  293. package/dist/src/constants/contextApi.cjs.map +1 -1
  294. package/dist/src/constants/contextApi.d.mts +2 -1
  295. package/dist/src/constants/contextApi.d.mts.map +1 -1
  296. package/dist/src/constants/contextApi.mjs +3 -2
  297. package/dist/src/constants/contextApi.mjs.map +1 -1
  298. package/dist/src/constants/voiceTools.cjs +6 -6
  299. package/dist/src/constants/voiceTools.cjs.map +1 -1
  300. package/dist/src/constants/voiceTools.d.mts +3 -3
  301. package/dist/src/constants/voiceTools.mjs +4 -4
  302. package/dist/src/constants/voiceTools.mjs.map +1 -1
  303. package/dist/src/extensions/extensionFile.cjs +22 -5
  304. package/dist/src/extensions/extensionFile.cjs.map +1 -1
  305. package/dist/src/extensions/extensionFile.d.mts +17 -4
  306. package/dist/src/extensions/extensionFile.d.mts.map +1 -1
  307. package/dist/src/extensions/extensionFile.mjs +22 -6
  308. package/dist/src/extensions/extensionFile.mjs.map +1 -1
  309. package/dist/src/extensions/serverPlugin.cjs +231 -92
  310. package/dist/src/extensions/serverPlugin.cjs.map +1 -1
  311. package/dist/src/extensions/serverPlugin.d.mts +2 -2
  312. package/dist/src/extensions/serverPlugin.d.mts.map +1 -1
  313. package/dist/src/extensions/serverPlugin.mjs +232 -93
  314. package/dist/src/extensions/serverPlugin.mjs.map +1 -1
  315. package/dist/src/pi/piSessionRuntime.cjs +349 -142
  316. package/dist/src/pi/piSessionRuntime.cjs.map +1 -1
  317. package/dist/src/pi/piSessionRuntime.d.mts +18 -17
  318. package/dist/src/pi/piSessionRuntime.d.mts.map +1 -1
  319. package/dist/src/pi/piSessionRuntime.mjs +342 -135
  320. package/dist/src/pi/piSessionRuntime.mjs.map +1 -1
  321. package/dist/src/schemas/agentModel.cjs +2 -2
  322. package/dist/src/schemas/agentModel.cjs.map +1 -1
  323. package/dist/src/schemas/agentModel.d.mts +1 -1
  324. package/dist/src/schemas/agentModel.mjs +2 -2
  325. package/dist/src/schemas/agentModel.mjs.map +1 -1
  326. package/dist/src/schemas/apiContracts.d.mts +2 -2
  327. package/dist/src/schemas/apiContracts.d.mts.map +1 -1
  328. package/dist/src/schemas/askUser.cjs +4 -4
  329. package/dist/src/schemas/askUser.cjs.map +1 -1
  330. package/dist/src/schemas/askUser.d.mts +4 -4
  331. package/dist/src/schemas/askUser.d.mts.map +1 -1
  332. package/dist/src/schemas/askUser.mjs +3 -3
  333. package/dist/src/schemas/askUser.mjs.map +1 -1
  334. package/dist/src/schemas/backgroundWork.cjs +10 -10
  335. package/dist/src/schemas/backgroundWork.cjs.map +1 -1
  336. package/dist/src/schemas/backgroundWork.d.mts +9 -9
  337. package/dist/src/schemas/backgroundWork.d.mts.map +1 -1
  338. package/dist/src/schemas/backgroundWork.mjs +8 -8
  339. package/dist/src/schemas/backgroundWork.mjs.map +1 -1
  340. package/dist/src/schemas/childProcess.cjs +5 -5
  341. package/dist/src/schemas/childProcess.cjs.map +1 -1
  342. package/dist/src/schemas/childProcess.d.mts +2 -2
  343. package/dist/src/schemas/childProcess.mjs +5 -5
  344. package/dist/src/schemas/childProcess.mjs.map +1 -1
  345. package/dist/src/schemas/contextContributions.cjs +10 -10
  346. package/dist/src/schemas/contextContributions.cjs.map +1 -1
  347. package/dist/src/schemas/contextContributions.d.mts +16 -16
  348. package/dist/src/schemas/contextContributions.d.mts.map +1 -1
  349. package/dist/src/schemas/contextContributions.mjs +8 -8
  350. package/dist/src/schemas/contextContributions.mjs.map +1 -1
  351. package/dist/src/schemas/delegation.cjs +17 -17
  352. package/dist/src/schemas/delegation.cjs.map +1 -1
  353. package/dist/src/schemas/delegation.d.mts +16 -16
  354. package/dist/src/schemas/delegation.d.mts.map +1 -1
  355. package/dist/src/schemas/delegation.mjs +10 -10
  356. package/dist/src/schemas/delegation.mjs.map +1 -1
  357. package/dist/src/schemas/extensionFile.d.mts +23 -19
  358. package/dist/src/schemas/extensionFile.d.mts.map +1 -1
  359. package/dist/src/schemas/footer.cjs.map +1 -1
  360. package/dist/src/schemas/footer.d.mts +5 -5
  361. package/dist/src/schemas/footer.d.mts.map +1 -1
  362. package/dist/src/schemas/footer.mjs.map +1 -1
  363. package/dist/src/schemas/headless.cjs +37 -37
  364. package/dist/src/schemas/headless.cjs.map +1 -1
  365. package/dist/src/schemas/headless.d.mts +100 -101
  366. package/dist/src/schemas/headless.d.mts.map +1 -1
  367. package/dist/src/schemas/headless.mjs +24 -24
  368. package/dist/src/schemas/headless.mjs.map +1 -1
  369. package/dist/src/schemas/help.cjs +60 -60
  370. package/dist/src/schemas/help.cjs.map +1 -1
  371. package/dist/src/schemas/help.d.mts +43 -43
  372. package/dist/src/schemas/help.d.mts.map +1 -1
  373. package/dist/src/schemas/help.mjs +41 -41
  374. package/dist/src/schemas/help.mjs.map +1 -1
  375. package/dist/src/schemas/home.cjs +127 -0
  376. package/dist/src/schemas/home.cjs.map +1 -0
  377. package/dist/src/schemas/home.d.mts +63 -0
  378. package/dist/src/schemas/home.d.mts.map +1 -0
  379. package/dist/src/schemas/home.mjs +121 -0
  380. package/dist/src/schemas/home.mjs.map +1 -0
  381. package/dist/src/schemas/httpApiContracts.cjs +441 -0
  382. package/dist/src/schemas/httpApiContracts.cjs.map +1 -0
  383. package/dist/src/schemas/httpApiContracts.d.mts +78 -0
  384. package/dist/src/schemas/httpApiContracts.d.mts.map +1 -0
  385. package/dist/src/schemas/httpApiContracts.mjs +434 -0
  386. package/dist/src/schemas/httpApiContracts.mjs.map +1 -0
  387. package/dist/src/schemas/hubChannel.cjs +3 -0
  388. package/dist/src/schemas/hubChannel.cjs.map +1 -1
  389. package/dist/src/schemas/hubChannel.d.mts +84 -60
  390. package/dist/src/schemas/hubChannel.d.mts.map +1 -1
  391. package/dist/src/schemas/hubChannel.mjs +3 -1
  392. package/dist/src/schemas/hubChannel.mjs.map +1 -1
  393. package/dist/src/schemas/leader.cjs.map +1 -1
  394. package/dist/src/schemas/leader.d.mts +3 -3
  395. package/dist/src/schemas/leader.d.mts.map +1 -1
  396. package/dist/src/schemas/leader.mjs.map +1 -1
  397. package/dist/src/schemas/mcpBundle.d.mts +3 -3
  398. package/dist/src/schemas/mcpFacet.cjs.map +1 -1
  399. package/dist/src/schemas/mcpFacet.d.mts +22 -22
  400. package/dist/src/schemas/mcpFacet.d.mts.map +1 -1
  401. package/dist/src/schemas/mcpFacet.mjs.map +1 -1
  402. package/dist/src/schemas/mcpProjection.cjs +41 -41
  403. package/dist/src/schemas/mcpProjection.cjs.map +1 -1
  404. package/dist/src/schemas/mcpProjection.d.mts +31 -30
  405. package/dist/src/schemas/mcpProjection.d.mts.map +1 -1
  406. package/dist/src/schemas/mcpProjection.mjs +29 -29
  407. package/dist/src/schemas/mcpProjection.mjs.map +1 -1
  408. package/dist/src/schemas/mcpSession.cjs +23 -23
  409. package/dist/src/schemas/mcpSession.cjs.map +1 -1
  410. package/dist/src/schemas/mcpSession.d.mts +12 -12
  411. package/dist/src/schemas/mcpSession.d.mts.map +1 -1
  412. package/dist/src/schemas/mcpSession.mjs +18 -18
  413. package/dist/src/schemas/mcpSession.mjs.map +1 -1
  414. package/dist/src/schemas/mcpStatus.cjs +5 -5
  415. package/dist/src/schemas/mcpStatus.cjs.map +1 -1
  416. package/dist/src/schemas/mcpStatus.d.mts +4 -4
  417. package/dist/src/schemas/mcpStatus.d.mts.map +1 -1
  418. package/dist/src/schemas/mcpStatus.mjs +4 -4
  419. package/dist/src/schemas/mcpStatus.mjs.map +1 -1
  420. package/dist/src/schemas/mcpToolResolver.cjs +9 -9
  421. package/dist/src/schemas/mcpToolResolver.cjs.map +1 -1
  422. package/dist/src/schemas/mcpToolResolver.d.mts +7 -7
  423. package/dist/src/schemas/mcpToolResolver.d.mts.map +1 -1
  424. package/dist/src/schemas/mcpToolResolver.mjs +7 -7
  425. package/dist/src/schemas/mcpToolResolver.mjs.map +1 -1
  426. package/dist/src/schemas/narration.cjs +9 -9
  427. package/dist/src/schemas/narration.cjs.map +1 -1
  428. package/dist/src/schemas/narration.d.mts +5 -5
  429. package/dist/src/schemas/narration.d.mts.map +1 -1
  430. package/dist/src/schemas/narration.mjs +7 -7
  431. package/dist/src/schemas/narration.mjs.map +1 -1
  432. package/dist/src/schemas/notification.cjs +45 -45
  433. package/dist/src/schemas/notification.cjs.map +1 -1
  434. package/dist/src/schemas/notification.d.mts +22 -22
  435. package/dist/src/schemas/notification.d.mts.map +1 -1
  436. package/dist/src/schemas/notification.mjs +31 -31
  437. package/dist/src/schemas/notification.mjs.map +1 -1
  438. package/dist/src/schemas/packageApi.cjs +28 -28
  439. package/dist/src/schemas/packageApi.cjs.map +1 -1
  440. package/dist/src/schemas/packageApi.d.mts +91 -65
  441. package/dist/src/schemas/packageApi.d.mts.map +1 -1
  442. package/dist/src/schemas/packageApi.mjs +18 -18
  443. package/dist/src/schemas/packageApi.mjs.map +1 -1
  444. package/dist/src/schemas/platform.cjs +34 -0
  445. package/dist/src/schemas/platform.cjs.map +1 -0
  446. package/dist/src/schemas/platform.d.mts +75 -0
  447. package/dist/src/schemas/platform.d.mts.map +1 -0
  448. package/dist/src/schemas/platform.mjs +27 -0
  449. package/dist/src/schemas/platform.mjs.map +1 -0
  450. package/dist/src/schemas/pluginContributions.cjs.map +1 -1
  451. package/dist/src/schemas/pluginContributions.d.mts +12 -12
  452. package/dist/src/schemas/pluginContributions.d.mts.map +1 -1
  453. package/dist/src/schemas/pluginContributions.mjs.map +1 -1
  454. package/dist/src/schemas/pluginProtocol.cjs +24 -27
  455. package/dist/src/schemas/pluginProtocol.cjs.map +1 -1
  456. package/dist/src/schemas/pluginProtocol.d.mts +21 -21
  457. package/dist/src/schemas/pluginProtocol.d.mts.map +1 -1
  458. package/dist/src/schemas/pluginProtocol.mjs +18 -20
  459. package/dist/src/schemas/pluginProtocol.mjs.map +1 -1
  460. package/dist/src/schemas/profileIdentity.cjs +2 -2
  461. package/dist/src/schemas/profileIdentity.cjs.map +1 -1
  462. package/dist/src/schemas/profileIdentity.d.mts +1 -1
  463. package/dist/src/schemas/profileIdentity.mjs +2 -2
  464. package/dist/src/schemas/profileIdentity.mjs.map +1 -1
  465. package/dist/src/schemas/protocolChannelsContract.cjs +27 -0
  466. package/dist/src/schemas/protocolChannelsContract.cjs.map +1 -0
  467. package/dist/src/schemas/protocolChannelsContract.d.mts +37 -0
  468. package/dist/src/schemas/protocolChannelsContract.d.mts.map +1 -0
  469. package/dist/src/schemas/protocolChannelsContract.mjs +25 -0
  470. package/dist/src/schemas/protocolChannelsContract.mjs.map +1 -0
  471. package/dist/src/schemas/protocolContracts.cjs +168 -0
  472. package/dist/src/schemas/protocolContracts.cjs.map +1 -0
  473. package/dist/src/schemas/protocolContracts.d.mts +69 -0
  474. package/dist/src/schemas/protocolContracts.d.mts.map +1 -0
  475. package/dist/src/schemas/protocolContracts.mjs +164 -0
  476. package/dist/src/schemas/protocolContracts.mjs.map +1 -0
  477. package/dist/src/schemas/protocolHubContract.cjs +51 -0
  478. package/dist/src/schemas/protocolHubContract.cjs.map +1 -0
  479. package/dist/src/schemas/protocolHubContract.d.mts +218 -0
  480. package/dist/src/schemas/protocolHubContract.d.mts.map +1 -0
  481. package/dist/src/schemas/protocolHubContract.mjs +49 -0
  482. package/dist/src/schemas/protocolHubContract.mjs.map +1 -0
  483. package/dist/src/schemas/protocolSessionContract.cjs +22 -0
  484. package/dist/src/schemas/protocolSessionContract.cjs.map +1 -0
  485. package/dist/src/schemas/protocolSessionContract.d.mts +324 -0
  486. package/dist/src/schemas/protocolSessionContract.d.mts.map +1 -0
  487. package/dist/src/schemas/protocolSessionContract.mjs +22 -0
  488. package/dist/src/schemas/protocolSessionContract.mjs.map +1 -0
  489. package/dist/src/schemas/protocolThreadContract.cjs +21 -0
  490. package/dist/src/schemas/protocolThreadContract.cjs.map +1 -0
  491. package/dist/src/schemas/protocolThreadContract.d.mts +29 -0
  492. package/dist/src/schemas/protocolThreadContract.d.mts.map +1 -0
  493. package/dist/src/schemas/protocolThreadContract.mjs +20 -0
  494. package/dist/src/schemas/protocolThreadContract.mjs.map +1 -0
  495. package/dist/src/schemas/readiness.cjs +36 -36
  496. package/dist/src/schemas/readiness.cjs.map +1 -1
  497. package/dist/src/schemas/readiness.d.mts +37 -37
  498. package/dist/src/schemas/readiness.d.mts.map +1 -1
  499. package/dist/src/schemas/readiness.mjs +31 -31
  500. package/dist/src/schemas/readiness.mjs.map +1 -1
  501. package/dist/src/schemas/serverBundle.d.mts +5 -5
  502. package/dist/src/schemas/serverPlugin.cjs +103 -0
  503. package/dist/src/schemas/serverPlugin.cjs.map +1 -0
  504. package/dist/src/schemas/serverPlugin.d.mts +176 -0
  505. package/dist/src/schemas/serverPlugin.d.mts.map +1 -0
  506. package/dist/src/schemas/serverPlugin.mjs +95 -0
  507. package/dist/src/schemas/serverPlugin.mjs.map +1 -0
  508. package/dist/src/schemas/serverScope.cjs +37 -0
  509. package/dist/src/schemas/serverScope.cjs.map +1 -0
  510. package/dist/src/schemas/serverScope.d.mts +77 -0
  511. package/dist/src/schemas/serverScope.d.mts.map +1 -0
  512. package/dist/src/schemas/serverScope.mjs +33 -0
  513. package/dist/src/schemas/serverScope.mjs.map +1 -0
  514. package/dist/src/schemas/sessionApiContracts.cjs +320 -0
  515. package/dist/src/schemas/sessionApiContracts.cjs.map +1 -0
  516. package/dist/src/schemas/sessionApiContracts.mjs +318 -0
  517. package/dist/src/schemas/sessionApiContracts.mjs.map +1 -0
  518. package/dist/src/schemas/sessionProtocol.cjs +20 -13
  519. package/dist/src/schemas/sessionProtocol.cjs.map +1 -1
  520. package/dist/src/schemas/sessionProtocol.d.mts +37 -54
  521. package/dist/src/schemas/sessionProtocol.d.mts.map +1 -1
  522. package/dist/src/schemas/sessionProtocol.mjs +17 -8
  523. package/dist/src/schemas/sessionProtocol.mjs.map +1 -1
  524. package/dist/src/schemas/skills.cjs +16 -16
  525. package/dist/src/schemas/skills.cjs.map +1 -1
  526. package/dist/src/schemas/skills.d.mts +7 -7
  527. package/dist/src/schemas/skills.d.mts.map +1 -1
  528. package/dist/src/schemas/skills.mjs +12 -12
  529. package/dist/src/schemas/skills.mjs.map +1 -1
  530. package/dist/src/schemas/toolOverrides.cjs +9 -9
  531. package/dist/src/schemas/toolOverrides.cjs.map +1 -1
  532. package/dist/src/schemas/toolOverrides.d.mts +8 -8
  533. package/dist/src/schemas/toolOverrides.d.mts.map +1 -1
  534. package/dist/src/schemas/toolOverrides.mjs +7 -7
  535. package/dist/src/schemas/toolOverrides.mjs.map +1 -1
  536. package/dist/src/schemas/toolSurface.cjs +9 -9
  537. package/dist/src/schemas/toolSurface.cjs.map +1 -1
  538. package/dist/src/schemas/toolSurface.d.mts +13 -13
  539. package/dist/src/schemas/toolSurface.d.mts.map +1 -1
  540. package/dist/src/schemas/toolSurface.mjs +7 -7
  541. package/dist/src/schemas/toolSurface.mjs.map +1 -1
  542. package/dist/src/schemas/uiHub.cjs +9 -9
  543. package/dist/src/schemas/uiHub.cjs.map +1 -1
  544. package/dist/src/schemas/uiHub.d.mts +12 -12
  545. package/dist/src/schemas/uiHub.d.mts.map +1 -1
  546. package/dist/src/schemas/uiHub.mjs +7 -7
  547. package/dist/src/schemas/uiHub.mjs.map +1 -1
  548. package/dist/src/server/directHarnessRuntime.cjs +691 -775
  549. package/dist/src/server/directHarnessRuntime.cjs.map +1 -1
  550. package/dist/src/server/directHarnessRuntime.d.mts +5 -1
  551. package/dist/src/server/directHarnessRuntime.d.mts.map +1 -0
  552. package/dist/src/server/directHarnessRuntime.mjs +671 -754
  553. package/dist/src/server/directHarnessRuntime.mjs.map +1 -1
  554. package/dist/src/server/largeFrameLink.cjs +47 -0
  555. package/dist/src/server/largeFrameLink.cjs.map +1 -0
  556. package/dist/src/server/largeFrameLink.mjs +47 -0
  557. package/dist/src/server/largeFrameLink.mjs.map +1 -0
  558. package/dist/src/server/liveImport.cjs +1 -1
  559. package/dist/src/server/liveImport.cjs.map +1 -1
  560. package/dist/src/server/liveImport.d.mts +1 -1
  561. package/dist/src/server/liveImport.mjs +1 -1
  562. package/dist/src/server/liveImport.mjs.map +1 -1
  563. package/dist/src/server/mcpBundleLoader.cjs.map +1 -1
  564. package/dist/src/server/mcpBundleLoader.d.mts +6 -6
  565. package/dist/src/server/mcpBundleLoader.d.mts.map +1 -1
  566. package/dist/src/server/mcpBundleLoader.mjs.map +1 -1
  567. package/dist/src/server/serverPackages.cjs +60 -0
  568. package/dist/src/server/serverPackages.cjs.map +1 -0
  569. package/dist/src/server/serverPackages.d.mts +44 -0
  570. package/dist/src/server/serverPackages.d.mts.map +1 -0
  571. package/dist/src/server/serverPackages.mjs +59 -0
  572. package/dist/src/server/serverPackages.mjs.map +1 -0
  573. package/dist/src/server/serverScope.cjs +510 -0
  574. package/dist/src/server/serverScope.cjs.map +1 -0
  575. package/dist/src/server/serverScope.d.mts +123 -0
  576. package/dist/src/server/serverScope.d.mts.map +1 -0
  577. package/dist/src/server/serverScope.mjs +510 -0
  578. package/dist/src/server/serverScope.mjs.map +1 -0
  579. package/dist/src/server/sessionMcpHandler.cjs +3 -3
  580. package/dist/src/server/sessionMcpHandler.cjs.map +1 -1
  581. package/dist/src/server/sessionMcpHandler.mjs +4 -4
  582. package/dist/src/server/sessionMcpHandler.mjs.map +1 -1
  583. package/dist/src/server/sessionMcpRoutes.cjs +2 -1
  584. package/dist/src/server/sessionMcpRoutes.cjs.map +1 -1
  585. package/dist/src/server/sessionMcpRoutes.mjs +2 -1
  586. package/dist/src/server/sessionMcpRoutes.mjs.map +1 -1
  587. package/dist/src/server/threadJournals.cjs +38 -107
  588. package/dist/src/server/threadJournals.cjs.map +1 -1
  589. package/dist/src/server/threadJournals.mjs +38 -104
  590. package/dist/src/server/threadJournals.mjs.map +1 -1
  591. package/dist/src/services/apiSurfaceAssert/index.cjs +1 -1
  592. package/dist/src/services/apiSurfaceAssert/index.cjs.map +1 -1
  593. package/dist/src/services/apiSurfaceAssert/index.d.mts +6 -6
  594. package/dist/src/services/apiSurfaceAssert/index.mjs +1 -1
  595. package/dist/src/services/apiSurfaceAssert/index.mjs.map +1 -1
  596. package/dist/src/services/chatgptAuth/index.cjs +1 -220
  597. package/dist/src/services/chatgptAuth/index.cjs.map +1 -1
  598. package/dist/src/services/chatgptAuth/index.d.mts +0 -18
  599. package/dist/src/services/chatgptAuth/index.d.mts.map +1 -1
  600. package/dist/src/services/chatgptAuth/index.mjs +1 -217
  601. package/dist/src/services/chatgptAuth/index.mjs.map +1 -1
  602. package/dist/src/services/chatgptImages/index.cjs +1 -1
  603. package/dist/src/services/chatgptImages/index.cjs.map +1 -1
  604. package/dist/src/services/chatgptImages/index.mjs +1 -1
  605. package/dist/src/services/chatgptImages/index.mjs.map +1 -1
  606. package/dist/src/services/chatgptLogin/index.cjs +230 -0
  607. package/dist/src/services/chatgptLogin/index.cjs.map +1 -0
  608. package/dist/src/services/chatgptLogin/index.d.mts +21 -0
  609. package/dist/src/services/chatgptLogin/index.d.mts.map +1 -0
  610. package/dist/src/services/chatgptLogin/index.mjs +227 -0
  611. package/dist/src/services/chatgptLogin/index.mjs.map +1 -0
  612. package/dist/src/services/chatgptWebSearch/index.cjs +1 -1
  613. package/dist/src/services/chatgptWebSearch/index.cjs.map +1 -1
  614. package/dist/src/services/chatgptWebSearch/index.mjs +1 -1
  615. package/dist/src/services/chatgptWebSearch/index.mjs.map +1 -1
  616. package/dist/src/services/contextContributions/index.cjs +8 -8
  617. package/dist/src/services/contextContributions/index.cjs.map +1 -1
  618. package/dist/src/services/contextContributions/index.d.mts +3 -3
  619. package/dist/src/services/contextContributions/index.d.mts.map +1 -1
  620. package/dist/src/services/contextContributions/index.mjs +8 -8
  621. package/dist/src/services/contextContributions/index.mjs.map +1 -1
  622. package/dist/src/services/devProxyStore/devProxyRecords.cjs +59 -0
  623. package/dist/src/services/devProxyStore/devProxyRecords.cjs.map +1 -0
  624. package/dist/src/services/devProxyStore/devProxyRecords.mjs +56 -0
  625. package/dist/src/services/devProxyStore/devProxyRecords.mjs.map +1 -0
  626. package/dist/src/services/devProxyStore/index.cjs +7 -101
  627. package/dist/src/services/devProxyStore/index.cjs.map +1 -1
  628. package/dist/src/services/devProxyStore/index.mjs +7 -101
  629. package/dist/src/services/devProxyStore/index.mjs.map +1 -1
  630. package/dist/src/services/devProxyStore/sync.cjs +66 -0
  631. package/dist/src/services/devProxyStore/sync.cjs.map +1 -0
  632. package/dist/src/services/devProxyStore/sync.mjs +63 -0
  633. package/dist/src/services/devProxyStore/sync.mjs.map +1 -0
  634. package/dist/src/services/durableNavigation/docs.cjs +15 -0
  635. package/dist/src/services/durableNavigation/docs.cjs.map +1 -0
  636. package/dist/src/services/durableNavigation/docs.mjs +16 -0
  637. package/dist/src/services/durableNavigation/docs.mjs.map +1 -0
  638. package/dist/src/services/durableNavigation/index.cjs +3 -18
  639. package/dist/src/services/durableNavigation/index.cjs.map +1 -1
  640. package/dist/src/services/durableNavigation/index.mjs +2 -17
  641. package/dist/src/services/durableNavigation/index.mjs.map +1 -1
  642. package/dist/src/services/durableQueue/docs.cjs +12 -0
  643. package/dist/src/services/durableQueue/docs.cjs.map +1 -0
  644. package/dist/src/services/durableQueue/docs.mjs +13 -0
  645. package/dist/src/services/durableQueue/docs.mjs.map +1 -0
  646. package/dist/src/services/durableQueue/index.cjs +151 -0
  647. package/dist/src/services/durableQueue/index.cjs.map +1 -0
  648. package/dist/src/services/durableQueue/index.mjs +149 -0
  649. package/dist/src/services/durableQueue/index.mjs.map +1 -0
  650. package/dist/src/services/durableRequestReceipts/docs.cjs +11 -0
  651. package/dist/src/services/durableRequestReceipts/docs.cjs.map +1 -0
  652. package/dist/src/services/durableRequestReceipts/docs.mjs +12 -0
  653. package/dist/src/services/durableRequestReceipts/docs.mjs.map +1 -0
  654. package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.cjs +10 -16
  655. package/dist/src/services/durableRequestReceipts/index.cjs.map +1 -0
  656. package/dist/src/services/durableRequestReceipts/index.d.mts +12 -0
  657. package/dist/src/services/durableRequestReceipts/index.d.mts.map +1 -0
  658. package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.mjs +7 -13
  659. package/dist/src/services/durableRequestReceipts/index.mjs.map +1 -0
  660. package/dist/src/services/durableSession/docs.cjs +65 -0
  661. package/dist/src/services/durableSession/docs.cjs.map +1 -0
  662. package/dist/src/services/durableSession/docs.d.mts +17 -0
  663. package/dist/src/services/durableSession/docs.d.mts.map +1 -0
  664. package/dist/src/services/durableSession/docs.mjs +60 -0
  665. package/dist/src/services/durableSession/docs.mjs.map +1 -0
  666. package/dist/src/services/durableSession/index.cjs +21 -0
  667. package/dist/src/services/durableSession/index.cjs.map +1 -0
  668. package/dist/src/services/durableSession/index.d.mts +13 -0
  669. package/dist/src/services/durableSession/index.d.mts.map +1 -0
  670. package/dist/src/services/durableSession/index.mjs +20 -0
  671. package/dist/src/services/durableSession/index.mjs.map +1 -0
  672. package/dist/src/services/durableSubagents/docs.cjs +15 -0
  673. package/dist/src/services/durableSubagents/docs.cjs.map +1 -0
  674. package/dist/src/services/durableSubagents/docs.mjs +16 -0
  675. package/dist/src/services/durableSubagents/docs.mjs.map +1 -0
  676. package/dist/src/services/durableSubagents/extension.cjs +11 -0
  677. package/dist/src/services/durableSubagents/extension.cjs.map +1 -0
  678. package/dist/src/services/durableSubagents/extension.mjs +12 -0
  679. package/dist/src/services/durableSubagents/extension.mjs.map +1 -0
  680. package/dist/src/services/durableSubagents/index.cjs +95 -0
  681. package/dist/src/services/durableSubagents/index.cjs.map +1 -0
  682. package/dist/src/services/durableSubagents/index.mjs +90 -0
  683. package/dist/src/services/durableSubagents/index.mjs.map +1 -0
  684. package/dist/src/services/durableSubagents/tasks.cjs +25 -0
  685. package/dist/src/services/durableSubagents/tasks.cjs.map +1 -0
  686. package/dist/src/services/durableSubagents/tasks.mjs +26 -0
  687. package/dist/src/services/durableSubagents/tasks.mjs.map +1 -0
  688. package/dist/src/services/headlessClient/index.cjs +20 -13
  689. package/dist/src/services/headlessClient/index.cjs.map +1 -1
  690. package/dist/src/services/headlessClient/index.mjs +21 -14
  691. package/dist/src/services/headlessClient/index.mjs.map +1 -1
  692. package/dist/src/services/historyOwnership/type.d.mts +15 -0
  693. package/dist/src/services/historyOwnership/type.d.mts.map +1 -0
  694. package/dist/src/services/hubChannelHarness/index.cjs +2 -2
  695. package/dist/src/services/hubChannelHarness/index.cjs.map +1 -1
  696. package/dist/src/services/hubChannelHarness/index.d.mts +8 -8
  697. package/dist/src/services/hubChannelHarness/index.d.mts.map +1 -1
  698. package/dist/src/services/hubChannelHarness/index.mjs +2 -2
  699. package/dist/src/services/hubChannelHarness/index.mjs.map +1 -1
  700. package/dist/src/services/json/core.cjs +30 -0
  701. package/dist/src/services/json/core.cjs.map +1 -0
  702. package/dist/src/services/json/core.d.mts +21 -0
  703. package/dist/src/services/json/core.d.mts.map +1 -0
  704. package/dist/src/services/json/core.mjs +26 -0
  705. package/dist/src/services/json/core.mjs.map +1 -0
  706. package/dist/src/services/json/sync.cjs +48 -0
  707. package/dist/src/services/json/sync.cjs.map +1 -0
  708. package/dist/src/services/json/sync.d.mts +22 -0
  709. package/dist/src/services/json/sync.d.mts.map +1 -0
  710. package/dist/src/services/json/sync.mjs +43 -0
  711. package/dist/src/services/json/sync.mjs.map +1 -0
  712. package/dist/src/services/kernel/index.cjs +2 -2
  713. package/dist/src/services/kernel/index.cjs.map +1 -1
  714. package/dist/src/services/kernel/index.d.mts +3 -3
  715. package/dist/src/services/kernel/index.d.mts.map +1 -1
  716. package/dist/src/services/kernel/index.mjs +2 -2
  717. package/dist/src/services/kernel/index.mjs.map +1 -1
  718. package/dist/src/services/nativeChildTools/index.cjs +16 -0
  719. package/dist/src/services/nativeChildTools/index.cjs.map +1 -0
  720. package/dist/src/services/nativeChildTools/index.mjs +16 -0
  721. package/dist/src/services/nativeChildTools/index.mjs.map +1 -0
  722. package/dist/src/services/nodeHost/index.cjs +30 -0
  723. package/dist/src/services/nodeHost/index.cjs.map +1 -0
  724. package/dist/src/services/nodeHost/index.d.mts +16 -0
  725. package/dist/src/services/nodeHost/index.d.mts.map +1 -0
  726. package/dist/src/services/nodeHost/index.mjs +27 -0
  727. package/dist/src/services/nodeHost/index.mjs.map +1 -0
  728. package/dist/src/services/nodeModelDependencies/index.cjs +89 -0
  729. package/dist/src/services/nodeModelDependencies/index.cjs.map +1 -0
  730. package/dist/src/services/nodeModelDependencies/index.mjs +86 -0
  731. package/dist/src/services/nodeModelDependencies/index.mjs.map +1 -0
  732. package/dist/src/services/openSessionRegistry/index.cjs +6 -128
  733. package/dist/src/services/openSessionRegistry/index.cjs.map +1 -1
  734. package/dist/src/services/openSessionRegistry/index.d.mts +5 -36
  735. package/dist/src/services/openSessionRegistry/index.mjs +6 -128
  736. package/dist/src/services/openSessionRegistry/index.mjs.map +1 -1
  737. package/dist/src/services/openSessionRegistry/openSessionRecords.cjs +87 -0
  738. package/dist/src/services/openSessionRegistry/openSessionRecords.cjs.map +1 -0
  739. package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts +30 -0
  740. package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts.map +1 -0
  741. package/dist/src/services/openSessionRegistry/openSessionRecords.mjs +81 -0
  742. package/dist/src/services/openSessionRegistry/openSessionRecords.mjs.map +1 -0
  743. package/dist/src/services/openSessionRegistry/sync.cjs +71 -0
  744. package/dist/src/services/openSessionRegistry/sync.cjs.map +1 -0
  745. package/dist/src/services/openSessionRegistry/sync.d.mts +14 -0
  746. package/dist/src/services/openSessionRegistry/sync.d.mts.map +1 -0
  747. package/dist/src/services/openSessionRegistry/sync.mjs +68 -0
  748. package/dist/src/services/openSessionRegistry/sync.mjs.map +1 -0
  749. package/dist/src/services/packageApiHarness/index.cjs +1 -1
  750. package/dist/src/services/packageApiHarness/index.cjs.map +1 -1
  751. package/dist/src/services/packageApiHarness/index.d.mts +6 -6
  752. package/dist/src/services/packageApiHarness/index.d.mts.map +1 -1
  753. package/dist/src/services/packageApiHarness/index.mjs +2 -2
  754. package/dist/src/services/packageApiHarness/index.mjs.map +1 -1
  755. package/dist/src/services/piArgs/index.cjs +53 -0
  756. package/dist/src/services/piArgs/index.cjs.map +1 -0
  757. package/dist/src/services/piArgs/index.d.mts +6 -0
  758. package/dist/src/services/piArgs/index.d.mts.map +1 -0
  759. package/dist/src/services/piArgs/index.mjs +53 -0
  760. package/dist/src/services/piArgs/index.mjs.map +1 -0
  761. package/dist/src/services/piExtensionHost/index.cjs +47 -39
  762. package/dist/src/services/piExtensionHost/index.cjs.map +1 -1
  763. package/dist/src/services/piExtensionHost/index.d.mts +83 -0
  764. package/dist/src/services/piExtensionHost/index.d.mts.map +1 -0
  765. package/dist/src/services/piExtensionHost/index.mjs +47 -38
  766. package/dist/src/services/piExtensionHost/index.mjs.map +1 -1
  767. package/dist/src/services/piHelpTools/index.cjs +5 -5
  768. package/dist/src/services/piHelpTools/index.cjs.map +1 -1
  769. package/dist/src/services/piHelpTools/index.d.mts.map +1 -1
  770. package/dist/src/services/piHelpTools/index.mjs +7 -7
  771. package/dist/src/services/piHelpTools/index.mjs.map +1 -1
  772. package/dist/src/services/piMessages/index.cjs +106 -0
  773. package/dist/src/services/piMessages/index.cjs.map +1 -0
  774. package/dist/src/services/piMessages/index.mjs +105 -0
  775. package/dist/src/services/piMessages/index.mjs.map +1 -0
  776. package/dist/src/services/piSessionEntries/index.cjs +4 -4
  777. package/dist/src/services/piSessionEntries/index.cjs.map +1 -1
  778. package/dist/src/services/piSessionEntries/index.mjs +3 -3
  779. package/dist/src/services/piSessionEntries/index.mjs.map +1 -1
  780. package/dist/src/services/piSettings/core.cjs +308 -0
  781. package/dist/src/services/piSettings/core.cjs.map +1 -0
  782. package/dist/src/services/piSettings/core.d.mts +102 -0
  783. package/dist/src/services/piSettings/core.d.mts.map +1 -0
  784. package/dist/src/services/piSettings/core.mjs +276 -0
  785. package/dist/src/services/piSettings/core.mjs.map +1 -0
  786. package/dist/src/services/piSettings/sync.cjs +119 -0
  787. package/dist/src/services/piSettings/sync.cjs.map +1 -0
  788. package/dist/src/services/piSettings/sync.d.mts +44 -0
  789. package/dist/src/services/piSettings/sync.d.mts.map +1 -0
  790. package/dist/src/services/piSettings/sync.mjs +110 -0
  791. package/dist/src/services/piSettings/sync.mjs.map +1 -0
  792. package/dist/src/services/piSummary/index.cjs +7 -0
  793. package/dist/src/services/piSummary/index.cjs.map +1 -0
  794. package/dist/src/services/piSummary/index.mjs +7 -0
  795. package/dist/src/services/piSummary/index.mjs.map +1 -0
  796. package/dist/src/services/platformFiles/index.cjs +44 -0
  797. package/dist/src/services/platformFiles/index.cjs.map +1 -0
  798. package/dist/src/services/platformFiles/index.d.mts +16 -0
  799. package/dist/src/services/platformFiles/index.d.mts.map +1 -0
  800. package/dist/src/services/platformFiles/index.mjs +39 -0
  801. package/dist/src/services/platformFiles/index.mjs.map +1 -0
  802. package/dist/src/services/pluginLifecycle/index.cjs +19 -13
  803. package/dist/src/services/pluginLifecycle/index.cjs.map +1 -1
  804. package/dist/src/services/pluginLifecycle/index.d.mts +2 -0
  805. package/dist/src/services/pluginLifecycle/index.d.mts.map +1 -1
  806. package/dist/src/services/pluginLifecycle/index.mjs +19 -14
  807. package/dist/src/services/pluginLifecycle/index.mjs.map +1 -1
  808. package/dist/src/services/poPackage/core.cjs +73 -0
  809. package/dist/src/services/poPackage/core.cjs.map +1 -0
  810. package/dist/src/services/poPackage/core.d.mts +32 -0
  811. package/dist/src/services/poPackage/core.d.mts.map +1 -0
  812. package/dist/src/services/poPackage/core.mjs +66 -0
  813. package/dist/src/services/poPackage/core.mjs.map +1 -0
  814. package/dist/src/services/poPackage/sync.cjs +55 -0
  815. package/dist/src/services/poPackage/sync.cjs.map +1 -0
  816. package/dist/src/services/poPackage/sync.d.mts +21 -0
  817. package/dist/src/services/poPackage/sync.d.mts.map +1 -0
  818. package/dist/src/services/poPackage/sync.mjs +50 -0
  819. package/dist/src/services/poPackage/sync.mjs.map +1 -0
  820. package/dist/src/services/providerAuth/index.cjs +11 -7
  821. package/dist/src/services/providerAuth/index.cjs.map +1 -1
  822. package/dist/src/services/providerAuth/index.mjs +11 -7
  823. package/dist/src/services/providerAuth/index.mjs.map +1 -1
  824. package/dist/src/services/publicFileShares/index.cjs +1 -1
  825. package/dist/src/services/publicFileShares/index.cjs.map +1 -1
  826. package/dist/src/services/publicFileShares/index.d.mts +2 -2
  827. package/dist/src/services/publicFileShares/index.mjs +2 -2
  828. package/dist/src/services/publicFileShares/index.mjs.map +1 -1
  829. package/dist/src/services/remoteAccess/index.d.mts +1 -0
  830. package/dist/src/services/remoteAccess/index.d.mts.map +1 -1
  831. package/dist/src/services/remoteAccessStore/index.cjs +8 -190
  832. package/dist/src/services/remoteAccessStore/index.cjs.map +1 -1
  833. package/dist/src/services/remoteAccessStore/index.d.mts +2 -0
  834. package/dist/src/services/remoteAccessStore/index.mjs +7 -187
  835. package/dist/src/services/remoteAccessStore/index.mjs.map +1 -1
  836. package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs +98 -0
  837. package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs.map +1 -0
  838. package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs +88 -0
  839. package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs.map +1 -0
  840. package/dist/src/services/remoteAccessStore/sync.cjs +111 -0
  841. package/dist/src/services/remoteAccessStore/sync.cjs.map +1 -0
  842. package/dist/src/services/remoteAccessStore/sync.mjs +108 -0
  843. package/dist/src/services/remoteAccessStore/sync.mjs.map +1 -0
  844. package/dist/src/services/runtimeIdentity/sync.cjs +23 -0
  845. package/dist/src/services/runtimeIdentity/sync.cjs.map +1 -0
  846. package/dist/src/services/runtimeIdentity/sync.d.mts +9 -0
  847. package/dist/src/services/runtimeIdentity/sync.d.mts.map +1 -0
  848. package/dist/src/services/runtimeIdentity/sync.mjs +20 -0
  849. package/dist/src/services/runtimeIdentity/sync.mjs.map +1 -0
  850. package/dist/src/services/serialRunner/index.cjs +25 -0
  851. package/dist/src/services/serialRunner/index.cjs.map +1 -0
  852. package/dist/src/services/serialRunner/index.d.mts +10 -0
  853. package/dist/src/services/serialRunner/index.d.mts.map +1 -0
  854. package/dist/src/services/serialRunner/index.mjs +25 -0
  855. package/dist/src/services/serialRunner/index.mjs.map +1 -0
  856. package/dist/src/services/{serverFacet → serverHost}/index.cjs +5 -5
  857. package/dist/src/services/serverHost/index.cjs.map +1 -0
  858. package/dist/src/services/serverHost/index.d.mts +31 -0
  859. package/dist/src/services/serverHost/index.d.mts.map +1 -0
  860. package/dist/src/services/{serverFacet → serverHost}/index.mjs +5 -5
  861. package/dist/src/services/serverHost/index.mjs.map +1 -0
  862. package/dist/src/services/sessionAttachments/index.cjs +4 -3
  863. package/dist/src/services/sessionAttachments/index.cjs.map +1 -1
  864. package/dist/src/services/sessionAttachments/index.d.mts +1 -6
  865. package/dist/src/services/sessionAttachments/index.d.mts.map +1 -1
  866. package/dist/src/services/sessionAttachments/index.mjs +3 -2
  867. package/dist/src/services/sessionAttachments/index.mjs.map +1 -1
  868. package/dist/src/services/sessionAttachments/type.d.mts +9 -0
  869. package/dist/src/services/sessionAttachments/type.d.mts.map +1 -0
  870. package/dist/src/services/sessionFiles/index.cjs +96 -0
  871. package/dist/src/services/sessionFiles/index.cjs.map +1 -0
  872. package/dist/src/services/sessionFiles/index.d.mts +33 -0
  873. package/dist/src/services/sessionFiles/index.d.mts.map +1 -0
  874. package/dist/src/services/sessionFiles/index.mjs +89 -0
  875. package/dist/src/services/sessionFiles/index.mjs.map +1 -0
  876. package/dist/src/services/sessionFiles/sessionDirectory.cjs +66 -0
  877. package/dist/src/services/sessionFiles/sessionDirectory.cjs.map +1 -0
  878. package/dist/src/services/sessionFiles/sessionDirectory.mjs +62 -0
  879. package/dist/src/services/sessionFiles/sessionDirectory.mjs.map +1 -0
  880. package/dist/src/services/sessionGitStatus/index.cjs +31 -33
  881. package/dist/src/services/sessionGitStatus/index.cjs.map +1 -1
  882. package/dist/src/services/sessionGitStatus/index.mjs +31 -33
  883. package/dist/src/services/sessionGitStatus/index.mjs.map +1 -1
  884. package/dist/src/services/sessionPresentation/index.cjs +3 -27
  885. package/dist/src/services/sessionPresentation/index.cjs.map +1 -1
  886. package/dist/src/services/sessionPresentation/index.mjs +3 -27
  887. package/dist/src/services/sessionPresentation/index.mjs.map +1 -1
  888. package/dist/src/services/skillPrompt/index.cjs +11 -0
  889. package/dist/src/services/skillPrompt/index.cjs.map +1 -0
  890. package/dist/src/services/skillPrompt/index.mjs +11 -0
  891. package/dist/src/services/skillPrompt/index.mjs.map +1 -0
  892. package/dist/src/services/sqliteSessionHistory/index.cjs +44 -30
  893. package/dist/src/services/sqliteSessionHistory/index.cjs.map +1 -1
  894. package/dist/src/services/sqliteSessionHistory/index.d.mts +7 -4
  895. package/dist/src/services/sqliteSessionHistory/index.d.mts.map +1 -1
  896. package/dist/src/services/sqliteSessionHistory/index.mjs +43 -28
  897. package/dist/src/services/sqliteSessionHistory/index.mjs.map +1 -1
  898. package/dist/src/services/sqliteTranscriptReader/index.cjs +21 -45
  899. package/dist/src/services/sqliteTranscriptReader/index.cjs.map +1 -1
  900. package/dist/src/services/sqliteTranscriptReader/index.d.mts +3 -2
  901. package/dist/src/services/sqliteTranscriptReader/index.d.mts.map +1 -1
  902. package/dist/src/services/sqliteTranscriptReader/index.mjs +16 -38
  903. package/dist/src/services/sqliteTranscriptReader/index.mjs.map +1 -1
  904. package/dist/src/services/testMode/index.cjs +162 -0
  905. package/dist/src/services/testMode/index.cjs.map +1 -0
  906. package/dist/src/services/testMode/index.d.mts +17 -0
  907. package/dist/src/services/testMode/index.d.mts.map +1 -0
  908. package/dist/src/services/testMode/index.mjs +155 -0
  909. package/dist/src/services/testMode/index.mjs.map +1 -0
  910. package/dist/src/services/toolOverrides/index.cjs +6 -6
  911. package/dist/src/services/toolOverrides/index.cjs.map +1 -1
  912. package/dist/src/services/toolOverrides/index.d.mts +3 -3
  913. package/dist/src/services/toolOverrides/index.d.mts.map +1 -1
  914. package/dist/src/services/toolOverrides/index.mjs +6 -6
  915. package/dist/src/services/toolOverrides/index.mjs.map +1 -1
  916. package/dist/src/services/toolPrompt/index.d.mts +17 -0
  917. package/dist/src/services/toolPrompt/index.d.mts.map +1 -0
  918. package/dist/src/services/toolSurface/index.cjs +3 -3
  919. package/dist/src/services/toolSurface/index.cjs.map +1 -1
  920. package/dist/src/services/toolSurface/index.d.mts +3 -3
  921. package/dist/src/services/toolSurface/index.d.mts.map +1 -1
  922. package/dist/src/services/toolSurface/index.mjs +4 -4
  923. package/dist/src/services/toolSurface/index.mjs.map +1 -1
  924. package/dist/src/services/traceContext/index.cjs.map +1 -1
  925. package/dist/src/services/traceContext/index.mjs.map +1 -1
  926. package/dist/src/services/transcriptPages/index.cjs +159 -33
  927. package/dist/src/services/transcriptPages/index.cjs.map +1 -1
  928. package/dist/src/services/transcriptPages/index.mjs +158 -34
  929. package/dist/src/services/transcriptPages/index.mjs.map +1 -1
  930. package/dist/src/services/voiceToolsContract/index.cjs +7 -7
  931. package/dist/src/services/voiceToolsContract/index.cjs.map +1 -1
  932. package/dist/src/services/voiceToolsContract/index.d.mts +4 -4
  933. package/dist/src/services/voiceToolsContract/index.d.mts.map +1 -1
  934. package/dist/src/services/voiceToolsContract/index.mjs +7 -7
  935. package/dist/src/services/voiceToolsContract/index.mjs.map +1 -1
  936. package/dist/src/services/workspaceRegistry/index.cjs +9 -179
  937. package/dist/src/services/workspaceRegistry/index.cjs.map +1 -1
  938. package/dist/src/services/workspaceRegistry/index.d.mts +5 -47
  939. package/dist/src/services/workspaceRegistry/index.mjs +7 -176
  940. package/dist/src/services/workspaceRegistry/index.mjs.map +1 -1
  941. package/dist/src/services/workspaceRegistry/sync.cjs +148 -0
  942. package/dist/src/services/workspaceRegistry/sync.cjs.map +1 -0
  943. package/dist/src/services/workspaceRegistry/sync.d.mts +34 -0
  944. package/dist/src/services/workspaceRegistry/sync.d.mts.map +1 -0
  945. package/dist/src/services/workspaceRegistry/sync.mjs +140 -0
  946. package/dist/src/services/workspaceRegistry/sync.mjs.map +1 -0
  947. package/dist/src/services/workspaceRegistry/workspaceRecords.cjs +114 -0
  948. package/dist/src/services/workspaceRegistry/workspaceRecords.cjs.map +1 -0
  949. package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts +31 -0
  950. package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts.map +1 -0
  951. package/dist/src/services/workspaceRegistry/workspaceRecords.mjs +101 -0
  952. package/dist/src/services/workspaceRegistry/workspaceRecords.mjs.map +1 -0
  953. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs +339 -202
  954. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs.map +1 -1
  955. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts +16 -21
  956. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -1
  957. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs +329 -191
  958. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs.map +1 -1
  959. package/dist/src/systems/child/services/childSession/index.cjs +94 -20
  960. package/dist/src/systems/child/services/childSession/index.cjs.map +1 -1
  961. package/dist/src/systems/child/services/childSession/index.d.mts +12 -3
  962. package/dist/src/systems/child/services/childSession/index.d.mts.map +1 -1
  963. package/dist/src/systems/child/services/childSession/index.mjs +94 -20
  964. package/dist/src/systems/child/services/childSession/index.mjs.map +1 -1
  965. package/dist/src/systems/child/types/childSession.cjs +33 -13
  966. package/dist/src/systems/child/types/childSession.cjs.map +1 -1
  967. package/dist/src/systems/child/types/childSession.d.mts +143 -80
  968. package/dist/src/systems/child/types/childSession.d.mts.map +1 -1
  969. package/dist/src/systems/child/types/childSession.mjs +24 -9
  970. package/dist/src/systems/child/types/childSession.mjs.map +1 -1
  971. package/dist/src/systems/main/adapters/headlessHost.cjs +30 -27
  972. package/dist/src/systems/main/adapters/headlessHost.cjs.map +1 -1
  973. package/dist/src/systems/main/adapters/headlessHost.d.mts +22 -22
  974. package/dist/src/systems/main/adapters/headlessHost.d.mts.map +1 -1
  975. package/dist/src/systems/main/adapters/headlessHost.mjs +33 -30
  976. package/dist/src/systems/main/adapters/headlessHost.mjs.map +1 -1
  977. package/dist/src/systems/main/adapters/headlessSessionHost.cjs +248 -229
  978. package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
  979. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts +4 -5
  980. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
  981. package/dist/src/systems/main/adapters/headlessSessionHost.mjs +239 -219
  982. package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
  983. package/dist/src/systems/main/types/headlessHost.d.mts +16 -14
  984. package/dist/src/systems/main/types/headlessHost.d.mts.map +1 -1
  985. package/dist/src/testing/pi/testHost.cjs +2 -2
  986. package/dist/src/testing/pi/testHost.cjs.map +1 -1
  987. package/dist/src/testing/pi/testHost.d.mts +3 -2
  988. package/dist/src/testing/pi/testHost.mjs +3 -3
  989. package/dist/src/testing/pi/testHost.mjs.map +1 -1
  990. package/dist/src/types/config.d.mts +1 -1
  991. package/dist/src/types/config.d.mts.map +1 -1
  992. package/dist/src/types/kernel.d.mts +3 -3
  993. package/dist/src/types/server/directHarnessRuntime.d.mts +54 -25
  994. package/dist/src/types/server/directHarnessRuntime.d.mts.map +1 -1
  995. package/dist/src/types/server/sessionToolSurface.d.mts +9 -9
  996. package/dist/src/web/services/apiClient/index.d.mts +1 -0
  997. package/dist/src/web/services/apiPaths/index.cjs.map +1 -1
  998. package/dist/src/web/services/apiPaths/index.d.mts +1 -1
  999. package/dist/src/web/services/apiPaths/index.mjs.map +1 -1
  1000. package/dist/src/web/services/mcpWidget.cjs.map +1 -1
  1001. package/dist/src/web/services/mcpWidget.d.mts +2 -2
  1002. package/dist/src/web/services/mcpWidget.d.mts.map +1 -1
  1003. package/dist/src/web/services/mcpWidget.mjs.map +1 -1
  1004. package/dist/src/web/services/testing/templateRail.cjs +3 -0
  1005. package/dist/src/web/services/testing/templateRail.cjs.map +1 -1
  1006. package/dist/src/web/services/testing/templateRail.mjs +3 -0
  1007. package/dist/src/web/services/testing/templateRail.mjs.map +1 -1
  1008. package/dist/src/web/types/mcpWidget.d.mts +1 -1
  1009. package/dist/src/web/types/nativeTemplate.d.mts +1 -1
  1010. package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
  1011. package/dist/src/web/types/template.d.mts +8 -0
  1012. package/dist/src/web/types/template.d.mts.map +1 -1
  1013. package/dist/src/web/types/webPlugin.d.mts +17 -5
  1014. package/dist/src/web/types/webPlugin.d.mts.map +1 -1
  1015. package/dist/testMode.cjs +4 -0
  1016. package/dist/testMode.d.mts +2 -0
  1017. package/dist/testMode.mjs +1 -0
  1018. package/dist/testing.cjs +1 -1
  1019. package/dist/testing.d.mts +2 -2
  1020. package/dist/testing.mjs +2 -2
  1021. package/dist/toolInventory.cjs.map +1 -1
  1022. package/dist/toolInventory.mjs.map +1 -1
  1023. package/dist/toolNames.mjs +1 -2
  1024. package/dist/toolOverrides.cjs +4 -4
  1025. package/dist/toolOverrides.d.mts +3 -3
  1026. package/dist/toolOverrides.mjs +3 -3
  1027. package/dist/toolSurface.cjs +4 -4
  1028. package/dist/toolSurface.d.mts +3 -3
  1029. package/dist/toolSurface.mjs +3 -3
  1030. package/dist/transition.cjs +3 -3
  1031. package/dist/transition.d.cjs +3 -3
  1032. package/dist/transition.d.mts +2 -2
  1033. package/dist/transition.mjs +1 -2
  1034. package/dist/transitionClassifier.cjs.map +1 -1
  1035. package/dist/transitionClassifier.d.mts +2 -2
  1036. package/dist/transitionClassifier.d.mts.map +1 -1
  1037. package/dist/transitionClassifier.mjs.map +1 -1
  1038. package/dist/transitionCoordinator.cjs +3 -3
  1039. package/dist/transitionCoordinator.cjs.map +1 -1
  1040. package/dist/transitionCoordinator.d.mts +4 -4
  1041. package/dist/transitionCoordinator.d.mts.map +1 -1
  1042. package/dist/transitionCoordinator.mjs +3 -3
  1043. package/dist/transitionCoordinator.mjs.map +1 -1
  1044. package/dist/typesContextApi.d.mts +2 -1
  1045. package/dist/typesContextApi.d.mts.map +1 -1
  1046. package/dist/uiHub.cjs +3 -3
  1047. package/dist/uiHub.d.mts +2 -2
  1048. package/dist/uiHub.mjs +1 -2
  1049. package/dist/voiceTools.cjs +5 -5
  1050. package/dist/voiceTools.d.mts +3 -3
  1051. package/dist/voiceTools.mjs +3 -3
  1052. package/dist/web.cjs +8 -0
  1053. package/dist/web.d.mts +3 -2
  1054. package/dist/web.mjs +2 -1
  1055. package/dist/webCompositions.cjs.map +1 -1
  1056. package/dist/webCompositions.d.mts +7 -7
  1057. package/dist/webCompositions.d.mts.map +1 -1
  1058. package/dist/webCompositions.mjs.map +1 -1
  1059. package/licenses/Codex-Apache-2.0.txt +201 -0
  1060. package/package.json +58 -53
  1061. package/dist/doomPackage.cjs +0 -61
  1062. package/dist/doomPackage.cjs.map +0 -1
  1063. package/dist/doomPackage.d.mts +0 -17
  1064. package/dist/doomPackage.d.mts.map +0 -1
  1065. package/dist/doomPackage.mjs +0 -54
  1066. package/dist/doomPackage.mjs.map +0 -1
  1067. package/dist/jsonlSessionRepo.cjs +0 -44
  1068. package/dist/jsonlSessionRepo.cjs.map +0 -1
  1069. package/dist/jsonlSessionRepo.d.mts +0 -7
  1070. package/dist/jsonlSessionRepo.d.mts.map +0 -1
  1071. package/dist/jsonlSessionRepo.mjs +0 -42
  1072. package/dist/jsonlSessionRepo.mjs.map +0 -1
  1073. package/dist/runtimeJson.cjs.map +0 -1
  1074. package/dist/runtimeJson.d.mts.map +0 -1
  1075. package/dist/runtimeJson.mjs.map +0 -1
  1076. package/dist/runtimePiSettings.cjs.map +0 -1
  1077. package/dist/runtimePiSettings.d.mts.map +0 -1
  1078. package/dist/runtimePiSettings.mjs.map +0 -1
  1079. package/dist/serverFacet.cjs +0 -34
  1080. package/dist/serverFacet.d.mts +0 -10
  1081. package/dist/serverFacet.mjs +0 -9
  1082. package/dist/src/pi/piWebSocketListener.cjs +0 -115
  1083. package/dist/src/pi/piWebSocketListener.cjs.map +0 -1
  1084. package/dist/src/pi/piWebSocketListener.mjs +0 -115
  1085. package/dist/src/pi/piWebSocketListener.mjs.map +0 -1
  1086. package/dist/src/schemas/serverFacet.cjs +0 -111
  1087. package/dist/src/schemas/serverFacet.cjs.map +0 -1
  1088. package/dist/src/schemas/serverFacet.d.mts +0 -152
  1089. package/dist/src/schemas/serverFacet.d.mts.map +0 -1
  1090. package/dist/src/schemas/serverFacet.mjs +0 -101
  1091. package/dist/src/schemas/serverFacet.mjs.map +0 -1
  1092. package/dist/src/schemas/sessionUpdates.d.mts +0 -34
  1093. package/dist/src/schemas/sessionUpdates.d.mts.map +0 -1
  1094. package/dist/src/server/headlessProtocol.cjs +0 -382
  1095. package/dist/src/server/headlessProtocol.cjs.map +0 -1
  1096. package/dist/src/server/headlessProtocol.mjs +0 -382
  1097. package/dist/src/server/headlessProtocol.mjs.map +0 -1
  1098. package/dist/src/server/nativeChildTranscriptReader.cjs +0 -20
  1099. package/dist/src/server/nativeChildTranscriptReader.cjs.map +0 -1
  1100. package/dist/src/server/nativeChildTranscriptReader.mjs +0 -18
  1101. package/dist/src/server/nativeChildTranscriptReader.mjs.map +0 -1
  1102. package/dist/src/server/serverFacetLoader.cjs +0 -214
  1103. package/dist/src/server/serverFacetLoader.cjs.map +0 -1
  1104. package/dist/src/server/serverFacetLoader.d.mts +0 -72
  1105. package/dist/src/server/serverFacetLoader.d.mts.map +0 -1
  1106. package/dist/src/server/serverFacetLoader.mjs +0 -212
  1107. package/dist/src/server/serverFacetLoader.mjs.map +0 -1
  1108. package/dist/src/services/acpSessionUpdates/index.cjs +0 -129
  1109. package/dist/src/services/acpSessionUpdates/index.cjs.map +0 -1
  1110. package/dist/src/services/acpSessionUpdates/index.mjs +0 -129
  1111. package/dist/src/services/acpSessionUpdates/index.mjs.map +0 -1
  1112. package/dist/src/services/historyImport/index.cjs +0 -8
  1113. package/dist/src/services/historyImport/index.cjs.map +0 -1
  1114. package/dist/src/services/historyImport/index.d.mts +0 -68
  1115. package/dist/src/services/historyImport/index.d.mts.map +0 -1
  1116. package/dist/src/services/historyImport/index.mjs +0 -8
  1117. package/dist/src/services/historyImport/index.mjs.map +0 -1
  1118. package/dist/src/services/openSessionRegistry/index.d.mts.map +0 -1
  1119. package/dist/src/services/requestReceipts/index.cjs.map +0 -1
  1120. package/dist/src/services/requestReceipts/index.d.mts +0 -11
  1121. package/dist/src/services/requestReceipts/index.d.mts.map +0 -1
  1122. package/dist/src/services/requestReceipts/index.mjs.map +0 -1
  1123. package/dist/src/services/rpcTranscript/index.cjs +0 -633
  1124. package/dist/src/services/rpcTranscript/index.cjs.map +0 -1
  1125. package/dist/src/services/rpcTranscript/index.d.mts +0 -50
  1126. package/dist/src/services/rpcTranscript/index.d.mts.map +0 -1
  1127. package/dist/src/services/rpcTranscript/index.mjs +0 -632
  1128. package/dist/src/services/rpcTranscript/index.mjs.map +0 -1
  1129. package/dist/src/services/serverFacet/index.cjs.map +0 -1
  1130. package/dist/src/services/serverFacet/index.d.mts +0 -31
  1131. package/dist/src/services/serverFacet/index.d.mts.map +0 -1
  1132. package/dist/src/services/serverFacet/index.mjs.map +0 -1
  1133. package/dist/src/services/workspaceRegistry/index.d.mts.map +0 -1
  1134. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs +0 -28
  1135. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs.map +0 -1
  1136. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs +0 -25
  1137. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs.map +0 -1
  1138. package/dist/terminalPiChildSessionService.cjs +0 -324
  1139. package/dist/terminalPiChildSessionService.cjs.map +0 -1
  1140. package/dist/terminalPiChildSessionService.d.mts +0 -46
  1141. package/dist/terminalPiChildSessionService.d.mts.map +0 -1
  1142. package/dist/terminalPiChildSessionService.mjs +0 -318
  1143. package/dist/terminalPiChildSessionService.mjs.map +0 -1
  1144. package/dist/v3Export.cjs +0 -10
  1145. package/dist/v3Export.cjs.map +0 -1
  1146. package/dist/v3Export.d.mts +0 -35
  1147. package/dist/v3Export.d.mts.map +0 -1
  1148. package/dist/v3Export.mjs +0 -9
  1149. package/dist/v3Export.mjs.map +0 -1
@@ -0,0 +1,510 @@
1
+ const require_serverScope = require("../schemas/serverScope.cjs");
2
+ const require_headless = require("../schemas/headless.cjs");
3
+ const require_index = require("../services/sessionFiles/index.cjs");
4
+ const require_liveImport = require("./liveImport.cjs");
5
+ const require_platform = require("../schemas/platform.cjs");
6
+ const require_serverPlugin = require("../schemas/serverPlugin.cjs");
7
+ let _deepseek_ai_cordis = require("@deepseek-ai/cordis");
8
+ let dist_interop_chordContext_mjs = require("../../../dist/interop/chordContext.mjs");
9
+ //#region src/server/serverScope.ts
10
+ /** What one plugin build shares in one tree: its keyed values, and what each scope running it holds. */
11
+ var PluginShare = class {
12
+ values = /* @__PURE__ */ new Map();
13
+ running = /* @__PURE__ */ new Map();
14
+ get idle() {
15
+ return this.values.size === 0 && this.running.size === 0;
16
+ }
17
+ };
18
+ const resourceName = (key) => JSON.stringify(typeof key === "string" ? [key] : key);
19
+ const depth = (level) => require_serverScope.PO_SERVER_SCOPE_LEVELS.indexOf(level);
20
+ const describe = (error) => error instanceof Error ? error.message : String(error);
21
+ /** Publishes one binding as a native service of the root it is plugged into. */
22
+ function bindingProvider(context, binding) {
23
+ context.provide(binding.name, binding.value);
24
+ }
25
+ /**
26
+ * The scope service each root publishes.
27
+ *
28
+ * Cordis traceable services rebind `ctx` to the caller, so a binding made through
29
+ * `provide` unwinds with the plugin that made it.
30
+ */
31
+ var ScopeService = class extends _deepseek_ai_cordis.Service {
32
+ scope;
33
+ level;
34
+ constructor(ctx, scope) {
35
+ super(ctx, require_serverScope.PO_SERVER_SCOPE_SERVICE);
36
+ this.scope = scope;
37
+ this.level = scope.level;
38
+ }
39
+ async provide(contract, value) {
40
+ return await this.ctx.effect(() => this.scope.bind(contract, value), `po scope provide ${contract.name}`);
41
+ }
42
+ resolve(contract) {
43
+ return this.scope.resolve(contract);
44
+ }
45
+ emit(name, ...args) {
46
+ this.scope.emit(name, ...args);
47
+ }
48
+ broadcast(name, ...args) {
49
+ this.scope.broadcast(name, ...args);
50
+ }
51
+ plugin(owner) {
52
+ return this.scope.share(owner);
53
+ }
54
+ };
55
+ /**
56
+ * Binds registrations to the Cordis fiber that calls the host service.
57
+ *
58
+ * The host itself is shared by every package at its level, but Cordis traceable
59
+ * services rebind `ctx` to the caller. That lets a package's registration unwind
60
+ * even when `apply` throws before it can return its disposer.
61
+ */
62
+ var ScopedPoServerHost = class extends _deepseek_ai_cordis.Service {
63
+ host;
64
+ scope;
65
+ context;
66
+ constructor(ctx, host) {
67
+ super(ctx, require_serverPlugin.PO_SERVER_HOST_SERVICE);
68
+ this.host = host;
69
+ this.scope = host.scope;
70
+ this.context = host.context;
71
+ }
72
+ registerApi(api) {
73
+ const headless = this.scope === "session" ? require_headless.readPoHeadlessHost(this.ctx) : void 0;
74
+ if (headless) {
75
+ const activity = headless.registerActivity({
76
+ name: `api:${api.basePath}`,
77
+ start: () => {
78
+ const registration = this.host.registerApi(api);
79
+ if (registration.mounted !== true) {
80
+ registration.dispose();
81
+ throw new Error(`package API '${api.basePath}' did not mount.`);
82
+ }
83
+ return () => {
84
+ registration.dispose();
85
+ };
86
+ }
87
+ });
88
+ return {
89
+ mounted: true,
90
+ dispose: () => activity.dispose()
91
+ };
92
+ }
93
+ const registration = this.host.registerApi(api);
94
+ if (registration.mounted !== true) {
95
+ registration.dispose();
96
+ throw new Error(`package API '${api.basePath}' did not mount.`);
97
+ }
98
+ this.ctx.effect(() => () => registration.dispose(), "server package API registration");
99
+ return registration;
100
+ }
101
+ registerChannel(channel) {
102
+ const registration = this.host.registerChannel(channel);
103
+ if (registration.mounted !== true) {
104
+ registration.dispose();
105
+ throw new Error(`hub channel '${channel.frameType}' did not mount.`);
106
+ }
107
+ this.ctx.effect(() => () => registration.dispose(), "server package channel registration");
108
+ return registration;
109
+ }
110
+ registerMethod = (definition, handler) => {
111
+ const registration = this.host.registerMethod(definition, handler);
112
+ if (registration.mounted !== true) {
113
+ registration.dispose();
114
+ throw new Error(`plugin method '${definition.service}.${definition.method}' did not mount.`);
115
+ }
116
+ this.ctx.effect(() => () => registration.dispose(), "server package method registration");
117
+ return registration;
118
+ };
119
+ mounted() {
120
+ return this.host.mounted();
121
+ }
122
+ mountedChannels() {
123
+ return this.host.mountedChannels();
124
+ }
125
+ };
126
+ /** Publishes the host service from inside a root-level plugin, so it unwinds with the scope. */
127
+ function serverHostProvider(context, host) {
128
+ new ScopedPoServerHost(context, host);
129
+ }
130
+ /** Publishes the platform services from inside a root-level plugin, so they unwind with the scope. */
131
+ function platformProvider(context, input) {
132
+ const env = input.platform.env(input.cwd);
133
+ context.provide(require_platform.PO_FS_SERVICE, env);
134
+ context.provide(require_platform.PO_SHELL_SERVICE, env);
135
+ context.provide(require_platform.PO_SQLITE_SERVICE, input.platform.sqlite);
136
+ context.provide(require_platform.PO_SESSION_STORAGE_SERVICE, input.platform.sessions);
137
+ if (input.temporaryDirectory !== void 0) context.provide(require_index.PO_SESSION_FILES_SERVICE, { temporaryDirectory: input.temporaryDirectory });
138
+ context.effect(() => () => env.cleanup(dist_interop_chordContext_mjs.BACKGROUND_CONTEXT), "platform execution env");
139
+ }
140
+ /**
141
+ * One level of the server IoC tree: its own cordis root, a parent link, the contracts bound here,
142
+ * and the packages installed here.
143
+ *
144
+ * Separate roots rather than one shared root, because cordis re-checks every fiber of a root on each
145
+ * service change; a hundred sessions in one root would make every change scan all of them. A binding
146
+ * is instead mirrored into each descendant root as a native service, so a plugin injects an outer
147
+ * level's service exactly as it injects its own.
148
+ */
149
+ var PoServerScope = class PoServerScope {
150
+ level;
151
+ parent;
152
+ root = new _deepseek_ai_cordis.Context();
153
+ children = /* @__PURE__ */ new Set();
154
+ bound = /* @__PURE__ */ new Map();
155
+ mirrors = /* @__PURE__ */ new Map();
156
+ installed = /* @__PURE__ */ new Map();
157
+ installs = Promise.resolve();
158
+ /** Set once a package's apply never settled, to the bound it overran; its fiber may never finish disposing. */
159
+ abandonedTimeoutMs;
160
+ notice = () => void 0;
161
+ disposing;
162
+ /** The served mount table, read when a request routes through this level. */
163
+ router;
164
+ /** Kept by the outermost scope only: what each plugin build shares across the whole tree. */
165
+ shares = /* @__PURE__ */ new Map();
166
+ constructor(level, parent) {
167
+ this.level = level;
168
+ this.parent = parent;
169
+ }
170
+ /** Opens a scope below `parent`, with every binding visible from its ancestors already published. */
171
+ static async open(level, parent) {
172
+ if (parent?.disposing !== void 0) throw new Error(`The ${parent.level} scope is disposed.`);
173
+ if (parent !== void 0 && depth(level) <= depth(parent.level)) throw new Error(`A ${level} scope cannot open below a ${parent.level} scope.`);
174
+ const scope = new PoServerScope(level, parent);
175
+ parent?.children.add(scope);
176
+ try {
177
+ await scope.root.plugin(ScopeService, scope);
178
+ await Promise.all((parent?.visible() ?? []).map((binding) => scope.mirror(binding)));
179
+ } catch (error) {
180
+ await scope.dispose();
181
+ throw error;
182
+ }
183
+ return scope;
184
+ }
185
+ get disposed() {
186
+ return this.disposing !== void 0;
187
+ }
188
+ /**
189
+ * Publishes what every package at this level reads: the owner's mount table as `po/server-host`,
190
+ * and the platform services. They stay for the life of the scope; the owner still disposes the
191
+ * mount table it handed in.
192
+ */
193
+ async serve(input) {
194
+ if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);
195
+ if (input.host.scope !== this.level) throw new Error(`A ${input.host.scope} host cannot serve a ${this.level} scope.`);
196
+ await this.root.plugin(serverHostProvider, input.host);
197
+ this.router = input.host;
198
+ const hostContext = input.host.context;
199
+ const cwd = hostContext?.cwd ?? hostContext?.workspaceRoot ?? input.platform.homeDirectory;
200
+ await this.root.plugin(platformProvider, {
201
+ platform: input.platform,
202
+ cwd,
203
+ temporaryDirectory: this.level === "session" ? hostContext?.environment?.[require_index.PO_SESSION_TEMP_DIR] : void 0
204
+ });
205
+ }
206
+ /**
207
+ * Installs packages at this level, each as its own fiber in this root, one at a time.
208
+ *
209
+ * Installation only adds. A package installed from the same build (the same plugin object) is
210
+ * skipped. One whose build changed is disposed and the new build applied; when that fails, the
211
+ * previous build is applied again. A package missing from `packages` stays installed, because
212
+ * which packages a session runs is its own composition's choice. Installs into one scope run one
213
+ * at a time. Resolves with every package installed here, in install order.
214
+ */
215
+ install(packages, options = {}) {
216
+ const run = this.installs.then(() => this.installAll(packages, options));
217
+ this.installs = run.then(() => void 0, () => void 0);
218
+ return run;
219
+ }
220
+ /**
221
+ * Binds a contract owned by this level here and in every descendant, including ones opened later.
222
+ * Settles once every descendant root publishes it. Hosts call this directly; plugins go through
223
+ * the scope service so the binding follows their fiber.
224
+ */
225
+ async bind(contract, value) {
226
+ if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);
227
+ if (contract.scope !== this.level) throw new Error(`Contract '${contract.name}' belongs to the ${contract.scope} scope and cannot be provided from the ${this.level} scope.`);
228
+ if (this.bound.has(contract.name)) throw new Error(`Contract '${contract.name}' is already provided in this ${this.level} scope.`);
229
+ const binding = {
230
+ name: contract.name,
231
+ value
232
+ };
233
+ this.bound.set(contract.name, binding);
234
+ const withdraw = async () => {
235
+ if (this.bound.get(contract.name) !== binding) return;
236
+ this.bound.delete(contract.name);
237
+ await Promise.all([...this.subtree()].map((scope) => scope.unmirror(binding)));
238
+ };
239
+ try {
240
+ await Promise.all([...this.subtree()].map((scope) => scope.mirror(binding)));
241
+ } catch (error) {
242
+ await withdraw();
243
+ throw error;
244
+ }
245
+ return withdraw;
246
+ }
247
+ resolve(contract) {
248
+ if (depth(contract.scope) > depth(this.level)) throw new Error(`A ${this.level} scope cannot see the ${contract.scope} contract '${contract.name}'.`);
249
+ for (const scope of this.ancestry()) if (scope.level === contract.scope) return scope.bound.get(contract.name)?.value;
250
+ }
251
+ /**
252
+ * The handler for an API, from this level or the nearest one above it that serves it. An API
253
+ * declared at a level reaches every level below it, and a level that runs a package from an outer
254
+ * level leaves that level's root-bound APIs to it; a level that declares the API itself wins.
255
+ */
256
+ apiHandler(basePath) {
257
+ for (const scope of this.ancestry()) {
258
+ const handler = scope.router?.handlerFor?.(basePath);
259
+ if (handler !== void 0) return handler;
260
+ }
261
+ }
262
+ emit(name, ...args) {
263
+ deliver([...this.ancestry()], name, args);
264
+ }
265
+ broadcast(name, ...args) {
266
+ deliver([...this.subtree()], name, args);
267
+ }
268
+ /**
269
+ * Disposes descendants first, then the packages installed here in reverse install order, then
270
+ * this root; a binding made here unwinds with its provider.
271
+ */
272
+ dispose() {
273
+ this.disposing ??= (async () => {
274
+ await Promise.all([...this.children].map((child) => child.dispose()));
275
+ this.parent?.children.delete(this);
276
+ this.mirrors.clear();
277
+ this.router = void 0;
278
+ const packages = [...this.installed.values()].reverse();
279
+ this.installed.clear();
280
+ for (const { fiber } of packages) await fiber.dispose();
281
+ const disposal = this.root.fiber.dispose();
282
+ if (this.abandonedTimeoutMs === void 0) return await disposal;
283
+ await require_liveImport.withTimeout(disposal, this.abandonedTimeoutMs, `${this.level} scope dispose`).catch((error) => this.notice(describe(error)));
284
+ })().finally(async () => {
285
+ if (this.parent === void 0) await this.disposeShares();
286
+ });
287
+ return this.disposing;
288
+ }
289
+ /**
290
+ * What the plugin build `owner` shares in this tree, seen from this scope. The outermost scope keeps
291
+ * one store per build, so every level of one hub sees the same values and no two hubs ever do.
292
+ */
293
+ share(owner) {
294
+ const top = this.outermost();
295
+ const storeOf = () => {
296
+ let store = top.shares.get(owner);
297
+ if (store === void 0) {
298
+ store = new PluginShare();
299
+ top.shares.set(owner, store);
300
+ }
301
+ return store;
302
+ };
303
+ const settle = (store) => {
304
+ if (store.idle && top.shares.get(owner) === store) top.shares.delete(owner);
305
+ };
306
+ return {
307
+ acquire: async (key, create, dispose) => {
308
+ if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);
309
+ const store = storeOf();
310
+ const name = resourceName(key);
311
+ let shared = store.values.get(name);
312
+ if (shared === void 0) {
313
+ const created = {
314
+ value: Promise.resolve().then(create),
315
+ holders: 0,
316
+ disposeValue: dispose === void 0 ? void 0 : (value) => dispose(value)
317
+ };
318
+ store.values.set(name, created);
319
+ created.value.catch(() => {
320
+ if (store.values.get(name) === created) store.values.delete(name);
321
+ settle(store);
322
+ });
323
+ shared = created;
324
+ }
325
+ const held = shared;
326
+ held.holders += 1;
327
+ let value;
328
+ try {
329
+ value = await held.value;
330
+ } catch (error) {
331
+ held.holders -= 1;
332
+ throw error;
333
+ }
334
+ let released = false;
335
+ return {
336
+ value,
337
+ release: async () => {
338
+ if (released) return;
339
+ released = true;
340
+ held.holders -= 1;
341
+ if (held.holders > 0 || store.values.get(name) !== held) return;
342
+ store.values.delete(name);
343
+ settle(store);
344
+ await held.disposeValue?.(value);
345
+ }
346
+ };
347
+ },
348
+ run: (roots) => {
349
+ if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);
350
+ const store = storeOf();
351
+ store.running.set(this, roots);
352
+ return () => {
353
+ if (store.running.get(this) === roots) store.running.delete(this);
354
+ settle(store);
355
+ };
356
+ },
357
+ outer: (from) => {
358
+ const store = top.shares.get(owner);
359
+ if (store === void 0) return [];
360
+ const held = [];
361
+ for (const scope of this.parent?.ancestry() ?? []) if (depth(scope.level) >= depth(from) && store.running.has(scope)) held.push(store.running.get(scope));
362
+ return held;
363
+ }
364
+ };
365
+ }
366
+ async installAll(packages, options) {
367
+ if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);
368
+ const notice = options.onNotice ?? (() => {});
369
+ this.notice = notice;
370
+ if (packages.some((candidate) => "retained" in candidate && candidate.retained === true) && !require_headless.readPoHeadlessHost(this.root)) throw new Error("Retained server candidates require a gated headless host");
371
+ for (const candidate of packages) {
372
+ const plugin = "declaration" in candidate ? candidate.plugin : candidate;
373
+ const declaration = "declaration" in candidate ? candidate.declaration : void 0;
374
+ const name = declaration?.packageName ?? plugin.name;
375
+ const previous = this.installed.get(name);
376
+ if (previous?.plugin === plugin) continue;
377
+ if (previous !== void 0) {
378
+ this.installed.delete(name);
379
+ await previous.fiber.dispose();
380
+ }
381
+ try {
382
+ const fiber = await this.apply(name, plugin, declaration, options);
383
+ this.installed.set(name, {
384
+ plugin,
385
+ ...declaration === void 0 ? {} : { declaration },
386
+ fiber
387
+ });
388
+ } catch (error) {
389
+ const message = `server package '${name}' did not install (${describe(error)})`;
390
+ if (previous !== void 0) {
391
+ await this.restore(name, previous, options, message);
392
+ continue;
393
+ }
394
+ if (declaration?.required === true && !("initiallyEligible" in candidate && candidate.initiallyEligible === false)) throw new Error(message, { cause: error });
395
+ notice(message);
396
+ }
397
+ }
398
+ for (const candidate of packages) {
399
+ const plugin = "declaration" in candidate ? candidate.plugin : candidate;
400
+ const name = ("declaration" in candidate ? candidate.declaration.packageName : void 0) ?? plugin.name;
401
+ if (this.installed.get(name)?.plugin !== plugin) continue;
402
+ for (const contract of plugin.injects?.[this.level] ?? []) if (depth(contract.scope) > depth(this.level) || this.resolve(contract) === void 0) notice(`server package '${name}' waits for contract '${contract.name}', which no ${contract.scope} package provides.`);
403
+ }
404
+ return [...this.installed.keys()];
405
+ }
406
+ /** Applies a replaced package's previous build again after its new build failed. */
407
+ async restore(name, previous, options, message) {
408
+ try {
409
+ const fiber = await this.apply(name, previous.plugin, previous.declaration, options);
410
+ this.installed.set(name, {
411
+ ...previous,
412
+ fiber
413
+ });
414
+ this.notice(`${message}; its previous build is restored.`);
415
+ } catch (rollbackError) {
416
+ this.notice(`${message}; its previous build could not be restored (${describe(rollbackError)}).`);
417
+ }
418
+ }
419
+ /** Applies one package as its own fiber, bounded by the factory timeout, and reports how it settled. */
420
+ async apply(name, plugin, declaration, options) {
421
+ const startedAt = Date.now();
422
+ const timeoutMs = options.factoryTimeoutMs ?? 1e4;
423
+ const settled = (outcome) => options.onPackageSettled?.({
424
+ packageName: name,
425
+ durationMs: Date.now() - startedAt,
426
+ outcome
427
+ });
428
+ let fiber;
429
+ let applySettled = false;
430
+ try {
431
+ fiber = (declaration ? this.root.extend({ [require_headless.PO_HEADLESS_OWNER]: declaration }) : this.root).plugin(plugin);
432
+ const applied = fiber.await();
433
+ const markSettled = () => {
434
+ applySettled = true;
435
+ };
436
+ applied.then(markSettled, markSettled);
437
+ await require_liveImport.withTimeout(applied, timeoutMs, `server package '${name}' apply`);
438
+ settled("installed");
439
+ return fiber;
440
+ } catch (error) {
441
+ settled(fiber && !applySettled ? "timed_out" : "failed");
442
+ if (fiber && !applySettled) {
443
+ this.abandonedTimeoutMs = Math.max(this.abandonedTimeoutMs ?? 0, timeoutMs);
444
+ fiber.dispose().catch((disposeError) => this.notice(`abandoned server package '${name}' did not dispose (${describe(disposeError)})`));
445
+ } else await fiber?.dispose();
446
+ throw error;
447
+ }
448
+ }
449
+ visible() {
450
+ return [...this.parent?.visible() ?? [], ...this.bound.values()];
451
+ }
452
+ /** This scope, then each parent out to the root. */
453
+ outermost() {
454
+ return this.parent === void 0 ? this : this.parent.outermost();
455
+ }
456
+ /** Disposes every value the tree still holds, newest first; a failure is reported and the rest still go. */
457
+ async disposeShares() {
458
+ const values = [...this.shares.values()].flatMap((store) => [...store.values.values()]).reverse();
459
+ this.shares.clear();
460
+ for (const shared of values) try {
461
+ await shared.disposeValue?.(await shared.value);
462
+ } catch (error) {
463
+ this.notice(`a shared server value did not dispose (${describe(error)})`);
464
+ }
465
+ }
466
+ *ancestry() {
467
+ yield this;
468
+ if (this.parent !== void 0) yield* this.parent.ancestry();
469
+ }
470
+ *subtree() {
471
+ if (this.disposed) return;
472
+ yield this;
473
+ for (const child of this.children) yield* child.subtree();
474
+ }
475
+ /**
476
+ * Publishes a binding into this root and settles once it is live. Idempotent per binding, since a
477
+ * child opening mid-bind is reached by both `open` and `bind`.
478
+ */
479
+ async mirror(binding) {
480
+ if (this.disposed) return;
481
+ let fiber = this.mirrors.get(binding);
482
+ if (fiber === void 0) {
483
+ fiber = this.root.plugin(bindingProvider, binding);
484
+ this.mirrors.set(binding, fiber);
485
+ }
486
+ await fiber.await();
487
+ }
488
+ async unmirror(binding) {
489
+ const fiber = this.mirrors.get(binding);
490
+ this.mirrors.delete(binding);
491
+ if (!this.disposed) await fiber?.dispose();
492
+ }
493
+ };
494
+ /** Every scope receives the event even when an earlier one's listener throws. */
495
+ function deliver(scopes, name, args) {
496
+ const errors = [];
497
+ for (const scope of scopes) {
498
+ if (scope.disposed) continue;
499
+ try {
500
+ scope.root.events.emit(name, ...args);
501
+ } catch (error) {
502
+ errors.push(error);
503
+ }
504
+ }
505
+ if (errors.length > 0) throw new AggregateError(errors, `${errors.length} scope listener(s) of '${name}' failed.`);
506
+ }
507
+ //#endregion
508
+ exports.PoServerScope = PoServerScope;
509
+
510
+ //# sourceMappingURL=serverScope.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serverScope.cjs","names":["PO_SERVER_SCOPE_LEVELS","Service","PO_SERVER_SCOPE_SERVICE","PO_SERVER_HOST_SERVICE","readPoHeadlessHost","PO_FS_SERVICE","PO_SHELL_SERVICE","PO_SQLITE_SERVICE","PO_SESSION_STORAGE_SERVICE","PO_SESSION_FILES_SERVICE","BACKGROUND_CONTEXT","Context","PO_SESSION_TEMP_DIR","withTimeout","PO_HEADLESS_OWNER"],"sources":["../../../src/server/serverScope.ts"],"sourcesContent":["import { Context, type Events, type Fiber, Service } from '@deepseek-ai/cordis';\nimport { BACKGROUND_CONTEXT } from '@earendil-works/chord/context';\n\nimport { PO_HEADLESS_OWNER, readPoHeadlessHost } from '../schemas/headless';\nimport type { PoApiHandler, PoApiScope } from '../schemas/packageApi';\nimport {\n PO_FS_SERVICE,\n PO_SESSION_STORAGE_SERVICE,\n PO_SHELL_SERVICE,\n PO_SQLITE_SERVICE,\n type PoPlatform,\n} from '../schemas/platform';\nimport type { PoServerBundleEntry } from '../schemas/serverBundle';\nimport { PO_SERVER_HOST_SERVICE, type PoServerHostService, type PoServerPlugin } from '../schemas/serverPlugin';\nimport {\n PO_SERVER_SCOPE_LEVELS,\n PO_SERVER_SCOPE_SERVICE,\n type PoServerPluginShare,\n type PoServerResourceKey,\n type PoServerResourceLease,\n type PoServerScopeService,\n type PoServiceContract,\n} from '../schemas/serverScope';\nimport { PO_SESSION_FILES_SERVICE, PO_SESSION_TEMP_DIR } from '../services/sessionFiles';\nimport { LIVE_FACTORY_TIMEOUT_MS, withTimeout } from './liveImport';\nimport type { LoadedServerPackage } from './serverPackages';\n\ninterface Binding {\n readonly name: string;\n readonly value: unknown;\n}\n\ninterface InstalledPackage {\n readonly plugin: PoServerPlugin;\n readonly declaration?: PoServerBundleEntry;\n readonly fiber: Fiber;\n}\n\n/** One shared value, how many levels hold it, and how its creator said to dispose it. */\ninterface SharedValue {\n readonly value: Promise<unknown>;\n holders: number;\n readonly disposeValue: ((value: unknown) => void | Promise<void>) | undefined;\n}\n\n/** What one plugin build shares in one tree: its keyed values, and what each scope running it holds. */\nclass PluginShare {\n readonly values = new Map<string, SharedValue>();\n readonly running = new Map<PoServerScope, unknown>();\n\n get idle(): boolean {\n return this.values.size === 0 && this.running.size === 0;\n }\n}\n\nconst resourceName = (key: PoServerResourceKey): string => JSON.stringify(typeof key === 'string' ? [key] : key);\n/** What a scope's owner publishes for the packages installed at its level. */\nexport interface PoServerScopeHost {\n /**\n * The level's mount table. A host that also routes requests (`createPoServerHost` does) answers\n * API requests for this level and every level below it that does not serve the API itself.\n */\n readonly host: PoServerHostService & { handlerFor?(basePath: string): PoApiHandler | undefined };\n /** Host capabilities published as `po/fs`, `po/shell`, `po/sqlite` and `po/session-storage`. */\n readonly platform: PoPlatform;\n}\n\nexport interface PoServerPackageSettledReport {\n readonly packageName: string;\n readonly durationMs: number;\n readonly outcome: 'installed' | 'failed' | 'timed_out';\n}\n\nexport interface PoServerInstallOptions {\n readonly onNotice?: (message: string) => void;\n /** Bound on each package's `apply`; defaults to `LIVE_FACTORY_TIMEOUT_MS`. */\n readonly factoryTimeoutMs?: number;\n /** Reports how long each package's `apply` took and how it ended, for telemetry. */\n readonly onPackageSettled?: (report: PoServerPackageSettledReport) => void;\n}\n\nconst depth = (level: PoApiScope): number => PO_SERVER_SCOPE_LEVELS.indexOf(level);\n\nconst describe = (error: unknown): string => (error instanceof Error ? error.message : String(error));\n\n/** Publishes one binding as a native service of the root it is plugged into. */\nfunction bindingProvider(context: Context, binding: Binding): void {\n context.provide(binding.name, binding.value);\n}\n\n/**\n * The scope service each root publishes.\n *\n * Cordis traceable services rebind `ctx` to the caller, so a binding made through\n * `provide` unwinds with the plugin that made it.\n */\nclass ScopeService extends Service<PoServerScopeService> implements PoServerScopeService {\n readonly level: PoApiScope;\n\n constructor(\n ctx: Context,\n private readonly scope: PoServerScope,\n ) {\n super(ctx, PO_SERVER_SCOPE_SERVICE);\n this.level = scope.level;\n }\n\n async provide<T>(contract: PoServiceContract<T>, value: T): Promise<() => Promise<void>> {\n return await this.ctx.effect(() => this.scope.bind(contract, value), `po scope provide ${contract.name}`);\n }\n\n resolve<T>(contract: PoServiceContract<T>): T | undefined {\n return this.scope.resolve(contract);\n }\n\n emit<K extends keyof Events>(name: K, ...args: Parameters<Events[K]>): void {\n this.scope.emit(name, ...args);\n }\n\n broadcast<K extends keyof Events>(name: K, ...args: Parameters<Events[K]>): void {\n this.scope.broadcast(name, ...args);\n }\n\n plugin<TRoots>(owner: object): PoServerPluginShare<TRoots> {\n return this.scope.share<TRoots>(owner);\n }\n}\n\n/**\n * Binds registrations to the Cordis fiber that calls the host service.\n *\n * The host itself is shared by every package at its level, but Cordis traceable\n * services rebind `ctx` to the caller. That lets a package's registration unwind\n * even when `apply` throws before it can return its disposer.\n */\nclass ScopedPoServerHost extends Service<PoServerHostService> implements PoServerHostService {\n readonly scope: PoServerHostService['scope'];\n readonly context: PoServerHostService['context'];\n\n constructor(\n ctx: Context,\n private readonly host: PoServerHostService,\n ) {\n super(ctx, PO_SERVER_HOST_SERVICE);\n this.scope = host.scope;\n this.context = host.context;\n }\n\n registerApi(api: Parameters<PoServerHostService['registerApi']>[0]) {\n const headless = this.scope === 'session' ? readPoHeadlessHost(this.ctx) : undefined;\n if (headless) {\n const activity = headless.registerActivity({\n name: `api:${api.basePath}`,\n start: () => {\n const registration = this.host.registerApi(api);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`package API '${api.basePath}' did not mount.`);\n }\n return () => {\n registration.dispose();\n };\n },\n });\n return {\n mounted: true,\n dispose: () => activity.dispose(),\n };\n }\n const registration = this.host.registerApi(api);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`package API '${api.basePath}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server package API registration');\n return registration;\n }\n\n registerChannel(channel: Parameters<PoServerHostService['registerChannel']>[0]) {\n const registration = this.host.registerChannel(channel);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`hub channel '${channel.frameType}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server package channel registration');\n return registration;\n }\n\n registerMethod: PoServerHostService['registerMethod'] = (definition, handler) => {\n const registration = this.host.registerMethod(definition, handler);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`plugin method '${definition.service}.${definition.method}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server package method registration');\n return registration;\n };\n\n mounted(): readonly string[] {\n return this.host.mounted();\n }\n\n mountedChannels(): readonly string[] {\n return this.host.mountedChannels();\n }\n}\n\n/** Publishes the host service from inside a root-level plugin, so it unwinds with the scope. */\nfunction serverHostProvider(context: Context, host: PoServerHostService): void {\n new ScopedPoServerHost(context, host);\n}\n\n/** Publishes the platform services from inside a root-level plugin, so they unwind with the scope. */\nfunction platformProvider(\n context: Context,\n input: { platform: PoPlatform; cwd: string; temporaryDirectory?: string },\n): void {\n const env = input.platform.env(input.cwd);\n context.provide(PO_FS_SERVICE, env);\n context.provide(PO_SHELL_SERVICE, env);\n context.provide(PO_SQLITE_SERVICE, input.platform.sqlite);\n context.provide(PO_SESSION_STORAGE_SERVICE, input.platform.sessions);\n if (input.temporaryDirectory !== undefined)\n context.provide(PO_SESSION_FILES_SERVICE, { temporaryDirectory: input.temporaryDirectory });\n context.effect(() => () => env.cleanup(BACKGROUND_CONTEXT), 'platform execution env');\n}\n\n/**\n * One level of the server IoC tree: its own cordis root, a parent link, the contracts bound here,\n * and the packages installed here.\n *\n * Separate roots rather than one shared root, because cordis re-checks every fiber of a root on each\n * service change; a hundred sessions in one root would make every change scan all of them. A binding\n * is instead mirrored into each descendant root as a native service, so a plugin injects an outer\n * level's service exactly as it injects its own.\n */\nexport class PoServerScope {\n readonly root = new Context();\n private readonly children = new Set<PoServerScope>();\n private readonly bound = new Map<string, Binding>();\n private readonly mirrors = new Map<Binding, Fiber>();\n private readonly installed = new Map<string, InstalledPackage>();\n private installs: Promise<void> = Promise.resolve();\n /** Set once a package's apply never settled, to the bound it overran; its fiber may never finish disposing. */\n private abandonedTimeoutMs: number | undefined;\n private notice: (message: string) => void = () => undefined;\n private disposing: Promise<void> | undefined;\n /** The served mount table, read when a request routes through this level. */\n private router: PoServerScopeHost['host'] | undefined;\n /** Kept by the outermost scope only: what each plugin build shares across the whole tree. */\n private readonly shares = new Map<object, PluginShare>();\n\n private constructor(\n readonly level: PoApiScope,\n readonly parent: PoServerScope | undefined,\n ) {}\n\n /** Opens a scope below `parent`, with every binding visible from its ancestors already published. */\n static async open(level: PoApiScope, parent?: PoServerScope): Promise<PoServerScope> {\n if (parent?.disposing !== undefined) throw new Error(`The ${parent.level} scope is disposed.`);\n if (parent !== undefined && depth(level) <= depth(parent.level))\n throw new Error(`A ${level} scope cannot open below a ${parent.level} scope.`);\n const scope = new PoServerScope(level, parent);\n parent?.children.add(scope);\n try {\n await scope.root.plugin(ScopeService, scope);\n await Promise.all((parent?.visible() ?? []).map((binding) => scope.mirror(binding)));\n } catch (error) {\n await scope.dispose();\n throw error;\n }\n return scope;\n }\n\n get disposed(): boolean {\n return this.disposing !== undefined;\n }\n\n /**\n * Publishes what every package at this level reads: the owner's mount table as `po/server-host`,\n * and the platform services. They stay for the life of the scope; the owner still disposes the\n * mount table it handed in.\n */\n async serve(input: PoServerScopeHost): Promise<void> {\n if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);\n if (input.host.scope !== this.level)\n throw new Error(`A ${input.host.scope} host cannot serve a ${this.level} scope.`);\n await this.root.plugin(serverHostProvider, input.host);\n this.router = input.host;\n // Published callers may hand a host without context (the packed authoring check does), so read it defensively.\n const hostContext = input.host.context as Partial<PoServerHostService['context']> | undefined;\n const cwd = hostContext?.cwd ?? hostContext?.workspaceRoot ?? input.platform.homeDirectory;\n await this.root.plugin(platformProvider, {\n platform: input.platform,\n cwd,\n temporaryDirectory: this.level === 'session' ? hostContext?.environment?.[PO_SESSION_TEMP_DIR] : undefined,\n });\n }\n\n /**\n * Installs packages at this level, each as its own fiber in this root, one at a time.\n *\n * Installation only adds. A package installed from the same build (the same plugin object) is\n * skipped. One whose build changed is disposed and the new build applied; when that fails, the\n * previous build is applied again. A package missing from `packages` stays installed, because\n * which packages a session runs is its own composition's choice. Installs into one scope run one\n * at a time. Resolves with every package installed here, in install order.\n */\n install(\n packages: readonly (PoServerPlugin | LoadedServerPackage)[],\n options: PoServerInstallOptions = {},\n ): Promise<readonly string[]> {\n const run = this.installs.then(() => this.installAll(packages, options));\n this.installs = run.then(\n () => undefined,\n () => undefined,\n );\n return run;\n }\n\n /**\n * Binds a contract owned by this level here and in every descendant, including ones opened later.\n * Settles once every descendant root publishes it. Hosts call this directly; plugins go through\n * the scope service so the binding follows their fiber.\n */\n async bind<T>(contract: PoServiceContract<T>, value: T): Promise<() => Promise<void>> {\n if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);\n if (contract.scope !== this.level)\n throw new Error(\n `Contract '${contract.name}' belongs to the ${contract.scope} scope and cannot be provided from the ${this.level} scope.`,\n );\n if (this.bound.has(contract.name))\n throw new Error(`Contract '${contract.name}' is already provided in this ${this.level} scope.`);\n const binding: Binding = { name: contract.name, value };\n this.bound.set(contract.name, binding);\n const withdraw = async (): Promise<void> => {\n if (this.bound.get(contract.name) !== binding) return;\n this.bound.delete(contract.name);\n await Promise.all([...this.subtree()].map((scope) => scope.unmirror(binding)));\n };\n try {\n await Promise.all([...this.subtree()].map((scope) => scope.mirror(binding)));\n } catch (error) {\n await withdraw();\n throw error;\n }\n return withdraw;\n }\n\n resolve<T>(contract: PoServiceContract<T>): T | undefined {\n if (depth(contract.scope) > depth(this.level))\n throw new Error(`A ${this.level} scope cannot see the ${contract.scope} contract '${contract.name}'.`);\n for (const scope of this.ancestry()) {\n if (scope.level === contract.scope) return scope.bound.get(contract.name)?.value as T | undefined;\n }\n return undefined;\n }\n\n /**\n * The handler for an API, from this level or the nearest one above it that serves it. An API\n * declared at a level reaches every level below it, and a level that runs a package from an outer\n * level leaves that level's root-bound APIs to it; a level that declares the API itself wins.\n */\n apiHandler(basePath: string): PoApiHandler | undefined {\n for (const scope of this.ancestry()) {\n const handler = scope.router?.handlerFor?.(basePath);\n if (handler !== undefined) return handler;\n }\n return undefined;\n }\n\n emit<K extends keyof Events>(name: K, ...args: Parameters<Events[K]>): void {\n deliver([...this.ancestry()], name, args);\n }\n\n broadcast<K extends keyof Events>(name: K, ...args: Parameters<Events[K]>): void {\n deliver([...this.subtree()], name, args);\n }\n\n /**\n * Disposes descendants first, then the packages installed here in reverse install order, then\n * this root; a binding made here unwinds with its provider.\n */\n dispose(): Promise<void> {\n this.disposing ??= (async () => {\n await Promise.all([...this.children].map((child) => child.dispose()));\n this.parent?.children.delete(this);\n this.mirrors.clear();\n this.router = undefined;\n const packages = [...this.installed.values()].reverse();\n this.installed.clear();\n for (const { fiber } of packages) await fiber.dispose();\n const disposal = this.root.fiber.dispose();\n if (this.abandonedTimeoutMs === undefined) return await disposal;\n // An abandoned apply holds its fiber open, so teardown is bounded rather than left to hang.\n await withTimeout(disposal, this.abandonedTimeoutMs, `${this.level} scope dispose`).catch((error: unknown) =>\n this.notice(describe(error)),\n );\n })().finally(async () => {\n // What a level never released, such as a value an abandoned apply held, goes with the tree.\n if (this.parent === undefined) await this.disposeShares();\n });\n return this.disposing;\n }\n\n /**\n * What the plugin build `owner` shares in this tree, seen from this scope. The outermost scope keeps\n * one store per build, so every level of one hub sees the same values and no two hubs ever do.\n */\n share<TRoots>(owner: object): PoServerPluginShare<TRoots> {\n const top = this.outermost();\n const storeOf = (): PluginShare => {\n let store = top.shares.get(owner);\n if (store === undefined) {\n store = new PluginShare();\n top.shares.set(owner, store);\n }\n return store;\n };\n // An idle store is dropped, so builds a reload replaced do not accumulate.\n const settle = (store: PluginShare): void => {\n if (store.idle && top.shares.get(owner) === store) top.shares.delete(owner);\n };\n return {\n acquire: async <T>(\n key: PoServerResourceKey,\n create: () => T | Promise<T>,\n dispose?: (value: T) => void | Promise<void>,\n ): Promise<PoServerResourceLease<T>> => {\n if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);\n const store = storeOf();\n const name = resourceName(key);\n let shared = store.values.get(name);\n if (shared === undefined) {\n const created: SharedValue = {\n value: Promise.resolve().then(create),\n holders: 0,\n disposeValue: dispose === undefined ? undefined : (value) => dispose(value as T),\n };\n store.values.set(name, created);\n // A value that could not be created is not kept, so the next acquire creates it again.\n created.value.catch(() => {\n if (store.values.get(name) === created) store.values.delete(name);\n settle(store);\n });\n shared = created;\n }\n const held = shared;\n held.holders += 1;\n let value: unknown;\n try {\n value = await held.value;\n } catch (error) {\n held.holders -= 1;\n throw error;\n }\n let released = false;\n return {\n value: value as T,\n release: async () => {\n if (released) return;\n released = true;\n held.holders -= 1;\n if (held.holders > 0 || store.values.get(name) !== held) return;\n store.values.delete(name);\n settle(store);\n await held.disposeValue?.(value);\n },\n };\n },\n run: (roots) => {\n if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);\n const store = storeOf();\n store.running.set(this, roots);\n return () => {\n if (store.running.get(this) === roots) store.running.delete(this);\n settle(store);\n };\n },\n outer: (from) => {\n const store = top.shares.get(owner);\n if (store === undefined) return [];\n const held: TRoots[] = [];\n for (const scope of this.parent?.ancestry() ?? []) {\n if (depth(scope.level) >= depth(from) && store.running.has(scope))\n held.push(store.running.get(scope) as TRoots);\n }\n return held;\n },\n };\n }\n\n private async installAll(\n packages: readonly (PoServerPlugin | LoadedServerPackage)[],\n options: PoServerInstallOptions,\n ): Promise<readonly string[]> {\n if (this.disposed) throw new Error(`The ${this.level} scope is disposed.`);\n const notice = options.onNotice ?? ((): void => {});\n this.notice = notice;\n if (\n packages.some((candidate) => 'retained' in candidate && candidate.retained === true) &&\n !readPoHeadlessHost(this.root)\n )\n throw new Error('Retained server candidates require a gated headless host');\n for (const candidate of packages) {\n const plugin = 'declaration' in candidate ? candidate.plugin : candidate;\n const declaration = 'declaration' in candidate ? candidate.declaration : undefined;\n const name = declaration?.packageName ?? plugin.name;\n const previous = this.installed.get(name);\n if (previous?.plugin === plugin) continue;\n if (previous !== undefined) {\n this.installed.delete(name);\n await previous.fiber.dispose();\n }\n try {\n const fiber = await this.apply(name, plugin, declaration, options);\n this.installed.set(name, { plugin, ...(declaration === undefined ? {} : { declaration }), fiber });\n } catch (error) {\n const message = `server package '${name}' did not install (${describe(error)})`;\n if (previous !== undefined) {\n await this.restore(name, previous, options, message);\n continue;\n }\n if (\n declaration?.required === true &&\n !('initiallyEligible' in candidate && candidate.initiallyEligible === false)\n )\n throw new Error(message, { cause: error });\n notice(message);\n }\n }\n // A level waiting for a contract that nothing at it or above it provides would never mount, silently.\n for (const candidate of packages) {\n const plugin = 'declaration' in candidate ? candidate.plugin : candidate;\n const name = ('declaration' in candidate ? candidate.declaration.packageName : undefined) ?? plugin.name;\n if (this.installed.get(name)?.plugin !== plugin) continue;\n for (const contract of plugin.injects?.[this.level] ?? []) {\n // An inner level's contract is never visible here; defineServerPlugin refuses one, a raw plugin may not.\n const missing = depth(contract.scope) > depth(this.level) || this.resolve(contract) === undefined;\n if (missing)\n notice(\n `server package '${name}' waits for contract '${contract.name}', which no ${contract.scope} package provides.`,\n );\n }\n }\n return [...this.installed.keys()];\n }\n\n /** Applies a replaced package's previous build again after its new build failed. */\n private async restore(\n name: string,\n previous: InstalledPackage,\n options: PoServerInstallOptions,\n message: string,\n ): Promise<void> {\n try {\n const fiber = await this.apply(name, previous.plugin, previous.declaration, options);\n this.installed.set(name, { ...previous, fiber });\n this.notice(`${message}; its previous build is restored.`);\n } catch (rollbackError) {\n this.notice(`${message}; its previous build could not be restored (${describe(rollbackError)}).`);\n }\n }\n\n /** Applies one package as its own fiber, bounded by the factory timeout, and reports how it settled. */\n private async apply(\n name: string,\n plugin: PoServerPlugin,\n declaration: PoServerBundleEntry | undefined,\n options: PoServerInstallOptions,\n ): Promise<Fiber> {\n const startedAt = Date.now();\n const timeoutMs = options.factoryTimeoutMs ?? LIVE_FACTORY_TIMEOUT_MS;\n const settled = (outcome: PoServerPackageSettledReport['outcome']): void =>\n options.onPackageSettled?.({ packageName: name, durationMs: Date.now() - startedAt, outcome });\n let fiber: Fiber | undefined;\n let applySettled = false;\n try {\n const owner = declaration ? this.root.extend({ [PO_HEADLESS_OWNER]: declaration }) : this.root;\n fiber = owner.plugin(plugin);\n const applied = fiber.await();\n const markSettled = (): void => {\n applySettled = true;\n };\n applied.then(markSettled, markSettled);\n await withTimeout(applied, timeoutMs, `server package '${name}' apply`);\n settled('installed');\n return fiber;\n } catch (error) {\n settled(fiber && !applySettled ? 'timed_out' : 'failed');\n if (fiber && !applySettled) {\n this.abandonedTimeoutMs = Math.max(this.abandonedTimeoutMs ?? 0, timeoutMs);\n void fiber\n .dispose()\n .catch((disposeError: unknown) =>\n this.notice(`abandoned server package '${name}' did not dispose (${describe(disposeError)})`),\n );\n } else await fiber?.dispose();\n throw error;\n }\n }\n\n private visible(): Binding[] {\n return [...(this.parent?.visible() ?? []), ...this.bound.values()];\n }\n\n /** This scope, then each parent out to the root. */\n private outermost(): PoServerScope {\n return this.parent === undefined ? this : this.parent.outermost();\n }\n\n /** Disposes every value the tree still holds, newest first; a failure is reported and the rest still go. */\n private async disposeShares(): Promise<void> {\n const values = [...this.shares.values()].flatMap((store) => [...store.values.values()]).reverse();\n this.shares.clear();\n for (const shared of values) {\n try {\n await shared.disposeValue?.(await shared.value);\n } catch (error) {\n this.notice(`a shared server value did not dispose (${describe(error)})`);\n }\n }\n }\n\n private *ancestry(): Generator<PoServerScope> {\n yield this;\n if (this.parent !== undefined) yield* this.parent.ancestry();\n }\n\n private *subtree(): Generator<PoServerScope> {\n if (this.disposed) return;\n yield this;\n for (const child of this.children) yield* child.subtree();\n }\n\n /**\n * Publishes a binding into this root and settles once it is live. Idempotent per binding, since a\n * child opening mid-bind is reached by both `open` and `bind`.\n */\n private async mirror(binding: Binding): Promise<void> {\n if (this.disposed) return;\n let fiber = this.mirrors.get(binding);\n if (fiber === undefined) {\n fiber = this.root.plugin(bindingProvider, binding);\n this.mirrors.set(binding, fiber);\n }\n await fiber.await();\n }\n\n private async unmirror(binding: Binding): Promise<void> {\n const fiber = this.mirrors.get(binding);\n this.mirrors.delete(binding);\n // A disposing root unwinds its own mirrors.\n if (!this.disposed) await fiber?.dispose();\n }\n}\n\n/** Every scope receives the event even when an earlier one's listener throws. */\nfunction deliver(scopes: readonly PoServerScope[], name: keyof Events, args: readonly unknown[]): void {\n const errors: unknown[] = [];\n for (const scope of scopes) {\n if (scope.disposed) continue;\n try {\n scope.root.events.emit(name, ...args);\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length > 0) throw new AggregateError(errors, `${errors.length} scope listener(s) of '${name}' failed.`);\n}\n"],"mappings":"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"}