@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
@@ -1,382 +0,0 @@
1
- import { DOOM_COCKPIT_SERVER_ID, DoomHubService, DoomSessionManagementService } from "../schemas/sessionProtocol.mjs";
2
- import { harnessErrorMessage } from "./harnessErrorMessage.mjs";
3
- import "../../sessionProtocol.mjs";
4
- import { createAgentServerService } from "../pi/piSessionRuntime.mjs";
5
- import { DoomPluginService } from "../schemas/pluginProtocol.mjs";
6
- import "../../pluginProtocol.mjs";
7
- import { createPiWebSocketListener } from "../pi/piWebSocketListener.mjs";
8
- import { createThreadJournals } from "./threadJournals.mjs";
9
- import { randomUUID } from "node:crypto";
10
- import { BACKGROUND_CONTEXT } from "@earendil-works/chord/context";
11
- import { RemoteServiceProvider, createRemoteServiceEndpoint, replicatedState } from "@earendil-works/chord";
12
- import { Server, SessionNotFoundError } from "@earendil-works/pi-server";
13
- //#region src/server/headlessProtocol.ts
14
- const MAX_HUB_EVENTS = 1024;
15
- function sessionView(session) {
16
- return {
17
- id: session.id,
18
- ...session.workspaceId === void 0 ? {} : { workspaceId: session.workspaceId },
19
- ...session.webComposition === void 0 ? {} : { webComposition: { ...session.webComposition } },
20
- ...session.nativeComposition === void 0 ? {} : { nativeComposition: { ...session.nativeComposition } },
21
- name: session.name,
22
- cwd: session.cwd,
23
- createdAt: session.createdAt,
24
- updatedAt: session.updatedAt ?? session.createdAt,
25
- phase: session.phase ?? "idle",
26
- phaseSince: session.phaseSince ?? session.createdAt,
27
- attach: "attached",
28
- pendingMessageCount: session.pendingMessageCount ?? 0,
29
- everPrompted: session.everPrompted ?? false,
30
- awaitingInput: session.awaitingInput ?? false,
31
- ...session.lastSettledAt === void 0 ? {} : { lastSettledAt: session.lastSettledAt },
32
- ...session.git === void 0 ? {} : { git: {
33
- branch: session.git.branch,
34
- dirty: session.git.dirty
35
- } },
36
- ...session.profile === void 0 ? {} : { profile: {
37
- name: session.profile.name,
38
- ...session.profile.displayName === void 0 ? {} : { displayName: session.profile.displayName },
39
- ...session.profile.iconVersion === void 0 ? {} : { iconVersion: session.profile.iconVersion }
40
- } },
41
- ...session.parentSessionId === void 0 ? {} : { parentSessionId: session.parentSessionId },
42
- ...session.sessionProvenance === void 0 ? {} : { sessionProvenance: session.sessionProvenance },
43
- ...session.pendingSetups === void 0 ? {} : { pendingSetups: session.pendingSetups.map((setup) => ({
44
- id: setup.id,
45
- name: setup.name,
46
- createdAt: setup.createdAt,
47
- ...setup.cwd === void 0 ? {} : { cwd: setup.cwd },
48
- ...setup.setupKind === void 0 ? {} : { setupKind: setup.setupKind },
49
- ...setup.status === void 0 ? {} : { status: setup.status },
50
- ...setup.errorCode === void 0 ? {} : { errorCode: setup.errorCode }
51
- })) },
52
- ...session.activity === void 0 ? {} : { activity: {
53
- label: session.activity.label,
54
- ...session.activity.attention === true ? { attention: true } : {},
55
- ...session.activity.since === void 0 ? {} : { since: session.activity.since }
56
- } }
57
- };
58
- }
59
- /**
60
- * A recorded session with no runtime behind it yet.
61
- *
62
- * Carries the same field set as a live session so the rail keys both by id and
63
- * swaps one for the other in place once the server reopens the journal.
64
- */
65
- function dormantView(record) {
66
- return {
67
- id: record.sessionId,
68
- workspaceId: record.workspaceId,
69
- name: record.name,
70
- cwd: record.cwd,
71
- createdAt: record.createdAt,
72
- updatedAt: record.createdAt,
73
- phase: "idle",
74
- phaseSince: record.createdAt,
75
- attach: "attached",
76
- pendingMessageCount: 0,
77
- everPrompted: false,
78
- awaitingInput: false,
79
- dormant: true,
80
- ...record.parentSessionId === void 0 ? {} : { parentSessionId: record.parentSessionId },
81
- ...record.sessionProvenance === void 0 ? {} : { sessionProvenance: record.sessionProvenance }
82
- };
83
- }
84
- function endpointAttachment(endpoint) {
85
- return {
86
- invokeService: (call, publish, context) => endpoint.invoke(call, publish, context),
87
- release: () => endpoint.dispose()
88
- };
89
- }
90
- function metadataOf(session) {
91
- const createdAt = Date.parse(session.createdAt);
92
- return {
93
- id: session.id,
94
- createdAt: Number.isFinite(createdAt) ? createdAt : 0,
95
- storageVersion: 1,
96
- cwd: session.cwd,
97
- sessionName: session.name
98
- };
99
- }
100
- function frameOf(event) {
101
- switch (event.kind) {
102
- case "upsert": return {
103
- type: "session_upsert",
104
- session: sessionView(event.session)
105
- };
106
- case "removed": return {
107
- type: "session_removed",
108
- sessionId: event.sessionId
109
- };
110
- case "workspace_upsert": return {
111
- type: "workspace_upsert",
112
- workspace: {
113
- id: event.workspace.id,
114
- root: event.workspace.root,
115
- ...event.workspace.name === void 0 ? {} : { name: event.workspace.name },
116
- available: event.workspace.available !== false
117
- }
118
- };
119
- case "workspace_removed": return {
120
- type: "workspace_removed",
121
- workspaceId: event.workspaceId
122
- };
123
- case "channel": return {
124
- type: event.frameType,
125
- sessionId: event.sessionId,
126
- payload: event.payload
127
- };
128
- case "frame": return {
129
- type: "session_frame",
130
- sessionId: event.sessionId,
131
- frame: event.frame
132
- };
133
- }
134
- }
135
- function permitsSession(hub, mount, sessionId, authorize = () => true) {
136
- const session = hub.session(sessionId);
137
- return session !== void 0 && authorize(sessionId) && (mount.scope === "global" || session.workspaceId === mount.workspaceId && (mount.scope === "workspace" || mount.sessionId === sessionId));
138
- }
139
- function permitsDormant(mount, record) {
140
- if (mount.scope === "global") return true;
141
- if (record.workspaceId !== mount.workspaceId) return false;
142
- return mount.scope === "workspace" || mount.sessionId === record.sessionId;
143
- }
144
- function managementHost(hub, threads, mount, dormantSessions, authorizeSession, authorizeDesktop, authorizeComputerUse) {
145
- return { attachClient(presentation) {
146
- const connectionId = randomUUID();
147
- const lifetime = new AbortController();
148
- const subscriptions = /* @__PURE__ */ new Set();
149
- const threadSubscriptions = /* @__PURE__ */ new Set();
150
- const state = replicatedState({ events: [] });
151
- let sequence = 0;
152
- let released = false;
153
- const publish = (frame) => {
154
- sequence += 1;
155
- state.change(BACKGROUND_CONTEXT, (draft) => {
156
- draft.events.push({
157
- sequence,
158
- frame
159
- });
160
- if (draft.events.length > MAX_HUB_EVENTS) draft.events.shift();
161
- });
162
- };
163
- const visible = new Set(hub.snapshot().filter((session) => permitsSession(hub, mount, session.id, authorizeSession)).map((session) => session.id));
164
- publish({
165
- type: "sessions_snapshot",
166
- sessions: [...hub.snapshot().filter((session) => visible.has(session.id)).map(sessionView), ...dormantSessions().filter((record) => !visible.has(record.sessionId) && authorizeSession(record.sessionId) && permitsDormant(mount, record)).map(dormantView)]
167
- });
168
- publish({
169
- type: "workspaces_snapshot",
170
- workspaces: hub.workspaces().filter((workspace) => mount.scope === "global" || workspace.id === mount.workspaceId).map((workspace) => ({
171
- id: workspace.id,
172
- root: workspace.root,
173
- ...workspace.name === void 0 ? {} : { name: workspace.name },
174
- available: workspace.available !== false
175
- }))
176
- });
177
- const stopEvents = hub.onEvent((event) => {
178
- if (event.kind === "workspace_upsert" || event.kind === "workspace_removed") {
179
- const workspaceId = event.kind === "workspace_upsert" ? event.workspace.id : event.workspaceId;
180
- if (mount.scope !== "global" && mount.workspaceId !== workspaceId) return;
181
- publish(frameOf(event));
182
- return;
183
- }
184
- if (event.kind === "removed") {
185
- if (!visible.delete(event.sessionId)) return;
186
- const record = event.dormant === true ? dormantSessions().find((candidate) => candidate.sessionId === event.sessionId) : void 0;
187
- if (record !== void 0 && authorizeSession(record.sessionId) && permitsDormant(mount, record)) {
188
- publish({
189
- type: "session_upsert",
190
- session: dormantView(record)
191
- });
192
- return;
193
- }
194
- } else {
195
- const id = event.kind === "upsert" ? event.session.id : event.sessionId;
196
- if (!permitsSession(hub, mount, id, authorizeSession)) return;
197
- if (event.kind === "upsert") visible.add(id);
198
- }
199
- if (event.kind === "channel") {
200
- if (event.frameType === "computer_use_state" && !authorizeComputerUse(event.sessionId)) return;
201
- if (!subscriptions.has(event.sessionId)) return;
202
- if (event.connectionId !== void 0 && event.connectionId !== connectionId) return;
203
- }
204
- publish(frameOf(event));
205
- });
206
- const stopThreadFrames = threads.onFrame((event) => {
207
- if (!authorizeSession(event.sessionId) || !threadSubscriptions.has(`${event.sessionId}\n${event.threadId}`)) return;
208
- publish({
209
- type: "thread_frame",
210
- sessionId: event.sessionId,
211
- threadId: event.threadId,
212
- frame: event.frame
213
- });
214
- });
215
- const service = {
216
- state,
217
- async send(frame) {
218
- const sessionId = typeof frame.sessionId === "string" ? frame.sessionId : void 0;
219
- if (sessionId !== void 0 && !authorizeSession(sessionId)) throw new SessionNotFoundError("This session belongs to Desktop.");
220
- if (sessionId !== void 0 && !permitsSession(hub, mount, sessionId)) return;
221
- if (frame.type === "subscribe" && sessionId !== void 0) {
222
- if (!hub.session(sessionId)) return;
223
- subscriptions.add(sessionId);
224
- for (const channelFrame of hub.channelFrames(sessionId)) if (channelFrame.type !== "computer_use_state" || authorizeComputerUse(sessionId)) publish(channelFrame);
225
- return;
226
- }
227
- if (frame.type === "unsubscribe" && sessionId !== void 0) {
228
- subscriptions.delete(sessionId);
229
- return;
230
- }
231
- const threadId = typeof frame.threadId === "string" ? frame.threadId : void 0;
232
- if ((frame.type === "subscribe_thread" || frame.type === "unsubscribe_thread") && threadId !== void 0) {
233
- const key = `${sessionId ?? ""}\n${threadId}`;
234
- if (sessionId === void 0) return;
235
- if (frame.type === "unsubscribe_thread") {
236
- if (threadSubscriptions.delete(key)) threads.unsubscribe(sessionId, threadId);
237
- return;
238
- }
239
- if (threadSubscriptions.has(key)) return;
240
- threadSubscriptions.add(key);
241
- publish({
242
- type: "thread_backlog",
243
- sessionId,
244
- threadId,
245
- frames: threads.subscribe(sessionId, threadId)
246
- });
247
- return;
248
- }
249
- if (sessionId !== void 0) hub.receiveChannel(sessionId, frame.type, frame.payload, connectionId, authorizeDesktop(), authorizeComputerUse(sessionId));
250
- }
251
- };
252
- const provider = new RemoteServiceProvider([
253
- {
254
- service: DoomSessionManagementService,
255
- mode: "singleton"
256
- },
257
- {
258
- service: DoomHubService,
259
- mode: "singleton"
260
- },
261
- {
262
- service: DoomPluginService,
263
- mode: "singleton"
264
- }
265
- ]);
266
- provider.provide(DoomHubService, service);
267
- provider.provide(DoomPluginService, { async invoke(call) {
268
- if (call.mount.scope === "session" && !authorizeSession(call.mount.sessionId)) throw new Error("This session belongs to its Desktop instance.");
269
- if (mount.scope !== "global") {
270
- if (!(call.mount.scope === "session" ? permitsSession(hub, mount, call.mount.sessionId) : mount.scope === "workspace" && call.mount.scope === "workspace" && call.mount.workspaceId === mount.workspaceId)) throw new Error("Plugin is outside this WebSocket scope.");
271
- }
272
- return await hub.invokePlugin(call, "client-to-server", {
273
- connectionId,
274
- signal: lifetime.signal
275
- });
276
- } });
277
- provider.provide(DoomSessionManagementService, {
278
- attach: (sessionId, context) => {
279
- if (!authorizeSession(sessionId)) throw new SessionNotFoundError("This session belongs to Desktop.");
280
- return presentation.attachSession(sessionId, context);
281
- },
282
- detach: (context) => presentation.detachSession(context)
283
- });
284
- const attachment = endpointAttachment(createRemoteServiceEndpoint(provider));
285
- return {
286
- invokeService: attachment.invokeService,
287
- release() {
288
- if (released) return;
289
- released = true;
290
- lifetime.abort();
291
- stopEvents();
292
- stopThreadFrames();
293
- for (const key of threadSubscriptions) {
294
- const [sessionId, threadId] = key.split("\n");
295
- if (sessionId !== void 0 && threadId !== void 0) threads.unsubscribe(sessionId, threadId);
296
- }
297
- threadSubscriptions.clear();
298
- subscriptions.clear();
299
- hub.disconnectChannels(connectionId);
300
- provider.dispose();
301
- attachment.release();
302
- }
303
- };
304
- } };
305
- }
306
- function protocolHost(hub, threads, telemetry, mount, dormantSessions, authorizeSession, authorizeDesktop, authorizeComputerUse) {
307
- return {
308
- serverServices: managementHost(hub, threads, mount, dormantSessions, authorizeSession, authorizeDesktop, authorizeComputerUse),
309
- async resolveSession(sessionId) {
310
- const session = hub.session(sessionId);
311
- if (!session || !permitsSession(hub, mount, session.id, authorizeSession)) throw new SessionNotFoundError(`No session ${sessionId}`);
312
- return metadataOf(session);
313
- },
314
- async openSession(metadata, context) {
315
- const session = hub.session(metadata.id);
316
- if (!session || !permitsSession(hub, mount, session.id, authorizeSession)) throw new SessionNotFoundError(`No session ${metadata.id}`);
317
- const permitted = () => hub.session(session.id)?.host === session.host && authorizeSession(session.id);
318
- const handle = await createAgentServerService({
319
- runtime: session.host.runtime,
320
- onPresentationFrame: (listener) => session.host.onPresentationFrame((frame) => {
321
- if (permitted()) listener(frame);
322
- }),
323
- respondToExtensionUi: (frame) => {
324
- if (!permitted()) throw new SessionNotFoundError("This session belongs to Desktop.");
325
- return session.host.respondToExtensionUi(frame);
326
- },
327
- readThreadTranscript: (threadId, request, readContext) => {
328
- if (!permitted()) throw new SessionNotFoundError("This session belongs to Desktop.");
329
- return threads.readPage(session.id, threadId, request, readContext);
330
- },
331
- sessionId: session.id,
332
- sessionName: session.name,
333
- cwd: session.cwd,
334
- createdAt: metadataOf(session).createdAt,
335
- telemetry
336
- }).openSession(metadata, context);
337
- return {
338
- ...handle,
339
- async attachClient(...args) {
340
- const attachment = await handle.attachClient(...args);
341
- return {
342
- ...attachment,
343
- invokeService(call, publish, invocationContext) {
344
- if (!permitted()) throw new SessionNotFoundError("This session belongs to Desktop.");
345
- return attachment.invokeService(call, (...values) => {
346
- if (permitted()) return publish(...values);
347
- }, invocationContext);
348
- }
349
- };
350
- },
351
- terminated: session.host.runtime.exited.then(async () => {
352
- await handle.close(BACKGROUND_CONTEXT);
353
- })
354
- };
355
- }
356
- };
357
- }
358
- /** Hosts the browser's Pi 0.85 connection directly over the process-local hub. */
359
- async function createHeadlessProtocol(options) {
360
- const listener = createPiWebSocketListener({ onError: (error) => options.onNotice?.(error.message) });
361
- const threads = createThreadJournals({ resolve: (sessionId, threadId) => options.hub.threadJournal(sessionId, threadId) });
362
- const server = await new Server(protocolHost(options.hub, threads, options.telemetry, options.mount ?? { scope: "global" }, () => options.dormantSessions === void 0 ? [] : options.dormantSessions(), options.authorizeSession ?? ((id) => !options.hub.computerUse?.ownsSession?.(id)), options.authorizeDesktop ?? (() => false), options.authorizeComputerUse ?? (() => options.authorizeDesktop?.() === true)), {
363
- listeners: [listener],
364
- serverId: DOOM_COCKPIT_SERVER_ID,
365
- onError: (error) => options.onNotice?.(`headless protocol error (${harnessErrorMessage(error)})`)
366
- }).start();
367
- let closing;
368
- return {
369
- accept: (socket) => listener.accept(socket),
370
- close() {
371
- closing ??= (async () => {
372
- threads.close();
373
- await server.close();
374
- })();
375
- return closing;
376
- }
377
- };
378
- }
379
- //#endregion
380
- export { createHeadlessProtocol };
381
-
382
- //# sourceMappingURL=headlessProtocol.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"headlessProtocol.mjs","names":[],"sources":["../../../src/server/headlessProtocol.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\n\nimport {\n createRemoteServiceEndpoint,\n RemoteServiceProvider,\n replicatedState,\n type JsonValue,\n type RemoteServiceEndpoint,\n} from '@earendil-works/chord';\nimport { BACKGROUND_CONTEXT } from '@earendil-works/chord/context';\nimport type { RoutedServerServiceHost, RoutedSessionHandle, ServerHost } from '@earendil-works/pi-server';\nimport { Server, SessionNotFoundError } from '@earendil-works/pi-server';\n\nimport { DoomPluginService } from '../exports/pluginProtocol';\nimport {\n DOOM_COCKPIT_SERVER_ID,\n DoomHubService,\n DoomSessionManagementService,\n type HubService,\n type ProtocolEvent,\n} from '../exports/sessionProtocol';\nimport { createAgentServerService, type DoomSessionMetadata } from '../pi/piSessionRuntime';\nimport { createPiWebSocketListener, type PiListenerSocket } from '../pi/piWebSocketListener';\nimport type { DoomSocketMount } from '../schemas/packageApi';\nimport type { OpenSessionRecord } from '../services/openSessionRegistry';\nimport type { ServerTelemetry } from '../services/serverTelemetry';\nimport { harnessErrorMessage } from './harnessErrorMessage';\nimport type { HeadlessHub, HeadlessHubEvent, HeadlessHubSession } from './headlessHub';\nimport { createThreadJournals, type ThreadJournals } from './threadJournals';\n\nconst MAX_HUB_EVENTS = 1_024;\n\ntype ProtocolHandler = NonNullable<ReturnType<ReturnType<typeof createPiWebSocketListener>['accept']>>;\ntype HubFrame = { type: string; [key: string]: JsonValue };\n\nfunction sessionView(session: HeadlessHubSession): Record<string, JsonValue> {\n return {\n id: session.id,\n ...(session.workspaceId === undefined ? {} : { workspaceId: session.workspaceId }),\n ...(session.webComposition === undefined ? {} : { webComposition: { ...session.webComposition } }),\n ...(session.nativeComposition === undefined ? {} : { nativeComposition: { ...session.nativeComposition } }),\n name: session.name,\n cwd: session.cwd,\n createdAt: session.createdAt,\n updatedAt: session.updatedAt ?? session.createdAt,\n phase: session.phase ?? 'idle',\n phaseSince: session.phaseSince ?? session.createdAt,\n attach: 'attached',\n pendingMessageCount: session.pendingMessageCount ?? 0,\n everPrompted: session.everPrompted ?? false,\n awaitingInput: session.awaitingInput ?? false,\n ...(session.lastSettledAt === undefined ? {} : { lastSettledAt: session.lastSettledAt }),\n ...(session.git === undefined ? {} : { git: { branch: session.git.branch, dirty: session.git.dirty } }),\n ...(session.profile === undefined\n ? {}\n : {\n profile: {\n name: session.profile.name,\n ...(session.profile.displayName === undefined ? {} : { displayName: session.profile.displayName }),\n ...(session.profile.iconVersion === undefined ? {} : { iconVersion: session.profile.iconVersion }),\n },\n }),\n ...(session.parentSessionId === undefined ? {} : { parentSessionId: session.parentSessionId }),\n ...(session.sessionProvenance === undefined ? {} : { sessionProvenance: session.sessionProvenance }),\n ...(session.pendingSetups === undefined\n ? {}\n : {\n pendingSetups: session.pendingSetups.map((setup) => ({\n id: setup.id,\n name: setup.name,\n createdAt: setup.createdAt,\n ...(setup.cwd === undefined ? {} : { cwd: setup.cwd }),\n ...(setup.setupKind === undefined ? {} : { setupKind: setup.setupKind }),\n ...(setup.status === undefined ? {} : { status: setup.status }),\n ...(setup.errorCode === undefined ? {} : { errorCode: setup.errorCode }),\n })),\n }),\n ...(session.activity === undefined\n ? {}\n : {\n activity: {\n label: session.activity.label,\n ...(session.activity.attention === true ? { attention: true } : {}),\n ...(session.activity.since === undefined ? {} : { since: session.activity.since }),\n },\n }),\n };\n}\n\n/**\n * A recorded session with no runtime behind it yet.\n *\n * Carries the same field set as a live session so the rail keys both by id and\n * swaps one for the other in place once the server reopens the journal.\n */\nfunction dormantView(record: OpenSessionRecord): Record<string, JsonValue> {\n return {\n id: record.sessionId,\n workspaceId: record.workspaceId,\n name: record.name,\n cwd: record.cwd,\n createdAt: record.createdAt,\n updatedAt: record.createdAt,\n phase: 'idle',\n phaseSince: record.createdAt,\n attach: 'attached',\n pendingMessageCount: 0,\n everPrompted: false,\n awaitingInput: false,\n dormant: true,\n ...(record.parentSessionId === undefined ? {} : { parentSessionId: record.parentSessionId }),\n ...(record.sessionProvenance === undefined ? {} : { sessionProvenance: record.sessionProvenance }),\n };\n}\n\nfunction endpointAttachment(endpoint: RemoteServiceEndpoint): {\n invokeService: RemoteServiceEndpoint['invoke'];\n release(): void;\n} {\n return {\n invokeService: (call, publish, context) => endpoint.invoke(call, publish, context),\n release: () => endpoint.dispose(),\n };\n}\n\nfunction metadataOf(session: HeadlessHubSession): DoomSessionMetadata {\n const createdAt = Date.parse(session.createdAt);\n return {\n id: session.id,\n createdAt: Number.isFinite(createdAt) ? createdAt : 0,\n storageVersion: 1,\n cwd: session.cwd,\n sessionName: session.name,\n };\n}\n\nfunction frameOf(event: HeadlessHubEvent): HubFrame {\n switch (event.kind) {\n case 'upsert':\n return { type: 'session_upsert', session: sessionView(event.session) };\n case 'removed':\n return { type: 'session_removed', sessionId: event.sessionId };\n case 'workspace_upsert':\n return {\n type: 'workspace_upsert',\n workspace: {\n id: event.workspace.id,\n root: event.workspace.root,\n ...(event.workspace.name === undefined ? {} : { name: event.workspace.name }),\n available: event.workspace.available !== false,\n },\n };\n case 'workspace_removed':\n return { type: 'workspace_removed', workspaceId: event.workspaceId };\n case 'channel':\n return { type: event.frameType, sessionId: event.sessionId, payload: event.payload as JsonValue };\n case 'frame':\n return { type: 'session_frame', sessionId: event.sessionId, frame: event.frame as JsonValue };\n }\n}\n\nfunction permitsSession(\n hub: HeadlessHub,\n mount: DoomSocketMount,\n sessionId: string,\n authorize: (id: string) => boolean = () => true,\n): boolean {\n const session = hub.session(sessionId);\n return (\n session !== undefined &&\n authorize(sessionId) &&\n (mount.scope === 'global' ||\n (session.workspaceId === mount.workspaceId && (mount.scope === 'workspace' || mount.sessionId === sessionId)))\n );\n}\n\nfunction permitsDormant(mount: DoomSocketMount, record: OpenSessionRecord): boolean {\n if (mount.scope === 'global') return true;\n if (record.workspaceId !== mount.workspaceId) return false;\n return mount.scope === 'workspace' || mount.sessionId === record.sessionId;\n}\n\nfunction managementHost(\n hub: HeadlessHub,\n threads: ThreadJournals,\n mount: DoomSocketMount,\n dormantSessions: () => readonly OpenSessionRecord[],\n authorizeSession: (id: string) => boolean,\n authorizeDesktop: () => boolean,\n authorizeComputerUse: (id: string) => boolean,\n): RoutedServerServiceHost {\n return {\n attachClient(presentation) {\n const connectionId = randomUUID();\n const lifetime = new AbortController();\n const subscriptions = new Set<string>();\n const threadSubscriptions = new Set<string>();\n const state = replicatedState<{ events: ProtocolEvent[] }>({ events: [] });\n let sequence = 0;\n let released = false;\n const publish = (frame: HubFrame): void => {\n sequence += 1;\n state.change(BACKGROUND_CONTEXT, (draft) => {\n draft.events.push({ sequence, frame });\n if (draft.events.length > MAX_HUB_EVENTS) draft.events.shift();\n });\n };\n const visible = new Set(\n hub\n .snapshot()\n .filter((session) => permitsSession(hub, mount, session.id, authorizeSession))\n .map((session) => session.id),\n );\n publish({\n type: 'sessions_snapshot',\n sessions: [\n ...hub\n .snapshot()\n .filter((session) => visible.has(session.id))\n .map(sessionView),\n ...dormantSessions()\n .filter(\n (record) =>\n !visible.has(record.sessionId) && authorizeSession(record.sessionId) && permitsDormant(mount, record),\n )\n .map(dormantView),\n ],\n });\n publish({\n type: 'workspaces_snapshot',\n workspaces: hub\n .workspaces()\n .filter((workspace) => mount.scope === 'global' || workspace.id === mount.workspaceId)\n .map((workspace) => ({\n id: workspace.id,\n root: workspace.root,\n ...(workspace.name === undefined ? {} : { name: workspace.name }),\n available: workspace.available !== false,\n })),\n });\n const stopEvents = hub.onEvent((event) => {\n if (event.kind === 'workspace_upsert' || event.kind === 'workspace_removed') {\n const workspaceId = event.kind === 'workspace_upsert' ? event.workspace.id : event.workspaceId;\n if (mount.scope !== 'global' && mount.workspaceId !== workspaceId) return;\n publish(frameOf(event));\n return;\n }\n if (event.kind === 'removed') {\n if (!visible.delete(event.sessionId)) return;\n // A released session keeps its record: it lists as dormant, as after a\n // restart, so its history stays readable where it is shown.\n const record =\n event.dormant === true\n ? dormantSessions().find((candidate) => candidate.sessionId === event.sessionId)\n : undefined;\n if (record !== undefined && authorizeSession(record.sessionId) && permitsDormant(mount, record)) {\n publish({ type: 'session_upsert', session: dormantView(record) });\n return;\n }\n } else {\n const id = event.kind === 'upsert' ? event.session.id : event.sessionId;\n if (!permitsSession(hub, mount, id, authorizeSession)) return;\n if (event.kind === 'upsert') visible.add(id);\n }\n if (event.kind === 'channel') {\n if (event.frameType === 'computer_use_state' && !authorizeComputerUse(event.sessionId)) return;\n if (!subscriptions.has(event.sessionId)) return;\n if (event.connectionId !== undefined && event.connectionId !== connectionId) return;\n }\n publish(frameOf(event));\n });\n const stopThreadFrames = threads.onFrame((event) => {\n if (!authorizeSession(event.sessionId) || !threadSubscriptions.has(`${event.sessionId}\\n${event.threadId}`))\n return;\n publish({\n type: 'thread_frame',\n sessionId: event.sessionId,\n threadId: event.threadId,\n frame: event.frame as JsonValue,\n });\n });\n const service: HubService = {\n state,\n async send(frame) {\n const sessionId = typeof frame.sessionId === 'string' ? frame.sessionId : undefined;\n if (sessionId !== undefined && !authorizeSession(sessionId))\n throw new SessionNotFoundError('This session belongs to Desktop.');\n if (sessionId !== undefined && !permitsSession(hub, mount, sessionId)) return;\n if (frame.type === 'subscribe' && sessionId !== undefined) {\n if (!hub.session(sessionId)) return;\n subscriptions.add(sessionId);\n for (const channelFrame of hub.channelFrames(sessionId)) {\n if (channelFrame.type !== 'computer_use_state' || authorizeComputerUse(sessionId))\n publish(channelFrame as HubFrame);\n }\n return;\n }\n if (frame.type === 'unsubscribe' && sessionId !== undefined) {\n subscriptions.delete(sessionId);\n return;\n }\n const threadId = typeof frame.threadId === 'string' ? frame.threadId : undefined;\n if ((frame.type === 'subscribe_thread' || frame.type === 'unsubscribe_thread') && threadId !== undefined) {\n const key = `${sessionId ?? ''}\\n${threadId}`;\n if (sessionId === undefined) return;\n if (frame.type === 'unsubscribe_thread') {\n if (threadSubscriptions.delete(key)) threads.unsubscribe(sessionId, threadId);\n return;\n }\n if (threadSubscriptions.has(key)) return;\n threadSubscriptions.add(key);\n publish({\n type: 'thread_backlog',\n sessionId,\n threadId,\n frames: threads.subscribe(sessionId, threadId) as JsonValue,\n });\n return;\n }\n if (sessionId !== undefined)\n hub.receiveChannel(\n sessionId,\n frame.type,\n frame.payload,\n connectionId,\n authorizeDesktop(),\n authorizeComputerUse(sessionId),\n );\n },\n };\n const provider = new RemoteServiceProvider([\n { service: DoomSessionManagementService, mode: 'singleton' },\n { service: DoomHubService, mode: 'singleton' },\n { service: DoomPluginService, mode: 'singleton' },\n ]);\n provider.provide(DoomHubService, service);\n provider.provide(DoomPluginService, {\n async invoke(call) {\n if (call.mount.scope === 'session' && !authorizeSession(call.mount.sessionId)) {\n throw new Error('This session belongs to its Desktop instance.');\n }\n if (mount.scope !== 'global') {\n const permitted =\n call.mount.scope === 'session'\n ? permitsSession(hub, mount, call.mount.sessionId)\n : mount.scope === 'workspace' &&\n call.mount.scope === 'workspace' &&\n call.mount.workspaceId === mount.workspaceId;\n if (!permitted) throw new Error('Plugin is outside this WebSocket scope.');\n }\n return (await hub.invokePlugin(call, 'client-to-server', {\n connectionId,\n signal: lifetime.signal,\n })) as JsonValue;\n },\n });\n provider.provide(DoomSessionManagementService, {\n attach: (sessionId, context) => {\n if (!authorizeSession(sessionId)) throw new SessionNotFoundError('This session belongs to Desktop.');\n return presentation.attachSession(sessionId, context);\n },\n detach: (context) => presentation.detachSession(context),\n });\n const endpoint = createRemoteServiceEndpoint(provider);\n const attachment = endpointAttachment(endpoint);\n return {\n invokeService: attachment.invokeService,\n release() {\n if (released) return;\n released = true;\n lifetime.abort();\n stopEvents();\n stopThreadFrames();\n for (const key of threadSubscriptions) {\n const [sessionId, threadId] = key.split('\\n');\n if (sessionId !== undefined && threadId !== undefined) threads.unsubscribe(sessionId, threadId);\n }\n threadSubscriptions.clear();\n subscriptions.clear();\n hub.disconnectChannels(connectionId);\n provider.dispose();\n attachment.release();\n },\n };\n },\n };\n}\n\nfunction protocolHost(\n hub: HeadlessHub,\n threads: ThreadJournals,\n telemetry: ServerTelemetry | undefined,\n mount: DoomSocketMount,\n dormantSessions: () => readonly OpenSessionRecord[],\n authorizeSession: (id: string) => boolean,\n authorizeDesktop: () => boolean,\n authorizeComputerUse: (id: string) => boolean,\n): ServerHost<DoomSessionMetadata> {\n return {\n serverServices: managementHost(\n hub,\n threads,\n mount,\n dormantSessions,\n authorizeSession,\n authorizeDesktop,\n authorizeComputerUse,\n ),\n async resolveSession(sessionId) {\n const session = hub.session(sessionId);\n if (!session || !permitsSession(hub, mount, session.id, authorizeSession))\n throw new SessionNotFoundError(`No session ${sessionId}`);\n return metadataOf(session);\n },\n async openSession(metadata, context): Promise<RoutedSessionHandle> {\n const session = hub.session(metadata.id);\n if (!session || !permitsSession(hub, mount, session.id, authorizeSession))\n throw new SessionNotFoundError(`No session ${metadata.id}`);\n const permitted = () => hub.session(session.id)?.host === session.host && authorizeSession(session.id);\n const service = createAgentServerService({\n runtime: session.host.runtime,\n onPresentationFrame: (listener) =>\n session.host.onPresentationFrame((frame) => {\n if (permitted()) listener(frame);\n }),\n respondToExtensionUi: (frame) => {\n if (!permitted()) throw new SessionNotFoundError('This session belongs to Desktop.');\n return session.host.respondToExtensionUi(frame);\n },\n readThreadTranscript: (threadId, request, readContext) => {\n if (!permitted()) throw new SessionNotFoundError('This session belongs to Desktop.');\n return threads.readPage(session.id, threadId, request, readContext);\n },\n sessionId: session.id,\n sessionName: session.name,\n cwd: session.cwd,\n createdAt: metadataOf(session).createdAt,\n telemetry,\n });\n const handle = await service.openSession(metadata, context);\n return {\n ...handle,\n async attachClient(...args) {\n const attachment = await handle.attachClient(...args);\n return {\n ...attachment,\n invokeService(call, publish, invocationContext) {\n if (!permitted()) throw new SessionNotFoundError('This session belongs to Desktop.');\n return attachment.invokeService(\n call,\n (...values) => {\n if (permitted()) return publish(...values);\n },\n invocationContext,\n );\n },\n };\n },\n terminated: session.host.runtime.exited.then(async () => {\n await handle.close(BACKGROUND_CONTEXT);\n return undefined;\n }),\n };\n },\n };\n}\n\nexport interface HeadlessProtocol {\n accept(socket: PiListenerSocket): ProtocolHandler | undefined;\n close(): Promise<void>;\n}\n\n/** Hosts the browser's Pi 0.85 connection directly over the process-local hub. */\nexport async function createHeadlessProtocol(options: {\n hub: HeadlessHub;\n mount?: DoomSocketMount;\n telemetry?: ServerTelemetry;\n onNotice?: (message: string) => void;\n /** Recorded sessions the server has not reopened; they join the first snapshot only. */\n dormantSessions?: () => readonly OpenSessionRecord[];\n /** Evaluated for every invocation, including attachments established before a Desktop claim. */\n authorizeSession?: (sessionId: string) => boolean;\n authorizeDesktop?: () => boolean;\n authorizeComputerUse?: (sessionId: string) => boolean;\n}): Promise<HeadlessProtocol> {\n const listener = createPiWebSocketListener({ onError: (error) => options.onNotice?.(error.message) });\n const threads = createThreadJournals({\n resolve: (sessionId, threadId) => options.hub.threadJournal(sessionId, threadId),\n });\n const server = await new Server(\n protocolHost(\n options.hub,\n threads,\n options.telemetry,\n options.mount ?? { scope: 'global' },\n () => (options.dormantSessions === undefined ? [] : options.dormantSessions()),\n options.authorizeSession ?? ((id) => !options.hub.computerUse?.ownsSession?.(id)),\n options.authorizeDesktop ?? (() => false),\n options.authorizeComputerUse ?? (() => options.authorizeDesktop?.() === true),\n ),\n {\n listeners: [listener],\n serverId: DOOM_COCKPIT_SERVER_ID,\n onError: (error) => options.onNotice?.(`headless protocol error (${harnessErrorMessage(error)})`),\n },\n ).start();\n let closing: Promise<void> | undefined;\n return {\n accept: (socket) => listener.accept(socket),\n close() {\n closing ??= (async () => {\n threads.close();\n await server.close();\n })();\n return closing;\n },\n };\n}\n"],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
2
- const require_sqliteSessionStorage = require("../../sqliteSessionStorage.cjs");
3
- const require_index = require("../services/sqliteTranscriptReader/index.cjs");
4
- const require_nativeChildRuntimes = require("../systems/child/adapters/nativeChildRuntimes.cjs");
5
- let node_path = require("node:path");
6
- node_path = require_runtime.__toESM(node_path, 1);
7
- //#region src/server/nativeChildTranscriptReader.ts
8
- /** Dispatches an already-authorized child journal to its live runtime or completed read-only backend. */
9
- async function readNativeChildTranscript(file, request, signal) {
10
- signal?.throwIfAborted();
11
- if (node_path.default.extname(file) !== ".sqlite" || node_path.default.basename(node_path.default.dirname(file)) !== "durable-v1") throw new Error("Legacy child transcripts are unsupported by fresh durable storage");
12
- const runtime = require_nativeChildRuntimes.nativeChildRuntime(file);
13
- const page = runtime ? await runtime.readTranscriptPage(request, require_sqliteSessionStorage.DURABLE_BACKGROUND_CONTEXT) : await require_index.readSqliteTranscript(file, request, require_sqliteSessionStorage.DURABLE_BACKGROUND_CONTEXT);
14
- signal?.throwIfAborted();
15
- return page;
16
- }
17
- //#endregion
18
- exports.readNativeChildTranscript = readNativeChildTranscript;
19
-
20
- //# sourceMappingURL=nativeChildTranscriptReader.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nativeChildTranscriptReader.cjs","names":["path","nativeChildRuntime","BACKGROUND_CONTEXT","readSqliteTranscript"],"sources":["../../../src/server/nativeChildTranscriptReader.ts"],"sourcesContent":["import path from 'node:path';\n\nimport type { TranscriptPage, TranscriptPageRequest } from '../exports/sessionProtocol';\nimport { DURABLE_BACKGROUND_CONTEXT as BACKGROUND_CONTEXT, DURABLE_DIRECTORY } from '../services/sqliteSessionStorage';\nimport { readSqliteTranscript } from '../services/sqliteTranscriptReader';\nimport { nativeChildRuntime } from '../systems/child/adapters/nativeChildRuntimes';\n\n/** Dispatches an already-authorized child journal to its live runtime or completed read-only backend. */\nexport async function readNativeChildTranscript(\n file: string,\n request: Omit<TranscriptPageRequest, 'threadId'>,\n signal?: AbortSignal,\n): Promise<TranscriptPage> {\n signal?.throwIfAborted();\n if (path.extname(file) !== '.sqlite' || path.basename(path.dirname(file)) !== DURABLE_DIRECTORY)\n throw new Error('Legacy child transcripts are unsupported by fresh durable storage');\n const runtime = nativeChildRuntime(file);\n const page = runtime\n ? await runtime.readTranscriptPage(request, BACKGROUND_CONTEXT)\n : await readSqliteTranscript(file, request, BACKGROUND_CONTEXT);\n signal?.throwIfAborted();\n return page;\n}\n"],"mappings":";;;;;;;;AAQA,eAAsB,0BACpB,MACA,SACA,QACyB;CACzB,QAAQ,eAAe;CACvB,IAAIA,UAAAA,QAAK,QAAQ,IAAI,MAAM,aAAaA,UAAAA,QAAK,SAASA,UAAAA,QAAK,QAAQ,IAAI,CAAC,MAAA,cACtE,MAAM,IAAI,MAAM,mEAAmE;CACrF,MAAM,UAAUC,4BAAAA,mBAAmB,IAAI;CACvC,MAAM,OAAO,UACT,MAAM,QAAQ,mBAAmB,SAASC,6BAAAA,0BAAkB,IAC5D,MAAMC,cAAAA,qBAAqB,MAAM,SAASD,6BAAAA,0BAAkB;CAChE,QAAQ,eAAe;CACvB,OAAO;AACT"}
@@ -1,18 +0,0 @@
1
- import { DURABLE_BACKGROUND_CONTEXT } from "../../sqliteSessionStorage.mjs";
2
- import { readSqliteTranscript } from "../services/sqliteTranscriptReader/index.mjs";
3
- import { nativeChildRuntime } from "../systems/child/adapters/nativeChildRuntimes.mjs";
4
- import path from "node:path";
5
- //#region src/server/nativeChildTranscriptReader.ts
6
- /** Dispatches an already-authorized child journal to its live runtime or completed read-only backend. */
7
- async function readNativeChildTranscript(file, request, signal) {
8
- signal?.throwIfAborted();
9
- if (path.extname(file) !== ".sqlite" || path.basename(path.dirname(file)) !== "durable-v1") throw new Error("Legacy child transcripts are unsupported by fresh durable storage");
10
- const runtime = nativeChildRuntime(file);
11
- const page = runtime ? await runtime.readTranscriptPage(request, DURABLE_BACKGROUND_CONTEXT) : await readSqliteTranscript(file, request, DURABLE_BACKGROUND_CONTEXT);
12
- signal?.throwIfAborted();
13
- return page;
14
- }
15
- //#endregion
16
- export { readNativeChildTranscript };
17
-
18
- //# sourceMappingURL=nativeChildTranscriptReader.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nativeChildTranscriptReader.mjs","names":["BACKGROUND_CONTEXT"],"sources":["../../../src/server/nativeChildTranscriptReader.ts"],"sourcesContent":["import path from 'node:path';\n\nimport type { TranscriptPage, TranscriptPageRequest } from '../exports/sessionProtocol';\nimport { DURABLE_BACKGROUND_CONTEXT as BACKGROUND_CONTEXT, DURABLE_DIRECTORY } from '../services/sqliteSessionStorage';\nimport { readSqliteTranscript } from '../services/sqliteTranscriptReader';\nimport { nativeChildRuntime } from '../systems/child/adapters/nativeChildRuntimes';\n\n/** Dispatches an already-authorized child journal to its live runtime or completed read-only backend. */\nexport async function readNativeChildTranscript(\n file: string,\n request: Omit<TranscriptPageRequest, 'threadId'>,\n signal?: AbortSignal,\n): Promise<TranscriptPage> {\n signal?.throwIfAborted();\n if (path.extname(file) !== '.sqlite' || path.basename(path.dirname(file)) !== DURABLE_DIRECTORY)\n throw new Error('Legacy child transcripts are unsupported by fresh durable storage');\n const runtime = nativeChildRuntime(file);\n const page = runtime\n ? await runtime.readTranscriptPage(request, BACKGROUND_CONTEXT)\n : await readSqliteTranscript(file, request, BACKGROUND_CONTEXT);\n signal?.throwIfAborted();\n return page;\n}\n"],"mappings":";;;;;;AAQA,eAAsB,0BACpB,MACA,SACA,QACyB;CACzB,QAAQ,eAAe;CACvB,IAAI,KAAK,QAAQ,IAAI,MAAM,aAAa,KAAK,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAA,cACtE,MAAM,IAAI,MAAM,mEAAmE;CACrF,MAAM,UAAU,mBAAmB,IAAI;CACvC,MAAM,OAAO,UACT,MAAM,QAAQ,mBAAmB,SAASA,0BAAkB,IAC5D,MAAM,qBAAqB,MAAM,SAASA,0BAAkB;CAChE,QAAQ,eAAe;CACvB,OAAO;AACT"}