@agimon-ai/doompi-core 0.0.1-alpha.100

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 (1233) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +5 -0
  3. package/dist/_virtual/_rolldown/runtime.cjs +23 -0
  4. package/dist/agentModel.cjs +4 -0
  5. package/dist/agentModel.d.mts +2 -0
  6. package/dist/agentModel.mjs +2 -0
  7. package/dist/apiContracts.cjs +2009 -0
  8. package/dist/apiContracts.cjs.map +1 -0
  9. package/dist/apiContracts.d.mts +1018 -0
  10. package/dist/apiContracts.d.mts.map +1 -0
  11. package/dist/apiContracts.mjs +1989 -0
  12. package/dist/apiContracts.mjs.map +1 -0
  13. package/dist/askUser.cjs +8 -0
  14. package/dist/askUser.d.mts +2 -0
  15. package/dist/askUser.mjs +2 -0
  16. package/dist/authorTools.cjs +5 -0
  17. package/dist/authorTools.d.mts +2 -0
  18. package/dist/authorTools.mjs +2 -0
  19. package/dist/backgroundWork.cjs +7 -0
  20. package/dist/backgroundWork.d.mts +2 -0
  21. package/dist/backgroundWork.mjs +2 -0
  22. package/dist/bundleAssetPolicy.cjs +5 -0
  23. package/dist/bundleAssetPolicy.d.mts +2 -0
  24. package/dist/bundleAssetPolicy.mjs +2 -0
  25. package/dist/childProcess.cjs +15 -0
  26. package/dist/childProcess.d.mts +2 -0
  27. package/dist/childProcess.mjs +2 -0
  28. package/dist/childSession.cjs +8 -0
  29. package/dist/childSession.d.mts +3 -0
  30. package/dist/childSession.mjs +3 -0
  31. package/dist/cockpitContainer.cjs +4 -0
  32. package/dist/cockpitContainer.d.mts +2 -0
  33. package/dist/cockpitContainer.mjs +2 -0
  34. package/dist/config.cjs +13 -0
  35. package/dist/config.d.mts +3 -0
  36. package/dist/config.mjs +2 -0
  37. package/dist/contextApi.cjs +10 -0
  38. package/dist/contextApi.d.mts +4 -0
  39. package/dist/contextApi.mjs +3 -0
  40. package/dist/contextContributions.cjs +7 -0
  41. package/dist/contextContributions.d.mts +3 -0
  42. package/dist/contextContributions.mjs +3 -0
  43. package/dist/contextDetail.cjs +65 -0
  44. package/dist/contextDetail.cjs.map +1 -0
  45. package/dist/contextDetail.d.mts +19 -0
  46. package/dist/contextDetail.d.mts.map +1 -0
  47. package/dist/contextDetail.mjs +64 -0
  48. package/dist/contextDetail.mjs.map +1 -0
  49. package/dist/contextDetailStore.cjs +100 -0
  50. package/dist/contextDetailStore.cjs.map +1 -0
  51. package/dist/contextDetailStore.d.mts +19 -0
  52. package/dist/contextDetailStore.d.mts.map +1 -0
  53. package/dist/contextDetailStore.mjs +91 -0
  54. package/dist/contextDetailStore.mjs.map +1 -0
  55. package/dist/contextProjection.cjs +121 -0
  56. package/dist/contextProjection.cjs.map +1 -0
  57. package/dist/contextProjection.d.mts +130 -0
  58. package/dist/contextProjection.d.mts.map +1 -0
  59. package/dist/contextProjection.mjs +117 -0
  60. package/dist/contextProjection.mjs.map +1 -0
  61. package/dist/cordisHost.cjs +11 -0
  62. package/dist/cordisHost.d.mts +2 -0
  63. package/dist/cordisHost.mjs +2 -0
  64. package/dist/delegation.cjs +18 -0
  65. package/dist/delegation.d.mts +2 -0
  66. package/dist/delegation.mjs +2 -0
  67. package/dist/doomPackage.cjs +61 -0
  68. package/dist/doomPackage.cjs.map +1 -0
  69. package/dist/doomPackage.d.mts +17 -0
  70. package/dist/doomPackage.d.mts.map +1 -0
  71. package/dist/doomPackage.mjs +54 -0
  72. package/dist/doomPackage.mjs.map +1 -0
  73. package/dist/executionBudget.cjs +231 -0
  74. package/dist/executionBudget.cjs.map +1 -0
  75. package/dist/executionBudget.d.mts +11 -0
  76. package/dist/executionBudget.d.mts.map +1 -0
  77. package/dist/executionBudget.mjs +225 -0
  78. package/dist/executionBudget.mjs.map +1 -0
  79. package/dist/extensionFile.cjs +24 -0
  80. package/dist/extensionFile.d.mts +3 -0
  81. package/dist/extensionFile.mjs +2 -0
  82. package/dist/footer.cjs +6 -0
  83. package/dist/footer.d.mts +2 -0
  84. package/dist/footer.mjs +2 -0
  85. package/dist/headless.cjs +9 -0
  86. package/dist/headless.d.mts +2 -0
  87. package/dist/headless.mjs +2 -0
  88. package/dist/headlessHub.cjs +914 -0
  89. package/dist/headlessHub.cjs.map +1 -0
  90. package/dist/headlessHub.d.mts +157 -0
  91. package/dist/headlessHub.d.mts.map +1 -0
  92. package/dist/headlessHub.mjs +911 -0
  93. package/dist/headlessHub.mjs.map +1 -0
  94. package/dist/headlessServer.cjs +910 -0
  95. package/dist/headlessServer.cjs.map +1 -0
  96. package/dist/headlessServer.d.mts +64 -0
  97. package/dist/headlessServer.d.mts.map +1 -0
  98. package/dist/headlessServer.mjs +904 -0
  99. package/dist/headlessServer.mjs.map +1 -0
  100. package/dist/headlessSessionHost.cjs +0 -0
  101. package/dist/headlessSessionHost.d.mts +71 -0
  102. package/dist/headlessSessionHost.d.mts.map +1 -0
  103. package/dist/headlessSessionHost.mjs +1 -0
  104. package/dist/headlessSessionManager.cjs +51 -0
  105. package/dist/headlessSessionManager.cjs.map +1 -0
  106. package/dist/headlessSessionManager.d.mts +6 -0
  107. package/dist/headlessSessionManager.d.mts.map +1 -0
  108. package/dist/headlessSessionManager.mjs +50 -0
  109. package/dist/headlessSessionManager.mjs.map +1 -0
  110. package/dist/help.cjs +24 -0
  111. package/dist/help.d.mts +3 -0
  112. package/dist/help.mjs +3 -0
  113. package/dist/history.cjs +25 -0
  114. package/dist/history.d.mts +10 -0
  115. package/dist/history.mjs +10 -0
  116. package/dist/historyImport.cjs +553 -0
  117. package/dist/historyImport.cjs.map +1 -0
  118. package/dist/historyImport.d.mts +76 -0
  119. package/dist/historyImport.d.mts.map +1 -0
  120. package/dist/historyImport.mjs +547 -0
  121. package/dist/historyImport.mjs.map +1 -0
  122. package/dist/historyOwnership.cjs +253 -0
  123. package/dist/historyOwnership.cjs.map +1 -0
  124. package/dist/historyOwnership.d.mts +23 -0
  125. package/dist/historyOwnership.d.mts.map +1 -0
  126. package/dist/historyOwnership.mjs +247 -0
  127. package/dist/historyOwnership.mjs.map +1 -0
  128. package/dist/hubChannel.cjs +4 -0
  129. package/dist/hubChannel.d.mts +2 -0
  130. package/dist/hubChannel.mjs +2 -0
  131. package/dist/index.cjs +44 -0
  132. package/dist/index.d.mts +6 -0
  133. package/dist/index.mjs +6 -0
  134. package/dist/json.cjs +6 -0
  135. package/dist/json.d.mts +2 -0
  136. package/dist/json.mjs +2 -0
  137. package/dist/jsonlSessionRepo.cjs +217 -0
  138. package/dist/jsonlSessionRepo.cjs.map +1 -0
  139. package/dist/jsonlSessionRepo.d.mts +7 -0
  140. package/dist/jsonlSessionRepo.d.mts.map +1 -0
  141. package/dist/jsonlSessionRepo.mjs +212 -0
  142. package/dist/jsonlSessionRepo.mjs.map +1 -0
  143. package/dist/kernel.cjs +3 -0
  144. package/dist/kernel.d.mts +3 -0
  145. package/dist/kernel.mjs +2 -0
  146. package/dist/leader.cjs +9 -0
  147. package/dist/leader.d.mts +2 -0
  148. package/dist/leader.mjs +2 -0
  149. package/dist/logSinkTelemetry.cjs +5 -0
  150. package/dist/logSinkTelemetry.d.mts +2 -0
  151. package/dist/logSinkTelemetry.mjs +2 -0
  152. package/dist/machineApi.cjs +92 -0
  153. package/dist/machineApi.cjs.map +1 -0
  154. package/dist/machineApi.d.mts +7 -0
  155. package/dist/machineApi.d.mts.map +1 -0
  156. package/dist/machineApi.mjs +88 -0
  157. package/dist/machineApi.mjs.map +1 -0
  158. package/dist/main.cjs +11 -0
  159. package/dist/main.d.mts +5 -0
  160. package/dist/main.mjs +4 -0
  161. package/dist/mcpFacet.cjs +12 -0
  162. package/dist/mcpFacet.d.mts +4 -0
  163. package/dist/mcpFacet.mjs +4 -0
  164. package/dist/mcpProjection.cjs +16 -0
  165. package/dist/mcpProjection.d.mts +2 -0
  166. package/dist/mcpProjection.mjs +2 -0
  167. package/dist/mcpSchemaCost.cjs +195 -0
  168. package/dist/mcpSchemaCost.cjs.map +1 -0
  169. package/dist/mcpSchemaCost.d.mts +35 -0
  170. package/dist/mcpSchemaCost.d.mts.map +1 -0
  171. package/dist/mcpSchemaCost.mjs +190 -0
  172. package/dist/mcpSchemaCost.mjs.map +1 -0
  173. package/dist/mcpSession.cjs +9 -0
  174. package/dist/mcpSession.d.mts +2 -0
  175. package/dist/mcpSession.mjs +2 -0
  176. package/dist/mcpStatus.cjs +7 -0
  177. package/dist/mcpStatus.d.mts +2 -0
  178. package/dist/mcpStatus.mjs +2 -0
  179. package/dist/mcpToolResolver.cjs +5 -0
  180. package/dist/mcpToolResolver.d.mts +2 -0
  181. package/dist/mcpToolResolver.mjs +2 -0
  182. package/dist/mcpWidget.cjs +0 -0
  183. package/dist/mcpWidget.d.mts +2 -0
  184. package/dist/mcpWidget.mjs +1 -0
  185. package/dist/moduleResolution.cjs +405 -0
  186. package/dist/moduleResolution.cjs.map +1 -0
  187. package/dist/moduleResolution.d.mts +67 -0
  188. package/dist/moduleResolution.d.mts.map +1 -0
  189. package/dist/moduleResolution.mjs +389 -0
  190. package/dist/moduleResolution.mjs.map +1 -0
  191. package/dist/narration.cjs +10 -0
  192. package/dist/narration.d.mts +2 -0
  193. package/dist/narration.mjs +2 -0
  194. package/dist/notification.cjs +17 -0
  195. package/dist/notification.d.mts +2 -0
  196. package/dist/notification.mjs +2 -0
  197. package/dist/packageApi.cjs +16 -0
  198. package/dist/packageApi.d.mts +3 -0
  199. package/dist/packageApi.mjs +3 -0
  200. package/dist/packageApiServer.cjs +191 -0
  201. package/dist/packageApiServer.cjs.map +1 -0
  202. package/dist/packageApiServer.d.mts +57 -0
  203. package/dist/packageApiServer.d.mts.map +1 -0
  204. package/dist/packageApiServer.mjs +189 -0
  205. package/dist/packageApiServer.mjs.map +1 -0
  206. package/dist/piExtension.cjs +13 -0
  207. package/dist/piExtension.d.mts +5 -0
  208. package/dist/piExtension.mjs +4 -0
  209. package/dist/piSettings.cjs +12 -0
  210. package/dist/piSettings.d.mts +2 -0
  211. package/dist/piSettings.mjs +2 -0
  212. package/dist/pluginProtocol.cjs +10 -0
  213. package/dist/pluginProtocol.d.mts +2 -0
  214. package/dist/pluginProtocol.mjs +2 -0
  215. package/dist/profileIdentity.cjs +6 -0
  216. package/dist/profileIdentity.d.mts +2 -0
  217. package/dist/profileIdentity.mjs +2 -0
  218. package/dist/protocol.cjs +10 -0
  219. package/dist/protocol.d.mts +2 -0
  220. package/dist/protocol.mjs +2 -0
  221. package/dist/readiness.cjs +8 -0
  222. package/dist/readiness.d.mts +2 -0
  223. package/dist/readiness.mjs +2 -0
  224. package/dist/relaunchHandoff.cjs +6 -0
  225. package/dist/relaunchHandoff.d.mts +2 -0
  226. package/dist/relaunchHandoff.mjs +2 -0
  227. package/dist/remoteApi.cjs +42 -0
  228. package/dist/remoteApi.cjs.map +1 -0
  229. package/dist/remoteApi.d.mts +7 -0
  230. package/dist/remoteApi.d.mts.map +1 -0
  231. package/dist/remoteApi.mjs +41 -0
  232. package/dist/remoteApi.mjs.map +1 -0
  233. package/dist/remoteRuntime.cjs +460 -0
  234. package/dist/remoteRuntime.cjs.map +1 -0
  235. package/dist/remoteRuntime.d.mts +28 -0
  236. package/dist/remoteRuntime.d.mts.map +1 -0
  237. package/dist/remoteRuntime.mjs +456 -0
  238. package/dist/remoteRuntime.mjs.map +1 -0
  239. package/dist/runtimeConfig.cjs +232 -0
  240. package/dist/runtimeConfig.cjs.map +1 -0
  241. package/dist/runtimeConfig.d.mts +313 -0
  242. package/dist/runtimeConfig.d.mts.map +1 -0
  243. package/dist/runtimeConfig.mjs +221 -0
  244. package/dist/runtimeConfig.mjs.map +1 -0
  245. package/dist/runtimeContextApi.cjs +64 -0
  246. package/dist/runtimeContextApi.cjs.map +1 -0
  247. package/dist/runtimeContextApi.d.mts +16 -0
  248. package/dist/runtimeContextApi.d.mts.map +1 -0
  249. package/dist/runtimeContextApi.mjs +62 -0
  250. package/dist/runtimeContextApi.mjs.map +1 -0
  251. package/dist/runtimeCordisHost.cjs +193 -0
  252. package/dist/runtimeCordisHost.cjs.map +1 -0
  253. package/dist/runtimeCordisHost.d.mts +63 -0
  254. package/dist/runtimeCordisHost.d.mts.map +1 -0
  255. package/dist/runtimeCordisHost.mjs +184 -0
  256. package/dist/runtimeCordisHost.mjs.map +1 -0
  257. package/dist/runtimeHeadlessSessionManager.cjs +0 -0
  258. package/dist/runtimeHeadlessSessionManager.d.mts +18 -0
  259. package/dist/runtimeHeadlessSessionManager.d.mts.map +1 -0
  260. package/dist/runtimeHeadlessSessionManager.mjs +1 -0
  261. package/dist/runtimeIdentity.cjs +26 -0
  262. package/dist/runtimeIdentity.cjs.map +1 -0
  263. package/dist/runtimeIdentity.d.mts +7 -0
  264. package/dist/runtimeIdentity.d.mts.map +1 -0
  265. package/dist/runtimeIdentity.mjs +21 -0
  266. package/dist/runtimeIdentity.mjs.map +1 -0
  267. package/dist/runtimeJson.cjs +46 -0
  268. package/dist/runtimeJson.cjs.map +1 -0
  269. package/dist/runtimeJson.d.mts +22 -0
  270. package/dist/runtimeJson.d.mts.map +1 -0
  271. package/dist/runtimeJson.mjs +39 -0
  272. package/dist/runtimeJson.mjs.map +1 -0
  273. package/dist/runtimeLogSinkTelemetry.cjs +102 -0
  274. package/dist/runtimeLogSinkTelemetry.cjs.map +1 -0
  275. package/dist/runtimeLogSinkTelemetry.d.mts +49 -0
  276. package/dist/runtimeLogSinkTelemetry.d.mts.map +1 -0
  277. package/dist/runtimeLogSinkTelemetry.mjs +99 -0
  278. package/dist/runtimeLogSinkTelemetry.mjs.map +1 -0
  279. package/dist/runtimePiExtension.cjs +339 -0
  280. package/dist/runtimePiExtension.cjs.map +1 -0
  281. package/dist/runtimePiExtension.d.mts +160 -0
  282. package/dist/runtimePiExtension.d.mts.map +1 -0
  283. package/dist/runtimePiExtension.mjs +333 -0
  284. package/dist/runtimePiExtension.mjs.map +1 -0
  285. package/dist/runtimePiSettings.cjs +116 -0
  286. package/dist/runtimePiSettings.cjs.map +1 -0
  287. package/dist/runtimePiSettings.d.mts +29 -0
  288. package/dist/runtimePiSettings.d.mts.map +1 -0
  289. package/dist/runtimePiSettings.mjs +103 -0
  290. package/dist/runtimePiSettings.mjs.map +1 -0
  291. package/dist/runtimeProtocol.cjs +223 -0
  292. package/dist/runtimeProtocol.cjs.map +1 -0
  293. package/dist/runtimeProtocol.d.mts +84 -0
  294. package/dist/runtimeProtocol.d.mts.map +1 -0
  295. package/dist/runtimeProtocol.mjs +215 -0
  296. package/dist/runtimeProtocol.mjs.map +1 -0
  297. package/dist/runtimeToolNames.cjs +51 -0
  298. package/dist/runtimeToolNames.cjs.map +1 -0
  299. package/dist/runtimeToolNames.d.mts +24 -0
  300. package/dist/runtimeToolNames.d.mts.map +1 -0
  301. package/dist/runtimeToolNames.mjs +49 -0
  302. package/dist/runtimeToolNames.mjs.map +1 -0
  303. package/dist/runtimeTransition.cjs +27 -0
  304. package/dist/runtimeTransition.cjs.map +1 -0
  305. package/dist/runtimeTransition.d.mts +114 -0
  306. package/dist/runtimeTransition.d.mts.map +1 -0
  307. package/dist/runtimeTransition.mjs +24 -0
  308. package/dist/runtimeTransition.mjs.map +1 -0
  309. package/dist/sandboxHarness.cjs +6 -0
  310. package/dist/sandboxHarness.d.mts +2 -0
  311. package/dist/sandboxHarness.mjs +2 -0
  312. package/dist/server.cjs +17 -0
  313. package/dist/server.d.mts +10 -0
  314. package/dist/server.mjs +7 -0
  315. package/dist/serverFacet.cjs +30 -0
  316. package/dist/serverFacet.d.mts +8 -0
  317. package/dist/serverFacet.mjs +8 -0
  318. package/dist/serverTelemetry.cjs +25 -0
  319. package/dist/serverTelemetry.cjs.map +1 -0
  320. package/dist/serverTelemetry.d.mts +12 -0
  321. package/dist/serverTelemetry.d.mts.map +1 -0
  322. package/dist/serverTelemetry.mjs +23 -0
  323. package/dist/serverTelemetry.mjs.map +1 -0
  324. package/dist/sessionFilesApi.cjs +96 -0
  325. package/dist/sessionFilesApi.cjs.map +1 -0
  326. package/dist/sessionFilesApi.d.mts +7 -0
  327. package/dist/sessionFilesApi.d.mts.map +1 -0
  328. package/dist/sessionFilesApi.mjs +91 -0
  329. package/dist/sessionFilesApi.mjs.map +1 -0
  330. package/dist/sessionMcp.cjs +6 -0
  331. package/dist/sessionMcp.d.mts +5 -0
  332. package/dist/sessionMcp.mjs +3 -0
  333. package/dist/sessionProtocol.cjs +8 -0
  334. package/dist/sessionProtocol.d.mts +3 -0
  335. package/dist/sessionProtocol.mjs +2 -0
  336. package/dist/skills.cjs +9 -0
  337. package/dist/skills.d.mts +2 -0
  338. package/dist/skills.mjs +2 -0
  339. package/dist/sqliteHistoryImport.cjs +151 -0
  340. package/dist/sqliteHistoryImport.cjs.map +1 -0
  341. package/dist/sqliteHistoryImport.d.mts +8 -0
  342. package/dist/sqliteHistoryImport.d.mts.map +1 -0
  343. package/dist/sqliteHistoryImport.mjs +146 -0
  344. package/dist/sqliteHistoryImport.mjs.map +1 -0
  345. package/dist/sqliteSessionStorage.cjs +53 -0
  346. package/dist/sqliteSessionStorage.cjs.map +1 -0
  347. package/dist/sqliteSessionStorage.d.mts +7 -0
  348. package/dist/sqliteSessionStorage.d.mts.map +1 -0
  349. package/dist/sqliteSessionStorage.mjs +49 -0
  350. package/dist/sqliteSessionStorage.mjs.map +1 -0
  351. package/dist/src/constants/authorTools.cjs +10 -0
  352. package/dist/src/constants/authorTools.cjs.map +1 -0
  353. package/dist/src/constants/authorTools.d.mts +6 -0
  354. package/dist/src/constants/authorTools.d.mts.map +1 -0
  355. package/dist/src/constants/authorTools.mjs +8 -0
  356. package/dist/src/constants/authorTools.mjs.map +1 -0
  357. package/dist/src/constants/contextApi.cjs +28 -0
  358. package/dist/src/constants/contextApi.cjs.map +1 -0
  359. package/dist/src/constants/contextApi.d.mts +21 -0
  360. package/dist/src/constants/contextApi.d.mts.map +1 -0
  361. package/dist/src/constants/contextApi.mjs +23 -0
  362. package/dist/src/constants/contextApi.mjs.map +1 -0
  363. package/dist/src/constants/remote.cjs +90 -0
  364. package/dist/src/constants/remote.cjs.map +1 -0
  365. package/dist/src/constants/remote.mjs +69 -0
  366. package/dist/src/constants/remote.mjs.map +1 -0
  367. package/dist/src/constants/voiceReloadHandoff.cjs +12 -0
  368. package/dist/src/constants/voiceReloadHandoff.cjs.map +1 -0
  369. package/dist/src/constants/voiceReloadHandoff.d.mts +7 -0
  370. package/dist/src/constants/voiceReloadHandoff.d.mts.map +1 -0
  371. package/dist/src/constants/voiceReloadHandoff.mjs +9 -0
  372. package/dist/src/constants/voiceReloadHandoff.mjs.map +1 -0
  373. package/dist/src/constants/voiceTools.cjs +96 -0
  374. package/dist/src/constants/voiceTools.cjs.map +1 -0
  375. package/dist/src/constants/voiceTools.d.mts +58 -0
  376. package/dist/src/constants/voiceTools.d.mts.map +1 -0
  377. package/dist/src/constants/voiceTools.mjs +60 -0
  378. package/dist/src/constants/voiceTools.mjs.map +1 -0
  379. package/dist/src/extensions/extensionFile.cjs +165 -0
  380. package/dist/src/extensions/extensionFile.cjs.map +1 -0
  381. package/dist/src/extensions/extensionFile.d.mts +79 -0
  382. package/dist/src/extensions/extensionFile.d.mts.map +1 -0
  383. package/dist/src/extensions/extensionFile.mjs +144 -0
  384. package/dist/src/extensions/extensionFile.mjs.map +1 -0
  385. package/dist/src/extensions/serverPlugin.cjs +106 -0
  386. package/dist/src/extensions/serverPlugin.cjs.map +1 -0
  387. package/dist/src/extensions/serverPlugin.d.mts +5 -0
  388. package/dist/src/extensions/serverPlugin.d.mts.map +1 -0
  389. package/dist/src/extensions/serverPlugin.mjs +106 -0
  390. package/dist/src/extensions/serverPlugin.mjs.map +1 -0
  391. package/dist/src/extensions/webPlugin.cjs +131 -0
  392. package/dist/src/extensions/webPlugin.cjs.map +1 -0
  393. package/dist/src/extensions/webPlugin.d.mts +66 -0
  394. package/dist/src/extensions/webPlugin.d.mts.map +1 -0
  395. package/dist/src/extensions/webPlugin.mjs +110 -0
  396. package/dist/src/extensions/webPlugin.mjs.map +1 -0
  397. package/dist/src/pi/piSessionRuntime.cjs +572 -0
  398. package/dist/src/pi/piSessionRuntime.cjs.map +1 -0
  399. package/dist/src/pi/piSessionRuntime.d.mts +43 -0
  400. package/dist/src/pi/piSessionRuntime.d.mts.map +1 -0
  401. package/dist/src/pi/piSessionRuntime.mjs +571 -0
  402. package/dist/src/pi/piSessionRuntime.mjs.map +1 -0
  403. package/dist/src/pi/piWebSocketListener.cjs +115 -0
  404. package/dist/src/pi/piWebSocketListener.cjs.map +1 -0
  405. package/dist/src/pi/piWebSocketListener.mjs +115 -0
  406. package/dist/src/pi/piWebSocketListener.mjs.map +1 -0
  407. package/dist/src/schemas/agentModel.cjs +33 -0
  408. package/dist/src/schemas/agentModel.cjs.map +1 -0
  409. package/dist/src/schemas/agentModel.d.mts +26 -0
  410. package/dist/src/schemas/agentModel.d.mts.map +1 -0
  411. package/dist/src/schemas/agentModel.mjs +32 -0
  412. package/dist/src/schemas/agentModel.mjs.map +1 -0
  413. package/dist/src/schemas/apiContracts.d.mts +58 -0
  414. package/dist/src/schemas/apiContracts.d.mts.map +1 -0
  415. package/dist/src/schemas/askUser.cjs +42 -0
  416. package/dist/src/schemas/askUser.cjs.map +1 -0
  417. package/dist/src/schemas/askUser.d.mts +47 -0
  418. package/dist/src/schemas/askUser.d.mts.map +1 -0
  419. package/dist/src/schemas/askUser.mjs +37 -0
  420. package/dist/src/schemas/askUser.mjs.map +1 -0
  421. package/dist/src/schemas/backgroundWork.cjs +31 -0
  422. package/dist/src/schemas/backgroundWork.cjs.map +1 -0
  423. package/dist/src/schemas/backgroundWork.d.mts +72 -0
  424. package/dist/src/schemas/backgroundWork.d.mts.map +1 -0
  425. package/dist/src/schemas/backgroundWork.mjs +27 -0
  426. package/dist/src/schemas/backgroundWork.mjs.map +1 -0
  427. package/dist/src/schemas/childProcess.cjs +67 -0
  428. package/dist/src/schemas/childProcess.cjs.map +1 -0
  429. package/dist/src/schemas/childProcess.d.mts +30 -0
  430. package/dist/src/schemas/childProcess.d.mts.map +1 -0
  431. package/dist/src/schemas/childProcess.mjs +55 -0
  432. package/dist/src/schemas/childProcess.mjs.map +1 -0
  433. package/dist/src/schemas/cockpitContainer.cjs +31 -0
  434. package/dist/src/schemas/cockpitContainer.cjs.map +1 -0
  435. package/dist/src/schemas/cockpitContainer.d.mts +80 -0
  436. package/dist/src/schemas/cockpitContainer.d.mts.map +1 -0
  437. package/dist/src/schemas/cockpitContainer.mjs +30 -0
  438. package/dist/src/schemas/cockpitContainer.mjs.map +1 -0
  439. package/dist/src/schemas/contextContributions.cjs +17 -0
  440. package/dist/src/schemas/contextContributions.cjs.map +1 -0
  441. package/dist/src/schemas/contextContributions.d.mts +49 -0
  442. package/dist/src/schemas/contextContributions.d.mts.map +1 -0
  443. package/dist/src/schemas/contextContributions.mjs +15 -0
  444. package/dist/src/schemas/contextContributions.mjs.map +1 -0
  445. package/dist/src/schemas/delegation.cjs +91 -0
  446. package/dist/src/schemas/delegation.cjs.map +1 -0
  447. package/dist/src/schemas/delegation.d.mts +95 -0
  448. package/dist/src/schemas/delegation.d.mts.map +1 -0
  449. package/dist/src/schemas/delegation.mjs +76 -0
  450. package/dist/src/schemas/delegation.mjs.map +1 -0
  451. package/dist/src/schemas/extensionFile.d.mts +136 -0
  452. package/dist/src/schemas/extensionFile.d.mts.map +1 -0
  453. package/dist/src/schemas/footer.cjs +48 -0
  454. package/dist/src/schemas/footer.cjs.map +1 -0
  455. package/dist/src/schemas/footer.d.mts +48 -0
  456. package/dist/src/schemas/footer.d.mts.map +1 -0
  457. package/dist/src/schemas/footer.mjs +45 -0
  458. package/dist/src/schemas/footer.mjs.map +1 -0
  459. package/dist/src/schemas/headless.cjs +44 -0
  460. package/dist/src/schemas/headless.cjs.map +1 -0
  461. package/dist/src/schemas/headless.d.mts +370 -0
  462. package/dist/src/schemas/headless.d.mts.map +1 -0
  463. package/dist/src/schemas/headless.mjs +38 -0
  464. package/dist/src/schemas/headless.mjs.map +1 -0
  465. package/dist/src/schemas/help.cjs +281 -0
  466. package/dist/src/schemas/help.cjs.map +1 -0
  467. package/dist/src/schemas/help.d.mts +119 -0
  468. package/dist/src/schemas/help.d.mts.map +1 -0
  469. package/dist/src/schemas/help.mjs +262 -0
  470. package/dist/src/schemas/help.mjs.map +1 -0
  471. package/dist/src/schemas/hubChannel.cjs +20 -0
  472. package/dist/src/schemas/hubChannel.cjs.map +1 -0
  473. package/dist/src/schemas/hubChannel.d.mts +236 -0
  474. package/dist/src/schemas/hubChannel.d.mts.map +1 -0
  475. package/dist/src/schemas/hubChannel.mjs +19 -0
  476. package/dist/src/schemas/hubChannel.mjs.map +1 -0
  477. package/dist/src/schemas/leader.cjs +57 -0
  478. package/dist/src/schemas/leader.cjs.map +1 -0
  479. package/dist/src/schemas/leader.d.mts +107 -0
  480. package/dist/src/schemas/leader.d.mts.map +1 -0
  481. package/dist/src/schemas/leader.mjs +51 -0
  482. package/dist/src/schemas/leader.mjs.map +1 -0
  483. package/dist/src/schemas/mcpBundle.cjs +92 -0
  484. package/dist/src/schemas/mcpBundle.cjs.map +1 -0
  485. package/dist/src/schemas/mcpBundle.d.mts +33 -0
  486. package/dist/src/schemas/mcpBundle.d.mts.map +1 -0
  487. package/dist/src/schemas/mcpBundle.mjs +90 -0
  488. package/dist/src/schemas/mcpBundle.mjs.map +1 -0
  489. package/dist/src/schemas/mcpFacet.cjs +24 -0
  490. package/dist/src/schemas/mcpFacet.cjs.map +1 -0
  491. package/dist/src/schemas/mcpFacet.d.mts +91 -0
  492. package/dist/src/schemas/mcpFacet.d.mts.map +1 -0
  493. package/dist/src/schemas/mcpFacet.mjs +21 -0
  494. package/dist/src/schemas/mcpFacet.mjs.map +1 -0
  495. package/dist/src/schemas/mcpProjection.cjs +117 -0
  496. package/dist/src/schemas/mcpProjection.cjs.map +1 -0
  497. package/dist/src/schemas/mcpProjection.d.mts +124 -0
  498. package/dist/src/schemas/mcpProjection.d.mts.map +1 -0
  499. package/dist/src/schemas/mcpProjection.mjs +104 -0
  500. package/dist/src/schemas/mcpProjection.mjs.map +1 -0
  501. package/dist/src/schemas/mcpSession.cjs +57 -0
  502. package/dist/src/schemas/mcpSession.cjs.map +1 -0
  503. package/dist/src/schemas/mcpSession.d.mts +57 -0
  504. package/dist/src/schemas/mcpSession.d.mts.map +1 -0
  505. package/dist/src/schemas/mcpSession.mjs +51 -0
  506. package/dist/src/schemas/mcpSession.mjs.map +1 -0
  507. package/dist/src/schemas/mcpStatus.cjs +52 -0
  508. package/dist/src/schemas/mcpStatus.cjs.map +1 -0
  509. package/dist/src/schemas/mcpStatus.d.mts +73 -0
  510. package/dist/src/schemas/mcpStatus.d.mts.map +1 -0
  511. package/dist/src/schemas/mcpStatus.mjs +48 -0
  512. package/dist/src/schemas/mcpStatus.mjs.map +1 -0
  513. package/dist/src/schemas/mcpToolResolver.cjs +17 -0
  514. package/dist/src/schemas/mcpToolResolver.cjs.map +1 -0
  515. package/dist/src/schemas/mcpToolResolver.d.mts +24 -0
  516. package/dist/src/schemas/mcpToolResolver.d.mts.map +1 -0
  517. package/dist/src/schemas/mcpToolResolver.mjs +15 -0
  518. package/dist/src/schemas/mcpToolResolver.mjs.map +1 -0
  519. package/dist/src/schemas/narration.cjs +54 -0
  520. package/dist/src/schemas/narration.cjs.map +1 -0
  521. package/dist/src/schemas/narration.d.mts +29 -0
  522. package/dist/src/schemas/narration.d.mts.map +1 -0
  523. package/dist/src/schemas/narration.mjs +47 -0
  524. package/dist/src/schemas/narration.mjs.map +1 -0
  525. package/dist/src/schemas/notification.cjs +122 -0
  526. package/dist/src/schemas/notification.cjs.map +1 -0
  527. package/dist/src/schemas/notification.d.mts +48 -0
  528. package/dist/src/schemas/notification.d.mts.map +1 -0
  529. package/dist/src/schemas/notification.mjs +108 -0
  530. package/dist/src/schemas/notification.mjs.map +1 -0
  531. package/dist/src/schemas/packageApi.cjs +73 -0
  532. package/dist/src/schemas/packageApi.cjs.map +1 -0
  533. package/dist/src/schemas/packageApi.d.mts +249 -0
  534. package/dist/src/schemas/packageApi.d.mts.map +1 -0
  535. package/dist/src/schemas/packageApi.mjs +64 -0
  536. package/dist/src/schemas/packageApi.mjs.map +1 -0
  537. package/dist/src/schemas/piTool.cjs +26 -0
  538. package/dist/src/schemas/piTool.cjs.map +1 -0
  539. package/dist/src/schemas/piTool.d.mts +25 -0
  540. package/dist/src/schemas/piTool.d.mts.map +1 -0
  541. package/dist/src/schemas/piTool.mjs +26 -0
  542. package/dist/src/schemas/piTool.mjs.map +1 -0
  543. package/dist/src/schemas/pluginContributions.cjs +19 -0
  544. package/dist/src/schemas/pluginContributions.cjs.map +1 -0
  545. package/dist/src/schemas/pluginContributions.d.mts +56 -0
  546. package/dist/src/schemas/pluginContributions.d.mts.map +1 -0
  547. package/dist/src/schemas/pluginContributions.mjs +18 -0
  548. package/dist/src/schemas/pluginContributions.mjs.map +1 -0
  549. package/dist/src/schemas/pluginProtocol.cjs +103 -0
  550. package/dist/src/schemas/pluginProtocol.cjs.map +1 -0
  551. package/dist/src/schemas/pluginProtocol.d.mts +68 -0
  552. package/dist/src/schemas/pluginProtocol.d.mts.map +1 -0
  553. package/dist/src/schemas/pluginProtocol.mjs +96 -0
  554. package/dist/src/schemas/pluginProtocol.mjs.map +1 -0
  555. package/dist/src/schemas/profileIdentity.cjs +67 -0
  556. package/dist/src/schemas/profileIdentity.cjs.map +1 -0
  557. package/dist/src/schemas/profileIdentity.d.mts +50 -0
  558. package/dist/src/schemas/profileIdentity.d.mts.map +1 -0
  559. package/dist/src/schemas/profileIdentity.mjs +64 -0
  560. package/dist/src/schemas/profileIdentity.mjs.map +1 -0
  561. package/dist/src/schemas/readiness.cjs +251 -0
  562. package/dist/src/schemas/readiness.cjs.map +1 -0
  563. package/dist/src/schemas/readiness.d.mts +84 -0
  564. package/dist/src/schemas/readiness.d.mts.map +1 -0
  565. package/dist/src/schemas/readiness.mjs +246 -0
  566. package/dist/src/schemas/readiness.mjs.map +1 -0
  567. package/dist/src/schemas/relaunchHandoff.cjs +47 -0
  568. package/dist/src/schemas/relaunchHandoff.cjs.map +1 -0
  569. package/dist/src/schemas/relaunchHandoff.d.mts +25 -0
  570. package/dist/src/schemas/relaunchHandoff.d.mts.map +1 -0
  571. package/dist/src/schemas/relaunchHandoff.mjs +44 -0
  572. package/dist/src/schemas/relaunchHandoff.mjs.map +1 -0
  573. package/dist/src/schemas/sandboxHarness.cjs +29 -0
  574. package/dist/src/schemas/sandboxHarness.cjs.map +1 -0
  575. package/dist/src/schemas/sandboxHarness.d.mts +39 -0
  576. package/dist/src/schemas/sandboxHarness.d.mts.map +1 -0
  577. package/dist/src/schemas/sandboxHarness.mjs +26 -0
  578. package/dist/src/schemas/sandboxHarness.mjs.map +1 -0
  579. package/dist/src/schemas/serverBundle.cjs +79 -0
  580. package/dist/src/schemas/serverBundle.cjs.map +1 -0
  581. package/dist/src/schemas/serverBundle.d.mts +34 -0
  582. package/dist/src/schemas/serverBundle.d.mts.map +1 -0
  583. package/dist/src/schemas/serverBundle.mjs +77 -0
  584. package/dist/src/schemas/serverBundle.mjs.map +1 -0
  585. package/dist/src/schemas/serverFacet.cjs +102 -0
  586. package/dist/src/schemas/serverFacet.cjs.map +1 -0
  587. package/dist/src/schemas/serverFacet.d.mts +141 -0
  588. package/dist/src/schemas/serverFacet.d.mts.map +1 -0
  589. package/dist/src/schemas/serverFacet.mjs +93 -0
  590. package/dist/src/schemas/serverFacet.mjs.map +1 -0
  591. package/dist/src/schemas/sessionMcpActivity.d.mts +45 -0
  592. package/dist/src/schemas/sessionMcpActivity.d.mts.map +1 -0
  593. package/dist/src/schemas/sessionProtocol.cjs +17 -0
  594. package/dist/src/schemas/sessionProtocol.cjs.map +1 -0
  595. package/dist/src/schemas/sessionProtocol.d.mts +308 -0
  596. package/dist/src/schemas/sessionProtocol.d.mts.map +1 -0
  597. package/dist/src/schemas/sessionProtocol.mjs +12 -0
  598. package/dist/src/schemas/sessionProtocol.mjs.map +1 -0
  599. package/dist/src/schemas/sessionUpdates.d.mts +34 -0
  600. package/dist/src/schemas/sessionUpdates.d.mts.map +1 -0
  601. package/dist/src/schemas/skills.cjs +115 -0
  602. package/dist/src/schemas/skills.cjs.map +1 -0
  603. package/dist/src/schemas/skills.d.mts +65 -0
  604. package/dist/src/schemas/skills.d.mts.map +1 -0
  605. package/dist/src/schemas/skills.mjs +109 -0
  606. package/dist/src/schemas/skills.mjs.map +1 -0
  607. package/dist/src/schemas/toolOverrides.cjs +17 -0
  608. package/dist/src/schemas/toolOverrides.cjs.map +1 -0
  609. package/dist/src/schemas/toolOverrides.d.mts +29 -0
  610. package/dist/src/schemas/toolOverrides.d.mts.map +1 -0
  611. package/dist/src/schemas/toolOverrides.mjs +15 -0
  612. package/dist/src/schemas/toolOverrides.mjs.map +1 -0
  613. package/dist/src/schemas/toolSurface.cjs +17 -0
  614. package/dist/src/schemas/toolSurface.cjs.map +1 -0
  615. package/dist/src/schemas/toolSurface.d.mts +70 -0
  616. package/dist/src/schemas/toolSurface.d.mts.map +1 -0
  617. package/dist/src/schemas/toolSurface.mjs +15 -0
  618. package/dist/src/schemas/toolSurface.mjs.map +1 -0
  619. package/dist/src/schemas/uiHub.cjs +17 -0
  620. package/dist/src/schemas/uiHub.cjs.map +1 -0
  621. package/dist/src/schemas/uiHub.d.mts +23 -0
  622. package/dist/src/schemas/uiHub.d.mts.map +1 -0
  623. package/dist/src/schemas/uiHub.mjs +15 -0
  624. package/dist/src/schemas/uiHub.mjs.map +1 -0
  625. package/dist/src/schemas/voiceReloadHandoff.cjs +78 -0
  626. package/dist/src/schemas/voiceReloadHandoff.cjs.map +1 -0
  627. package/dist/src/schemas/voiceReloadHandoff.d.mts +31 -0
  628. package/dist/src/schemas/voiceReloadHandoff.d.mts.map +1 -0
  629. package/dist/src/schemas/voiceReloadHandoff.mjs +75 -0
  630. package/dist/src/schemas/voiceReloadHandoff.mjs.map +1 -0
  631. package/dist/src/schemas/voiceTools.cjs +205 -0
  632. package/dist/src/schemas/voiceTools.cjs.map +1 -0
  633. package/dist/src/schemas/voiceTools.d.mts +120 -0
  634. package/dist/src/schemas/voiceTools.d.mts.map +1 -0
  635. package/dist/src/schemas/voiceTools.mjs +194 -0
  636. package/dist/src/schemas/voiceTools.mjs.map +1 -0
  637. package/dist/src/server/devProxyForward.cjs +141 -0
  638. package/dist/src/server/devProxyForward.cjs.map +1 -0
  639. package/dist/src/server/devProxyForward.mjs +139 -0
  640. package/dist/src/server/devProxyForward.mjs.map +1 -0
  641. package/dist/src/server/devProxyRoutes.cjs +97 -0
  642. package/dist/src/server/devProxyRoutes.cjs.map +1 -0
  643. package/dist/src/server/devProxyRoutes.mjs +97 -0
  644. package/dist/src/server/devProxyRoutes.mjs.map +1 -0
  645. package/dist/src/server/devProxySocket.cjs +87 -0
  646. package/dist/src/server/devProxySocket.cjs.map +1 -0
  647. package/dist/src/server/devProxySocket.mjs +87 -0
  648. package/dist/src/server/devProxySocket.mjs.map +1 -0
  649. package/dist/src/server/directHarnessRuntime.cjs +1964 -0
  650. package/dist/src/server/directHarnessRuntime.cjs.map +1 -0
  651. package/dist/src/server/directHarnessRuntime.d.mts +3 -0
  652. package/dist/src/server/directHarnessRuntime.mjs +1958 -0
  653. package/dist/src/server/directHarnessRuntime.mjs.map +1 -0
  654. package/dist/src/server/harnessErrorMessage.cjs +13 -0
  655. package/dist/src/server/harnessErrorMessage.cjs.map +1 -0
  656. package/dist/src/server/harnessErrorMessage.mjs +13 -0
  657. package/dist/src/server/harnessErrorMessage.mjs.map +1 -0
  658. package/dist/src/server/headlessProtocol.cjs +366 -0
  659. package/dist/src/server/headlessProtocol.cjs.map +1 -0
  660. package/dist/src/server/headlessProtocol.mjs +366 -0
  661. package/dist/src/server/headlessProtocol.mjs.map +1 -0
  662. package/dist/src/server/jsonlTranscriptReader.cjs +85 -0
  663. package/dist/src/server/jsonlTranscriptReader.cjs.map +1 -0
  664. package/dist/src/server/jsonlTranscriptReader.mjs +83 -0
  665. package/dist/src/server/jsonlTranscriptReader.mjs.map +1 -0
  666. package/dist/src/server/mcpBundleLoader.cjs +115 -0
  667. package/dist/src/server/mcpBundleLoader.cjs.map +1 -0
  668. package/dist/src/server/mcpBundleLoader.d.mts +27 -0
  669. package/dist/src/server/mcpBundleLoader.d.mts.map +1 -0
  670. package/dist/src/server/mcpBundleLoader.mjs +111 -0
  671. package/dist/src/server/mcpBundleLoader.mjs.map +1 -0
  672. package/dist/src/server/nativeChildTranscriptReader.cjs +20 -0
  673. package/dist/src/server/nativeChildTranscriptReader.cjs.map +1 -0
  674. package/dist/src/server/nativeChildTranscriptReader.mjs +18 -0
  675. package/dist/src/server/nativeChildTranscriptReader.mjs.map +1 -0
  676. package/dist/src/server/remoteRoutes.cjs +386 -0
  677. package/dist/src/server/remoteRoutes.cjs.map +1 -0
  678. package/dist/src/server/remoteRoutes.mjs +386 -0
  679. package/dist/src/server/remoteRoutes.mjs.map +1 -0
  680. package/dist/src/server/serverFacetLoader.cjs +220 -0
  681. package/dist/src/server/serverFacetLoader.cjs.map +1 -0
  682. package/dist/src/server/serverFacetLoader.d.mts +77 -0
  683. package/dist/src/server/serverFacetLoader.d.mts.map +1 -0
  684. package/dist/src/server/serverFacetLoader.mjs +215 -0
  685. package/dist/src/server/serverFacetLoader.mjs.map +1 -0
  686. package/dist/src/server/sessionMcpHandler.cjs +494 -0
  687. package/dist/src/server/sessionMcpHandler.cjs.map +1 -0
  688. package/dist/src/server/sessionMcpHandler.d.mts +47 -0
  689. package/dist/src/server/sessionMcpHandler.d.mts.map +1 -0
  690. package/dist/src/server/sessionMcpHandler.mjs +493 -0
  691. package/dist/src/server/sessionMcpHandler.mjs.map +1 -0
  692. package/dist/src/server/sessionMcpRoutes.cjs +780 -0
  693. package/dist/src/server/sessionMcpRoutes.cjs.map +1 -0
  694. package/dist/src/server/sessionMcpRoutes.mjs +775 -0
  695. package/dist/src/server/sessionMcpRoutes.mjs.map +1 -0
  696. package/dist/src/server/threadJournals.cjs +172 -0
  697. package/dist/src/server/threadJournals.cjs.map +1 -0
  698. package/dist/src/server/threadJournals.mjs +169 -0
  699. package/dist/src/server/threadJournals.mjs.map +1 -0
  700. package/dist/src/services/acpSessionUpdates/index.cjs +129 -0
  701. package/dist/src/services/acpSessionUpdates/index.cjs.map +1 -0
  702. package/dist/src/services/acpSessionUpdates/index.mjs +129 -0
  703. package/dist/src/services/acpSessionUpdates/index.mjs.map +1 -0
  704. package/dist/src/services/apiSurfaceAssert/index.cjs +60 -0
  705. package/dist/src/services/apiSurfaceAssert/index.cjs.map +1 -0
  706. package/dist/src/services/apiSurfaceAssert/index.d.mts +24 -0
  707. package/dist/src/services/apiSurfaceAssert/index.d.mts.map +1 -0
  708. package/dist/src/services/apiSurfaceAssert/index.mjs +60 -0
  709. package/dist/src/services/apiSurfaceAssert/index.mjs.map +1 -0
  710. package/dist/src/services/bundlePublication/index.cjs +88 -0
  711. package/dist/src/services/bundlePublication/index.cjs.map +1 -0
  712. package/dist/src/services/bundlePublication/index.mjs +85 -0
  713. package/dist/src/services/bundlePublication/index.mjs.map +1 -0
  714. package/dist/src/services/contextApiUrls/index.cjs +14 -0
  715. package/dist/src/services/contextApiUrls/index.cjs.map +1 -0
  716. package/dist/src/services/contextApiUrls/index.d.mts +6 -0
  717. package/dist/src/services/contextApiUrls/index.d.mts.map +1 -0
  718. package/dist/src/services/contextApiUrls/index.mjs +14 -0
  719. package/dist/src/services/contextApiUrls/index.mjs.map +1 -0
  720. package/dist/src/services/contextContributions/index.cjs +79 -0
  721. package/dist/src/services/contextContributions/index.cjs.map +1 -0
  722. package/dist/src/services/contextContributions/index.d.mts +6 -0
  723. package/dist/src/services/contextContributions/index.d.mts.map +1 -0
  724. package/dist/src/services/contextContributions/index.mjs +79 -0
  725. package/dist/src/services/contextContributions/index.mjs.map +1 -0
  726. package/dist/src/services/contextUsage/index.cjs +27 -0
  727. package/dist/src/services/contextUsage/index.cjs.map +1 -0
  728. package/dist/src/services/contextUsage/index.mjs +25 -0
  729. package/dist/src/services/contextUsage/index.mjs.map +1 -0
  730. package/dist/src/services/devProxyPolicy/index.cjs +168 -0
  731. package/dist/src/services/devProxyPolicy/index.cjs.map +1 -0
  732. package/dist/src/services/devProxyPolicy/index.mjs +165 -0
  733. package/dist/src/services/devProxyPolicy/index.mjs.map +1 -0
  734. package/dist/src/services/devProxyStore/index.cjs +107 -0
  735. package/dist/src/services/devProxyStore/index.cjs.map +1 -0
  736. package/dist/src/services/devProxyStore/index.mjs +104 -0
  737. package/dist/src/services/devProxyStore/index.mjs.map +1 -0
  738. package/dist/src/services/deviceAuth/index.cjs +125 -0
  739. package/dist/src/services/deviceAuth/index.cjs.map +1 -0
  740. package/dist/src/services/deviceAuth/index.d.mts +9 -0
  741. package/dist/src/services/deviceAuth/index.d.mts.map +1 -0
  742. package/dist/src/services/deviceAuth/index.mjs +125 -0
  743. package/dist/src/services/deviceAuth/index.mjs.map +1 -0
  744. package/dist/src/services/deviceSessions/index.cjs +147 -0
  745. package/dist/src/services/deviceSessions/index.cjs.map +1 -0
  746. package/dist/src/services/deviceSessions/index.d.mts +15 -0
  747. package/dist/src/services/deviceSessions/index.d.mts.map +1 -0
  748. package/dist/src/services/deviceSessions/index.mjs +141 -0
  749. package/dist/src/services/deviceSessions/index.mjs.map +1 -0
  750. package/dist/src/services/headlessClient/index.cjs +125 -0
  751. package/dist/src/services/headlessClient/index.cjs.map +1 -0
  752. package/dist/src/services/headlessClient/index.mjs +125 -0
  753. package/dist/src/services/headlessClient/index.mjs.map +1 -0
  754. package/dist/src/services/historyCreationFileSystem/index.cjs +115 -0
  755. package/dist/src/services/historyCreationFileSystem/index.cjs.map +1 -0
  756. package/dist/src/services/historyCreationFileSystem/index.mjs +115 -0
  757. package/dist/src/services/historyCreationFileSystem/index.mjs.map +1 -0
  758. package/dist/src/services/hubChannelHarness/index.cjs +50 -0
  759. package/dist/src/services/hubChannelHarness/index.cjs.map +1 -0
  760. package/dist/src/services/hubChannelHarness/index.d.mts +17 -0
  761. package/dist/src/services/hubChannelHarness/index.d.mts.map +1 -0
  762. package/dist/src/services/hubChannelHarness/index.mjs +50 -0
  763. package/dist/src/services/hubChannelHarness/index.mjs.map +1 -0
  764. package/dist/src/services/kernel/index.cjs +147 -0
  765. package/dist/src/services/kernel/index.cjs.map +1 -0
  766. package/dist/src/services/kernel/index.d.mts +9 -0
  767. package/dist/src/services/kernel/index.d.mts.map +1 -0
  768. package/dist/src/services/kernel/index.mjs +147 -0
  769. package/dist/src/services/kernel/index.mjs.map +1 -0
  770. package/dist/src/services/loginFlow/index.cjs +131 -0
  771. package/dist/src/services/loginFlow/index.cjs.map +1 -0
  772. package/dist/src/services/loginFlow/index.mjs +131 -0
  773. package/dist/src/services/loginFlow/index.mjs.map +1 -0
  774. package/dist/src/services/loopbackAddress/index.cjs +58 -0
  775. package/dist/src/services/loopbackAddress/index.cjs.map +1 -0
  776. package/dist/src/services/loopbackAddress/index.mjs +56 -0
  777. package/dist/src/services/loopbackAddress/index.mjs.map +1 -0
  778. package/dist/src/services/openSessionRegistry/index.cjs +144 -0
  779. package/dist/src/services/openSessionRegistry/index.cjs.map +1 -0
  780. package/dist/src/services/openSessionRegistry/index.d.mts +40 -0
  781. package/dist/src/services/openSessionRegistry/index.d.mts.map +1 -0
  782. package/dist/src/services/openSessionRegistry/index.mjs +141 -0
  783. package/dist/src/services/openSessionRegistry/index.mjs.map +1 -0
  784. package/dist/src/services/packageApiHarness/index.cjs +36 -0
  785. package/dist/src/services/packageApiHarness/index.cjs.map +1 -0
  786. package/dist/src/services/packageApiHarness/index.d.mts +40 -0
  787. package/dist/src/services/packageApiHarness/index.d.mts.map +1 -0
  788. package/dist/src/services/packageApiHarness/index.mjs +36 -0
  789. package/dist/src/services/packageApiHarness/index.mjs.map +1 -0
  790. package/dist/src/services/packageResource/index.cjs +54 -0
  791. package/dist/src/services/packageResource/index.cjs.map +1 -0
  792. package/dist/src/services/packageResource/index.d.mts +26 -0
  793. package/dist/src/services/packageResource/index.d.mts.map +1 -0
  794. package/dist/src/services/packageResource/index.mjs +51 -0
  795. package/dist/src/services/packageResource/index.mjs.map +1 -0
  796. package/dist/src/services/pairingFlow/index.cjs +145 -0
  797. package/dist/src/services/pairingFlow/index.cjs.map +1 -0
  798. package/dist/src/services/pairingFlow/index.d.mts +44 -0
  799. package/dist/src/services/pairingFlow/index.d.mts.map +1 -0
  800. package/dist/src/services/pairingFlow/index.mjs +145 -0
  801. package/dist/src/services/pairingFlow/index.mjs.map +1 -0
  802. package/dist/src/services/pairingPage/index.cjs +450 -0
  803. package/dist/src/services/pairingPage/index.cjs.map +1 -0
  804. package/dist/src/services/pairingPage/index.mjs +447 -0
  805. package/dist/src/services/pairingPage/index.mjs.map +1 -0
  806. package/dist/src/services/piExtensionHost/index.cjs +821 -0
  807. package/dist/src/services/piExtensionHost/index.cjs.map +1 -0
  808. package/dist/src/services/piExtensionHost/index.mjs +817 -0
  809. package/dist/src/services/piExtensionHost/index.mjs.map +1 -0
  810. package/dist/src/services/piHelpTools/index.cjs +68 -0
  811. package/dist/src/services/piHelpTools/index.cjs.map +1 -0
  812. package/dist/src/services/piHelpTools/index.d.mts +10 -0
  813. package/dist/src/services/piHelpTools/index.d.mts.map +1 -0
  814. package/dist/src/services/piHelpTools/index.mjs +68 -0
  815. package/dist/src/services/piHelpTools/index.mjs.map +1 -0
  816. package/dist/src/services/piSessionEntries/index.cjs +112 -0
  817. package/dist/src/services/piSessionEntries/index.cjs.map +1 -0
  818. package/dist/src/services/piSessionEntries/index.mjs +108 -0
  819. package/dist/src/services/piSessionEntries/index.mjs.map +1 -0
  820. package/dist/src/services/pluginLifecycle/index.cjs +71 -0
  821. package/dist/src/services/pluginLifecycle/index.cjs.map +1 -0
  822. package/dist/src/services/pluginLifecycle/index.d.mts +11 -0
  823. package/dist/src/services/pluginLifecycle/index.d.mts.map +1 -0
  824. package/dist/src/services/pluginLifecycle/index.mjs +71 -0
  825. package/dist/src/services/pluginLifecycle/index.mjs.map +1 -0
  826. package/dist/src/services/providerAuth/index.cjs +156 -0
  827. package/dist/src/services/providerAuth/index.cjs.map +1 -0
  828. package/dist/src/services/providerAuth/index.mjs +154 -0
  829. package/dist/src/services/providerAuth/index.mjs.map +1 -0
  830. package/dist/src/services/remoteAccess/index.cjs +396 -0
  831. package/dist/src/services/remoteAccess/index.cjs.map +1 -0
  832. package/dist/src/services/remoteAccess/index.d.mts +81 -0
  833. package/dist/src/services/remoteAccess/index.d.mts.map +1 -0
  834. package/dist/src/services/remoteAccess/index.mjs +396 -0
  835. package/dist/src/services/remoteAccess/index.mjs.map +1 -0
  836. package/dist/src/services/remoteAccessSettings/index.cjs +151 -0
  837. package/dist/src/services/remoteAccessSettings/index.cjs.map +1 -0
  838. package/dist/src/services/remoteAccessSettings/index.mjs +149 -0
  839. package/dist/src/services/remoteAccessSettings/index.mjs.map +1 -0
  840. package/dist/src/services/remoteAccessStore/index.cjs +126 -0
  841. package/dist/src/services/remoteAccessStore/index.cjs.map +1 -0
  842. package/dist/src/services/remoteAccessStore/index.mjs +121 -0
  843. package/dist/src/services/remoteAccessStore/index.mjs.map +1 -0
  844. package/dist/src/services/remoteGuardPolicy/index.cjs +190 -0
  845. package/dist/src/services/remoteGuardPolicy/index.cjs.map +1 -0
  846. package/dist/src/services/remoteGuardPolicy/index.d.mts +7 -0
  847. package/dist/src/services/remoteGuardPolicy/index.d.mts.map +1 -0
  848. package/dist/src/services/remoteGuardPolicy/index.mjs +186 -0
  849. package/dist/src/services/remoteGuardPolicy/index.mjs.map +1 -0
  850. package/dist/src/services/requestReceipts/index.cjs +161 -0
  851. package/dist/src/services/requestReceipts/index.cjs.map +1 -0
  852. package/dist/src/services/requestReceipts/index.d.mts +11 -0
  853. package/dist/src/services/requestReceipts/index.d.mts.map +1 -0
  854. package/dist/src/services/requestReceipts/index.mjs +161 -0
  855. package/dist/src/services/requestReceipts/index.mjs.map +1 -0
  856. package/dist/src/services/rpcTranscript/index.cjs +590 -0
  857. package/dist/src/services/rpcTranscript/index.cjs.map +1 -0
  858. package/dist/src/services/rpcTranscript/index.d.mts +50 -0
  859. package/dist/src/services/rpcTranscript/index.d.mts.map +1 -0
  860. package/dist/src/services/rpcTranscript/index.mjs +589 -0
  861. package/dist/src/services/rpcTranscript/index.mjs.map +1 -0
  862. package/dist/src/services/serverFacet/index.cjs +197 -0
  863. package/dist/src/services/serverFacet/index.cjs.map +1 -0
  864. package/dist/src/services/serverFacet/index.d.mts +31 -0
  865. package/dist/src/services/serverFacet/index.d.mts.map +1 -0
  866. package/dist/src/services/serverFacet/index.mjs +197 -0
  867. package/dist/src/services/serverFacet/index.mjs.map +1 -0
  868. package/dist/src/services/sessionGitStatus/index.cjs +46 -0
  869. package/dist/src/services/sessionGitStatus/index.cjs.map +1 -0
  870. package/dist/src/services/sessionGitStatus/index.mjs +46 -0
  871. package/dist/src/services/sessionGitStatus/index.mjs.map +1 -0
  872. package/dist/src/services/sessionGitStatus/type.d.mts +8 -0
  873. package/dist/src/services/sessionGitStatus/type.d.mts.map +1 -0
  874. package/dist/src/services/sessionMcpActivity/index.cjs +115 -0
  875. package/dist/src/services/sessionMcpActivity/index.cjs.map +1 -0
  876. package/dist/src/services/sessionMcpActivity/index.mjs +111 -0
  877. package/dist/src/services/sessionMcpActivity/index.mjs.map +1 -0
  878. package/dist/src/services/sessionMcpAuthorization/index.cjs +432 -0
  879. package/dist/src/services/sessionMcpAuthorization/index.cjs.map +1 -0
  880. package/dist/src/services/sessionMcpAuthorization/index.d.mts +123 -0
  881. package/dist/src/services/sessionMcpAuthorization/index.d.mts.map +1 -0
  882. package/dist/src/services/sessionMcpAuthorization/index.mjs +430 -0
  883. package/dist/src/services/sessionMcpAuthorization/index.mjs.map +1 -0
  884. package/dist/src/services/sessionMcpConversations/index.cjs +217 -0
  885. package/dist/src/services/sessionMcpConversations/index.cjs.map +1 -0
  886. package/dist/src/services/sessionMcpConversations/index.mjs +212 -0
  887. package/dist/src/services/sessionMcpConversations/index.mjs.map +1 -0
  888. package/dist/src/services/sessionMcpRegistrationStore/index.cjs +86 -0
  889. package/dist/src/services/sessionMcpRegistrationStore/index.cjs.map +1 -0
  890. package/dist/src/services/sessionMcpRegistrationStore/index.mjs +83 -0
  891. package/dist/src/services/sessionMcpRegistrationStore/index.mjs.map +1 -0
  892. package/dist/src/services/sessionPresentation/index.cjs +119 -0
  893. package/dist/src/services/sessionPresentation/index.cjs.map +1 -0
  894. package/dist/src/services/sessionPresentation/index.mjs +119 -0
  895. package/dist/src/services/sessionPresentation/index.mjs.map +1 -0
  896. package/dist/src/services/sqliteSessionHistory/index.cjs +105 -0
  897. package/dist/src/services/sqliteSessionHistory/index.cjs.map +1 -0
  898. package/dist/src/services/sqliteSessionHistory/index.d.mts +29 -0
  899. package/dist/src/services/sqliteSessionHistory/index.d.mts.map +1 -0
  900. package/dist/src/services/sqliteSessionHistory/index.mjs +100 -0
  901. package/dist/src/services/sqliteSessionHistory/index.mjs.map +1 -0
  902. package/dist/src/services/sqliteTranscriptReader/index.cjs +70 -0
  903. package/dist/src/services/sqliteTranscriptReader/index.cjs.map +1 -0
  904. package/dist/src/services/sqliteTranscriptReader/index.d.mts +14 -0
  905. package/dist/src/services/sqliteTranscriptReader/index.d.mts.map +1 -0
  906. package/dist/src/services/sqliteTranscriptReader/index.mjs +67 -0
  907. package/dist/src/services/sqliteTranscriptReader/index.mjs.map +1 -0
  908. package/dist/src/services/toolCost/index.cjs +47 -0
  909. package/dist/src/services/toolCost/index.cjs.map +1 -0
  910. package/dist/src/services/toolCost/index.d.mts +38 -0
  911. package/dist/src/services/toolCost/index.d.mts.map +1 -0
  912. package/dist/src/services/toolCost/index.mjs +46 -0
  913. package/dist/src/services/toolCost/index.mjs.map +1 -0
  914. package/dist/src/services/toolOverrides/index.cjs +45 -0
  915. package/dist/src/services/toolOverrides/index.cjs.map +1 -0
  916. package/dist/src/services/toolOverrides/index.d.mts +6 -0
  917. package/dist/src/services/toolOverrides/index.d.mts.map +1 -0
  918. package/dist/src/services/toolOverrides/index.mjs +45 -0
  919. package/dist/src/services/toolOverrides/index.mjs.map +1 -0
  920. package/dist/src/services/toolPrompt/index.cjs +13 -0
  921. package/dist/src/services/toolPrompt/index.cjs.map +1 -0
  922. package/dist/src/services/toolPrompt/index.mjs +13 -0
  923. package/dist/src/services/toolPrompt/index.mjs.map +1 -0
  924. package/dist/src/services/toolSurface/index.cjs +134 -0
  925. package/dist/src/services/toolSurface/index.cjs.map +1 -0
  926. package/dist/src/services/toolSurface/index.d.mts +19 -0
  927. package/dist/src/services/toolSurface/index.d.mts.map +1 -0
  928. package/dist/src/services/toolSurface/index.mjs +134 -0
  929. package/dist/src/services/toolSurface/index.mjs.map +1 -0
  930. package/dist/src/services/traceContext/index.cjs +13 -0
  931. package/dist/src/services/traceContext/index.cjs.map +1 -0
  932. package/dist/src/services/traceContext/index.mjs +13 -0
  933. package/dist/src/services/traceContext/index.mjs.map +1 -0
  934. package/dist/src/services/transcriptPages/index.cjs +74 -0
  935. package/dist/src/services/transcriptPages/index.cjs.map +1 -0
  936. package/dist/src/services/transcriptPages/index.mjs +73 -0
  937. package/dist/src/services/transcriptPages/index.mjs.map +1 -0
  938. package/dist/src/services/tunnelOutput/index.cjs +58 -0
  939. package/dist/src/services/tunnelOutput/index.cjs.map +1 -0
  940. package/dist/src/services/tunnelOutput/index.mjs +54 -0
  941. package/dist/src/services/tunnelOutput/index.mjs.map +1 -0
  942. package/dist/src/services/tunnelProcess/index.cjs +487 -0
  943. package/dist/src/services/tunnelProcess/index.cjs.map +1 -0
  944. package/dist/src/services/tunnelProcess/index.mjs +481 -0
  945. package/dist/src/services/tunnelProcess/index.mjs.map +1 -0
  946. package/dist/src/services/voiceReloadHandoff/index.cjs +136 -0
  947. package/dist/src/services/voiceReloadHandoff/index.cjs.map +1 -0
  948. package/dist/src/services/voiceReloadHandoff/index.d.mts +34 -0
  949. package/dist/src/services/voiceReloadHandoff/index.d.mts.map +1 -0
  950. package/dist/src/services/voiceReloadHandoff/index.mjs +135 -0
  951. package/dist/src/services/voiceReloadHandoff/index.mjs.map +1 -0
  952. package/dist/src/services/voiceToolsContract/index.cjs +26 -0
  953. package/dist/src/services/voiceToolsContract/index.cjs.map +1 -0
  954. package/dist/src/services/voiceToolsContract/index.d.mts +76 -0
  955. package/dist/src/services/voiceToolsContract/index.d.mts.map +1 -0
  956. package/dist/src/services/voiceToolsContract/index.mjs +24 -0
  957. package/dist/src/services/voiceToolsContract/index.mjs.map +1 -0
  958. package/dist/src/services/webauthn/index.cjs +262 -0
  959. package/dist/src/services/webauthn/index.cjs.map +1 -0
  960. package/dist/src/services/webauthn/index.d.mts +39 -0
  961. package/dist/src/services/webauthn/index.d.mts.map +1 -0
  962. package/dist/src/services/webauthn/index.mjs +262 -0
  963. package/dist/src/services/webauthn/index.mjs.map +1 -0
  964. package/dist/src/services/webauthnPolicy/index.cjs +163 -0
  965. package/dist/src/services/webauthnPolicy/index.cjs.map +1 -0
  966. package/dist/src/services/webauthnPolicy/index.d.mts +41 -0
  967. package/dist/src/services/webauthnPolicy/index.d.mts.map +1 -0
  968. package/dist/src/services/webauthnPolicy/index.mjs +156 -0
  969. package/dist/src/services/webauthnPolicy/index.mjs.map +1 -0
  970. package/dist/src/services/workspaceRegistry/index.cjs +151 -0
  971. package/dist/src/services/workspaceRegistry/index.cjs.map +1 -0
  972. package/dist/src/services/workspaceRegistry/index.d.mts +47 -0
  973. package/dist/src/services/workspaceRegistry/index.d.mts.map +1 -0
  974. package/dist/src/services/workspaceRegistry/index.mjs +144 -0
  975. package/dist/src/services/workspaceRegistry/index.mjs.map +1 -0
  976. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs +261 -0
  977. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs.map +1 -0
  978. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts +32 -0
  979. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -0
  980. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs +254 -0
  981. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs.map +1 -0
  982. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs +28 -0
  983. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs.map +1 -0
  984. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs +25 -0
  985. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs.map +1 -0
  986. package/dist/src/systems/child/services/childSession/index.cjs +219 -0
  987. package/dist/src/systems/child/services/childSession/index.cjs.map +1 -0
  988. package/dist/src/systems/child/services/childSession/index.d.mts +14 -0
  989. package/dist/src/systems/child/services/childSession/index.d.mts.map +1 -0
  990. package/dist/src/systems/child/services/childSession/index.mjs +219 -0
  991. package/dist/src/systems/child/services/childSession/index.mjs.map +1 -0
  992. package/dist/src/systems/child/types/childSession.cjs +19 -0
  993. package/dist/src/systems/child/types/childSession.cjs.map +1 -0
  994. package/dist/src/systems/child/types/childSession.d.mts +148 -0
  995. package/dist/src/systems/child/types/childSession.d.mts.map +1 -0
  996. package/dist/src/systems/child/types/childSession.mjs +16 -0
  997. package/dist/src/systems/child/types/childSession.mjs.map +1 -0
  998. package/dist/src/systems/main/adapters/headlessHost.cjs +554 -0
  999. package/dist/src/systems/main/adapters/headlessHost.cjs.map +1 -0
  1000. package/dist/src/systems/main/adapters/headlessHost.d.mts +111 -0
  1001. package/dist/src/systems/main/adapters/headlessHost.d.mts.map +1 -0
  1002. package/dist/src/systems/main/adapters/headlessHost.mjs +552 -0
  1003. package/dist/src/systems/main/adapters/headlessHost.mjs.map +1 -0
  1004. package/dist/src/systems/main/adapters/headlessSessionHost.cjs +1293 -0
  1005. package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -0
  1006. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts +14 -0
  1007. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -0
  1008. package/dist/src/systems/main/adapters/headlessSessionHost.mjs +1288 -0
  1009. package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -0
  1010. package/dist/src/systems/main/types/headlessHost.d.mts +36 -0
  1011. package/dist/src/systems/main/types/headlessHost.d.mts.map +1 -0
  1012. package/dist/src/testing/pi/extensionScenarios.cjs +73 -0
  1013. package/dist/src/testing/pi/extensionScenarios.cjs.map +1 -0
  1014. package/dist/src/testing/pi/extensionScenarios.d.mts +41 -0
  1015. package/dist/src/testing/pi/extensionScenarios.d.mts.map +1 -0
  1016. package/dist/src/testing/pi/extensionScenarios.mjs +73 -0
  1017. package/dist/src/testing/pi/extensionScenarios.mjs.map +1 -0
  1018. package/dist/src/testing/pi/testHost.cjs +398 -0
  1019. package/dist/src/testing/pi/testHost.cjs.map +1 -0
  1020. package/dist/src/testing/pi/testHost.d.mts +160 -0
  1021. package/dist/src/testing/pi/testHost.d.mts.map +1 -0
  1022. package/dist/src/testing/pi/testHost.mjs +398 -0
  1023. package/dist/src/testing/pi/testHost.mjs.map +1 -0
  1024. package/dist/src/types/config.d.mts +20 -0
  1025. package/dist/src/types/config.d.mts.map +1 -0
  1026. package/dist/src/types/kernel.d.mts +69 -0
  1027. package/dist/src/types/kernel.d.mts.map +1 -0
  1028. package/dist/src/types/remote.d.mts +124 -0
  1029. package/dist/src/types/remote.d.mts.map +1 -0
  1030. package/dist/src/types/server/directHarnessRuntime.d.mts +209 -0
  1031. package/dist/src/types/server/directHarnessRuntime.d.mts.map +1 -0
  1032. package/dist/src/types/server/session.d.mts +5 -0
  1033. package/dist/src/types/server/session.d.mts.map +1 -0
  1034. package/dist/src/types/server/sessionToolSurface.d.mts +44 -0
  1035. package/dist/src/types/server/sessionToolSurface.d.mts.map +1 -0
  1036. package/dist/src/web/models/globalStore.cjs +23 -0
  1037. package/dist/src/web/models/globalStore.cjs.map +1 -0
  1038. package/dist/src/web/models/globalStore.d.mts +6 -0
  1039. package/dist/src/web/models/globalStore.d.mts.map +1 -0
  1040. package/dist/src/web/models/globalStore.mjs +23 -0
  1041. package/dist/src/web/models/globalStore.mjs.map +1 -0
  1042. package/dist/src/web/models/sessionStore.cjs +56 -0
  1043. package/dist/src/web/models/sessionStore.cjs.map +1 -0
  1044. package/dist/src/web/models/sessionStore.d.mts +14 -0
  1045. package/dist/src/web/models/sessionStore.d.mts.map +1 -0
  1046. package/dist/src/web/models/sessionStore.mjs +56 -0
  1047. package/dist/src/web/models/sessionStore.mjs.map +1 -0
  1048. package/dist/src/web/models/workspaceStore.cjs +50 -0
  1049. package/dist/src/web/models/workspaceStore.cjs.map +1 -0
  1050. package/dist/src/web/models/workspaceStore.d.mts +18 -0
  1051. package/dist/src/web/models/workspaceStore.d.mts.map +1 -0
  1052. package/dist/src/web/models/workspaceStore.mjs +50 -0
  1053. package/dist/src/web/models/workspaceStore.mjs.map +1 -0
  1054. package/dist/src/web/schemas/bundleAssetPolicy.cjs +20 -0
  1055. package/dist/src/web/schemas/bundleAssetPolicy.cjs.map +1 -0
  1056. package/dist/src/web/schemas/bundleAssetPolicy.d.mts +10 -0
  1057. package/dist/src/web/schemas/bundleAssetPolicy.d.mts.map +1 -0
  1058. package/dist/src/web/schemas/bundleAssetPolicy.mjs +18 -0
  1059. package/dist/src/web/schemas/bundleAssetPolicy.mjs.map +1 -0
  1060. package/dist/src/web/schemas/template.cjs +15 -0
  1061. package/dist/src/web/schemas/template.cjs.map +1 -0
  1062. package/dist/src/web/schemas/template.d.mts +6 -0
  1063. package/dist/src/web/schemas/template.d.mts.map +1 -0
  1064. package/dist/src/web/schemas/template.mjs +15 -0
  1065. package/dist/src/web/schemas/template.mjs.map +1 -0
  1066. package/dist/src/web/services/apiClient/index.cjs +156 -0
  1067. package/dist/src/web/services/apiClient/index.cjs.map +1 -0
  1068. package/dist/src/web/services/apiClient/index.d.mts +152 -0
  1069. package/dist/src/web/services/apiClient/index.d.mts.map +1 -0
  1070. package/dist/src/web/services/apiClient/index.mjs +154 -0
  1071. package/dist/src/web/services/apiClient/index.mjs.map +1 -0
  1072. package/dist/src/web/services/apiPaths/index.cjs +83 -0
  1073. package/dist/src/web/services/apiPaths/index.cjs.map +1 -0
  1074. package/dist/src/web/services/apiPaths/index.d.mts +81 -0
  1075. package/dist/src/web/services/apiPaths/index.d.mts.map +1 -0
  1076. package/dist/src/web/services/apiPaths/index.mjs +78 -0
  1077. package/dist/src/web/services/apiPaths/index.mjs.map +1 -0
  1078. package/dist/src/web/services/apiRoutes/index.cjs +47 -0
  1079. package/dist/src/web/services/apiRoutes/index.cjs.map +1 -0
  1080. package/dist/src/web/services/apiRoutes/index.d.mts +21 -0
  1081. package/dist/src/web/services/apiRoutes/index.d.mts.map +1 -0
  1082. package/dist/src/web/services/apiRoutes/index.mjs +43 -0
  1083. package/dist/src/web/services/apiRoutes/index.mjs.map +1 -0
  1084. package/dist/src/web/services/mcpWidget.cjs +9 -0
  1085. package/dist/src/web/services/mcpWidget.cjs.map +1 -0
  1086. package/dist/src/web/services/mcpWidget.d.mts +6 -0
  1087. package/dist/src/web/services/mcpWidget.d.mts.map +1 -0
  1088. package/dist/src/web/services/mcpWidget.mjs +9 -0
  1089. package/dist/src/web/services/mcpWidget.mjs.map +1 -0
  1090. package/dist/src/web/services/sessionRegistry/index.cjs +70 -0
  1091. package/dist/src/web/services/sessionRegistry/index.cjs.map +1 -0
  1092. package/dist/src/web/services/sessionRegistry/index.d.mts +29 -0
  1093. package/dist/src/web/services/sessionRegistry/index.d.mts.map +1 -0
  1094. package/dist/src/web/services/sessionRegistry/index.mjs +66 -0
  1095. package/dist/src/web/services/sessionRegistry/index.mjs.map +1 -0
  1096. package/dist/src/web/services/testing/channels.cjs +11 -0
  1097. package/dist/src/web/services/testing/channels.cjs.map +1 -0
  1098. package/dist/src/web/services/testing/channels.d.mts +8 -0
  1099. package/dist/src/web/services/testing/channels.d.mts.map +1 -0
  1100. package/dist/src/web/services/testing/channels.mjs +11 -0
  1101. package/dist/src/web/services/testing/channels.mjs.map +1 -0
  1102. package/dist/src/web/services/testing/index.cjs +27 -0
  1103. package/dist/src/web/services/testing/index.cjs.map +1 -0
  1104. package/dist/src/web/services/testing/index.d.mts +31 -0
  1105. package/dist/src/web/services/testing/index.d.mts.map +1 -0
  1106. package/dist/src/web/services/testing/index.mjs +27 -0
  1107. package/dist/src/web/services/testing/index.mjs.map +1 -0
  1108. package/dist/src/web/services/testing/rpcStub.cjs +58 -0
  1109. package/dist/src/web/services/testing/rpcStub.cjs.map +1 -0
  1110. package/dist/src/web/services/testing/rpcStub.d.mts +37 -0
  1111. package/dist/src/web/services/testing/rpcStub.d.mts.map +1 -0
  1112. package/dist/src/web/services/testing/rpcStub.mjs +58 -0
  1113. package/dist/src/web/services/testing/rpcStub.mjs.map +1 -0
  1114. package/dist/src/web/services/testing/slotProps.cjs +91 -0
  1115. package/dist/src/web/services/testing/slotProps.cjs.map +1 -0
  1116. package/dist/src/web/services/testing/slotProps.d.mts +69 -0
  1117. package/dist/src/web/services/testing/slotProps.d.mts.map +1 -0
  1118. package/dist/src/web/services/testing/slotProps.mjs +90 -0
  1119. package/dist/src/web/services/testing/slotProps.mjs.map +1 -0
  1120. package/dist/src/web/services/testing/templateRail.cjs +128 -0
  1121. package/dist/src/web/services/testing/templateRail.cjs.map +1 -0
  1122. package/dist/src/web/services/testing/templateRail.d.mts +31 -0
  1123. package/dist/src/web/services/testing/templateRail.d.mts.map +1 -0
  1124. package/dist/src/web/services/testing/templateRail.mjs +126 -0
  1125. package/dist/src/web/services/testing/templateRail.mjs.map +1 -0
  1126. package/dist/src/web/services/toolResult/index.cjs +30 -0
  1127. package/dist/src/web/services/toolResult/index.cjs.map +1 -0
  1128. package/dist/src/web/services/toolResult/index.d.mts +14 -0
  1129. package/dist/src/web/services/toolResult/index.d.mts.map +1 -0
  1130. package/dist/src/web/services/toolResult/index.mjs +29 -0
  1131. package/dist/src/web/services/toolResult/index.mjs.map +1 -0
  1132. package/dist/src/web/types/extensionFile.d.mts +59 -0
  1133. package/dist/src/web/types/extensionFile.d.mts.map +1 -0
  1134. package/dist/src/web/types/mcpWidget.d.mts +14 -0
  1135. package/dist/src/web/types/mcpWidget.d.mts.map +1 -0
  1136. package/dist/src/web/types/modelContext.d.mts +43 -0
  1137. package/dist/src/web/types/modelContext.d.mts.map +1 -0
  1138. package/dist/src/web/types/sessionRegistry.d.mts +43 -0
  1139. package/dist/src/web/types/sessionRegistry.d.mts.map +1 -0
  1140. package/dist/src/web/types/template.d.mts +155 -0
  1141. package/dist/src/web/types/template.d.mts.map +1 -0
  1142. package/dist/src/web/types/webPlugin.d.mts +896 -0
  1143. package/dist/src/web/types/webPlugin.d.mts.map +1 -0
  1144. package/dist/syncLocation.cjs +244 -0
  1145. package/dist/syncLocation.cjs.map +1 -0
  1146. package/dist/syncLocation.d.mts +37 -0
  1147. package/dist/syncLocation.d.mts.map +1 -0
  1148. package/dist/syncLocation.mjs +231 -0
  1149. package/dist/syncLocation.mjs.map +1 -0
  1150. package/dist/syncRegistration.cjs +171 -0
  1151. package/dist/syncRegistration.cjs.map +1 -0
  1152. package/dist/syncRegistration.d.mts +48 -0
  1153. package/dist/syncRegistration.d.mts.map +1 -0
  1154. package/dist/syncRegistration.mjs +159 -0
  1155. package/dist/syncRegistration.mjs.map +1 -0
  1156. package/dist/syncStateContract.cjs +19 -0
  1157. package/dist/syncStateContract.cjs.map +1 -0
  1158. package/dist/syncStateContract.d.mts +14 -0
  1159. package/dist/syncStateContract.d.mts.map +1 -0
  1160. package/dist/syncStateContract.mjs +16 -0
  1161. package/dist/syncStateContract.mjs.map +1 -0
  1162. package/dist/terminalPiChildSessionService.cjs +267 -0
  1163. package/dist/terminalPiChildSessionService.cjs.map +1 -0
  1164. package/dist/terminalPiChildSessionService.d.mts +42 -0
  1165. package/dist/terminalPiChildSessionService.d.mts.map +1 -0
  1166. package/dist/terminalPiChildSessionService.mjs +260 -0
  1167. package/dist/terminalPiChildSessionService.mjs.map +1 -0
  1168. package/dist/testing.cjs +11 -0
  1169. package/dist/testing.d.mts +6 -0
  1170. package/dist/testing.mjs +6 -0
  1171. package/dist/toolInventory.cjs +136 -0
  1172. package/dist/toolInventory.cjs.map +1 -0
  1173. package/dist/toolInventory.d.mts +66 -0
  1174. package/dist/toolInventory.d.mts.map +1 -0
  1175. package/dist/toolInventory.mjs +133 -0
  1176. package/dist/toolInventory.mjs.map +1 -0
  1177. package/dist/toolNames.cjs +4 -0
  1178. package/dist/toolNames.d.mts +2 -0
  1179. package/dist/toolNames.mjs +2 -0
  1180. package/dist/toolOverrides.cjs +7 -0
  1181. package/dist/toolOverrides.d.mts +3 -0
  1182. package/dist/toolOverrides.mjs +3 -0
  1183. package/dist/toolSurface.cjs +7 -0
  1184. package/dist/toolSurface.d.mts +3 -0
  1185. package/dist/toolSurface.mjs +3 -0
  1186. package/dist/transition.cjs +5 -0
  1187. package/dist/transition.d.cjs +5 -0
  1188. package/dist/transition.d.mts +2 -0
  1189. package/dist/transition.mjs +2 -0
  1190. package/dist/transitionClassifier.cjs +112 -0
  1191. package/dist/transitionClassifier.cjs.map +1 -0
  1192. package/dist/transitionClassifier.d.mts +18 -0
  1193. package/dist/transitionClassifier.d.mts.map +1 -0
  1194. package/dist/transitionClassifier.mjs +111 -0
  1195. package/dist/transitionClassifier.mjs.map +1 -0
  1196. package/dist/transitionCoordinator.cjs +131 -0
  1197. package/dist/transitionCoordinator.cjs.map +1 -0
  1198. package/dist/transitionCoordinator.d.mts +16 -0
  1199. package/dist/transitionCoordinator.d.mts.map +1 -0
  1200. package/dist/transitionCoordinator.mjs +130 -0
  1201. package/dist/transitionCoordinator.mjs.map +1 -0
  1202. package/dist/typesContextApi.cjs +0 -0
  1203. package/dist/typesContextApi.d.mts +73 -0
  1204. package/dist/typesContextApi.d.mts.map +1 -0
  1205. package/dist/typesContextApi.mjs +1 -0
  1206. package/dist/uiHub.cjs +5 -0
  1207. package/dist/uiHub.d.mts +2 -0
  1208. package/dist/uiHub.mjs +2 -0
  1209. package/dist/v3Export.cjs +1004 -0
  1210. package/dist/v3Export.cjs.map +1 -0
  1211. package/dist/v3Export.d.mts +34 -0
  1212. package/dist/v3Export.d.mts.map +1 -0
  1213. package/dist/v3Export.mjs +1000 -0
  1214. package/dist/v3Export.mjs.map +1 -0
  1215. package/dist/voiceReloadHandoff.cjs +14 -0
  1216. package/dist/voiceReloadHandoff.d.mts +4 -0
  1217. package/dist/voiceReloadHandoff.mjs +4 -0
  1218. package/dist/voiceTools.cjs +56 -0
  1219. package/dist/voiceTools.d.mts +4 -0
  1220. package/dist/voiceTools.mjs +4 -0
  1221. package/dist/web.cjs +64 -0
  1222. package/dist/web.d.mts +19 -0
  1223. package/dist/web.mjs +13 -0
  1224. package/dist/webCompositions.cjs +100 -0
  1225. package/dist/webCompositions.cjs.map +1 -0
  1226. package/dist/webCompositions.d.mts +20 -0
  1227. package/dist/webCompositions.d.mts.map +1 -0
  1228. package/dist/webCompositions.mjs +95 -0
  1229. package/dist/webCompositions.mjs.map +1 -0
  1230. package/dist/webTesting.cjs +14 -0
  1231. package/dist/webTesting.d.mts +6 -0
  1232. package/dist/webTesting.mjs +6 -0
  1233. package/package.json +616 -0
@@ -0,0 +1,144 @@
1
+ import { gitCommonDirectory } from "../../../syncLocation.mjs";
2
+ import crypto from "node:crypto";
3
+ import fs from "node:fs";
4
+ import path from "node:path";
5
+ //#region src/services/workspaceRegistry/index.ts
6
+ const REGISTRY_FILE = "workspaces.json";
7
+ /** Kept in the repository's git data, which moves with the checkout and is shared by its worktrees. */
8
+ const WORKSPACE_MARKER_FILE = "doompi-workspace-id";
9
+ const DIRECTORY_MODE = 448;
10
+ const FILE_MODE = 384;
11
+ function parseRecord(value) {
12
+ if (typeof value !== "object" || value === null || Array.isArray(value)) return void 0;
13
+ const record = value;
14
+ if (typeof record.id !== "string" || record.id === "") return void 0;
15
+ if (typeof record.root !== "string" || !path.isAbsolute(record.root)) return void 0;
16
+ const name = typeof record.name === "string" && record.name.trim() !== "" ? record.name : void 0;
17
+ return {
18
+ id: record.id,
19
+ root: record.root,
20
+ ...name === void 0 ? {} : { name }
21
+ };
22
+ }
23
+ /** Durable workspace membership, independent of whether a workspace can currently mount. */
24
+ function createWorkspaceRegistry(options) {
25
+ const notice = options.onNotice ?? (() => {});
26
+ const filePath = path.join(options.directory, REGISTRY_FILE);
27
+ const load = () => {
28
+ let raw;
29
+ try {
30
+ raw = fs.readFileSync(filePath, "utf8");
31
+ } catch (error) {
32
+ if (error instanceof Error && "code" in error && error.code === "ENOENT") return [];
33
+ notice(`${filePath} could not be read: ${error instanceof Error ? error.message : String(error)}`);
34
+ return [];
35
+ }
36
+ let parsed;
37
+ try {
38
+ parsed = JSON.parse(raw);
39
+ } catch {
40
+ notice(`workspaces at ${filePath} are not valid JSON; none will be restored`);
41
+ return [];
42
+ }
43
+ if (!Array.isArray(parsed)) {
44
+ notice(`workspaces at ${filePath} are not a list; none will be restored`);
45
+ return [];
46
+ }
47
+ const records = [];
48
+ for (const entry of parsed) {
49
+ const record = parseRecord(entry);
50
+ if (record === void 0) notice(`workspaces at ${filePath} contain an unusable entry; skipping it`);
51
+ else if (!records.some((candidate) => candidate.id === record.id)) records.push(record);
52
+ }
53
+ return records;
54
+ };
55
+ let current = load();
56
+ const persist = (next) => {
57
+ const temporary = `${filePath}.${String(process.pid)}.tmp`;
58
+ try {
59
+ fs.mkdirSync(options.directory, {
60
+ recursive: true,
61
+ mode: DIRECTORY_MODE
62
+ });
63
+ fs.writeFileSync(temporary, `${JSON.stringify(next, void 0, 2)}\n`, { mode: FILE_MODE });
64
+ fs.renameSync(temporary, filePath);
65
+ } catch (error) {
66
+ try {
67
+ fs.rmSync(temporary, { force: true });
68
+ } catch (cleanupError) {
69
+ notice(`${temporary} could not be removed: ${cleanupError instanceof Error ? cleanupError.message : String(cleanupError)}`);
70
+ }
71
+ throw new Error(`${filePath} could not be saved`, { cause: error });
72
+ }
73
+ };
74
+ return {
75
+ list: () => current,
76
+ add(record) {
77
+ if (record.id === "" || !path.isAbsolute(record.root)) throw new Error("Invalid workspace record.");
78
+ const next = current.some((held) => held.id === record.id) ? current.map((held) => held.id === record.id ? record : held) : [...current, record];
79
+ persist(next);
80
+ current = next;
81
+ },
82
+ remove(id) {
83
+ const next = current.filter((held) => held.id !== id);
84
+ if (next.length === current.length) return;
85
+ persist(next);
86
+ current = next;
87
+ }
88
+ };
89
+ }
90
+ /** The workspace id recorded in a checkout's git data, if any. */
91
+ function readWorkspaceMarker(checkoutRoot) {
92
+ const commonDirectory = gitCommonDirectory(checkoutRoot);
93
+ if (commonDirectory === void 0) return void 0;
94
+ try {
95
+ const id = fs.readFileSync(path.join(commonDirectory, WORKSPACE_MARKER_FILE), "utf8").trim();
96
+ return id === "" ? void 0 : id;
97
+ } catch (error) {
98
+ if (error instanceof Error && "code" in error && error.code === "ENOENT") return void 0;
99
+ throw error;
100
+ }
101
+ }
102
+ /**
103
+ * Records a workspace id in a checkout's git data so the workspace keeps its id when the
104
+ * repository moves. A checkout without git data has nowhere to keep it; returns false.
105
+ */
106
+ function writeWorkspaceMarker(checkoutRoot, id) {
107
+ const commonDirectory = gitCommonDirectory(checkoutRoot);
108
+ if (commonDirectory === void 0) return false;
109
+ fs.writeFileSync(path.join(commonDirectory, WORKSPACE_MARKER_FILE), `${id}\n`, { mode: FILE_MODE });
110
+ return true;
111
+ }
112
+ /**
113
+ * Decides which workspace a checkout belongs to. An exact root match wins. Otherwise the id
114
+ * in the repository's git data names the workspace: a checkout of a workspace whose root still
115
+ * exists joins it, and one whose recorded root is gone is that workspace, moved. Anything else
116
+ * is a new workspace.
117
+ */
118
+ function identifyWorkspace(input) {
119
+ const exact = input.records.find((record) => record.root === input.checkoutRoot);
120
+ if (exact !== void 0) return {
121
+ id: exact.id,
122
+ root: exact.root,
123
+ moved: false
124
+ };
125
+ const owner = input.marker === void 0 ? void 0 : input.records.find((record) => record.id === input.marker);
126
+ if (owner !== void 0) return (input.exists ?? fs.existsSync)(owner.root) ? {
127
+ id: owner.id,
128
+ root: owner.root,
129
+ moved: false
130
+ } : {
131
+ id: owner.id,
132
+ root: input.checkoutRoot,
133
+ moved: true
134
+ };
135
+ return {
136
+ id: input.marker ?? (input.newId ?? crypto.randomUUID)(),
137
+ root: input.checkoutRoot,
138
+ moved: false
139
+ };
140
+ }
141
+ //#endregion
142
+ export { createWorkspaceRegistry, identifyWorkspace, readWorkspaceMarker, writeWorkspaceMarker };
143
+
144
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/services/workspaceRegistry/index.ts"],"sourcesContent":["import crypto from 'node:crypto';\nimport fs from 'node:fs';\nimport path from 'node:path';\n\nimport { gitCommonDirectory } from '../syncLocation';\n\nconst REGISTRY_FILE = 'workspaces.json';\n/** Kept in the repository's git data, which moves with the checkout and is shared by its worktrees. */\nconst WORKSPACE_MARKER_FILE = 'doompi-workspace-id';\nconst DIRECTORY_MODE = 0o700;\nconst FILE_MODE = 0o600;\n\nexport interface WorkspaceRecord {\n id: string;\n root: string;\n /** Display name chosen when the workspace was added; the folder basename stands in when absent. */\n name?: string;\n}\n\nexport interface WorkspaceRegistry {\n list(): readonly WorkspaceRecord[];\n add(record: WorkspaceRecord): void;\n remove(id: string): void;\n}\n\nexport interface WorkspaceRegistryOptions {\n directory: string;\n onNotice?: (message: string) => void;\n}\n\nfunction parseRecord(value: unknown): WorkspaceRecord | undefined {\n if (typeof value !== 'object' || value === null || Array.isArray(value)) return undefined;\n const record = value as Record<string, unknown>;\n if (typeof record.id !== 'string' || record.id === '') return undefined;\n if (typeof record.root !== 'string' || !path.isAbsolute(record.root)) return undefined;\n const name = typeof record.name === 'string' && record.name.trim() !== '' ? record.name : undefined;\n return { id: record.id, root: record.root, ...(name === undefined ? {} : { name }) };\n}\n\n/** Durable workspace membership, independent of whether a workspace can currently mount. */\nexport function createWorkspaceRegistry(options: WorkspaceRegistryOptions): WorkspaceRegistry {\n const notice = options.onNotice ?? ((): void => {});\n const filePath = path.join(options.directory, REGISTRY_FILE);\n\n const load = (): WorkspaceRecord[] => {\n let raw: string;\n try {\n raw = fs.readFileSync(filePath, 'utf8');\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'ENOENT') return [];\n notice(`${filePath} could not be read: ${error instanceof Error ? error.message : String(error)}`);\n return [];\n }\n let parsed: unknown;\n try {\n parsed = JSON.parse(raw);\n } catch {\n notice(`workspaces at ${filePath} are not valid JSON; none will be restored`);\n return [];\n }\n if (!Array.isArray(parsed)) {\n notice(`workspaces at ${filePath} are not a list; none will be restored`);\n return [];\n }\n const records: WorkspaceRecord[] = [];\n for (const entry of parsed) {\n const record = parseRecord(entry);\n if (record === undefined) notice(`workspaces at ${filePath} contain an unusable entry; skipping it`);\n else if (!records.some((candidate) => candidate.id === record.id)) records.push(record);\n }\n return records;\n };\n\n let current = load();\n\n const persist = (next: readonly WorkspaceRecord[]): void => {\n const temporary = `${filePath}.${String(process.pid)}.tmp`;\n try {\n fs.mkdirSync(options.directory, { recursive: true, mode: DIRECTORY_MODE });\n fs.writeFileSync(temporary, `${JSON.stringify(next, undefined, 2)}\\n`, { mode: FILE_MODE });\n fs.renameSync(temporary, filePath);\n } catch (error) {\n try {\n fs.rmSync(temporary, { force: true });\n } catch (cleanupError) {\n notice(\n `${temporary} could not be removed: ${cleanupError instanceof Error ? cleanupError.message : String(cleanupError)}`,\n );\n }\n throw new Error(`${filePath} could not be saved`, { cause: error });\n }\n };\n\n return {\n list: () => current,\n add(record) {\n if (record.id === '' || !path.isAbsolute(record.root)) throw new Error('Invalid workspace record.');\n // Replaced in place: registry order is the tie-break when checkouts are matched to workspaces.\n const next = current.some((held) => held.id === record.id)\n ? current.map((held) => (held.id === record.id ? record : held))\n : [...current, record];\n persist(next);\n current = next;\n },\n remove(id) {\n const next = current.filter((held) => held.id !== id);\n if (next.length === current.length) return;\n persist(next);\n current = next;\n },\n };\n}\n\n/** The workspace id recorded in a checkout's git data, if any. */\nexport function readWorkspaceMarker(checkoutRoot: string): string | undefined {\n const commonDirectory = gitCommonDirectory(checkoutRoot);\n if (commonDirectory === undefined) return undefined;\n try {\n const id = fs.readFileSync(path.join(commonDirectory, WORKSPACE_MARKER_FILE), 'utf8').trim();\n return id === '' ? undefined : id;\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'ENOENT') return undefined;\n throw error;\n }\n}\n\n/**\n * Records a workspace id in a checkout's git data so the workspace keeps its id when the\n * repository moves. A checkout without git data has nowhere to keep it; returns false.\n */\nexport function writeWorkspaceMarker(checkoutRoot: string, id: string): boolean {\n const commonDirectory = gitCommonDirectory(checkoutRoot);\n if (commonDirectory === undefined) return false;\n fs.writeFileSync(path.join(commonDirectory, WORKSPACE_MARKER_FILE), `${id}\\n`, { mode: FILE_MODE });\n return true;\n}\n\nexport interface WorkspaceIdentity {\n readonly id: string;\n /** The workspace root. Differs from the checkout when the checkout joins an existing workspace. */\n readonly root: string;\n /** The recorded root no longer exists and this checkout takes its place. */\n readonly moved: boolean;\n}\n\n/**\n * Decides which workspace a checkout belongs to. An exact root match wins. Otherwise the id\n * in the repository's git data names the workspace: a checkout of a workspace whose root still\n * exists joins it, and one whose recorded root is gone is that workspace, moved. Anything else\n * is a new workspace.\n */\nexport function identifyWorkspace(input: {\n readonly records: readonly WorkspaceRecord[];\n readonly checkoutRoot: string;\n readonly marker?: string;\n readonly exists?: (root: string) => boolean;\n readonly newId?: () => string;\n}): WorkspaceIdentity {\n const exact = input.records.find((record) => record.root === input.checkoutRoot);\n if (exact !== undefined) return { id: exact.id, root: exact.root, moved: false };\n const owner = input.marker === undefined ? undefined : input.records.find((record) => record.id === input.marker);\n if (owner !== undefined) {\n const exists = input.exists ?? fs.existsSync;\n return exists(owner.root)\n ? { id: owner.id, root: owner.root, moved: false }\n : { id: owner.id, root: input.checkoutRoot, moved: true };\n }\n return { id: input.marker ?? (input.newId ?? crypto.randomUUID)(), root: input.checkoutRoot, moved: false };\n}\n"],"mappings":";;;;;AAMA,MAAM,gBAAgB;;AAEtB,MAAM,wBAAwB;AAC9B,MAAM,iBAAiB;AACvB,MAAM,YAAY;AAoBlB,SAAS,YAAY,OAA6C;CAChE,IAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,GAAG,OAAO,KAAA;CAChF,MAAM,SAAS;CACf,IAAI,OAAO,OAAO,OAAO,YAAY,OAAO,OAAO,IAAI,OAAO,KAAA;CAC9D,IAAI,OAAO,OAAO,SAAS,YAAY,CAAC,KAAK,WAAW,OAAO,IAAI,GAAG,OAAO,KAAA;CAC7E,MAAM,OAAO,OAAO,OAAO,SAAS,YAAY,OAAO,KAAK,KAAK,MAAM,KAAK,OAAO,OAAO,KAAA;CAC1F,OAAO;EAAE,IAAI,OAAO;EAAI,MAAM,OAAO;EAAM,GAAI,SAAS,KAAA,IAAY,CAAC,IAAI,EAAE,KAAK;CAAG;AACrF;;AAGA,SAAgB,wBAAwB,SAAsD;CAC5F,MAAM,SAAS,QAAQ,mBAAyB,CAAC;CACjD,MAAM,WAAW,KAAK,KAAK,QAAQ,WAAW,aAAa;CAE3D,MAAM,aAAgC;EACpC,IAAI;EACJ,IAAI;GACF,MAAM,GAAG,aAAa,UAAU,MAAM;EACxC,SAAS,OAAO;GACd,IAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,UAAU,OAAO,CAAC;GAClF,OAAO,GAAG,SAAS,sBAAsB,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,GAAG;GACjG,OAAO,CAAC;EACV;EACA,IAAI;EACJ,IAAI;GACF,SAAS,KAAK,MAAM,GAAG;EACzB,QAAQ;GACN,OAAO,iBAAiB,SAAS,2CAA2C;GAC5E,OAAO,CAAC;EACV;EACA,IAAI,CAAC,MAAM,QAAQ,MAAM,GAAG;GAC1B,OAAO,iBAAiB,SAAS,uCAAuC;GACxE,OAAO,CAAC;EACV;EACA,MAAM,UAA6B,CAAC;EACpC,KAAK,MAAM,SAAS,QAAQ;GAC1B,MAAM,SAAS,YAAY,KAAK;GAChC,IAAI,WAAW,KAAA,GAAW,OAAO,iBAAiB,SAAS,wCAAwC;QAC9F,IAAI,CAAC,QAAQ,MAAM,cAAc,UAAU,OAAO,OAAO,EAAE,GAAG,QAAQ,KAAK,MAAM;EACxF;EACA,OAAO;CACT;CAEA,IAAI,UAAU,KAAK;CAEnB,MAAM,WAAW,SAA2C;EAC1D,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,QAAQ,GAAG,EAAE;EACrD,IAAI;GACF,GAAG,UAAU,QAAQ,WAAW;IAAE,WAAW;IAAM,MAAM;GAAe,CAAC;GACzE,GAAG,cAAc,WAAW,GAAG,KAAK,UAAU,MAAM,KAAA,GAAW,CAAC,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;GAC1F,GAAG,WAAW,WAAW,QAAQ;EACnC,SAAS,OAAO;GACd,IAAI;IACF,GAAG,OAAO,WAAW,EAAE,OAAO,KAAK,CAAC;GACtC,SAAS,cAAc;IACrB,OACE,GAAG,UAAU,yBAAyB,wBAAwB,QAAQ,aAAa,UAAU,OAAO,YAAY,GAClH;GACF;GACA,MAAM,IAAI,MAAM,GAAG,SAAS,sBAAsB,EAAE,OAAO,MAAM,CAAC;EACpE;CACF;CAEA,OAAO;EACL,YAAY;EACZ,IAAI,QAAQ;GACV,IAAI,OAAO,OAAO,MAAM,CAAC,KAAK,WAAW,OAAO,IAAI,GAAG,MAAM,IAAI,MAAM,2BAA2B;GAElG,MAAM,OAAO,QAAQ,MAAM,SAAS,KAAK,OAAO,OAAO,EAAE,IACrD,QAAQ,KAAK,SAAU,KAAK,OAAO,OAAO,KAAK,SAAS,IAAK,IAC7D,CAAC,GAAG,SAAS,MAAM;GACvB,QAAQ,IAAI;GACZ,UAAU;EACZ;EACA,OAAO,IAAI;GACT,MAAM,OAAO,QAAQ,QAAQ,SAAS,KAAK,OAAO,EAAE;GACpD,IAAI,KAAK,WAAW,QAAQ,QAAQ;GACpC,QAAQ,IAAI;GACZ,UAAU;EACZ;CACF;AACF;;AAGA,SAAgB,oBAAoB,cAA0C;CAC5E,MAAM,kBAAkB,mBAAmB,YAAY;CACvD,IAAI,oBAAoB,KAAA,GAAW,OAAO,KAAA;CAC1C,IAAI;EACF,MAAM,KAAK,GAAG,aAAa,KAAK,KAAK,iBAAiB,qBAAqB,GAAG,MAAM,CAAC,CAAC,KAAK;EAC3F,OAAO,OAAO,KAAK,KAAA,IAAY;CACjC,SAAS,OAAO;EACd,IAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,UAAU,OAAO,KAAA;EACjF,MAAM;CACR;AACF;;;;;AAMA,SAAgB,qBAAqB,cAAsB,IAAqB;CAC9E,MAAM,kBAAkB,mBAAmB,YAAY;CACvD,IAAI,oBAAoB,KAAA,GAAW,OAAO;CAC1C,GAAG,cAAc,KAAK,KAAK,iBAAiB,qBAAqB,GAAG,GAAG,GAAG,KAAK,EAAE,MAAM,UAAU,CAAC;CAClG,OAAO;AACT;;;;;;;AAgBA,SAAgB,kBAAkB,OAMZ;CACpB,MAAM,QAAQ,MAAM,QAAQ,MAAM,WAAW,OAAO,SAAS,MAAM,YAAY;CAC/E,IAAI,UAAU,KAAA,GAAW,OAAO;EAAE,IAAI,MAAM;EAAI,MAAM,MAAM;EAAM,OAAO;CAAM;CAC/E,MAAM,QAAQ,MAAM,WAAW,KAAA,IAAY,KAAA,IAAY,MAAM,QAAQ,MAAM,WAAW,OAAO,OAAO,MAAM,MAAM;CAChH,IAAI,UAAU,KAAA,GAEZ,QADe,MAAM,UAAU,GAAG,WAAA,CACpB,MAAM,IAAI,IACpB;EAAE,IAAI,MAAM;EAAI,MAAM,MAAM;EAAM,OAAO;CAAM,IAC/C;EAAE,IAAI,MAAM;EAAI,MAAM,MAAM;EAAc,OAAO;CAAK;CAE5D,OAAO;EAAE,IAAI,MAAM,WAAW,MAAM,SAAS,OAAO,WAAA,CAAY;EAAG,MAAM,MAAM;EAAc,OAAO;CAAM;AAC5G"}
@@ -0,0 +1,261 @@
1
+ const require_runtime = require("../../../../_virtual/_rolldown/runtime.cjs");
2
+ const require_index = require("../services/childSession/index.cjs");
3
+ const require_historyOwnership = require("../../../../historyOwnership.cjs");
4
+ const require_directHarnessRuntime = require("../../../server/directHarnessRuntime.cjs");
5
+ const require_nativeChildRuntimes = require("./nativeChildRuntimes.cjs");
6
+ const require_nativeChildTranscriptReader = require("../../../server/nativeChildTranscriptReader.cjs");
7
+ let node_crypto = require("node:crypto");
8
+ let node_fs = require("node:fs");
9
+ node_fs = require_runtime.__toESM(node_fs, 1);
10
+ let node_path = require("node:path");
11
+ node_path = require_runtime.__toESM(node_path, 1);
12
+ let _earendil_works_pi_agent_core_harness_context = require("@earendil-works/pi-agent-core/harness/context");
13
+ let _earendil_works_pi_session_backend_sqlite_node = require("@earendil-works/pi-session-backend-sqlite-node");
14
+ let _earendil_works_pi_coding_agent = require("@earendil-works/pi-coding-agent");
15
+ //#region src/systems/child/adapters/headlessChildSessionService.ts
16
+ const THINKING_SUFFIX_PATTERN = /:(off|minimal|low|medium|high|xhigh|max)$/;
17
+ /**
18
+ * Child model specs may carry a Pi thinking suffix, for example
19
+ * `anthropic-vertex/claude-sonnet-5:medium`. The suffix is a request option and
20
+ * never part of the model id, so it has to be split off before model lookup.
21
+ */
22
+ function parseChildModelReference(value) {
23
+ if (value === void 0) return void 0;
24
+ const suffix = THINKING_SUFFIX_PATTERN.exec(value);
25
+ const reference = suffix === null ? value : value.slice(0, value.length - suffix[0].length);
26
+ const separator = reference.indexOf("/");
27
+ if (separator <= 0 || separator === reference.length - 1) throw new Error(`Child model must use the provider/model form: ${value}`);
28
+ return {
29
+ model: {
30
+ provider: reference.slice(0, separator),
31
+ id: reference.slice(separator + 1)
32
+ },
33
+ ...suffix === null ? {} : { thinking: suffix[1] }
34
+ };
35
+ }
36
+ /** Resolve the provider set for one spawn, tolerating both a fixed array and a thunk. */
37
+ function resolveChildProviders(providers) {
38
+ const resolved = typeof providers === "function" ? providers() : providers;
39
+ return resolved === void 0 || resolved.length === 0 ? void 0 : resolved;
40
+ }
41
+ function sessionFile(runtime) {
42
+ const metadata = runtime.session.metadata;
43
+ return typeof metadata.path === "string" ? metadata.path : void 0;
44
+ }
45
+ function childRuntime(runtime, intercom, release) {
46
+ const file = sessionFile(runtime);
47
+ return {
48
+ sessionId: runtime.sessionId,
49
+ ...file === void 0 ? {} : { sessionFile: file },
50
+ ...file === void 0 ? {} : { readTranscriptPage: (request, signal) => require_nativeChildTranscriptReader.readNativeChildTranscript(file, request, signal) },
51
+ prompt: (task) => require_directHarnessRuntime.promptForAssistantText(runtime, task),
52
+ steer: (message) => runtime.steer(message),
53
+ followUp: (message) => runtime.followUp(message),
54
+ onUsage(listener) {
55
+ return runtime.onEvent((event) => {
56
+ if (event.type !== "usage") return;
57
+ listener({
58
+ rowId: event.row.id,
59
+ cost: event.row.usage.cost.total
60
+ });
61
+ });
62
+ },
63
+ abort: () => runtime.abort(),
64
+ dispose: async () => {
65
+ try {
66
+ await runtime.dispose();
67
+ } finally {
68
+ release?.();
69
+ intercom?.dispose?.();
70
+ }
71
+ }
72
+ };
73
+ }
74
+ async function installIntercom(runtime, intercom, tools) {
75
+ if (!intercom) return;
76
+ const tool = intercom.bindRuntime(childRuntime(runtime));
77
+ const adapted = {
78
+ ...tool,
79
+ parameters: tool.parameters,
80
+ execute: (operationId, params, signal, onUpdate) => tool.execute(operationId, params, signal, onUpdate)
81
+ };
82
+ await runtime.replaceTools([...tools, adapted]);
83
+ }
84
+ function hasConfiguredValues(value) {
85
+ return value !== void 0 && value.length > 0;
86
+ }
87
+ const NATIVE_TOOL_FACTORIES = {
88
+ read: _earendil_works_pi_coding_agent.createReadTool,
89
+ bash: _earendil_works_pi_coding_agent.createBashTool,
90
+ edit: _earendil_works_pi_coding_agent.createEditTool,
91
+ write: _earendil_works_pi_coding_agent.createWriteTool,
92
+ grep: _earendil_works_pi_coding_agent.createGrepTool,
93
+ find: _earendil_works_pi_coding_agent.createFindTool,
94
+ ls: _earendil_works_pi_coding_agent.createLsTool
95
+ };
96
+ function adaptNativeTool(tool) {
97
+ return {
98
+ ...tool,
99
+ label: "label" in tool ? tool.label : tool.name,
100
+ parameters: tool.parameters,
101
+ async execute(toolCallId, parameters, onUpdate, _toolContext, _invocation, context) {
102
+ const execute = tool.execute;
103
+ const result = await execute(toolCallId, parameters, context.abortSignal ?? new AbortController().signal, (partial) => onUpdate({
104
+ content: partial.content,
105
+ details: partial.details
106
+ }));
107
+ if (result.isError) {
108
+ const content = result.content;
109
+ throw new Error(content.filter((part) => part.type === "text").map((part) => part.text).join("\n") || "MCP tool failed.");
110
+ }
111
+ return {
112
+ content: result.content,
113
+ details: result.details
114
+ };
115
+ }
116
+ };
117
+ }
118
+ /** Validate and project native fields before a source fork can publish a child journal. */
119
+ function composeDirectHarnessRequestOptions(request, resolveMcpTool) {
120
+ const unsupported = [
121
+ ...hasConfiguredValues(request.extensions) ? ["extensions"] : [],
122
+ ...hasConfiguredValues(request.subagentOnlyExtensions) ? ["subagentOnlyExtensions"] : [],
123
+ ...hasConfiguredValues(request.mcpDirectTools) ? ["mcpDirectTools"] : [],
124
+ ...hasConfiguredValues(request.capabilityCeiling?.allowedExternalProfiles) ? ["allowedExternalProfiles"] : []
125
+ ];
126
+ if (unsupported.length > 0) throw new Error(`Native child session configuration is unsupported by the direct harness: ${unsupported.join(", ")}`);
127
+ const requested = [...new Set(request.tools ?? Object.keys(NATIVE_TOOL_FACTORIES))];
128
+ const excluded = new Set(request.excludeTools ?? []);
129
+ const allowed = request.capabilityCeiling?.allowedTools;
130
+ const isMcp = (name) => name === "mcp" || name === "mcp_use";
131
+ const mcpDenied = request.capabilityCeiling?.allowMcpTools === false || [...excluded].some(isMcp);
132
+ const names = requested.filter((name) => !excluded.has(name) && (allowed === void 0 || allowed.includes(name)) && !(isMcp(name) && mcpDenied));
133
+ const unknown = names.filter((name) => !Object.hasOwn(NATIVE_TOOL_FACTORIES, name) && !isMcp(name));
134
+ if (unknown.length > 0) throw new Error(`Native child session requested unknown direct harness tools: ${unknown.join(", ")}`);
135
+ const missing = (request.capabilityCeiling?.requiredTools ?? []).filter((name) => !names.includes(name));
136
+ if (missing.length > 0) throw new Error(`Native child session capability ceiling requires unavailable tools: ${missing.join(", ")}`);
137
+ const mcpTool = names.some(isMcp) ? resolveMcpTool?.() : void 0;
138
+ if (names.some(isMcp) && !mcpTool) throw new Error("Native child session MCP tools are unavailable. Enable MCP in the parent session.");
139
+ return {
140
+ tools: names.map((name) => {
141
+ if (!isMcp(name)) return adaptNativeTool(NATIVE_TOOL_FACTORIES[name](request.cwd));
142
+ return adaptNativeTool({
143
+ ...mcpTool,
144
+ name,
145
+ execute(toolCallId, parameters, signal, onUpdate) {
146
+ signal?.throwIfAborted();
147
+ if (resolveMcpTool?.() !== mcpTool) throw new Error("The parent session MCP dispatcher is no longer available.");
148
+ return mcpTool.execute(toolCallId, parameters, signal, onUpdate);
149
+ }
150
+ });
151
+ }),
152
+ activeToolNames: names,
153
+ ...request.systemPrompt === void 0 ? {} : { systemPrompt: request.systemPrompt }
154
+ };
155
+ }
156
+ async function forkChildJournal(sourcePath, branch, entryId, ownership) {
157
+ const directory = node_path.default.dirname(node_path.default.resolve(sourcePath));
158
+ const sourceRepository = new _earendil_works_pi_session_backend_sqlite_node.SqliteSessionRepo({
159
+ directory,
160
+ databasePath: sourcePath,
161
+ databaseFactory: (0, _earendil_works_pi_session_backend_sqlite_node.createNodeSqliteFactory)()
162
+ });
163
+ const sources = await sourceRepository.list(void 0, _earendil_works_pi_agent_core_harness_context.BACKGROUND_CONTEXT);
164
+ await sourceRepository.close(_earendil_works_pi_agent_core_harness_context.BACKGROUND_CONTEXT);
165
+ if (sources.length !== 1) throw new Error("Child source must be an existing SQLite session; import JSONL offline first.");
166
+ const id = (0, node_crypto.randomUUID)();
167
+ const destination = node_path.default.join(directory, `${id}.sqlite`);
168
+ const lease = await ownership.acquire(destination);
169
+ const repository = new _earendil_works_pi_session_backend_sqlite_node.SqliteSessionRepo({
170
+ directory,
171
+ databaseFactory: (0, _earendil_works_pi_session_backend_sqlite_node.createNodeSqliteFactory)()
172
+ });
173
+ try {
174
+ await lease.assertQuiescent();
175
+ await (await repository.fork(sources[0], {
176
+ scope: "branch",
177
+ branch,
178
+ id,
179
+ ...entryId === void 0 ? {} : { entryId }
180
+ }, _earendil_works_pi_agent_core_harness_context.BACKGROUND_CONTEXT)).close(_earendil_works_pi_agent_core_harness_context.BACKGROUND_CONTEXT);
181
+ return destination;
182
+ } finally {
183
+ try {
184
+ await repository.close(_earendil_works_pi_agent_core_harness_context.BACKGROUND_CONTEXT);
185
+ } finally {
186
+ await lease.release();
187
+ }
188
+ }
189
+ }
190
+ function createHeadlessChildSessionService(options) {
191
+ const runtimeFactory = options.runtimeFactory ?? require_directHarnessRuntime.createDirectHarnessRuntime;
192
+ const ownership = options.historyOwnership ?? require_historyOwnership.createHistoryOwnership({ sourceFormat: "sqlite" });
193
+ return require_index.createDoomChildSessionService(async (request, signal) => {
194
+ signal?.throwIfAborted();
195
+ if (request.source.kind === "terminal-pi-fork") throw new Error("Headless child sessions do not support terminal Pi sources.");
196
+ const directRequestOptions = composeDirectHarnessRequestOptions(request, options.mcpTool);
197
+ let sessionPath;
198
+ let sessionId;
199
+ if (request.source.kind === "v4-restore") {
200
+ sessionPath = node_path.default.resolve(request.source.sessionFile);
201
+ if (node_path.default.extname(sessionPath) !== ".sqlite") throw new Error("Server child restore requires SQLite; import JSONL offline first.");
202
+ } else if (request.source.kind === "v4-fork") sessionPath = await forkChildJournal(request.source.sessionFile, request.source.branch, request.source.entryId, ownership);
203
+ else sessionId = (0, node_crypto.randomUUID)();
204
+ const requestedModel = parseChildModelReference(request.model);
205
+ const model = requestedModel?.model ?? options.defaultModel?.();
206
+ const thinking = request.thinking ?? requestedModel?.thinking;
207
+ const providers = resolveChildProviders(options.providers);
208
+ const runtimeOptions = {
209
+ storage: "sqlite",
210
+ ...request.source.kind === "v4-fork" ? { lane: request.source.branch } : {},
211
+ cwd: request.cwd || options.cwd,
212
+ ...sessionId === void 0 ? {} : { sessionId },
213
+ parentSessionId: request.parentSessionId || options.parentSessionId,
214
+ ...sessionPath === void 0 ? {} : { sessionPath },
215
+ ...options.sessionsRoot === void 0 ? {} : { sessionsRoot: options.sessionsRoot },
216
+ ...options.models === void 0 ? {} : { models: options.models },
217
+ ...providers === void 0 ? {} : { providers },
218
+ ...model === void 0 ? {} : { model },
219
+ ...thinking === void 0 ? {} : { thinkingLevel: thinking },
220
+ ...directRequestOptions,
221
+ historyOwnership: ownership
222
+ };
223
+ let runtime;
224
+ try {
225
+ runtime = await runtimeFactory(runtimeOptions);
226
+ await installIntercom(runtime, request.intercom, runtimeOptions.tools ?? []);
227
+ const file = sessionFile(runtime);
228
+ return childRuntime(runtime, request.intercom, file ? require_nativeChildRuntimes.registerNativeChild(file, runtime) : void 0);
229
+ } catch (error) {
230
+ let failure = error;
231
+ try {
232
+ await runtime?.dispose();
233
+ } catch (cleanupError) {
234
+ failure = new AggregateError([error, cleanupError], "Headless child startup cleanup failed");
235
+ } finally {
236
+ request.intercom?.dispose?.();
237
+ if (sessionPath !== void 0 && request.source.kind === "v4-fork") for (const suffix of [
238
+ "",
239
+ "-wal",
240
+ "-shm"
241
+ ]) node_fs.default.rmSync(sessionPath + suffix, { force: true });
242
+ }
243
+ throw failure;
244
+ }
245
+ }, { now: options.now ?? Date.now });
246
+ }
247
+ function createHeadlessChildSessionServiceProvider(options) {
248
+ const service = createHeadlessChildSessionService(options);
249
+ return {
250
+ get: () => service,
251
+ close: () => service.close()
252
+ };
253
+ }
254
+ //#endregion
255
+ exports.composeDirectHarnessRequestOptions = composeDirectHarnessRequestOptions;
256
+ exports.createHeadlessChildSessionService = createHeadlessChildSessionService;
257
+ exports.createHeadlessChildSessionServiceProvider = createHeadlessChildSessionServiceProvider;
258
+ exports.parseChildModelReference = parseChildModelReference;
259
+ exports.resolveChildProviders = resolveChildProviders;
260
+
261
+ //# sourceMappingURL=headlessChildSessionService.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headlessChildSessionService.cjs","names":["readNativeChildTranscript","promptForAssistantText","createReadTool","createBashTool","createEditTool","createWriteTool","createGrepTool","createFindTool","createLsTool","prompt","path","SqliteSessionRepo","createNodeSqliteFactory","BACKGROUND_CONTEXT","randomUUID","createDirectHarnessRuntime","createHistoryOwnership","createDoomChildSessionService","registerNativeChild"],"sources":["../../../../../src/systems/child/adapters/headlessChildSessionService.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\nimport fs from 'node:fs';\nimport path from 'node:path';\n\nimport { BACKGROUND_CONTEXT } from '@earendil-works/pi-agent-core/harness/context';\nimport type { Models, MutableModels, Provider } from '@earendil-works/pi-ai';\nimport {\n createBashTool,\n createEditTool,\n createFindTool,\n createGrepTool,\n createLsTool,\n createReadTool,\n createWriteTool,\n} from '@earendil-works/pi-coding-agent';\nimport { SqliteSessionRepo, createNodeSqliteFactory } from '@earendil-works/pi-session-backend-sqlite-node';\n\nimport {\n createDoomChildSessionService,\n type DoomChildSessionIntercom,\n type DoomChildSessionRequest,\n type DoomChildSessionRuntime,\n type DoomChildSessionService,\n type DoomChildSessionServiceProvider,\n type DoomChildSessionTool,\n} from '../../../exports/childSession';\nimport {\n createDirectHarnessRuntime,\n promptForAssistantText,\n type DirectHarnessRuntime,\n type DirectHarnessRuntimeOptions,\n} from '../../../server/directHarnessRuntime';\nimport { readNativeChildTranscript } from '../../../server/nativeChildTranscriptReader';\nimport type { HistoryOwnership } from '../../../services/historyImport';\nimport { createHistoryOwnership } from '../../../services/historyOwnership';\nimport type { DirectHarnessModel } from '../../../types/server/directHarnessRuntime';\nimport { registerNativeChild } from './nativeChildRuntimes';\n\nexport interface HeadlessChildSessionServiceOptions {\n readonly parentSessionId: string;\n readonly cwd: string;\n readonly sessionsRoot?: string;\n readonly models?: Models | MutableModels;\n /**\n * Providers to merge into the model registry for every child spawn. A thunk\n * is resolved per spawn so providers registered after this service was built,\n * such as Pi extension providers, are still visible to the child.\n */\n readonly providers?: readonly Provider[] | (() => readonly Provider[]);\n readonly defaultModel?: () => DirectHarnessModel | undefined;\n /** Resolve the current session's MCP dispatcher at spawn and invocation time. */\n readonly mcpTool?: () => DoomChildSessionTool | undefined;\n readonly historyOwnership?: HistoryOwnership;\n readonly now?: () => number;\n readonly runtimeFactory?: (options: DirectHarnessRuntimeOptions) => Promise<DirectHarnessRuntime>;\n}\n\nexport interface HeadlessChildSessionServiceProvider extends DoomChildSessionServiceProvider {\n close(): Promise<void>;\n}\n\nconst THINKING_SUFFIX_PATTERN = /:(off|minimal|low|medium|high|xhigh|max)$/;\n\nexport interface ParsedChildModel {\n readonly model: DirectHarnessModel;\n readonly thinking?: string;\n}\n\n/**\n * Child model specs may carry a Pi thinking suffix, for example\n * `anthropic-vertex/claude-sonnet-5:medium`. The suffix is a request option and\n * never part of the model id, so it has to be split off before model lookup.\n */\nexport function parseChildModelReference(value: string | undefined): ParsedChildModel | undefined {\n if (value === undefined) return undefined;\n const suffix = THINKING_SUFFIX_PATTERN.exec(value);\n const reference = suffix === null ? value : value.slice(0, value.length - suffix[0].length);\n const separator = reference.indexOf('/');\n if (separator <= 0 || separator === reference.length - 1)\n throw new Error(`Child model must use the provider/model form: ${value}`);\n return {\n model: { provider: reference.slice(0, separator), id: reference.slice(separator + 1) },\n ...(suffix === null ? {} : { thinking: suffix[1] as string }),\n };\n}\n\n/** Resolve the provider set for one spawn, tolerating both a fixed array and a thunk. */\nexport function resolveChildProviders(\n providers: readonly Provider[] | (() => readonly Provider[]) | undefined,\n): readonly Provider[] | undefined {\n const resolved = typeof providers === 'function' ? providers() : providers;\n return resolved === undefined || resolved.length === 0 ? undefined : resolved;\n}\n\nfunction sessionFile(runtime: DirectHarnessRuntime): string | undefined {\n const metadata = runtime.session.metadata as unknown as { path?: unknown };\n return typeof metadata.path === 'string' ? metadata.path : undefined;\n}\n\nfunction childRuntime(\n runtime: DirectHarnessRuntime,\n intercom?: DoomChildSessionIntercom,\n release?: () => void,\n): DoomChildSessionRuntime {\n const file = sessionFile(runtime);\n return {\n sessionId: runtime.sessionId,\n ...(file === undefined ? {} : { sessionFile: file }),\n ...(file === undefined\n ? {}\n : { readTranscriptPage: (request, signal) => readNativeChildTranscript(file, request, signal) }),\n prompt: (task) => promptForAssistantText(runtime, task),\n steer: (message) => runtime.steer(message),\n followUp: (message) => runtime.followUp(message),\n onUsage(listener) {\n return runtime.onEvent((event) => {\n if (event.type !== 'usage') return;\n listener({ rowId: event.row.id, cost: event.row.usage.cost.total });\n });\n },\n abort: () => runtime.abort(),\n dispose: async () => {\n try {\n await runtime.dispose();\n } finally {\n release?.();\n intercom?.dispose?.();\n }\n },\n };\n}\n\ntype DirectHarnessTool = Parameters<DirectHarnessRuntime['replaceTools']>[0][number];\n\nasync function installIntercom(\n runtime: DirectHarnessRuntime,\n intercom: DoomChildSessionIntercom | undefined,\n tools: DirectHarnessTool[],\n): Promise<void> {\n if (!intercom) return;\n const tool = intercom.bindRuntime(childRuntime(runtime));\n const adapted = {\n ...tool,\n parameters: tool.parameters as never,\n execute: (operationId: string, params: unknown, signal: AbortSignal, onUpdate: unknown) =>\n tool.execute(operationId, params, signal, onUpdate as never),\n } as unknown as DirectHarnessTool;\n await runtime.replaceTools([...tools, adapted]);\n}\n\nfunction hasConfiguredValues(value: readonly string[] | undefined): boolean {\n return value !== undefined && value.length > 0;\n}\n\nconst NATIVE_TOOL_FACTORIES = {\n read: createReadTool,\n bash: createBashTool,\n edit: createEditTool,\n write: createWriteTool,\n grep: createGrepTool,\n find: createFindTool,\n ls: createLsTool,\n} as const;\n\ntype NativeCodingTool = ReturnType<(typeof NATIVE_TOOL_FACTORIES)[keyof typeof NATIVE_TOOL_FACTORIES]>;\n\nfunction adaptNativeTool(tool: NativeCodingTool | DoomChildSessionTool): DirectHarnessTool {\n const prompt = tool as (NativeCodingTool | DoomChildSessionTool) & {\n promptSnippet?: string;\n promptGuidelines?: string[];\n };\n return {\n ...prompt,\n label: 'label' in tool ? tool.label : tool.name,\n parameters: tool.parameters as never,\n async execute(toolCallId, parameters, onUpdate, _toolContext, _invocation, context) {\n const execute = tool.execute as (\n id: string,\n params: unknown,\n signal: AbortSignal,\n update: (result: { content: unknown; details?: unknown }) => void,\n ) => Promise<{ content: unknown; details?: unknown; isError?: boolean }>;\n const result = await execute(\n toolCallId,\n parameters,\n context.abortSignal ?? new AbortController().signal,\n (partial) => onUpdate({ content: partial.content as never, details: partial.details }),\n );\n if (result.isError) {\n const content = result.content as DoomChildSessionToolResultContent;\n throw new Error(\n content\n .filter((part) => part.type === 'text')\n .map((part) => part.text)\n .join('\\n') || 'MCP tool failed.',\n );\n }\n return { content: result.content as never, details: result.details };\n },\n };\n}\n\ntype DoomChildSessionToolResultContent = Awaited<ReturnType<DoomChildSessionTool['execute']>>['content'];\n\n/** Validate and project native fields before a source fork can publish a child journal. */\nexport function composeDirectHarnessRequestOptions(\n request: DoomChildSessionRequest,\n resolveMcpTool?: () => DoomChildSessionTool | undefined,\n): Pick<DirectHarnessRuntimeOptions, 'systemPrompt' | 'tools' | 'activeToolNames'> {\n const unsupported = [\n ...(hasConfiguredValues(request.extensions) ? ['extensions'] : []),\n ...(hasConfiguredValues(request.subagentOnlyExtensions) ? ['subagentOnlyExtensions'] : []),\n ...(hasConfiguredValues(request.mcpDirectTools) ? ['mcpDirectTools'] : []),\n ...(hasConfiguredValues(request.capabilityCeiling?.allowedExternalProfiles) ? ['allowedExternalProfiles'] : []),\n ];\n if (unsupported.length > 0) {\n throw new Error(\n `Native child session configuration is unsupported by the direct harness: ${unsupported.join(', ')}`,\n );\n }\n\n const requested = [...new Set(request.tools ?? Object.keys(NATIVE_TOOL_FACTORIES))];\n const excluded = new Set(request.excludeTools ?? []);\n const allowed = request.capabilityCeiling?.allowedTools;\n const isMcp = (name: string) => name === 'mcp' || name === 'mcp_use';\n const mcpDenied = request.capabilityCeiling?.allowMcpTools === false || [...excluded].some(isMcp);\n const names = requested.filter(\n (name) => !excluded.has(name) && (allowed === undefined || allowed.includes(name)) && !(isMcp(name) && mcpDenied),\n );\n const unknown = names.filter((name) => !Object.hasOwn(NATIVE_TOOL_FACTORIES, name) && !isMcp(name));\n if (unknown.length > 0)\n throw new Error(`Native child session requested unknown direct harness tools: ${unknown.join(', ')}`);\n const required = request.capabilityCeiling?.requiredTools ?? [];\n const missing = required.filter((name) => !names.includes(name));\n if (missing.length > 0)\n throw new Error(`Native child session capability ceiling requires unavailable tools: ${missing.join(', ')}`);\n const mcpTool = names.some(isMcp) ? resolveMcpTool?.() : undefined;\n if (names.some(isMcp) && !mcpTool)\n throw new Error('Native child session MCP tools are unavailable. Enable MCP in the parent session.');\n const tools = names.map((name) => {\n if (!isMcp(name))\n return adaptNativeTool(\n NATIVE_TOOL_FACTORIES[name as keyof typeof NATIVE_TOOL_FACTORIES](request.cwd) as NativeCodingTool,\n );\n return adaptNativeTool({\n ...mcpTool!,\n name,\n execute(toolCallId, parameters, signal, onUpdate) {\n signal?.throwIfAborted();\n if (resolveMcpTool?.() !== mcpTool)\n throw new Error('The parent session MCP dispatcher is no longer available.');\n return mcpTool!.execute(toolCallId, parameters, signal, onUpdate);\n },\n } satisfies DoomChildSessionTool);\n });\n return {\n tools,\n activeToolNames: names,\n ...(request.systemPrompt === undefined ? {} : { systemPrompt: request.systemPrompt }),\n };\n}\n\nasync function forkChildJournal(\n sourcePath: string,\n branch: string,\n entryId: string | undefined,\n ownership: HistoryOwnership,\n): Promise<string> {\n const directory = path.dirname(path.resolve(sourcePath));\n const sourceRepository = new SqliteSessionRepo({\n directory,\n databasePath: sourcePath,\n databaseFactory: createNodeSqliteFactory(),\n });\n const sources = await sourceRepository.list(undefined, BACKGROUND_CONTEXT);\n await sourceRepository.close(BACKGROUND_CONTEXT);\n if (sources.length !== 1)\n throw new Error('Child source must be an existing SQLite session; import JSONL offline first.');\n const id = randomUUID();\n const destination = path.join(directory, `${id}.sqlite`);\n const lease = await ownership.acquire(destination);\n const repository = new SqliteSessionRepo({ directory, databaseFactory: createNodeSqliteFactory() });\n try {\n await lease.assertQuiescent();\n const fork = await repository.fork(\n sources[0]!,\n {\n scope: 'branch',\n branch,\n id,\n ...(entryId === undefined ? {} : { entryId }),\n },\n BACKGROUND_CONTEXT,\n );\n await fork.close(BACKGROUND_CONTEXT);\n return destination;\n } finally {\n try {\n await repository.close(BACKGROUND_CONTEXT);\n } finally {\n await lease.release();\n }\n }\n}\n\nexport function createHeadlessChildSessionService(\n options: HeadlessChildSessionServiceOptions,\n): DoomChildSessionService {\n const runtimeFactory = options.runtimeFactory ?? createDirectHarnessRuntime;\n const ownership = options.historyOwnership ?? createHistoryOwnership({ sourceFormat: 'sqlite' });\n\n return createDoomChildSessionService(\n async (request: DoomChildSessionRequest, signal): Promise<DoomChildSessionRuntime> => {\n signal?.throwIfAborted();\n if (request.source.kind === 'terminal-pi-fork')\n throw new Error('Headless child sessions do not support terminal Pi sources.');\n const directRequestOptions = composeDirectHarnessRequestOptions(request, options.mcpTool);\n\n let sessionPath: string | undefined;\n let sessionId: string | undefined;\n if (request.source.kind === 'v4-restore') {\n sessionPath = path.resolve(request.source.sessionFile);\n if (path.extname(sessionPath) !== '.sqlite')\n throw new Error('Server child restore requires SQLite; import JSONL offline first.');\n } else if (request.source.kind === 'v4-fork') {\n sessionPath = await forkChildJournal(\n request.source.sessionFile,\n request.source.branch,\n request.source.entryId,\n ownership,\n );\n } else {\n sessionId = randomUUID();\n }\n\n const requestedModel = parseChildModelReference(request.model);\n const model = requestedModel?.model ?? options.defaultModel?.();\n const thinking = request.thinking ?? requestedModel?.thinking;\n const providers = resolveChildProviders(options.providers);\n const runtimeOptions: DirectHarnessRuntimeOptions = {\n storage: 'sqlite',\n ...(request.source.kind === 'v4-fork' ? { lane: request.source.branch } : {}),\n cwd: request.cwd || options.cwd,\n ...(sessionId === undefined ? {} : { sessionId }),\n parentSessionId: request.parentSessionId || options.parentSessionId,\n ...(sessionPath === undefined ? {} : { sessionPath }),\n ...(options.sessionsRoot === undefined ? {} : { sessionsRoot: options.sessionsRoot }),\n ...(options.models === undefined ? {} : { models: options.models }),\n ...(providers === undefined ? {} : { providers }),\n ...(model === undefined ? {} : { model }),\n ...(thinking === undefined ? {} : { thinkingLevel: thinking as never }),\n ...directRequestOptions,\n historyOwnership: ownership,\n };\n\n let runtime: DirectHarnessRuntime | undefined;\n try {\n runtime = await runtimeFactory(runtimeOptions);\n await installIntercom(runtime, request.intercom, (runtimeOptions.tools ?? []) as DirectHarnessTool[]);\n const file = sessionFile(runtime);\n return childRuntime(runtime, request.intercom, file ? registerNativeChild(file, runtime) : undefined);\n } catch (error) {\n let failure: unknown = error;\n try {\n await runtime?.dispose();\n } catch (cleanupError) {\n failure = new AggregateError([error, cleanupError], 'Headless child startup cleanup failed');\n } finally {\n request.intercom?.dispose?.();\n if (sessionPath !== undefined && request.source.kind === 'v4-fork')\n for (const suffix of ['', '-wal', '-shm']) fs.rmSync(sessionPath + suffix, { force: true });\n }\n throw failure;\n }\n },\n { now: options.now ?? Date.now },\n );\n}\n\nexport function createHeadlessChildSessionServiceProvider(\n options: HeadlessChildSessionServiceOptions,\n): HeadlessChildSessionServiceProvider {\n const service = createHeadlessChildSessionService(options);\n return {\n get: () => service,\n close: () => service.close(),\n };\n}\n\nexport type { DirectHarnessRuntime, DirectHarnessRuntimeOptions } from '../../../server/directHarnessRuntime';\nexport type { DirectHarnessModel } from '../../../types/server/directHarnessRuntime';\n"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { DoomChildSessionService, DoomChildSessionServiceProvider, DoomChildSessionTool } from "../types/childSession.mjs";
2
+ import "../../../../childSession.mjs";
3
+ import { HistoryOwnership } from "../../../../historyImport.mjs";
4
+ import { DirectHarnessModel, DirectHarnessRuntime, DirectHarnessRuntimeOptions } from "../../../types/server/directHarnessRuntime.mjs";
5
+ import "../../../server/directHarnessRuntime.mjs";
6
+ import { Models, MutableModels, Provider } from "@earendil-works/pi-ai";
7
+ //#region src/systems/child/adapters/headlessChildSessionService.d.ts
8
+ export interface HeadlessChildSessionServiceOptions {
9
+ readonly parentSessionId: string;
10
+ readonly cwd: string;
11
+ readonly sessionsRoot?: string;
12
+ readonly models?: Models | MutableModels;
13
+ /**
14
+ * Providers to merge into the model registry for every child spawn. A thunk
15
+ * is resolved per spawn so providers registered after this service was built,
16
+ * such as Pi extension providers, are still visible to the child.
17
+ */
18
+ readonly providers?: readonly Provider[] | (() => readonly Provider[]);
19
+ readonly defaultModel?: () => DirectHarnessModel | undefined;
20
+ /** Resolve the current session's MCP dispatcher at spawn and invocation time. */
21
+ readonly mcpTool?: () => DoomChildSessionTool | undefined;
22
+ readonly historyOwnership?: HistoryOwnership;
23
+ readonly now?: () => number;
24
+ readonly runtimeFactory?: (options: DirectHarnessRuntimeOptions) => Promise<DirectHarnessRuntime>;
25
+ }
26
+ export interface HeadlessChildSessionServiceProvider extends DoomChildSessionServiceProvider {
27
+ close(): Promise<void>;
28
+ }
29
+ export declare function createHeadlessChildSessionService(options: HeadlessChildSessionServiceOptions): DoomChildSessionService;
30
+ export declare function createHeadlessChildSessionServiceProvider(options: HeadlessChildSessionServiceOptions): HeadlessChildSessionServiceProvider;
31
+ //#endregion
32
+ //# sourceMappingURL=headlessChildSessionService.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headlessChildSessionService.d.mts","names":[],"sources":["../../../../../src/systems/child/adapters/headlessChildSessionService.ts"],"mappings":";;;;;;;iBAsCiB;WACN;WACA;WACA;WACA,SAAS,SAAS;;;;;;WAMlB,qBAAqB,6BAA6B;WAClD,qBAAqB;;WAErB,gBAAgB;WAChB,mBAAmB;WACnB;WACA,kBAAkB,SAAS,gCAAgC,QAAQ;;iBAG7D,4CAA4C;EAC3D,SAAS;;wBAuPK,kCACd,SAAS,qCACR;wBAwEa,0CACd,SAAS,qCACR"}