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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1149) hide show
  1. package/LICENSE +149 -21
  2. package/NOTICE +41 -0
  3. package/dist/agentModel.cjs +1 -1
  4. package/dist/agentModel.d.mts +2 -2
  5. package/dist/agentModel.mjs +1 -2
  6. package/dist/apiContracts.cjs +623 -802
  7. package/dist/apiContracts.cjs.map +1 -1
  8. package/dist/apiContracts.d.mts +277 -615
  9. package/dist/apiContracts.d.mts.map +1 -1
  10. package/dist/apiContracts.mjs +617 -794
  11. package/dist/apiContracts.mjs.map +1 -1
  12. package/dist/askUser.cjs +2 -2
  13. package/dist/askUser.d.mts +2 -2
  14. package/dist/askUser.mjs +1 -2
  15. package/dist/authorTools.mjs +1 -2
  16. package/dist/backgroundWork.cjs +3 -3
  17. package/dist/backgroundWork.d.mts +2 -2
  18. package/dist/backgroundWork.mjs +1 -2
  19. package/dist/bundleAssetPolicy.mjs +1 -2
  20. package/dist/chatgptAuth.cjs +3 -2
  21. package/dist/chatgptAuth.d.mts +3 -2
  22. package/dist/chatgptAuth.mjs +2 -1
  23. package/dist/childProcess.cjs +1 -1
  24. package/dist/childProcess.d.mts +2 -2
  25. package/dist/childProcess.mjs +1 -2
  26. package/dist/childSession.cjs +11 -6
  27. package/dist/childSession.d.mts +3 -3
  28. package/dist/childSession.mjs +3 -3
  29. package/dist/cockpitContainer.mjs +1 -2
  30. package/dist/config.cjs +1 -1
  31. package/dist/config.d.mts +3 -3
  32. package/dist/config.mjs +1 -2
  33. package/dist/contextApi.cjs +1 -0
  34. package/dist/contextApi.d.mts +2 -2
  35. package/dist/contextApi.mjs +2 -2
  36. package/dist/contextContributions.cjs +4 -4
  37. package/dist/contextContributions.d.mts +3 -3
  38. package/dist/contextContributions.mjs +3 -3
  39. package/dist/contextDetailStore.cjs +7 -5
  40. package/dist/contextDetailStore.cjs.map +1 -1
  41. package/dist/contextDetailStore.d.mts +2 -1
  42. package/dist/contextDetailStore.d.mts.map +1 -1
  43. package/dist/contextDetailStore.mjs +6 -4
  44. package/dist/contextDetailStore.mjs.map +1 -1
  45. package/dist/contextProjection.cjs +7 -2
  46. package/dist/contextProjection.cjs.map +1 -1
  47. package/dist/contextProjection.d.mts +4 -1
  48. package/dist/contextProjection.d.mts.map +1 -1
  49. package/dist/contextProjection.mjs +5 -2
  50. package/dist/contextProjection.mjs.map +1 -1
  51. package/dist/cordisHost.cjs +11 -11
  52. package/dist/cordisHost.d.mts +2 -2
  53. package/dist/cordisHost.mjs +1 -2
  54. package/dist/delegation.cjs +8 -8
  55. package/dist/delegation.d.mts +2 -2
  56. package/dist/delegation.mjs +1 -2
  57. package/dist/executionBudget.cjs +4 -3
  58. package/dist/executionBudget.cjs.map +1 -1
  59. package/dist/executionBudget.d.mts +2 -2
  60. package/dist/executionBudget.d.mts.map +1 -1
  61. package/dist/executionBudget.mjs +4 -3
  62. package/dist/executionBudget.mjs.map +1 -1
  63. package/dist/extensionFile.cjs +5 -0
  64. package/dist/extensionFile.d.mts +4 -2
  65. package/dist/extensionFile.mjs +4 -2
  66. package/dist/footer.d.mts +2 -2
  67. package/dist/footer.mjs +1 -2
  68. package/dist/headless.cjs +14 -14
  69. package/dist/headless.d.mts +2 -2
  70. package/dist/headless.mjs +1 -2
  71. package/dist/headlessHub.cjs +308 -109
  72. package/dist/headlessHub.cjs.map +1 -1
  73. package/dist/headlessHub.d.mts +71 -36
  74. package/dist/headlessHub.d.mts.map +1 -1
  75. package/dist/headlessHub.mjs +309 -110
  76. package/dist/headlessHub.mjs.map +1 -1
  77. package/dist/headlessProtocol.cjs +327 -0
  78. package/dist/headlessProtocol.cjs.map +1 -0
  79. package/dist/headlessProtocol.d.mts +30 -0
  80. package/dist/headlessProtocol.d.mts.map +1 -0
  81. package/dist/headlessProtocol.mjs +326 -0
  82. package/dist/headlessProtocol.mjs.map +1 -0
  83. package/dist/headlessServer.cjs +166 -151
  84. package/dist/headlessServer.cjs.map +1 -1
  85. package/dist/headlessServer.d.mts +13 -5
  86. package/dist/headlessServer.d.mts.map +1 -1
  87. package/dist/headlessServer.mjs +166 -151
  88. package/dist/headlessServer.mjs.map +1 -1
  89. package/dist/headlessSessionHost.d.mts +58 -21
  90. package/dist/headlessSessionHost.d.mts.map +1 -1
  91. package/dist/help.cjs +20 -20
  92. package/dist/help.d.mts +2 -2
  93. package/dist/help.mjs +2 -2
  94. package/dist/history.cjs +16 -20
  95. package/dist/history.d.mts +9 -7
  96. package/dist/history.mjs +6 -7
  97. package/dist/historyOwnership.cjs.map +1 -1
  98. package/dist/historyOwnership.d.mts +1 -1
  99. package/dist/historyOwnership.mjs.map +1 -1
  100. package/dist/hubChannel.cjs +9 -0
  101. package/dist/hubChannel.d.mts +3 -2
  102. package/dist/hubChannel.mjs +3 -2
  103. package/dist/index.cjs +26 -28
  104. package/dist/index.d.mts +6 -6
  105. package/dist/index.mjs +6 -6
  106. package/dist/interop/chord.mjs +1 -0
  107. package/dist/interop/chordContext.mjs +1 -0
  108. package/dist/json.cjs +11 -5
  109. package/dist/json.d.mts +4 -2
  110. package/dist/json.mjs +4 -2
  111. package/dist/kernel.cjs +1 -1
  112. package/dist/kernel.d.mts +3 -3
  113. package/dist/kernel.mjs +1 -2
  114. package/dist/leader.d.mts +2 -2
  115. package/dist/leader.mjs +1 -2
  116. package/dist/logSinkTelemetry.mjs +1 -2
  117. package/dist/machineApi.cjs +80 -74
  118. package/dist/machineApi.cjs.map +1 -1
  119. package/dist/machineApi.d.mts +5 -2
  120. package/dist/machineApi.d.mts.map +1 -1
  121. package/dist/machineApi.mjs +78 -71
  122. package/dist/machineApi.mjs.map +1 -1
  123. package/dist/main.cjs +2 -1
  124. package/dist/main.d.mts +2 -1
  125. package/dist/main.mjs +2 -1
  126. package/dist/mcpFacet.d.mts +3 -3
  127. package/dist/mcpProjection.cjs +13 -13
  128. package/dist/mcpProjection.d.mts +2 -2
  129. package/dist/mcpProjection.mjs +1 -2
  130. package/dist/mcpSchemaCost.cjs +4 -4
  131. package/dist/mcpSchemaCost.cjs.map +1 -1
  132. package/dist/mcpSchemaCost.d.mts +2 -2
  133. package/dist/mcpSchemaCost.mjs +4 -4
  134. package/dist/mcpSchemaCost.mjs.map +1 -1
  135. package/dist/mcpSession.cjs +7 -7
  136. package/dist/mcpSession.d.mts +2 -2
  137. package/dist/mcpSession.mjs +1 -2
  138. package/dist/mcpStatus.cjs +2 -2
  139. package/dist/mcpStatus.d.mts +2 -2
  140. package/dist/mcpStatus.mjs +1 -2
  141. package/dist/mcpToolResolver.cjs +3 -3
  142. package/dist/mcpToolResolver.d.mts +2 -2
  143. package/dist/mcpToolResolver.mjs +1 -2
  144. package/dist/mcpWidget.d.mts +2 -2
  145. package/dist/moduleResolution.cjs +43 -8
  146. package/dist/moduleResolution.cjs.map +1 -1
  147. package/dist/moduleResolution.d.mts +10 -1
  148. package/dist/moduleResolution.d.mts.map +1 -1
  149. package/dist/moduleResolution.mjs +40 -7
  150. package/dist/moduleResolution.mjs.map +1 -1
  151. package/dist/narration.cjs +3 -3
  152. package/dist/narration.d.mts +2 -2
  153. package/dist/narration.mjs +1 -2
  154. package/dist/native.cjs +9 -0
  155. package/dist/native.d.mts +4 -3
  156. package/dist/native.mjs +3 -2
  157. package/dist/nodePlatform.cjs +77 -0
  158. package/dist/nodePlatform.cjs.map +1 -0
  159. package/dist/nodePlatform.d.mts +17 -0
  160. package/dist/nodePlatform.d.mts.map +1 -0
  161. package/dist/nodePlatform.mjs +72 -0
  162. package/dist/nodePlatform.mjs.map +1 -0
  163. package/dist/notification.cjs +15 -15
  164. package/dist/notification.d.mts +2 -2
  165. package/dist/notification.mjs +1 -2
  166. package/dist/packageApi.cjs +11 -11
  167. package/dist/packageApi.d.mts +2 -2
  168. package/dist/packageApi.mjs +2 -2
  169. package/dist/packageApiServer.cjs +45 -27
  170. package/dist/packageApiServer.cjs.map +1 -1
  171. package/dist/packageApiServer.d.mts +36 -26
  172. package/dist/packageApiServer.d.mts.map +1 -1
  173. package/dist/packageApiServer.mjs +44 -26
  174. package/dist/packageApiServer.mjs.map +1 -1
  175. package/dist/piSettings.cjs +41 -20
  176. package/dist/piSettings.d.mts +4 -2
  177. package/dist/piSettings.mjs +4 -2
  178. package/dist/platform.cjs +62 -0
  179. package/dist/platform.d.mts +10 -0
  180. package/dist/platform.mjs +10 -0
  181. package/dist/pluginProtocol.cjs +7 -8
  182. package/dist/pluginProtocol.d.mts +2 -2
  183. package/dist/pluginProtocol.mjs +1 -2
  184. package/dist/poPackage.cjs +12 -0
  185. package/dist/poPackage.d.mts +3 -0
  186. package/dist/poPackage.mjs +3 -0
  187. package/dist/profileIdentity.cjs +1 -1
  188. package/dist/profileIdentity.d.mts +2 -2
  189. package/dist/profileIdentity.mjs +1 -2
  190. package/dist/protocol.cjs +3 -3
  191. package/dist/protocol.d.mts +2 -2
  192. package/dist/protocol.mjs +1 -2
  193. package/dist/readiness.cjs +6 -6
  194. package/dist/readiness.d.mts +2 -2
  195. package/dist/readiness.mjs +1 -2
  196. package/dist/remoteApi.cjs.map +1 -1
  197. package/dist/remoteApi.d.mts +2 -2
  198. package/dist/remoteApi.mjs.map +1 -1
  199. package/dist/remoteRuntime.cjs +42 -65
  200. package/dist/remoteRuntime.cjs.map +1 -1
  201. package/dist/remoteRuntime.d.mts +3 -2
  202. package/dist/remoteRuntime.d.mts.map +1 -1
  203. package/dist/remoteRuntime.mjs +41 -62
  204. package/dist/remoteRuntime.mjs.map +1 -1
  205. package/dist/runtimeConfig.cjs +4 -4
  206. package/dist/runtimeConfig.cjs.map +1 -1
  207. package/dist/runtimeConfig.d.mts +10 -9
  208. package/dist/runtimeConfig.d.mts.map +1 -1
  209. package/dist/runtimeConfig.mjs +4 -4
  210. package/dist/runtimeConfig.mjs.map +1 -1
  211. package/dist/runtimeContextApi.cjs +10 -3
  212. package/dist/runtimeContextApi.cjs.map +1 -1
  213. package/dist/runtimeContextApi.d.mts +3 -3
  214. package/dist/runtimeContextApi.d.mts.map +1 -1
  215. package/dist/runtimeContextApi.mjs +10 -3
  216. package/dist/runtimeContextApi.mjs.map +1 -1
  217. package/dist/runtimeCordisHost.cjs +46 -46
  218. package/dist/runtimeCordisHost.cjs.map +1 -1
  219. package/dist/runtimeCordisHost.d.mts +29 -28
  220. package/dist/runtimeCordisHost.d.mts.map +1 -1
  221. package/dist/runtimeCordisHost.mjs +42 -42
  222. package/dist/runtimeCordisHost.mjs.map +1 -1
  223. package/dist/runtimeIdentity.cjs +6 -9
  224. package/dist/runtimeIdentity.cjs.map +1 -1
  225. package/dist/runtimeIdentity.d.mts +5 -1
  226. package/dist/runtimeIdentity.d.mts.map +1 -1
  227. package/dist/runtimeIdentity.mjs +5 -8
  228. package/dist/runtimeIdentity.mjs.map +1 -1
  229. package/dist/runtimeJson.cjs +10 -45
  230. package/dist/runtimeJson.d.mts +3 -22
  231. package/dist/runtimeJson.mjs +3 -39
  232. package/dist/runtimeLogSinkTelemetry.cjs +19 -19
  233. package/dist/runtimeLogSinkTelemetry.cjs.map +1 -1
  234. package/dist/runtimeLogSinkTelemetry.d.mts +19 -19
  235. package/dist/runtimeLogSinkTelemetry.mjs +19 -19
  236. package/dist/runtimeLogSinkTelemetry.mjs.map +1 -1
  237. package/dist/runtimePackages.cjs +7 -2
  238. package/dist/runtimePackages.cjs.map +1 -1
  239. package/dist/runtimePackages.d.mts +4 -1
  240. package/dist/runtimePackages.d.mts.map +1 -1
  241. package/dist/runtimePackages.mjs +7 -2
  242. package/dist/runtimePackages.mjs.map +1 -1
  243. package/dist/runtimePiSettings.cjs +40 -263
  244. package/dist/runtimePiSettings.d.mts +3 -72
  245. package/dist/runtimePiSettings.mjs +3 -241
  246. package/dist/runtimeProtocol.cjs +19 -19
  247. package/dist/runtimeProtocol.cjs.map +1 -1
  248. package/dist/runtimeProtocol.d.mts +7 -7
  249. package/dist/runtimeProtocol.d.mts.map +1 -1
  250. package/dist/runtimeProtocol.mjs +17 -17
  251. package/dist/runtimeProtocol.mjs.map +1 -1
  252. package/dist/runtimeTransition.cjs +9 -9
  253. package/dist/runtimeTransition.cjs.map +1 -1
  254. package/dist/runtimeTransition.d.mts +10 -10
  255. package/dist/runtimeTransition.d.mts.map +1 -1
  256. package/dist/runtimeTransition.mjs +7 -7
  257. package/dist/runtimeTransition.mjs.map +1 -1
  258. package/dist/sandboxHarness.mjs +1 -2
  259. package/dist/server.cjs +3 -7
  260. package/dist/server.d.mts +6 -6
  261. package/dist/server.mjs +3 -4
  262. package/dist/serverPlugin.cjs +39 -0
  263. package/dist/serverPlugin.d.mts +12 -0
  264. package/dist/serverPlugin.mjs +11 -0
  265. package/dist/serverTelemetry.cjs +1 -1
  266. package/dist/serverTelemetry.cjs.map +1 -1
  267. package/dist/serverTelemetry.d.mts +2 -2
  268. package/dist/serverTelemetry.mjs +2 -2
  269. package/dist/serverTelemetry.mjs.map +1 -1
  270. package/dist/sessionFilesApi.cjs +41 -37
  271. package/dist/sessionFilesApi.cjs.map +1 -1
  272. package/dist/sessionFilesApi.d.mts +6 -3
  273. package/dist/sessionFilesApi.d.mts.map +1 -1
  274. package/dist/sessionFilesApi.mjs +41 -36
  275. package/dist/sessionFilesApi.mjs.map +1 -1
  276. package/dist/sessionProtocol.cjs +31 -6
  277. package/dist/sessionProtocol.d.mts +8 -3
  278. package/dist/sessionProtocol.mjs +8 -2
  279. package/dist/skills.cjs +5 -5
  280. package/dist/skills.d.mts +2 -2
  281. package/dist/skills.mjs +1 -2
  282. package/dist/sqliteSessionStorage.cjs +28 -50
  283. package/dist/sqliteSessionStorage.cjs.map +1 -1
  284. package/dist/sqliteSessionStorage.d.mts +13 -20
  285. package/dist/sqliteSessionStorage.d.mts.map +1 -1
  286. package/dist/sqliteSessionStorage.mjs +25 -48
  287. package/dist/sqliteSessionStorage.mjs.map +1 -1
  288. package/dist/src/constants/agentSettled.cjs +7 -0
  289. package/dist/src/constants/agentSettled.cjs.map +1 -0
  290. package/dist/src/constants/agentSettled.mjs +7 -0
  291. package/dist/src/constants/agentSettled.mjs.map +1 -0
  292. package/dist/src/constants/contextApi.cjs +3 -1
  293. package/dist/src/constants/contextApi.cjs.map +1 -1
  294. package/dist/src/constants/contextApi.d.mts +2 -1
  295. package/dist/src/constants/contextApi.d.mts.map +1 -1
  296. package/dist/src/constants/contextApi.mjs +3 -2
  297. package/dist/src/constants/contextApi.mjs.map +1 -1
  298. package/dist/src/constants/voiceTools.cjs +6 -6
  299. package/dist/src/constants/voiceTools.cjs.map +1 -1
  300. package/dist/src/constants/voiceTools.d.mts +3 -3
  301. package/dist/src/constants/voiceTools.mjs +4 -4
  302. package/dist/src/constants/voiceTools.mjs.map +1 -1
  303. package/dist/src/extensions/extensionFile.cjs +22 -5
  304. package/dist/src/extensions/extensionFile.cjs.map +1 -1
  305. package/dist/src/extensions/extensionFile.d.mts +17 -4
  306. package/dist/src/extensions/extensionFile.d.mts.map +1 -1
  307. package/dist/src/extensions/extensionFile.mjs +22 -6
  308. package/dist/src/extensions/extensionFile.mjs.map +1 -1
  309. package/dist/src/extensions/serverPlugin.cjs +231 -92
  310. package/dist/src/extensions/serverPlugin.cjs.map +1 -1
  311. package/dist/src/extensions/serverPlugin.d.mts +2 -2
  312. package/dist/src/extensions/serverPlugin.d.mts.map +1 -1
  313. package/dist/src/extensions/serverPlugin.mjs +232 -93
  314. package/dist/src/extensions/serverPlugin.mjs.map +1 -1
  315. package/dist/src/pi/piSessionRuntime.cjs +349 -142
  316. package/dist/src/pi/piSessionRuntime.cjs.map +1 -1
  317. package/dist/src/pi/piSessionRuntime.d.mts +18 -17
  318. package/dist/src/pi/piSessionRuntime.d.mts.map +1 -1
  319. package/dist/src/pi/piSessionRuntime.mjs +342 -135
  320. package/dist/src/pi/piSessionRuntime.mjs.map +1 -1
  321. package/dist/src/schemas/agentModel.cjs +2 -2
  322. package/dist/src/schemas/agentModel.cjs.map +1 -1
  323. package/dist/src/schemas/agentModel.d.mts +1 -1
  324. package/dist/src/schemas/agentModel.mjs +2 -2
  325. package/dist/src/schemas/agentModel.mjs.map +1 -1
  326. package/dist/src/schemas/apiContracts.d.mts +2 -2
  327. package/dist/src/schemas/apiContracts.d.mts.map +1 -1
  328. package/dist/src/schemas/askUser.cjs +4 -4
  329. package/dist/src/schemas/askUser.cjs.map +1 -1
  330. package/dist/src/schemas/askUser.d.mts +4 -4
  331. package/dist/src/schemas/askUser.d.mts.map +1 -1
  332. package/dist/src/schemas/askUser.mjs +3 -3
  333. package/dist/src/schemas/askUser.mjs.map +1 -1
  334. package/dist/src/schemas/backgroundWork.cjs +10 -10
  335. package/dist/src/schemas/backgroundWork.cjs.map +1 -1
  336. package/dist/src/schemas/backgroundWork.d.mts +9 -9
  337. package/dist/src/schemas/backgroundWork.d.mts.map +1 -1
  338. package/dist/src/schemas/backgroundWork.mjs +8 -8
  339. package/dist/src/schemas/backgroundWork.mjs.map +1 -1
  340. package/dist/src/schemas/childProcess.cjs +5 -5
  341. package/dist/src/schemas/childProcess.cjs.map +1 -1
  342. package/dist/src/schemas/childProcess.d.mts +2 -2
  343. package/dist/src/schemas/childProcess.mjs +5 -5
  344. package/dist/src/schemas/childProcess.mjs.map +1 -1
  345. package/dist/src/schemas/contextContributions.cjs +10 -10
  346. package/dist/src/schemas/contextContributions.cjs.map +1 -1
  347. package/dist/src/schemas/contextContributions.d.mts +16 -16
  348. package/dist/src/schemas/contextContributions.d.mts.map +1 -1
  349. package/dist/src/schemas/contextContributions.mjs +8 -8
  350. package/dist/src/schemas/contextContributions.mjs.map +1 -1
  351. package/dist/src/schemas/delegation.cjs +17 -17
  352. package/dist/src/schemas/delegation.cjs.map +1 -1
  353. package/dist/src/schemas/delegation.d.mts +16 -16
  354. package/dist/src/schemas/delegation.d.mts.map +1 -1
  355. package/dist/src/schemas/delegation.mjs +10 -10
  356. package/dist/src/schemas/delegation.mjs.map +1 -1
  357. package/dist/src/schemas/extensionFile.d.mts +23 -19
  358. package/dist/src/schemas/extensionFile.d.mts.map +1 -1
  359. package/dist/src/schemas/footer.cjs.map +1 -1
  360. package/dist/src/schemas/footer.d.mts +5 -5
  361. package/dist/src/schemas/footer.d.mts.map +1 -1
  362. package/dist/src/schemas/footer.mjs.map +1 -1
  363. package/dist/src/schemas/headless.cjs +37 -37
  364. package/dist/src/schemas/headless.cjs.map +1 -1
  365. package/dist/src/schemas/headless.d.mts +100 -101
  366. package/dist/src/schemas/headless.d.mts.map +1 -1
  367. package/dist/src/schemas/headless.mjs +24 -24
  368. package/dist/src/schemas/headless.mjs.map +1 -1
  369. package/dist/src/schemas/help.cjs +60 -60
  370. package/dist/src/schemas/help.cjs.map +1 -1
  371. package/dist/src/schemas/help.d.mts +43 -43
  372. package/dist/src/schemas/help.d.mts.map +1 -1
  373. package/dist/src/schemas/help.mjs +41 -41
  374. package/dist/src/schemas/help.mjs.map +1 -1
  375. package/dist/src/schemas/home.cjs +127 -0
  376. package/dist/src/schemas/home.cjs.map +1 -0
  377. package/dist/src/schemas/home.d.mts +63 -0
  378. package/dist/src/schemas/home.d.mts.map +1 -0
  379. package/dist/src/schemas/home.mjs +121 -0
  380. package/dist/src/schemas/home.mjs.map +1 -0
  381. package/dist/src/schemas/httpApiContracts.cjs +441 -0
  382. package/dist/src/schemas/httpApiContracts.cjs.map +1 -0
  383. package/dist/src/schemas/httpApiContracts.d.mts +78 -0
  384. package/dist/src/schemas/httpApiContracts.d.mts.map +1 -0
  385. package/dist/src/schemas/httpApiContracts.mjs +434 -0
  386. package/dist/src/schemas/httpApiContracts.mjs.map +1 -0
  387. package/dist/src/schemas/hubChannel.cjs +3 -0
  388. package/dist/src/schemas/hubChannel.cjs.map +1 -1
  389. package/dist/src/schemas/hubChannel.d.mts +84 -60
  390. package/dist/src/schemas/hubChannel.d.mts.map +1 -1
  391. package/dist/src/schemas/hubChannel.mjs +3 -1
  392. package/dist/src/schemas/hubChannel.mjs.map +1 -1
  393. package/dist/src/schemas/leader.cjs.map +1 -1
  394. package/dist/src/schemas/leader.d.mts +3 -3
  395. package/dist/src/schemas/leader.d.mts.map +1 -1
  396. package/dist/src/schemas/leader.mjs.map +1 -1
  397. package/dist/src/schemas/mcpBundle.d.mts +3 -3
  398. package/dist/src/schemas/mcpFacet.cjs.map +1 -1
  399. package/dist/src/schemas/mcpFacet.d.mts +22 -22
  400. package/dist/src/schemas/mcpFacet.d.mts.map +1 -1
  401. package/dist/src/schemas/mcpFacet.mjs.map +1 -1
  402. package/dist/src/schemas/mcpProjection.cjs +41 -41
  403. package/dist/src/schemas/mcpProjection.cjs.map +1 -1
  404. package/dist/src/schemas/mcpProjection.d.mts +31 -30
  405. package/dist/src/schemas/mcpProjection.d.mts.map +1 -1
  406. package/dist/src/schemas/mcpProjection.mjs +29 -29
  407. package/dist/src/schemas/mcpProjection.mjs.map +1 -1
  408. package/dist/src/schemas/mcpSession.cjs +23 -23
  409. package/dist/src/schemas/mcpSession.cjs.map +1 -1
  410. package/dist/src/schemas/mcpSession.d.mts +12 -12
  411. package/dist/src/schemas/mcpSession.d.mts.map +1 -1
  412. package/dist/src/schemas/mcpSession.mjs +18 -18
  413. package/dist/src/schemas/mcpSession.mjs.map +1 -1
  414. package/dist/src/schemas/mcpStatus.cjs +5 -5
  415. package/dist/src/schemas/mcpStatus.cjs.map +1 -1
  416. package/dist/src/schemas/mcpStatus.d.mts +4 -4
  417. package/dist/src/schemas/mcpStatus.d.mts.map +1 -1
  418. package/dist/src/schemas/mcpStatus.mjs +4 -4
  419. package/dist/src/schemas/mcpStatus.mjs.map +1 -1
  420. package/dist/src/schemas/mcpToolResolver.cjs +9 -9
  421. package/dist/src/schemas/mcpToolResolver.cjs.map +1 -1
  422. package/dist/src/schemas/mcpToolResolver.d.mts +7 -7
  423. package/dist/src/schemas/mcpToolResolver.d.mts.map +1 -1
  424. package/dist/src/schemas/mcpToolResolver.mjs +7 -7
  425. package/dist/src/schemas/mcpToolResolver.mjs.map +1 -1
  426. package/dist/src/schemas/narration.cjs +9 -9
  427. package/dist/src/schemas/narration.cjs.map +1 -1
  428. package/dist/src/schemas/narration.d.mts +5 -5
  429. package/dist/src/schemas/narration.d.mts.map +1 -1
  430. package/dist/src/schemas/narration.mjs +7 -7
  431. package/dist/src/schemas/narration.mjs.map +1 -1
  432. package/dist/src/schemas/notification.cjs +45 -45
  433. package/dist/src/schemas/notification.cjs.map +1 -1
  434. package/dist/src/schemas/notification.d.mts +22 -22
  435. package/dist/src/schemas/notification.d.mts.map +1 -1
  436. package/dist/src/schemas/notification.mjs +31 -31
  437. package/dist/src/schemas/notification.mjs.map +1 -1
  438. package/dist/src/schemas/packageApi.cjs +28 -28
  439. package/dist/src/schemas/packageApi.cjs.map +1 -1
  440. package/dist/src/schemas/packageApi.d.mts +91 -65
  441. package/dist/src/schemas/packageApi.d.mts.map +1 -1
  442. package/dist/src/schemas/packageApi.mjs +18 -18
  443. package/dist/src/schemas/packageApi.mjs.map +1 -1
  444. package/dist/src/schemas/platform.cjs +34 -0
  445. package/dist/src/schemas/platform.cjs.map +1 -0
  446. package/dist/src/schemas/platform.d.mts +75 -0
  447. package/dist/src/schemas/platform.d.mts.map +1 -0
  448. package/dist/src/schemas/platform.mjs +27 -0
  449. package/dist/src/schemas/platform.mjs.map +1 -0
  450. package/dist/src/schemas/pluginContributions.cjs.map +1 -1
  451. package/dist/src/schemas/pluginContributions.d.mts +12 -12
  452. package/dist/src/schemas/pluginContributions.d.mts.map +1 -1
  453. package/dist/src/schemas/pluginContributions.mjs.map +1 -1
  454. package/dist/src/schemas/pluginProtocol.cjs +24 -27
  455. package/dist/src/schemas/pluginProtocol.cjs.map +1 -1
  456. package/dist/src/schemas/pluginProtocol.d.mts +21 -21
  457. package/dist/src/schemas/pluginProtocol.d.mts.map +1 -1
  458. package/dist/src/schemas/pluginProtocol.mjs +18 -20
  459. package/dist/src/schemas/pluginProtocol.mjs.map +1 -1
  460. package/dist/src/schemas/profileIdentity.cjs +2 -2
  461. package/dist/src/schemas/profileIdentity.cjs.map +1 -1
  462. package/dist/src/schemas/profileIdentity.d.mts +1 -1
  463. package/dist/src/schemas/profileIdentity.mjs +2 -2
  464. package/dist/src/schemas/profileIdentity.mjs.map +1 -1
  465. package/dist/src/schemas/protocolChannelsContract.cjs +27 -0
  466. package/dist/src/schemas/protocolChannelsContract.cjs.map +1 -0
  467. package/dist/src/schemas/protocolChannelsContract.d.mts +37 -0
  468. package/dist/src/schemas/protocolChannelsContract.d.mts.map +1 -0
  469. package/dist/src/schemas/protocolChannelsContract.mjs +25 -0
  470. package/dist/src/schemas/protocolChannelsContract.mjs.map +1 -0
  471. package/dist/src/schemas/protocolContracts.cjs +168 -0
  472. package/dist/src/schemas/protocolContracts.cjs.map +1 -0
  473. package/dist/src/schemas/protocolContracts.d.mts +69 -0
  474. package/dist/src/schemas/protocolContracts.d.mts.map +1 -0
  475. package/dist/src/schemas/protocolContracts.mjs +164 -0
  476. package/dist/src/schemas/protocolContracts.mjs.map +1 -0
  477. package/dist/src/schemas/protocolHubContract.cjs +51 -0
  478. package/dist/src/schemas/protocolHubContract.cjs.map +1 -0
  479. package/dist/src/schemas/protocolHubContract.d.mts +218 -0
  480. package/dist/src/schemas/protocolHubContract.d.mts.map +1 -0
  481. package/dist/src/schemas/protocolHubContract.mjs +49 -0
  482. package/dist/src/schemas/protocolHubContract.mjs.map +1 -0
  483. package/dist/src/schemas/protocolSessionContract.cjs +22 -0
  484. package/dist/src/schemas/protocolSessionContract.cjs.map +1 -0
  485. package/dist/src/schemas/protocolSessionContract.d.mts +324 -0
  486. package/dist/src/schemas/protocolSessionContract.d.mts.map +1 -0
  487. package/dist/src/schemas/protocolSessionContract.mjs +22 -0
  488. package/dist/src/schemas/protocolSessionContract.mjs.map +1 -0
  489. package/dist/src/schemas/protocolThreadContract.cjs +21 -0
  490. package/dist/src/schemas/protocolThreadContract.cjs.map +1 -0
  491. package/dist/src/schemas/protocolThreadContract.d.mts +29 -0
  492. package/dist/src/schemas/protocolThreadContract.d.mts.map +1 -0
  493. package/dist/src/schemas/protocolThreadContract.mjs +20 -0
  494. package/dist/src/schemas/protocolThreadContract.mjs.map +1 -0
  495. package/dist/src/schemas/readiness.cjs +36 -36
  496. package/dist/src/schemas/readiness.cjs.map +1 -1
  497. package/dist/src/schemas/readiness.d.mts +37 -37
  498. package/dist/src/schemas/readiness.d.mts.map +1 -1
  499. package/dist/src/schemas/readiness.mjs +31 -31
  500. package/dist/src/schemas/readiness.mjs.map +1 -1
  501. package/dist/src/schemas/serverBundle.d.mts +5 -5
  502. package/dist/src/schemas/serverPlugin.cjs +103 -0
  503. package/dist/src/schemas/serverPlugin.cjs.map +1 -0
  504. package/dist/src/schemas/serverPlugin.d.mts +176 -0
  505. package/dist/src/schemas/serverPlugin.d.mts.map +1 -0
  506. package/dist/src/schemas/serverPlugin.mjs +95 -0
  507. package/dist/src/schemas/serverPlugin.mjs.map +1 -0
  508. package/dist/src/schemas/serverScope.cjs +37 -0
  509. package/dist/src/schemas/serverScope.cjs.map +1 -0
  510. package/dist/src/schemas/serverScope.d.mts +77 -0
  511. package/dist/src/schemas/serverScope.d.mts.map +1 -0
  512. package/dist/src/schemas/serverScope.mjs +33 -0
  513. package/dist/src/schemas/serverScope.mjs.map +1 -0
  514. package/dist/src/schemas/sessionApiContracts.cjs +320 -0
  515. package/dist/src/schemas/sessionApiContracts.cjs.map +1 -0
  516. package/dist/src/schemas/sessionApiContracts.mjs +318 -0
  517. package/dist/src/schemas/sessionApiContracts.mjs.map +1 -0
  518. package/dist/src/schemas/sessionProtocol.cjs +20 -13
  519. package/dist/src/schemas/sessionProtocol.cjs.map +1 -1
  520. package/dist/src/schemas/sessionProtocol.d.mts +37 -54
  521. package/dist/src/schemas/sessionProtocol.d.mts.map +1 -1
  522. package/dist/src/schemas/sessionProtocol.mjs +17 -8
  523. package/dist/src/schemas/sessionProtocol.mjs.map +1 -1
  524. package/dist/src/schemas/skills.cjs +16 -16
  525. package/dist/src/schemas/skills.cjs.map +1 -1
  526. package/dist/src/schemas/skills.d.mts +7 -7
  527. package/dist/src/schemas/skills.d.mts.map +1 -1
  528. package/dist/src/schemas/skills.mjs +12 -12
  529. package/dist/src/schemas/skills.mjs.map +1 -1
  530. package/dist/src/schemas/toolOverrides.cjs +9 -9
  531. package/dist/src/schemas/toolOverrides.cjs.map +1 -1
  532. package/dist/src/schemas/toolOverrides.d.mts +8 -8
  533. package/dist/src/schemas/toolOverrides.d.mts.map +1 -1
  534. package/dist/src/schemas/toolOverrides.mjs +7 -7
  535. package/dist/src/schemas/toolOverrides.mjs.map +1 -1
  536. package/dist/src/schemas/toolSurface.cjs +9 -9
  537. package/dist/src/schemas/toolSurface.cjs.map +1 -1
  538. package/dist/src/schemas/toolSurface.d.mts +13 -13
  539. package/dist/src/schemas/toolSurface.d.mts.map +1 -1
  540. package/dist/src/schemas/toolSurface.mjs +7 -7
  541. package/dist/src/schemas/toolSurface.mjs.map +1 -1
  542. package/dist/src/schemas/uiHub.cjs +9 -9
  543. package/dist/src/schemas/uiHub.cjs.map +1 -1
  544. package/dist/src/schemas/uiHub.d.mts +12 -12
  545. package/dist/src/schemas/uiHub.d.mts.map +1 -1
  546. package/dist/src/schemas/uiHub.mjs +7 -7
  547. package/dist/src/schemas/uiHub.mjs.map +1 -1
  548. package/dist/src/server/directHarnessRuntime.cjs +691 -775
  549. package/dist/src/server/directHarnessRuntime.cjs.map +1 -1
  550. package/dist/src/server/directHarnessRuntime.d.mts +5 -1
  551. package/dist/src/server/directHarnessRuntime.d.mts.map +1 -0
  552. package/dist/src/server/directHarnessRuntime.mjs +671 -754
  553. package/dist/src/server/directHarnessRuntime.mjs.map +1 -1
  554. package/dist/src/server/largeFrameLink.cjs +47 -0
  555. package/dist/src/server/largeFrameLink.cjs.map +1 -0
  556. package/dist/src/server/largeFrameLink.mjs +47 -0
  557. package/dist/src/server/largeFrameLink.mjs.map +1 -0
  558. package/dist/src/server/liveImport.cjs +1 -1
  559. package/dist/src/server/liveImport.cjs.map +1 -1
  560. package/dist/src/server/liveImport.d.mts +1 -1
  561. package/dist/src/server/liveImport.mjs +1 -1
  562. package/dist/src/server/liveImport.mjs.map +1 -1
  563. package/dist/src/server/mcpBundleLoader.cjs.map +1 -1
  564. package/dist/src/server/mcpBundleLoader.d.mts +6 -6
  565. package/dist/src/server/mcpBundleLoader.d.mts.map +1 -1
  566. package/dist/src/server/mcpBundleLoader.mjs.map +1 -1
  567. package/dist/src/server/serverPackages.cjs +60 -0
  568. package/dist/src/server/serverPackages.cjs.map +1 -0
  569. package/dist/src/server/serverPackages.d.mts +44 -0
  570. package/dist/src/server/serverPackages.d.mts.map +1 -0
  571. package/dist/src/server/serverPackages.mjs +59 -0
  572. package/dist/src/server/serverPackages.mjs.map +1 -0
  573. package/dist/src/server/serverScope.cjs +510 -0
  574. package/dist/src/server/serverScope.cjs.map +1 -0
  575. package/dist/src/server/serverScope.d.mts +123 -0
  576. package/dist/src/server/serverScope.d.mts.map +1 -0
  577. package/dist/src/server/serverScope.mjs +510 -0
  578. package/dist/src/server/serverScope.mjs.map +1 -0
  579. package/dist/src/server/sessionMcpHandler.cjs +3 -3
  580. package/dist/src/server/sessionMcpHandler.cjs.map +1 -1
  581. package/dist/src/server/sessionMcpHandler.mjs +4 -4
  582. package/dist/src/server/sessionMcpHandler.mjs.map +1 -1
  583. package/dist/src/server/sessionMcpRoutes.cjs +2 -1
  584. package/dist/src/server/sessionMcpRoutes.cjs.map +1 -1
  585. package/dist/src/server/sessionMcpRoutes.mjs +2 -1
  586. package/dist/src/server/sessionMcpRoutes.mjs.map +1 -1
  587. package/dist/src/server/threadJournals.cjs +38 -107
  588. package/dist/src/server/threadJournals.cjs.map +1 -1
  589. package/dist/src/server/threadJournals.mjs +38 -104
  590. package/dist/src/server/threadJournals.mjs.map +1 -1
  591. package/dist/src/services/apiSurfaceAssert/index.cjs +1 -1
  592. package/dist/src/services/apiSurfaceAssert/index.cjs.map +1 -1
  593. package/dist/src/services/apiSurfaceAssert/index.d.mts +6 -6
  594. package/dist/src/services/apiSurfaceAssert/index.mjs +1 -1
  595. package/dist/src/services/apiSurfaceAssert/index.mjs.map +1 -1
  596. package/dist/src/services/chatgptAuth/index.cjs +1 -220
  597. package/dist/src/services/chatgptAuth/index.cjs.map +1 -1
  598. package/dist/src/services/chatgptAuth/index.d.mts +0 -18
  599. package/dist/src/services/chatgptAuth/index.d.mts.map +1 -1
  600. package/dist/src/services/chatgptAuth/index.mjs +1 -217
  601. package/dist/src/services/chatgptAuth/index.mjs.map +1 -1
  602. package/dist/src/services/chatgptImages/index.cjs +1 -1
  603. package/dist/src/services/chatgptImages/index.cjs.map +1 -1
  604. package/dist/src/services/chatgptImages/index.mjs +1 -1
  605. package/dist/src/services/chatgptImages/index.mjs.map +1 -1
  606. package/dist/src/services/chatgptLogin/index.cjs +230 -0
  607. package/dist/src/services/chatgptLogin/index.cjs.map +1 -0
  608. package/dist/src/services/chatgptLogin/index.d.mts +21 -0
  609. package/dist/src/services/chatgptLogin/index.d.mts.map +1 -0
  610. package/dist/src/services/chatgptLogin/index.mjs +227 -0
  611. package/dist/src/services/chatgptLogin/index.mjs.map +1 -0
  612. package/dist/src/services/chatgptWebSearch/index.cjs +1 -1
  613. package/dist/src/services/chatgptWebSearch/index.cjs.map +1 -1
  614. package/dist/src/services/chatgptWebSearch/index.mjs +1 -1
  615. package/dist/src/services/chatgptWebSearch/index.mjs.map +1 -1
  616. package/dist/src/services/contextContributions/index.cjs +8 -8
  617. package/dist/src/services/contextContributions/index.cjs.map +1 -1
  618. package/dist/src/services/contextContributions/index.d.mts +3 -3
  619. package/dist/src/services/contextContributions/index.d.mts.map +1 -1
  620. package/dist/src/services/contextContributions/index.mjs +8 -8
  621. package/dist/src/services/contextContributions/index.mjs.map +1 -1
  622. package/dist/src/services/devProxyStore/devProxyRecords.cjs +59 -0
  623. package/dist/src/services/devProxyStore/devProxyRecords.cjs.map +1 -0
  624. package/dist/src/services/devProxyStore/devProxyRecords.mjs +56 -0
  625. package/dist/src/services/devProxyStore/devProxyRecords.mjs.map +1 -0
  626. package/dist/src/services/devProxyStore/index.cjs +7 -101
  627. package/dist/src/services/devProxyStore/index.cjs.map +1 -1
  628. package/dist/src/services/devProxyStore/index.mjs +7 -101
  629. package/dist/src/services/devProxyStore/index.mjs.map +1 -1
  630. package/dist/src/services/devProxyStore/sync.cjs +66 -0
  631. package/dist/src/services/devProxyStore/sync.cjs.map +1 -0
  632. package/dist/src/services/devProxyStore/sync.mjs +63 -0
  633. package/dist/src/services/devProxyStore/sync.mjs.map +1 -0
  634. package/dist/src/services/durableNavigation/docs.cjs +15 -0
  635. package/dist/src/services/durableNavigation/docs.cjs.map +1 -0
  636. package/dist/src/services/durableNavigation/docs.mjs +16 -0
  637. package/dist/src/services/durableNavigation/docs.mjs.map +1 -0
  638. package/dist/src/services/durableNavigation/index.cjs +3 -18
  639. package/dist/src/services/durableNavigation/index.cjs.map +1 -1
  640. package/dist/src/services/durableNavigation/index.mjs +2 -17
  641. package/dist/src/services/durableNavigation/index.mjs.map +1 -1
  642. package/dist/src/services/durableQueue/docs.cjs +12 -0
  643. package/dist/src/services/durableQueue/docs.cjs.map +1 -0
  644. package/dist/src/services/durableQueue/docs.mjs +13 -0
  645. package/dist/src/services/durableQueue/docs.mjs.map +1 -0
  646. package/dist/src/services/durableQueue/index.cjs +151 -0
  647. package/dist/src/services/durableQueue/index.cjs.map +1 -0
  648. package/dist/src/services/durableQueue/index.mjs +149 -0
  649. package/dist/src/services/durableQueue/index.mjs.map +1 -0
  650. package/dist/src/services/durableRequestReceipts/docs.cjs +11 -0
  651. package/dist/src/services/durableRequestReceipts/docs.cjs.map +1 -0
  652. package/dist/src/services/durableRequestReceipts/docs.mjs +12 -0
  653. package/dist/src/services/durableRequestReceipts/docs.mjs.map +1 -0
  654. package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.cjs +10 -16
  655. package/dist/src/services/durableRequestReceipts/index.cjs.map +1 -0
  656. package/dist/src/services/durableRequestReceipts/index.d.mts +12 -0
  657. package/dist/src/services/durableRequestReceipts/index.d.mts.map +1 -0
  658. package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.mjs +7 -13
  659. package/dist/src/services/durableRequestReceipts/index.mjs.map +1 -0
  660. package/dist/src/services/durableSession/docs.cjs +65 -0
  661. package/dist/src/services/durableSession/docs.cjs.map +1 -0
  662. package/dist/src/services/durableSession/docs.d.mts +17 -0
  663. package/dist/src/services/durableSession/docs.d.mts.map +1 -0
  664. package/dist/src/services/durableSession/docs.mjs +60 -0
  665. package/dist/src/services/durableSession/docs.mjs.map +1 -0
  666. package/dist/src/services/durableSession/index.cjs +21 -0
  667. package/dist/src/services/durableSession/index.cjs.map +1 -0
  668. package/dist/src/services/durableSession/index.d.mts +13 -0
  669. package/dist/src/services/durableSession/index.d.mts.map +1 -0
  670. package/dist/src/services/durableSession/index.mjs +20 -0
  671. package/dist/src/services/durableSession/index.mjs.map +1 -0
  672. package/dist/src/services/durableSubagents/docs.cjs +15 -0
  673. package/dist/src/services/durableSubagents/docs.cjs.map +1 -0
  674. package/dist/src/services/durableSubagents/docs.mjs +16 -0
  675. package/dist/src/services/durableSubagents/docs.mjs.map +1 -0
  676. package/dist/src/services/durableSubagents/extension.cjs +11 -0
  677. package/dist/src/services/durableSubagents/extension.cjs.map +1 -0
  678. package/dist/src/services/durableSubagents/extension.mjs +12 -0
  679. package/dist/src/services/durableSubagents/extension.mjs.map +1 -0
  680. package/dist/src/services/durableSubagents/index.cjs +95 -0
  681. package/dist/src/services/durableSubagents/index.cjs.map +1 -0
  682. package/dist/src/services/durableSubagents/index.mjs +90 -0
  683. package/dist/src/services/durableSubagents/index.mjs.map +1 -0
  684. package/dist/src/services/durableSubagents/tasks.cjs +25 -0
  685. package/dist/src/services/durableSubagents/tasks.cjs.map +1 -0
  686. package/dist/src/services/durableSubagents/tasks.mjs +26 -0
  687. package/dist/src/services/durableSubagents/tasks.mjs.map +1 -0
  688. package/dist/src/services/headlessClient/index.cjs +20 -13
  689. package/dist/src/services/headlessClient/index.cjs.map +1 -1
  690. package/dist/src/services/headlessClient/index.mjs +21 -14
  691. package/dist/src/services/headlessClient/index.mjs.map +1 -1
  692. package/dist/src/services/historyOwnership/type.d.mts +15 -0
  693. package/dist/src/services/historyOwnership/type.d.mts.map +1 -0
  694. package/dist/src/services/hubChannelHarness/index.cjs +2 -2
  695. package/dist/src/services/hubChannelHarness/index.cjs.map +1 -1
  696. package/dist/src/services/hubChannelHarness/index.d.mts +8 -8
  697. package/dist/src/services/hubChannelHarness/index.d.mts.map +1 -1
  698. package/dist/src/services/hubChannelHarness/index.mjs +2 -2
  699. package/dist/src/services/hubChannelHarness/index.mjs.map +1 -1
  700. package/dist/src/services/json/core.cjs +30 -0
  701. package/dist/src/services/json/core.cjs.map +1 -0
  702. package/dist/src/services/json/core.d.mts +21 -0
  703. package/dist/src/services/json/core.d.mts.map +1 -0
  704. package/dist/src/services/json/core.mjs +26 -0
  705. package/dist/src/services/json/core.mjs.map +1 -0
  706. package/dist/src/services/json/sync.cjs +48 -0
  707. package/dist/src/services/json/sync.cjs.map +1 -0
  708. package/dist/src/services/json/sync.d.mts +22 -0
  709. package/dist/src/services/json/sync.d.mts.map +1 -0
  710. package/dist/src/services/json/sync.mjs +43 -0
  711. package/dist/src/services/json/sync.mjs.map +1 -0
  712. package/dist/src/services/kernel/index.cjs +2 -2
  713. package/dist/src/services/kernel/index.cjs.map +1 -1
  714. package/dist/src/services/kernel/index.d.mts +3 -3
  715. package/dist/src/services/kernel/index.d.mts.map +1 -1
  716. package/dist/src/services/kernel/index.mjs +2 -2
  717. package/dist/src/services/kernel/index.mjs.map +1 -1
  718. package/dist/src/services/nativeChildTools/index.cjs +16 -0
  719. package/dist/src/services/nativeChildTools/index.cjs.map +1 -0
  720. package/dist/src/services/nativeChildTools/index.mjs +16 -0
  721. package/dist/src/services/nativeChildTools/index.mjs.map +1 -0
  722. package/dist/src/services/nodeHost/index.cjs +30 -0
  723. package/dist/src/services/nodeHost/index.cjs.map +1 -0
  724. package/dist/src/services/nodeHost/index.d.mts +16 -0
  725. package/dist/src/services/nodeHost/index.d.mts.map +1 -0
  726. package/dist/src/services/nodeHost/index.mjs +27 -0
  727. package/dist/src/services/nodeHost/index.mjs.map +1 -0
  728. package/dist/src/services/nodeModelDependencies/index.cjs +89 -0
  729. package/dist/src/services/nodeModelDependencies/index.cjs.map +1 -0
  730. package/dist/src/services/nodeModelDependencies/index.mjs +86 -0
  731. package/dist/src/services/nodeModelDependencies/index.mjs.map +1 -0
  732. package/dist/src/services/openSessionRegistry/index.cjs +6 -128
  733. package/dist/src/services/openSessionRegistry/index.cjs.map +1 -1
  734. package/dist/src/services/openSessionRegistry/index.d.mts +5 -36
  735. package/dist/src/services/openSessionRegistry/index.mjs +6 -128
  736. package/dist/src/services/openSessionRegistry/index.mjs.map +1 -1
  737. package/dist/src/services/openSessionRegistry/openSessionRecords.cjs +87 -0
  738. package/dist/src/services/openSessionRegistry/openSessionRecords.cjs.map +1 -0
  739. package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts +30 -0
  740. package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts.map +1 -0
  741. package/dist/src/services/openSessionRegistry/openSessionRecords.mjs +81 -0
  742. package/dist/src/services/openSessionRegistry/openSessionRecords.mjs.map +1 -0
  743. package/dist/src/services/openSessionRegistry/sync.cjs +71 -0
  744. package/dist/src/services/openSessionRegistry/sync.cjs.map +1 -0
  745. package/dist/src/services/openSessionRegistry/sync.d.mts +14 -0
  746. package/dist/src/services/openSessionRegistry/sync.d.mts.map +1 -0
  747. package/dist/src/services/openSessionRegistry/sync.mjs +68 -0
  748. package/dist/src/services/openSessionRegistry/sync.mjs.map +1 -0
  749. package/dist/src/services/packageApiHarness/index.cjs +1 -1
  750. package/dist/src/services/packageApiHarness/index.cjs.map +1 -1
  751. package/dist/src/services/packageApiHarness/index.d.mts +6 -6
  752. package/dist/src/services/packageApiHarness/index.d.mts.map +1 -1
  753. package/dist/src/services/packageApiHarness/index.mjs +2 -2
  754. package/dist/src/services/packageApiHarness/index.mjs.map +1 -1
  755. package/dist/src/services/piArgs/index.cjs +53 -0
  756. package/dist/src/services/piArgs/index.cjs.map +1 -0
  757. package/dist/src/services/piArgs/index.d.mts +6 -0
  758. package/dist/src/services/piArgs/index.d.mts.map +1 -0
  759. package/dist/src/services/piArgs/index.mjs +53 -0
  760. package/dist/src/services/piArgs/index.mjs.map +1 -0
  761. package/dist/src/services/piExtensionHost/index.cjs +47 -39
  762. package/dist/src/services/piExtensionHost/index.cjs.map +1 -1
  763. package/dist/src/services/piExtensionHost/index.d.mts +83 -0
  764. package/dist/src/services/piExtensionHost/index.d.mts.map +1 -0
  765. package/dist/src/services/piExtensionHost/index.mjs +47 -38
  766. package/dist/src/services/piExtensionHost/index.mjs.map +1 -1
  767. package/dist/src/services/piHelpTools/index.cjs +5 -5
  768. package/dist/src/services/piHelpTools/index.cjs.map +1 -1
  769. package/dist/src/services/piHelpTools/index.d.mts.map +1 -1
  770. package/dist/src/services/piHelpTools/index.mjs +7 -7
  771. package/dist/src/services/piHelpTools/index.mjs.map +1 -1
  772. package/dist/src/services/piMessages/index.cjs +106 -0
  773. package/dist/src/services/piMessages/index.cjs.map +1 -0
  774. package/dist/src/services/piMessages/index.mjs +105 -0
  775. package/dist/src/services/piMessages/index.mjs.map +1 -0
  776. package/dist/src/services/piSessionEntries/index.cjs +4 -4
  777. package/dist/src/services/piSessionEntries/index.cjs.map +1 -1
  778. package/dist/src/services/piSessionEntries/index.mjs +3 -3
  779. package/dist/src/services/piSessionEntries/index.mjs.map +1 -1
  780. package/dist/src/services/piSettings/core.cjs +308 -0
  781. package/dist/src/services/piSettings/core.cjs.map +1 -0
  782. package/dist/src/services/piSettings/core.d.mts +102 -0
  783. package/dist/src/services/piSettings/core.d.mts.map +1 -0
  784. package/dist/src/services/piSettings/core.mjs +276 -0
  785. package/dist/src/services/piSettings/core.mjs.map +1 -0
  786. package/dist/src/services/piSettings/sync.cjs +119 -0
  787. package/dist/src/services/piSettings/sync.cjs.map +1 -0
  788. package/dist/src/services/piSettings/sync.d.mts +44 -0
  789. package/dist/src/services/piSettings/sync.d.mts.map +1 -0
  790. package/dist/src/services/piSettings/sync.mjs +110 -0
  791. package/dist/src/services/piSettings/sync.mjs.map +1 -0
  792. package/dist/src/services/piSummary/index.cjs +7 -0
  793. package/dist/src/services/piSummary/index.cjs.map +1 -0
  794. package/dist/src/services/piSummary/index.mjs +7 -0
  795. package/dist/src/services/piSummary/index.mjs.map +1 -0
  796. package/dist/src/services/platformFiles/index.cjs +44 -0
  797. package/dist/src/services/platformFiles/index.cjs.map +1 -0
  798. package/dist/src/services/platformFiles/index.d.mts +16 -0
  799. package/dist/src/services/platformFiles/index.d.mts.map +1 -0
  800. package/dist/src/services/platformFiles/index.mjs +39 -0
  801. package/dist/src/services/platformFiles/index.mjs.map +1 -0
  802. package/dist/src/services/pluginLifecycle/index.cjs +19 -13
  803. package/dist/src/services/pluginLifecycle/index.cjs.map +1 -1
  804. package/dist/src/services/pluginLifecycle/index.d.mts +2 -0
  805. package/dist/src/services/pluginLifecycle/index.d.mts.map +1 -1
  806. package/dist/src/services/pluginLifecycle/index.mjs +19 -14
  807. package/dist/src/services/pluginLifecycle/index.mjs.map +1 -1
  808. package/dist/src/services/poPackage/core.cjs +73 -0
  809. package/dist/src/services/poPackage/core.cjs.map +1 -0
  810. package/dist/src/services/poPackage/core.d.mts +32 -0
  811. package/dist/src/services/poPackage/core.d.mts.map +1 -0
  812. package/dist/src/services/poPackage/core.mjs +66 -0
  813. package/dist/src/services/poPackage/core.mjs.map +1 -0
  814. package/dist/src/services/poPackage/sync.cjs +55 -0
  815. package/dist/src/services/poPackage/sync.cjs.map +1 -0
  816. package/dist/src/services/poPackage/sync.d.mts +21 -0
  817. package/dist/src/services/poPackage/sync.d.mts.map +1 -0
  818. package/dist/src/services/poPackage/sync.mjs +50 -0
  819. package/dist/src/services/poPackage/sync.mjs.map +1 -0
  820. package/dist/src/services/providerAuth/index.cjs +11 -7
  821. package/dist/src/services/providerAuth/index.cjs.map +1 -1
  822. package/dist/src/services/providerAuth/index.mjs +11 -7
  823. package/dist/src/services/providerAuth/index.mjs.map +1 -1
  824. package/dist/src/services/publicFileShares/index.cjs +1 -1
  825. package/dist/src/services/publicFileShares/index.cjs.map +1 -1
  826. package/dist/src/services/publicFileShares/index.d.mts +2 -2
  827. package/dist/src/services/publicFileShares/index.mjs +2 -2
  828. package/dist/src/services/publicFileShares/index.mjs.map +1 -1
  829. package/dist/src/services/remoteAccess/index.d.mts +1 -0
  830. package/dist/src/services/remoteAccess/index.d.mts.map +1 -1
  831. package/dist/src/services/remoteAccessStore/index.cjs +8 -190
  832. package/dist/src/services/remoteAccessStore/index.cjs.map +1 -1
  833. package/dist/src/services/remoteAccessStore/index.d.mts +2 -0
  834. package/dist/src/services/remoteAccessStore/index.mjs +7 -187
  835. package/dist/src/services/remoteAccessStore/index.mjs.map +1 -1
  836. package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs +98 -0
  837. package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs.map +1 -0
  838. package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs +88 -0
  839. package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs.map +1 -0
  840. package/dist/src/services/remoteAccessStore/sync.cjs +111 -0
  841. package/dist/src/services/remoteAccessStore/sync.cjs.map +1 -0
  842. package/dist/src/services/remoteAccessStore/sync.mjs +108 -0
  843. package/dist/src/services/remoteAccessStore/sync.mjs.map +1 -0
  844. package/dist/src/services/runtimeIdentity/sync.cjs +23 -0
  845. package/dist/src/services/runtimeIdentity/sync.cjs.map +1 -0
  846. package/dist/src/services/runtimeIdentity/sync.d.mts +9 -0
  847. package/dist/src/services/runtimeIdentity/sync.d.mts.map +1 -0
  848. package/dist/src/services/runtimeIdentity/sync.mjs +20 -0
  849. package/dist/src/services/runtimeIdentity/sync.mjs.map +1 -0
  850. package/dist/src/services/serialRunner/index.cjs +25 -0
  851. package/dist/src/services/serialRunner/index.cjs.map +1 -0
  852. package/dist/src/services/serialRunner/index.d.mts +10 -0
  853. package/dist/src/services/serialRunner/index.d.mts.map +1 -0
  854. package/dist/src/services/serialRunner/index.mjs +25 -0
  855. package/dist/src/services/serialRunner/index.mjs.map +1 -0
  856. package/dist/src/services/{serverFacet → serverHost}/index.cjs +5 -5
  857. package/dist/src/services/serverHost/index.cjs.map +1 -0
  858. package/dist/src/services/serverHost/index.d.mts +31 -0
  859. package/dist/src/services/serverHost/index.d.mts.map +1 -0
  860. package/dist/src/services/{serverFacet → serverHost}/index.mjs +5 -5
  861. package/dist/src/services/serverHost/index.mjs.map +1 -0
  862. package/dist/src/services/sessionAttachments/index.cjs +4 -3
  863. package/dist/src/services/sessionAttachments/index.cjs.map +1 -1
  864. package/dist/src/services/sessionAttachments/index.d.mts +1 -6
  865. package/dist/src/services/sessionAttachments/index.d.mts.map +1 -1
  866. package/dist/src/services/sessionAttachments/index.mjs +3 -2
  867. package/dist/src/services/sessionAttachments/index.mjs.map +1 -1
  868. package/dist/src/services/sessionAttachments/type.d.mts +9 -0
  869. package/dist/src/services/sessionAttachments/type.d.mts.map +1 -0
  870. package/dist/src/services/sessionFiles/index.cjs +96 -0
  871. package/dist/src/services/sessionFiles/index.cjs.map +1 -0
  872. package/dist/src/services/sessionFiles/index.d.mts +33 -0
  873. package/dist/src/services/sessionFiles/index.d.mts.map +1 -0
  874. package/dist/src/services/sessionFiles/index.mjs +89 -0
  875. package/dist/src/services/sessionFiles/index.mjs.map +1 -0
  876. package/dist/src/services/sessionFiles/sessionDirectory.cjs +66 -0
  877. package/dist/src/services/sessionFiles/sessionDirectory.cjs.map +1 -0
  878. package/dist/src/services/sessionFiles/sessionDirectory.mjs +62 -0
  879. package/dist/src/services/sessionFiles/sessionDirectory.mjs.map +1 -0
  880. package/dist/src/services/sessionGitStatus/index.cjs +31 -33
  881. package/dist/src/services/sessionGitStatus/index.cjs.map +1 -1
  882. package/dist/src/services/sessionGitStatus/index.mjs +31 -33
  883. package/dist/src/services/sessionGitStatus/index.mjs.map +1 -1
  884. package/dist/src/services/sessionPresentation/index.cjs +3 -27
  885. package/dist/src/services/sessionPresentation/index.cjs.map +1 -1
  886. package/dist/src/services/sessionPresentation/index.mjs +3 -27
  887. package/dist/src/services/sessionPresentation/index.mjs.map +1 -1
  888. package/dist/src/services/skillPrompt/index.cjs +11 -0
  889. package/dist/src/services/skillPrompt/index.cjs.map +1 -0
  890. package/dist/src/services/skillPrompt/index.mjs +11 -0
  891. package/dist/src/services/skillPrompt/index.mjs.map +1 -0
  892. package/dist/src/services/sqliteSessionHistory/index.cjs +44 -30
  893. package/dist/src/services/sqliteSessionHistory/index.cjs.map +1 -1
  894. package/dist/src/services/sqliteSessionHistory/index.d.mts +7 -4
  895. package/dist/src/services/sqliteSessionHistory/index.d.mts.map +1 -1
  896. package/dist/src/services/sqliteSessionHistory/index.mjs +43 -28
  897. package/dist/src/services/sqliteSessionHistory/index.mjs.map +1 -1
  898. package/dist/src/services/sqliteTranscriptReader/index.cjs +21 -45
  899. package/dist/src/services/sqliteTranscriptReader/index.cjs.map +1 -1
  900. package/dist/src/services/sqliteTranscriptReader/index.d.mts +3 -2
  901. package/dist/src/services/sqliteTranscriptReader/index.d.mts.map +1 -1
  902. package/dist/src/services/sqliteTranscriptReader/index.mjs +16 -38
  903. package/dist/src/services/sqliteTranscriptReader/index.mjs.map +1 -1
  904. package/dist/src/services/testMode/index.cjs +162 -0
  905. package/dist/src/services/testMode/index.cjs.map +1 -0
  906. package/dist/src/services/testMode/index.d.mts +17 -0
  907. package/dist/src/services/testMode/index.d.mts.map +1 -0
  908. package/dist/src/services/testMode/index.mjs +155 -0
  909. package/dist/src/services/testMode/index.mjs.map +1 -0
  910. package/dist/src/services/toolOverrides/index.cjs +6 -6
  911. package/dist/src/services/toolOverrides/index.cjs.map +1 -1
  912. package/dist/src/services/toolOverrides/index.d.mts +3 -3
  913. package/dist/src/services/toolOverrides/index.d.mts.map +1 -1
  914. package/dist/src/services/toolOverrides/index.mjs +6 -6
  915. package/dist/src/services/toolOverrides/index.mjs.map +1 -1
  916. package/dist/src/services/toolPrompt/index.d.mts +17 -0
  917. package/dist/src/services/toolPrompt/index.d.mts.map +1 -0
  918. package/dist/src/services/toolSurface/index.cjs +3 -3
  919. package/dist/src/services/toolSurface/index.cjs.map +1 -1
  920. package/dist/src/services/toolSurface/index.d.mts +3 -3
  921. package/dist/src/services/toolSurface/index.d.mts.map +1 -1
  922. package/dist/src/services/toolSurface/index.mjs +4 -4
  923. package/dist/src/services/toolSurface/index.mjs.map +1 -1
  924. package/dist/src/services/traceContext/index.cjs.map +1 -1
  925. package/dist/src/services/traceContext/index.mjs.map +1 -1
  926. package/dist/src/services/transcriptPages/index.cjs +159 -33
  927. package/dist/src/services/transcriptPages/index.cjs.map +1 -1
  928. package/dist/src/services/transcriptPages/index.mjs +158 -34
  929. package/dist/src/services/transcriptPages/index.mjs.map +1 -1
  930. package/dist/src/services/voiceToolsContract/index.cjs +7 -7
  931. package/dist/src/services/voiceToolsContract/index.cjs.map +1 -1
  932. package/dist/src/services/voiceToolsContract/index.d.mts +4 -4
  933. package/dist/src/services/voiceToolsContract/index.d.mts.map +1 -1
  934. package/dist/src/services/voiceToolsContract/index.mjs +7 -7
  935. package/dist/src/services/voiceToolsContract/index.mjs.map +1 -1
  936. package/dist/src/services/workspaceRegistry/index.cjs +9 -179
  937. package/dist/src/services/workspaceRegistry/index.cjs.map +1 -1
  938. package/dist/src/services/workspaceRegistry/index.d.mts +5 -47
  939. package/dist/src/services/workspaceRegistry/index.mjs +7 -176
  940. package/dist/src/services/workspaceRegistry/index.mjs.map +1 -1
  941. package/dist/src/services/workspaceRegistry/sync.cjs +148 -0
  942. package/dist/src/services/workspaceRegistry/sync.cjs.map +1 -0
  943. package/dist/src/services/workspaceRegistry/sync.d.mts +34 -0
  944. package/dist/src/services/workspaceRegistry/sync.d.mts.map +1 -0
  945. package/dist/src/services/workspaceRegistry/sync.mjs +140 -0
  946. package/dist/src/services/workspaceRegistry/sync.mjs.map +1 -0
  947. package/dist/src/services/workspaceRegistry/workspaceRecords.cjs +114 -0
  948. package/dist/src/services/workspaceRegistry/workspaceRecords.cjs.map +1 -0
  949. package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts +31 -0
  950. package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts.map +1 -0
  951. package/dist/src/services/workspaceRegistry/workspaceRecords.mjs +101 -0
  952. package/dist/src/services/workspaceRegistry/workspaceRecords.mjs.map +1 -0
  953. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs +339 -202
  954. package/dist/src/systems/child/adapters/headlessChildSessionService.cjs.map +1 -1
  955. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts +16 -21
  956. package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -1
  957. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs +329 -191
  958. package/dist/src/systems/child/adapters/headlessChildSessionService.mjs.map +1 -1
  959. package/dist/src/systems/child/services/childSession/index.cjs +94 -20
  960. package/dist/src/systems/child/services/childSession/index.cjs.map +1 -1
  961. package/dist/src/systems/child/services/childSession/index.d.mts +12 -3
  962. package/dist/src/systems/child/services/childSession/index.d.mts.map +1 -1
  963. package/dist/src/systems/child/services/childSession/index.mjs +94 -20
  964. package/dist/src/systems/child/services/childSession/index.mjs.map +1 -1
  965. package/dist/src/systems/child/types/childSession.cjs +33 -13
  966. package/dist/src/systems/child/types/childSession.cjs.map +1 -1
  967. package/dist/src/systems/child/types/childSession.d.mts +143 -80
  968. package/dist/src/systems/child/types/childSession.d.mts.map +1 -1
  969. package/dist/src/systems/child/types/childSession.mjs +24 -9
  970. package/dist/src/systems/child/types/childSession.mjs.map +1 -1
  971. package/dist/src/systems/main/adapters/headlessHost.cjs +30 -27
  972. package/dist/src/systems/main/adapters/headlessHost.cjs.map +1 -1
  973. package/dist/src/systems/main/adapters/headlessHost.d.mts +22 -22
  974. package/dist/src/systems/main/adapters/headlessHost.d.mts.map +1 -1
  975. package/dist/src/systems/main/adapters/headlessHost.mjs +33 -30
  976. package/dist/src/systems/main/adapters/headlessHost.mjs.map +1 -1
  977. package/dist/src/systems/main/adapters/headlessSessionHost.cjs +248 -229
  978. package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
  979. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts +4 -5
  980. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
  981. package/dist/src/systems/main/adapters/headlessSessionHost.mjs +239 -219
  982. package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
  983. package/dist/src/systems/main/types/headlessHost.d.mts +16 -14
  984. package/dist/src/systems/main/types/headlessHost.d.mts.map +1 -1
  985. package/dist/src/testing/pi/testHost.cjs +2 -2
  986. package/dist/src/testing/pi/testHost.cjs.map +1 -1
  987. package/dist/src/testing/pi/testHost.d.mts +3 -2
  988. package/dist/src/testing/pi/testHost.mjs +3 -3
  989. package/dist/src/testing/pi/testHost.mjs.map +1 -1
  990. package/dist/src/types/config.d.mts +1 -1
  991. package/dist/src/types/config.d.mts.map +1 -1
  992. package/dist/src/types/kernel.d.mts +3 -3
  993. package/dist/src/types/server/directHarnessRuntime.d.mts +54 -25
  994. package/dist/src/types/server/directHarnessRuntime.d.mts.map +1 -1
  995. package/dist/src/types/server/sessionToolSurface.d.mts +9 -9
  996. package/dist/src/web/services/apiClient/index.d.mts +1 -0
  997. package/dist/src/web/services/apiPaths/index.cjs.map +1 -1
  998. package/dist/src/web/services/apiPaths/index.d.mts +1 -1
  999. package/dist/src/web/services/apiPaths/index.mjs.map +1 -1
  1000. package/dist/src/web/services/mcpWidget.cjs.map +1 -1
  1001. package/dist/src/web/services/mcpWidget.d.mts +2 -2
  1002. package/dist/src/web/services/mcpWidget.d.mts.map +1 -1
  1003. package/dist/src/web/services/mcpWidget.mjs.map +1 -1
  1004. package/dist/src/web/services/testing/templateRail.cjs +3 -0
  1005. package/dist/src/web/services/testing/templateRail.cjs.map +1 -1
  1006. package/dist/src/web/services/testing/templateRail.mjs +3 -0
  1007. package/dist/src/web/services/testing/templateRail.mjs.map +1 -1
  1008. package/dist/src/web/types/mcpWidget.d.mts +1 -1
  1009. package/dist/src/web/types/nativeTemplate.d.mts +1 -1
  1010. package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
  1011. package/dist/src/web/types/template.d.mts +8 -0
  1012. package/dist/src/web/types/template.d.mts.map +1 -1
  1013. package/dist/src/web/types/webPlugin.d.mts +17 -5
  1014. package/dist/src/web/types/webPlugin.d.mts.map +1 -1
  1015. package/dist/testMode.cjs +4 -0
  1016. package/dist/testMode.d.mts +2 -0
  1017. package/dist/testMode.mjs +1 -0
  1018. package/dist/testing.cjs +1 -1
  1019. package/dist/testing.d.mts +2 -2
  1020. package/dist/testing.mjs +2 -2
  1021. package/dist/toolInventory.cjs.map +1 -1
  1022. package/dist/toolInventory.mjs.map +1 -1
  1023. package/dist/toolNames.mjs +1 -2
  1024. package/dist/toolOverrides.cjs +4 -4
  1025. package/dist/toolOverrides.d.mts +3 -3
  1026. package/dist/toolOverrides.mjs +3 -3
  1027. package/dist/toolSurface.cjs +4 -4
  1028. package/dist/toolSurface.d.mts +3 -3
  1029. package/dist/toolSurface.mjs +3 -3
  1030. package/dist/transition.cjs +3 -3
  1031. package/dist/transition.d.cjs +3 -3
  1032. package/dist/transition.d.mts +2 -2
  1033. package/dist/transition.mjs +1 -2
  1034. package/dist/transitionClassifier.cjs.map +1 -1
  1035. package/dist/transitionClassifier.d.mts +2 -2
  1036. package/dist/transitionClassifier.d.mts.map +1 -1
  1037. package/dist/transitionClassifier.mjs.map +1 -1
  1038. package/dist/transitionCoordinator.cjs +3 -3
  1039. package/dist/transitionCoordinator.cjs.map +1 -1
  1040. package/dist/transitionCoordinator.d.mts +4 -4
  1041. package/dist/transitionCoordinator.d.mts.map +1 -1
  1042. package/dist/transitionCoordinator.mjs +3 -3
  1043. package/dist/transitionCoordinator.mjs.map +1 -1
  1044. package/dist/typesContextApi.d.mts +2 -1
  1045. package/dist/typesContextApi.d.mts.map +1 -1
  1046. package/dist/uiHub.cjs +3 -3
  1047. package/dist/uiHub.d.mts +2 -2
  1048. package/dist/uiHub.mjs +1 -2
  1049. package/dist/voiceTools.cjs +5 -5
  1050. package/dist/voiceTools.d.mts +3 -3
  1051. package/dist/voiceTools.mjs +3 -3
  1052. package/dist/web.cjs +8 -0
  1053. package/dist/web.d.mts +3 -2
  1054. package/dist/web.mjs +2 -1
  1055. package/dist/webCompositions.cjs.map +1 -1
  1056. package/dist/webCompositions.d.mts +7 -7
  1057. package/dist/webCompositions.d.mts.map +1 -1
  1058. package/dist/webCompositions.mjs.map +1 -1
  1059. package/licenses/Codex-Apache-2.0.txt +201 -0
  1060. package/package.json +58 -53
  1061. package/dist/doomPackage.cjs +0 -61
  1062. package/dist/doomPackage.cjs.map +0 -1
  1063. package/dist/doomPackage.d.mts +0 -17
  1064. package/dist/doomPackage.d.mts.map +0 -1
  1065. package/dist/doomPackage.mjs +0 -54
  1066. package/dist/doomPackage.mjs.map +0 -1
  1067. package/dist/jsonlSessionRepo.cjs +0 -44
  1068. package/dist/jsonlSessionRepo.cjs.map +0 -1
  1069. package/dist/jsonlSessionRepo.d.mts +0 -7
  1070. package/dist/jsonlSessionRepo.d.mts.map +0 -1
  1071. package/dist/jsonlSessionRepo.mjs +0 -42
  1072. package/dist/jsonlSessionRepo.mjs.map +0 -1
  1073. package/dist/runtimeJson.cjs.map +0 -1
  1074. package/dist/runtimeJson.d.mts.map +0 -1
  1075. package/dist/runtimeJson.mjs.map +0 -1
  1076. package/dist/runtimePiSettings.cjs.map +0 -1
  1077. package/dist/runtimePiSettings.d.mts.map +0 -1
  1078. package/dist/runtimePiSettings.mjs.map +0 -1
  1079. package/dist/serverFacet.cjs +0 -34
  1080. package/dist/serverFacet.d.mts +0 -10
  1081. package/dist/serverFacet.mjs +0 -9
  1082. package/dist/src/pi/piWebSocketListener.cjs +0 -115
  1083. package/dist/src/pi/piWebSocketListener.cjs.map +0 -1
  1084. package/dist/src/pi/piWebSocketListener.mjs +0 -115
  1085. package/dist/src/pi/piWebSocketListener.mjs.map +0 -1
  1086. package/dist/src/schemas/serverFacet.cjs +0 -111
  1087. package/dist/src/schemas/serverFacet.cjs.map +0 -1
  1088. package/dist/src/schemas/serverFacet.d.mts +0 -152
  1089. package/dist/src/schemas/serverFacet.d.mts.map +0 -1
  1090. package/dist/src/schemas/serverFacet.mjs +0 -101
  1091. package/dist/src/schemas/serverFacet.mjs.map +0 -1
  1092. package/dist/src/schemas/sessionUpdates.d.mts +0 -34
  1093. package/dist/src/schemas/sessionUpdates.d.mts.map +0 -1
  1094. package/dist/src/server/headlessProtocol.cjs +0 -382
  1095. package/dist/src/server/headlessProtocol.cjs.map +0 -1
  1096. package/dist/src/server/headlessProtocol.mjs +0 -382
  1097. package/dist/src/server/headlessProtocol.mjs.map +0 -1
  1098. package/dist/src/server/nativeChildTranscriptReader.cjs +0 -20
  1099. package/dist/src/server/nativeChildTranscriptReader.cjs.map +0 -1
  1100. package/dist/src/server/nativeChildTranscriptReader.mjs +0 -18
  1101. package/dist/src/server/nativeChildTranscriptReader.mjs.map +0 -1
  1102. package/dist/src/server/serverFacetLoader.cjs +0 -214
  1103. package/dist/src/server/serverFacetLoader.cjs.map +0 -1
  1104. package/dist/src/server/serverFacetLoader.d.mts +0 -72
  1105. package/dist/src/server/serverFacetLoader.d.mts.map +0 -1
  1106. package/dist/src/server/serverFacetLoader.mjs +0 -212
  1107. package/dist/src/server/serverFacetLoader.mjs.map +0 -1
  1108. package/dist/src/services/acpSessionUpdates/index.cjs +0 -129
  1109. package/dist/src/services/acpSessionUpdates/index.cjs.map +0 -1
  1110. package/dist/src/services/acpSessionUpdates/index.mjs +0 -129
  1111. package/dist/src/services/acpSessionUpdates/index.mjs.map +0 -1
  1112. package/dist/src/services/historyImport/index.cjs +0 -8
  1113. package/dist/src/services/historyImport/index.cjs.map +0 -1
  1114. package/dist/src/services/historyImport/index.d.mts +0 -68
  1115. package/dist/src/services/historyImport/index.d.mts.map +0 -1
  1116. package/dist/src/services/historyImport/index.mjs +0 -8
  1117. package/dist/src/services/historyImport/index.mjs.map +0 -1
  1118. package/dist/src/services/openSessionRegistry/index.d.mts.map +0 -1
  1119. package/dist/src/services/requestReceipts/index.cjs.map +0 -1
  1120. package/dist/src/services/requestReceipts/index.d.mts +0 -11
  1121. package/dist/src/services/requestReceipts/index.d.mts.map +0 -1
  1122. package/dist/src/services/requestReceipts/index.mjs.map +0 -1
  1123. package/dist/src/services/rpcTranscript/index.cjs +0 -633
  1124. package/dist/src/services/rpcTranscript/index.cjs.map +0 -1
  1125. package/dist/src/services/rpcTranscript/index.d.mts +0 -50
  1126. package/dist/src/services/rpcTranscript/index.d.mts.map +0 -1
  1127. package/dist/src/services/rpcTranscript/index.mjs +0 -632
  1128. package/dist/src/services/rpcTranscript/index.mjs.map +0 -1
  1129. package/dist/src/services/serverFacet/index.cjs.map +0 -1
  1130. package/dist/src/services/serverFacet/index.d.mts +0 -31
  1131. package/dist/src/services/serverFacet/index.d.mts.map +0 -1
  1132. package/dist/src/services/serverFacet/index.mjs.map +0 -1
  1133. package/dist/src/services/workspaceRegistry/index.d.mts.map +0 -1
  1134. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs +0 -28
  1135. package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs.map +0 -1
  1136. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs +0 -25
  1137. package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs.map +0 -1
  1138. package/dist/terminalPiChildSessionService.cjs +0 -324
  1139. package/dist/terminalPiChildSessionService.cjs.map +0 -1
  1140. package/dist/terminalPiChildSessionService.d.mts +0 -46
  1141. package/dist/terminalPiChildSessionService.d.mts.map +0 -1
  1142. package/dist/terminalPiChildSessionService.mjs +0 -318
  1143. package/dist/terminalPiChildSessionService.mjs.map +0 -1
  1144. package/dist/v3Export.cjs +0 -10
  1145. package/dist/v3Export.cjs.map +0 -1
  1146. package/dist/v3Export.d.mts +0 -35
  1147. package/dist/v3Export.d.mts.map +0 -1
  1148. package/dist/v3Export.mjs +0 -9
  1149. package/dist/v3Export.mjs.map +0 -1
@@ -2,24 +2,24 @@ import { Type } from "typebox";
2
2
  import { Check, Errors } from "typebox/value";
3
3
  //#region src/schemas/help.ts
4
4
  /** Provider-owned Cordis service for the live Help catalog. */
5
- const DOOM_HELP_SERVICE = "doom/help";
6
- const DOOM_HELP_WHEN = {
5
+ const PO_HELP_SERVICE = "po/help";
6
+ const PO_HELP_WHEN = {
7
7
  state: { "minor-mode": "help" },
8
8
  attribution: {
9
9
  kind: "minor",
10
10
  mode: "help"
11
11
  }
12
12
  };
13
- const DOOM_HELP_MAX_CONTRIBUTORS = 32;
14
- const DOOM_HELP_MAX_SKILLS = 64;
15
- const DOOM_HELP_MAX_DIAGNOSTICS = 64;
16
- const DOOM_HELP_MAX_DESCRIPTION_LENGTH = 512;
17
- const DOOM_HELP_MAX_DIAGNOSTIC_LENGTH = 512;
13
+ const PO_HELP_MAX_CONTRIBUTORS = 32;
14
+ const PO_HELP_MAX_SKILLS = 64;
15
+ const PO_HELP_MAX_DIAGNOSTICS = 64;
16
+ const PO_HELP_MAX_DESCRIPTION_LENGTH = 512;
17
+ const PO_HELP_MAX_DIAGNOSTIC_LENGTH = 512;
18
18
  const MAX_SOURCE_LENGTH = 128;
19
19
  const MAX_SKILL_NAME_LENGTH = 64;
20
20
  const MAX_MODULE_URL_LENGTH = 4096;
21
21
  const MAX_IDENTIFIER_LENGTH = 256;
22
- const DOOM_HELP_ERROR_CODE = {
22
+ const PO_HELP_ERROR_CODE = {
23
23
  contributorLimit: "HELP_CONTRIBUTOR_LIMIT",
24
24
  disposed: "HELP_DISPOSED",
25
25
  duplicateSkill: "HELP_DUPLICATE_SKILL",
@@ -28,38 +28,38 @@ const DOOM_HELP_ERROR_CODE = {
28
28
  invalidGeneration: "HELP_INVALID_GENERATION",
29
29
  invalidSnapshot: "HELP_INVALID_SNAPSHOT"
30
30
  };
31
- var DoomHelpError = class extends Error {
31
+ var PoHelpError = class extends Error {
32
32
  code;
33
33
  constructor(code, message) {
34
34
  super(message);
35
- this.name = "DoomHelpError";
35
+ this.name = "PoHelpError";
36
36
  this.code = code;
37
37
  }
38
38
  };
39
- const DoomHelpSourceSchema = Type.String({
39
+ const PoHelpSourceSchema = Type.String({
40
40
  minLength: 1,
41
41
  maxLength: MAX_SOURCE_LENGTH,
42
42
  pattern: "^[A-Za-z0-9@][A-Za-z0-9@/._:-]*$"
43
43
  });
44
- const DoomHelpSkillNameSchema = Type.String({
44
+ const PoHelpSkillNameSchema = Type.String({
45
45
  minLength: 1,
46
46
  maxLength: MAX_SKILL_NAME_LENGTH,
47
47
  pattern: "^[a-z0-9][a-z0-9-]*$"
48
48
  });
49
- const DoomHelpSkillDescriptorSchema = Type.Object({
50
- name: DoomHelpSkillNameSchema,
49
+ const PoHelpSkillDescriptorSchema = Type.Object({
50
+ name: PoHelpSkillNameSchema,
51
51
  description: Type.String({
52
52
  minLength: 1,
53
53
  maxLength: 512
54
54
  })
55
55
  }, { additionalProperties: false });
56
- const DoomHelpContributionSchema = Type.Object({
57
- source: DoomHelpSourceSchema,
56
+ const PoHelpContributionSchema = Type.Object({
57
+ source: PoHelpSourceSchema,
58
58
  moduleUrl: Type.String({
59
59
  minLength: 1,
60
60
  maxLength: MAX_MODULE_URL_LENGTH
61
61
  }),
62
- skills: Type.Array(DoomHelpSkillDescriptorSchema, {
62
+ skills: Type.Array(PoHelpSkillDescriptorSchema, {
63
63
  minItems: 1,
64
64
  maxItems: 64
65
65
  })
@@ -68,15 +68,15 @@ const GenerationSchema = Type.String({
68
68
  minLength: 1,
69
69
  maxLength: MAX_IDENTIFIER_LENGTH
70
70
  });
71
- const DoomHelpActivationSchema = Type.Union([
71
+ const PoHelpActivationSchema = Type.Union([
72
72
  Type.Literal("inactive"),
73
73
  Type.Literal("activating"),
74
74
  Type.Literal("active"),
75
75
  Type.Literal("degraded")
76
76
  ]);
77
- const DoomHelpSkillSchema = Type.Object({
78
- source: DoomHelpSourceSchema,
79
- name: DoomHelpSkillNameSchema,
77
+ const PoHelpSkillSchema = Type.Object({
78
+ source: PoHelpSourceSchema,
79
+ name: PoHelpSkillNameSchema,
80
80
  description: Type.String({
81
81
  minLength: 1,
82
82
  maxLength: 512
@@ -90,8 +90,8 @@ const DoomHelpSkillSchema = Type.Object({
90
90
  maxLength: MAX_MODULE_URL_LENGTH
91
91
  })
92
92
  }, { additionalProperties: false });
93
- const DoomHelpDiagnosticSchema = Type.Object({
94
- source: Type.Optional(DoomHelpSourceSchema),
93
+ const PoHelpDiagnosticSchema = Type.Object({
94
+ source: Type.Optional(PoHelpSourceSchema),
95
95
  code: Type.String({
96
96
  minLength: 1,
97
97
  maxLength: 64,
@@ -102,12 +102,12 @@ const DoomHelpDiagnosticSchema = Type.Object({
102
102
  maxLength: 512
103
103
  })
104
104
  }, { additionalProperties: false });
105
- const DoomHelpSnapshotSchema = Type.Object({
105
+ const PoHelpSnapshotSchema = Type.Object({
106
106
  hostGeneration: GenerationSchema,
107
107
  revision: Type.Integer({ minimum: 0 }),
108
- activation: DoomHelpActivationSchema,
109
- skills: Type.Array(DoomHelpSkillSchema, { maxItems: 64 }),
110
- diagnostics: Type.Array(DoomHelpDiagnosticSchema, { maxItems: 64 })
108
+ activation: PoHelpActivationSchema,
109
+ skills: Type.Array(PoHelpSkillSchema, { maxItems: 64 }),
110
+ diagnostics: Type.Array(PoHelpDiagnosticSchema, { maxItems: 64 })
111
111
  }, { additionalProperties: false });
112
112
  function schemaFailure(schema, value) {
113
113
  const [first] = Errors(schema, value);
@@ -128,17 +128,17 @@ function cloneSnapshot(snapshot) {
128
128
  };
129
129
  }
130
130
  function validateContribution(contribution) {
131
- if (!Check(DoomHelpContributionSchema, contribution)) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.invalidContribution, `Invalid Help contribution${schemaFailure(DoomHelpContributionSchema, contribution)}.`);
131
+ if (!Check(PoHelpContributionSchema, contribution)) throw new PoHelpError(PO_HELP_ERROR_CODE.invalidContribution, `Invalid Help contribution${schemaFailure(PoHelpContributionSchema, contribution)}.`);
132
132
  const names = /* @__PURE__ */ new Set();
133
133
  for (const skill of contribution.skills) {
134
- if (names.has(skill.name)) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.duplicateSkill, `Help contribution '${contribution.source}' declares duplicate skill '${skill.name}'.`);
134
+ if (names.has(skill.name)) throw new PoHelpError(PO_HELP_ERROR_CODE.duplicateSkill, `Help contribution '${contribution.source}' declares duplicate skill '${skill.name}'.`);
135
135
  names.add(skill.name);
136
136
  }
137
137
  return cloneContribution(contribution);
138
138
  }
139
139
  /** Creates the provider-owned Help service value for one Cordis session. */
140
- function createDoomHelpService(generation) {
141
- if (!Check(GenerationSchema, generation)) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.invalidGeneration, "Doom Help requires a valid generation.");
140
+ function createPoHelpService(generation) {
141
+ if (!Check(GenerationSchema, generation)) throw new PoHelpError(PO_HELP_ERROR_CODE.invalidGeneration, "Po Help requires a valid generation.");
142
142
  const contributions = /* @__PURE__ */ new Map();
143
143
  const contributionListeners = /* @__PURE__ */ new Set();
144
144
  const snapshotListeners = /* @__PURE__ */ new Set();
@@ -153,7 +153,7 @@ function createDoomHelpService(generation) {
153
153
  diagnostics: []
154
154
  };
155
155
  const ensureActive = () => {
156
- if (disposed) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.disposed, "The Doom Help service is disposed.");
156
+ if (disposed) throw new PoHelpError(PO_HELP_ERROR_CODE.disposed, "The Po Help service is disposed.");
157
157
  };
158
158
  const list = () => [...contributions.values()].map(({ contribution }) => cloneContribution(contribution)).sort((left, right) => left.source.localeCompare(right.source));
159
159
  const notifyContributions = () => {
@@ -165,7 +165,7 @@ function createDoomHelpService(generation) {
165
165
  register(contribution) {
166
166
  ensureActive();
167
167
  const validated = validateContribution(contribution);
168
- if (!contributions.has(validated.source) && contributions.size >= 32) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.contributorLimit, `Help accepts at most 32 contributors.`);
168
+ if (!contributions.has(validated.source) && contributions.size >= 32) throw new PoHelpError(PO_HELP_ERROR_CODE.contributorLimit, `Help accepts at most 32 contributors.`);
169
169
  registrationSequence += 1;
170
170
  const token = Symbol(validated.source);
171
171
  const registrationGeneration = `${generation}:help:${registrationSequence}`;
@@ -197,7 +197,7 @@ function createDoomHelpService(generation) {
197
197
  getSnapshot: () => cloneSnapshot(snapshot),
198
198
  publish(draft) {
199
199
  ensureActive();
200
- if (draft.activation === "inactive" && draft.skills.length > 0) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.inactiveSnapshot, "Inactive Help snapshots cannot expose skills.");
200
+ if (draft.activation === "inactive" && draft.skills.length > 0) throw new PoHelpError(PO_HELP_ERROR_CODE.inactiveSnapshot, "Inactive Help snapshots cannot expose skills.");
201
201
  const next = {
202
202
  hostGeneration: generation,
203
203
  revision: snapshot.revision + 1,
@@ -205,7 +205,7 @@ function createDoomHelpService(generation) {
205
205
  skills: draft.skills.map((skill) => ({ ...skill })),
206
206
  diagnostics: draft.diagnostics.map((diagnostic) => ({ ...diagnostic }))
207
207
  };
208
- if (!Check(DoomHelpSnapshotSchema, next)) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.invalidSnapshot, `Invalid Help snapshot${schemaFailure(DoomHelpSnapshotSchema, next)}.`);
208
+ if (!Check(PoHelpSnapshotSchema, next)) throw new PoHelpError(PO_HELP_ERROR_CODE.invalidSnapshot, `Invalid Help snapshot${schemaFailure(PoHelpSnapshotSchema, next)}.`);
209
209
  snapshot = next;
210
210
  const published = cloneSnapshot(snapshot);
211
211
  for (const listener of snapshotListeners) listener(cloneSnapshot(published));
@@ -248,15 +248,15 @@ function createDoomHelpService(generation) {
248
248
  }
249
249
  });
250
250
  }
251
- function readDoomHelpService(context) {
252
- return context.get(DOOM_HELP_SERVICE);
251
+ function readPoHelpService(context) {
252
+ return context.get(PO_HELP_SERVICE);
253
253
  }
254
- function requireDoomHelpService(context) {
255
- const service = readDoomHelpService(context);
256
- if (!service) throw new Error("Doom Help is unavailable. Load @agimon-ai/po-help.");
254
+ function requirePoHelpService(context) {
255
+ const service = readPoHelpService(context);
256
+ if (!service) throw new Error("Po Help is unavailable. Load @agimon-ai/po-help.");
257
257
  return service;
258
258
  }
259
259
  //#endregion
260
- export { DOOM_HELP_ERROR_CODE, DOOM_HELP_MAX_CONTRIBUTORS, DOOM_HELP_MAX_DESCRIPTION_LENGTH, DOOM_HELP_MAX_DIAGNOSTICS, DOOM_HELP_MAX_DIAGNOSTIC_LENGTH, DOOM_HELP_MAX_SKILLS, DOOM_HELP_SERVICE, DOOM_HELP_WHEN, DoomHelpActivationSchema, DoomHelpContributionSchema, DoomHelpDiagnosticSchema, DoomHelpError, DoomHelpSkillDescriptorSchema, DoomHelpSkillNameSchema, DoomHelpSkillSchema, DoomHelpSnapshotSchema, DoomHelpSourceSchema, createDoomHelpService, readDoomHelpService, requireDoomHelpService };
260
+ export { PO_HELP_ERROR_CODE, PO_HELP_MAX_CONTRIBUTORS, PO_HELP_MAX_DESCRIPTION_LENGTH, PO_HELP_MAX_DIAGNOSTICS, PO_HELP_MAX_DIAGNOSTIC_LENGTH, PO_HELP_MAX_SKILLS, PO_HELP_SERVICE, PO_HELP_WHEN, PoHelpActivationSchema, PoHelpContributionSchema, PoHelpDiagnosticSchema, PoHelpError, PoHelpSkillDescriptorSchema, PoHelpSkillNameSchema, PoHelpSkillSchema, PoHelpSnapshotSchema, PoHelpSourceSchema, createPoHelpService, readPoHelpService, requirePoHelpService };
261
261
 
262
262
  //# sourceMappingURL=help.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"help.mjs","names":[],"sources":["../../../src/schemas/help.ts"],"sourcesContent":["import type { Context } from '@deepseek-ai/cordis';\nimport { type Static, Type } from 'typebox';\nimport { Check, Errors } from 'typebox/value';\n\n/** Provider-owned Cordis service for the live Help catalog. */\nexport const DOOM_HELP_SERVICE = 'doom/help';\nexport const DOOM_HELP_WHEN = {\n state: { 'minor-mode': 'help' },\n attribution: { kind: 'minor', mode: 'help' },\n} as const;\nexport const DOOM_HELP_MAX_CONTRIBUTORS = 32;\nexport const DOOM_HELP_MAX_SKILLS = 64;\nexport const DOOM_HELP_MAX_DIAGNOSTICS = 64;\nexport const DOOM_HELP_MAX_DESCRIPTION_LENGTH = 512;\nexport const DOOM_HELP_MAX_DIAGNOSTIC_LENGTH = 512;\n\nconst MAX_SOURCE_LENGTH = 128;\nconst MAX_SKILL_NAME_LENGTH = 64;\nconst MAX_MODULE_URL_LENGTH = 4_096;\nconst MAX_IDENTIFIER_LENGTH = 256;\n\nexport const DOOM_HELP_ERROR_CODE = {\n contributorLimit: 'HELP_CONTRIBUTOR_LIMIT',\n disposed: 'HELP_DISPOSED',\n duplicateSkill: 'HELP_DUPLICATE_SKILL',\n inactiveSnapshot: 'HELP_INACTIVE_SNAPSHOT',\n invalidContribution: 'HELP_INVALID_CONTRIBUTION',\n invalidGeneration: 'HELP_INVALID_GENERATION',\n invalidSnapshot: 'HELP_INVALID_SNAPSHOT',\n} as const;\n\nexport type DoomHelpErrorCode = (typeof DOOM_HELP_ERROR_CODE)[keyof typeof DOOM_HELP_ERROR_CODE];\n\nexport class DoomHelpError extends Error {\n readonly code: DoomHelpErrorCode;\n\n constructor(code: DoomHelpErrorCode, message: string) {\n super(message);\n this.name = 'DoomHelpError';\n this.code = code;\n }\n}\n\nexport const DoomHelpSourceSchema = Type.String({\n minLength: 1,\n maxLength: MAX_SOURCE_LENGTH,\n pattern: '^[A-Za-z0-9@][A-Za-z0-9@/._:-]*$',\n});\n\nexport const DoomHelpSkillNameSchema = Type.String({\n minLength: 1,\n maxLength: MAX_SKILL_NAME_LENGTH,\n pattern: '^[a-z0-9][a-z0-9-]*$',\n});\n\nexport const DoomHelpSkillDescriptorSchema = Type.Object(\n {\n name: DoomHelpSkillNameSchema,\n description: Type.String({ minLength: 1, maxLength: DOOM_HELP_MAX_DESCRIPTION_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type DoomHelpSkillDescriptor = Static<typeof DoomHelpSkillDescriptorSchema>;\n\nexport const DoomHelpContributionSchema = Type.Object(\n {\n source: DoomHelpSourceSchema,\n moduleUrl: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n skills: Type.Array(DoomHelpSkillDescriptorSchema, { minItems: 1, maxItems: DOOM_HELP_MAX_SKILLS }),\n },\n { additionalProperties: false },\n);\nexport type DoomHelpContribution = Static<typeof DoomHelpContributionSchema>;\n\nconst GenerationSchema = Type.String({ minLength: 1, maxLength: MAX_IDENTIFIER_LENGTH });\n\nexport const DoomHelpActivationSchema = Type.Union([\n Type.Literal('inactive'),\n Type.Literal('activating'),\n Type.Literal('active'),\n Type.Literal('degraded'),\n]);\nexport type DoomHelpActivation = Static<typeof DoomHelpActivationSchema>;\n\nexport const DoomHelpSkillSchema = Type.Object(\n {\n source: DoomHelpSourceSchema,\n name: DoomHelpSkillNameSchema,\n description: Type.String({ minLength: 1, maxLength: DOOM_HELP_MAX_DESCRIPTION_LENGTH }),\n filePath: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n baseDir: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type DoomHelpSkill = Static<typeof DoomHelpSkillSchema>;\n\nexport const DoomHelpDiagnosticSchema = Type.Object(\n {\n source: Type.Optional(DoomHelpSourceSchema),\n code: Type.String({ minLength: 1, maxLength: 64, pattern: '^[A-Z0-9_]+$' }),\n message: Type.String({ minLength: 1, maxLength: DOOM_HELP_MAX_DIAGNOSTIC_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type DoomHelpDiagnostic = Static<typeof DoomHelpDiagnosticSchema>;\n\nexport const DoomHelpSnapshotSchema = Type.Object(\n {\n hostGeneration: GenerationSchema,\n revision: Type.Integer({ minimum: 0 }),\n activation: DoomHelpActivationSchema,\n skills: Type.Array(DoomHelpSkillSchema, { maxItems: DOOM_HELP_MAX_SKILLS }),\n diagnostics: Type.Array(DoomHelpDiagnosticSchema, { maxItems: DOOM_HELP_MAX_DIAGNOSTICS }),\n },\n { additionalProperties: false },\n);\nexport type DoomHelpSnapshot = Static<typeof DoomHelpSnapshotSchema>;\n\nexport interface DoomHelpSnapshotDraft {\n readonly activation: DoomHelpActivation;\n readonly skills: readonly DoomHelpSkill[];\n readonly diagnostics: readonly DoomHelpDiagnostic[];\n}\n\nexport interface DoomHelpContributionHandle {\n readonly source: string;\n readonly generation: string;\n dispose(): void;\n}\n\n/** Direct, session-local registrar and query surface owned by po-help. */\nexport interface DoomHelpService {\n readonly generation: string;\n register(contribution: DoomHelpContribution): DoomHelpContributionHandle;\n listContributions(): readonly DoomHelpContribution[];\n subscribeContributions(listener: (contributions: readonly DoomHelpContribution[]) => void): () => void;\n getSnapshot(): DoomHelpSnapshot;\n publish(snapshot: DoomHelpSnapshotDraft): DoomHelpSnapshot;\n subscribeSnapshot(listener: (snapshot: DoomHelpSnapshot) => void): () => void;\n /** Bind the skill consumer's accepted file paths, without duplicating its inventory. */\n bindSkillInventory(read: () => Promise<readonly string[] | undefined>): () => void;\n /** Accepted Help skills, or undefined while the consumer is absent, discovering, or superseded. */\n inspectSkills(): Promise<readonly DoomHelpSkill[] | undefined>;\n dispose(): void;\n}\n\ndeclare module '@deepseek-ai/cordis' {\n interface Context {\n 'doom/help': DoomHelpService;\n }\n}\n\ninterface RegisteredContribution {\n readonly token: symbol;\n readonly generation: string;\n readonly contribution: DoomHelpContribution;\n}\n\nfunction schemaFailure(\n schema: typeof DoomHelpContributionSchema | typeof DoomHelpSnapshotSchema,\n value: unknown,\n): string {\n const [first] = Errors(schema, value);\n return first ? ` at ${first.instancePath || '/'}: ${first.message}` : '';\n}\n\nfunction cloneContribution(contribution: DoomHelpContribution): DoomHelpContribution {\n return {\n source: contribution.source,\n moduleUrl: contribution.moduleUrl,\n skills: contribution.skills.map((skill) => ({ ...skill })),\n };\n}\n\nfunction cloneSnapshot(snapshot: DoomHelpSnapshot): DoomHelpSnapshot {\n return {\n ...snapshot,\n skills: snapshot.skills.map((skill) => ({ ...skill })),\n diagnostics: snapshot.diagnostics.map((diagnostic) => ({ ...diagnostic })),\n };\n}\n\nfunction validateContribution(contribution: DoomHelpContribution): DoomHelpContribution {\n if (!Check(DoomHelpContributionSchema, contribution)) {\n throw new DoomHelpError(\n DOOM_HELP_ERROR_CODE.invalidContribution,\n `Invalid Help contribution${schemaFailure(DoomHelpContributionSchema, contribution)}.`,\n );\n }\n const names = new Set<string>();\n for (const skill of contribution.skills) {\n if (names.has(skill.name)) {\n throw new DoomHelpError(\n DOOM_HELP_ERROR_CODE.duplicateSkill,\n `Help contribution '${contribution.source}' declares duplicate skill '${skill.name}'.`,\n );\n }\n names.add(skill.name);\n }\n return cloneContribution(contribution);\n}\n\n/** Creates the provider-owned Help service value for one Cordis session. */\nexport function createDoomHelpService(generation: string): DoomHelpService {\n if (!Check(GenerationSchema, generation)) {\n throw new DoomHelpError(DOOM_HELP_ERROR_CODE.invalidGeneration, 'Doom Help requires a valid generation.');\n }\n\n const contributions = new Map<string, RegisteredContribution>();\n const contributionListeners = new Set<(value: readonly DoomHelpContribution[]) => void>();\n const snapshotListeners = new Set<(value: DoomHelpSnapshot) => void>();\n let registrationSequence = 0;\n let disposed = false;\n let skillInventory: { token: symbol; read: () => Promise<readonly string[] | undefined> } | undefined;\n let snapshot: DoomHelpSnapshot = {\n hostGeneration: generation,\n revision: 0,\n activation: 'inactive',\n skills: [],\n diagnostics: [],\n };\n\n const ensureActive = (): void => {\n if (disposed) throw new DoomHelpError(DOOM_HELP_ERROR_CODE.disposed, 'The Doom Help service is disposed.');\n };\n const list = (): readonly DoomHelpContribution[] =>\n [...contributions.values()]\n .map(({ contribution }) => cloneContribution(contribution))\n .sort((left, right) => left.source.localeCompare(right.source));\n const notifyContributions = (): void => {\n const value = list();\n for (const listener of contributionListeners) listener(value);\n };\n\n const service: DoomHelpService = {\n generation,\n register(contribution) {\n ensureActive();\n const validated = validateContribution(contribution);\n if (!contributions.has(validated.source) && contributions.size >= DOOM_HELP_MAX_CONTRIBUTORS) {\n throw new DoomHelpError(\n DOOM_HELP_ERROR_CODE.contributorLimit,\n `Help accepts at most ${DOOM_HELP_MAX_CONTRIBUTORS} contributors.`,\n );\n }\n registrationSequence += 1;\n const token = Symbol(validated.source);\n const registrationGeneration = `${generation}:help:${registrationSequence}`;\n contributions.set(validated.source, {\n token,\n generation: registrationGeneration,\n contribution: validated,\n });\n notifyContributions();\n let registrationDisposed = false;\n return Object.freeze({\n source: validated.source,\n generation: registrationGeneration,\n dispose() {\n if (registrationDisposed) return;\n registrationDisposed = true;\n if (contributions.get(validated.source)?.token !== token) return;\n contributions.delete(validated.source);\n notifyContributions();\n },\n });\n },\n listContributions: list,\n subscribeContributions(listener) {\n ensureActive();\n contributionListeners.add(listener);\n return () => contributionListeners.delete(listener);\n },\n getSnapshot: () => cloneSnapshot(snapshot),\n publish(draft) {\n ensureActive();\n if (draft.activation === 'inactive' && draft.skills.length > 0) {\n throw new DoomHelpError(DOOM_HELP_ERROR_CODE.inactiveSnapshot, 'Inactive Help snapshots cannot expose skills.');\n }\n const next: DoomHelpSnapshot = {\n hostGeneration: generation,\n revision: snapshot.revision + 1,\n activation: draft.activation,\n skills: draft.skills.map((skill) => ({ ...skill })),\n diagnostics: draft.diagnostics.map((diagnostic) => ({ ...diagnostic })),\n };\n if (!Check(DoomHelpSnapshotSchema, next)) {\n throw new DoomHelpError(\n DOOM_HELP_ERROR_CODE.invalidSnapshot,\n `Invalid Help snapshot${schemaFailure(DoomHelpSnapshotSchema, next)}.`,\n );\n }\n snapshot = next;\n const published = cloneSnapshot(snapshot);\n for (const listener of snapshotListeners) listener(cloneSnapshot(published));\n return published;\n },\n subscribeSnapshot(listener) {\n ensureActive();\n snapshotListeners.add(listener);\n return () => snapshotListeners.delete(listener);\n },\n bindSkillInventory(read) {\n ensureActive();\n const token = Symbol('help-skill-inventory');\n skillInventory = { token, read };\n return () => {\n if (skillInventory?.token === token) skillInventory = undefined;\n };\n },\n async inspectSkills() {\n if (disposed) return undefined;\n if (snapshot.activation === 'inactive') return [];\n const reader = skillInventory;\n if (!reader) return undefined;\n const revision = snapshot.revision;\n const paths = await reader.read();\n if (disposed || reader !== skillInventory || revision !== snapshot.revision || paths === undefined)\n return undefined;\n const accepted = new Set(paths);\n return snapshot.skills.filter((skill) => accepted.has(skill.filePath)).map((skill) => ({ ...skill }));\n },\n dispose() {\n if (disposed) return;\n disposed = true;\n skillInventory = undefined;\n contributions.clear();\n contributionListeners.clear();\n snapshotListeners.clear();\n },\n };\n return Object.freeze(service);\n}\n\nexport function readDoomHelpService(context: Context): DoomHelpService | undefined {\n return context.get(DOOM_HELP_SERVICE) as DoomHelpService | undefined;\n}\n\nexport function requireDoomHelpService(context: Context): DoomHelpService {\n const service = readDoomHelpService(context);\n if (!service) throw new Error('Doom Help is unavailable. Load @agimon-ai/po-help.');\n return service;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"help.mjs","names":[],"sources":["../../../src/schemas/help.ts"],"sourcesContent":["import type { Context } from '@deepseek-ai/cordis';\nimport { type Static, Type } from 'typebox';\nimport { Check, Errors } from 'typebox/value';\n\n/** Provider-owned Cordis service for the live Help catalog. */\nexport const PO_HELP_SERVICE = 'po/help';\nexport const PO_HELP_WHEN = {\n state: { 'minor-mode': 'help' },\n attribution: { kind: 'minor', mode: 'help' },\n} as const;\nexport const PO_HELP_MAX_CONTRIBUTORS = 32;\nexport const PO_HELP_MAX_SKILLS = 64;\nexport const PO_HELP_MAX_DIAGNOSTICS = 64;\nexport const PO_HELP_MAX_DESCRIPTION_LENGTH = 512;\nexport const PO_HELP_MAX_DIAGNOSTIC_LENGTH = 512;\n\nconst MAX_SOURCE_LENGTH = 128;\nconst MAX_SKILL_NAME_LENGTH = 64;\nconst MAX_MODULE_URL_LENGTH = 4_096;\nconst MAX_IDENTIFIER_LENGTH = 256;\n\nexport const PO_HELP_ERROR_CODE = {\n contributorLimit: 'HELP_CONTRIBUTOR_LIMIT',\n disposed: 'HELP_DISPOSED',\n duplicateSkill: 'HELP_DUPLICATE_SKILL',\n inactiveSnapshot: 'HELP_INACTIVE_SNAPSHOT',\n invalidContribution: 'HELP_INVALID_CONTRIBUTION',\n invalidGeneration: 'HELP_INVALID_GENERATION',\n invalidSnapshot: 'HELP_INVALID_SNAPSHOT',\n} as const;\n\nexport type PoHelpErrorCode = (typeof PO_HELP_ERROR_CODE)[keyof typeof PO_HELP_ERROR_CODE];\n\nexport class PoHelpError extends Error {\n readonly code: PoHelpErrorCode;\n\n constructor(code: PoHelpErrorCode, message: string) {\n super(message);\n this.name = 'PoHelpError';\n this.code = code;\n }\n}\n\nexport const PoHelpSourceSchema = Type.String({\n minLength: 1,\n maxLength: MAX_SOURCE_LENGTH,\n pattern: '^[A-Za-z0-9@][A-Za-z0-9@/._:-]*$',\n});\n\nexport const PoHelpSkillNameSchema = Type.String({\n minLength: 1,\n maxLength: MAX_SKILL_NAME_LENGTH,\n pattern: '^[a-z0-9][a-z0-9-]*$',\n});\n\nexport const PoHelpSkillDescriptorSchema = Type.Object(\n {\n name: PoHelpSkillNameSchema,\n description: Type.String({ minLength: 1, maxLength: PO_HELP_MAX_DESCRIPTION_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type PoHelpSkillDescriptor = Static<typeof PoHelpSkillDescriptorSchema>;\n\nexport const PoHelpContributionSchema = Type.Object(\n {\n source: PoHelpSourceSchema,\n moduleUrl: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n skills: Type.Array(PoHelpSkillDescriptorSchema, { minItems: 1, maxItems: PO_HELP_MAX_SKILLS }),\n },\n { additionalProperties: false },\n);\nexport type PoHelpContribution = Static<typeof PoHelpContributionSchema>;\n\nconst GenerationSchema = Type.String({ minLength: 1, maxLength: MAX_IDENTIFIER_LENGTH });\n\nexport const PoHelpActivationSchema = Type.Union([\n Type.Literal('inactive'),\n Type.Literal('activating'),\n Type.Literal('active'),\n Type.Literal('degraded'),\n]);\nexport type PoHelpActivation = Static<typeof PoHelpActivationSchema>;\n\nexport const PoHelpSkillSchema = Type.Object(\n {\n source: PoHelpSourceSchema,\n name: PoHelpSkillNameSchema,\n description: Type.String({ minLength: 1, maxLength: PO_HELP_MAX_DESCRIPTION_LENGTH }),\n filePath: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n baseDir: Type.String({ minLength: 1, maxLength: MAX_MODULE_URL_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type PoHelpSkill = Static<typeof PoHelpSkillSchema>;\n\nexport const PoHelpDiagnosticSchema = Type.Object(\n {\n source: Type.Optional(PoHelpSourceSchema),\n code: Type.String({ minLength: 1, maxLength: 64, pattern: '^[A-Z0-9_]+$' }),\n message: Type.String({ minLength: 1, maxLength: PO_HELP_MAX_DIAGNOSTIC_LENGTH }),\n },\n { additionalProperties: false },\n);\nexport type PoHelpDiagnostic = Static<typeof PoHelpDiagnosticSchema>;\n\nexport const PoHelpSnapshotSchema = Type.Object(\n {\n hostGeneration: GenerationSchema,\n revision: Type.Integer({ minimum: 0 }),\n activation: PoHelpActivationSchema,\n skills: Type.Array(PoHelpSkillSchema, { maxItems: PO_HELP_MAX_SKILLS }),\n diagnostics: Type.Array(PoHelpDiagnosticSchema, { maxItems: PO_HELP_MAX_DIAGNOSTICS }),\n },\n { additionalProperties: false },\n);\nexport type PoHelpSnapshot = Static<typeof PoHelpSnapshotSchema>;\n\nexport interface PoHelpSnapshotDraft {\n readonly activation: PoHelpActivation;\n readonly skills: readonly PoHelpSkill[];\n readonly diagnostics: readonly PoHelpDiagnostic[];\n}\n\nexport interface PoHelpContributionHandle {\n readonly source: string;\n readonly generation: string;\n dispose(): void;\n}\n\n/** Direct, session-local registrar and query surface owned by po-help. */\nexport interface PoHelpService {\n readonly generation: string;\n register(contribution: PoHelpContribution): PoHelpContributionHandle;\n listContributions(): readonly PoHelpContribution[];\n subscribeContributions(listener: (contributions: readonly PoHelpContribution[]) => void): () => void;\n getSnapshot(): PoHelpSnapshot;\n publish(snapshot: PoHelpSnapshotDraft): PoHelpSnapshot;\n subscribeSnapshot(listener: (snapshot: PoHelpSnapshot) => void): () => void;\n /** Bind the skill consumer's accepted file paths, without duplicating its inventory. */\n bindSkillInventory(read: () => Promise<readonly string[] | undefined>): () => void;\n /** Accepted Help skills, or undefined while the consumer is absent, discovering, or superseded. */\n inspectSkills(): Promise<readonly PoHelpSkill[] | undefined>;\n dispose(): void;\n}\n\ndeclare module '@deepseek-ai/cordis' {\n interface Context {\n 'po/help': PoHelpService;\n }\n}\n\ninterface RegisteredContribution {\n readonly token: symbol;\n readonly generation: string;\n readonly contribution: PoHelpContribution;\n}\n\nfunction schemaFailure(schema: typeof PoHelpContributionSchema | typeof PoHelpSnapshotSchema, value: unknown): string {\n const [first] = Errors(schema, value);\n return first ? ` at ${first.instancePath || '/'}: ${first.message}` : '';\n}\n\nfunction cloneContribution(contribution: PoHelpContribution): PoHelpContribution {\n return {\n source: contribution.source,\n moduleUrl: contribution.moduleUrl,\n skills: contribution.skills.map((skill) => ({ ...skill })),\n };\n}\n\nfunction cloneSnapshot(snapshot: PoHelpSnapshot): PoHelpSnapshot {\n return {\n ...snapshot,\n skills: snapshot.skills.map((skill) => ({ ...skill })),\n diagnostics: snapshot.diagnostics.map((diagnostic) => ({ ...diagnostic })),\n };\n}\n\nfunction validateContribution(contribution: PoHelpContribution): PoHelpContribution {\n if (!Check(PoHelpContributionSchema, contribution)) {\n throw new PoHelpError(\n PO_HELP_ERROR_CODE.invalidContribution,\n `Invalid Help contribution${schemaFailure(PoHelpContributionSchema, contribution)}.`,\n );\n }\n const names = new Set<string>();\n for (const skill of contribution.skills) {\n if (names.has(skill.name)) {\n throw new PoHelpError(\n PO_HELP_ERROR_CODE.duplicateSkill,\n `Help contribution '${contribution.source}' declares duplicate skill '${skill.name}'.`,\n );\n }\n names.add(skill.name);\n }\n return cloneContribution(contribution);\n}\n\n/** Creates the provider-owned Help service value for one Cordis session. */\nexport function createPoHelpService(generation: string): PoHelpService {\n if (!Check(GenerationSchema, generation)) {\n throw new PoHelpError(PO_HELP_ERROR_CODE.invalidGeneration, 'Po Help requires a valid generation.');\n }\n\n const contributions = new Map<string, RegisteredContribution>();\n const contributionListeners = new Set<(value: readonly PoHelpContribution[]) => void>();\n const snapshotListeners = new Set<(value: PoHelpSnapshot) => void>();\n let registrationSequence = 0;\n let disposed = false;\n let skillInventory: { token: symbol; read: () => Promise<readonly string[] | undefined> } | undefined;\n let snapshot: PoHelpSnapshot = {\n hostGeneration: generation,\n revision: 0,\n activation: 'inactive',\n skills: [],\n diagnostics: [],\n };\n\n const ensureActive = (): void => {\n if (disposed) throw new PoHelpError(PO_HELP_ERROR_CODE.disposed, 'The Po Help service is disposed.');\n };\n const list = (): readonly PoHelpContribution[] =>\n [...contributions.values()]\n .map(({ contribution }) => cloneContribution(contribution))\n .sort((left, right) => left.source.localeCompare(right.source));\n const notifyContributions = (): void => {\n const value = list();\n for (const listener of contributionListeners) listener(value);\n };\n\n const service: PoHelpService = {\n generation,\n register(contribution) {\n ensureActive();\n const validated = validateContribution(contribution);\n if (!contributions.has(validated.source) && contributions.size >= PO_HELP_MAX_CONTRIBUTORS) {\n throw new PoHelpError(\n PO_HELP_ERROR_CODE.contributorLimit,\n `Help accepts at most ${PO_HELP_MAX_CONTRIBUTORS} contributors.`,\n );\n }\n registrationSequence += 1;\n const token = Symbol(validated.source);\n const registrationGeneration = `${generation}:help:${registrationSequence}`;\n contributions.set(validated.source, {\n token,\n generation: registrationGeneration,\n contribution: validated,\n });\n notifyContributions();\n let registrationDisposed = false;\n return Object.freeze({\n source: validated.source,\n generation: registrationGeneration,\n dispose() {\n if (registrationDisposed) return;\n registrationDisposed = true;\n if (contributions.get(validated.source)?.token !== token) return;\n contributions.delete(validated.source);\n notifyContributions();\n },\n });\n },\n listContributions: list,\n subscribeContributions(listener) {\n ensureActive();\n contributionListeners.add(listener);\n return () => contributionListeners.delete(listener);\n },\n getSnapshot: () => cloneSnapshot(snapshot),\n publish(draft) {\n ensureActive();\n if (draft.activation === 'inactive' && draft.skills.length > 0) {\n throw new PoHelpError(PO_HELP_ERROR_CODE.inactiveSnapshot, 'Inactive Help snapshots cannot expose skills.');\n }\n const next: PoHelpSnapshot = {\n hostGeneration: generation,\n revision: snapshot.revision + 1,\n activation: draft.activation,\n skills: draft.skills.map((skill) => ({ ...skill })),\n diagnostics: draft.diagnostics.map((diagnostic) => ({ ...diagnostic })),\n };\n if (!Check(PoHelpSnapshotSchema, next)) {\n throw new PoHelpError(\n PO_HELP_ERROR_CODE.invalidSnapshot,\n `Invalid Help snapshot${schemaFailure(PoHelpSnapshotSchema, next)}.`,\n );\n }\n snapshot = next;\n const published = cloneSnapshot(snapshot);\n for (const listener of snapshotListeners) listener(cloneSnapshot(published));\n return published;\n },\n subscribeSnapshot(listener) {\n ensureActive();\n snapshotListeners.add(listener);\n return () => snapshotListeners.delete(listener);\n },\n bindSkillInventory(read) {\n ensureActive();\n const token = Symbol('help-skill-inventory');\n skillInventory = { token, read };\n return () => {\n if (skillInventory?.token === token) skillInventory = undefined;\n };\n },\n async inspectSkills() {\n if (disposed) return undefined;\n if (snapshot.activation === 'inactive') return [];\n const reader = skillInventory;\n if (!reader) return undefined;\n const revision = snapshot.revision;\n const paths = await reader.read();\n if (disposed || reader !== skillInventory || revision !== snapshot.revision || paths === undefined)\n return undefined;\n const accepted = new Set(paths);\n return snapshot.skills.filter((skill) => accepted.has(skill.filePath)).map((skill) => ({ ...skill }));\n },\n dispose() {\n if (disposed) return;\n disposed = true;\n skillInventory = undefined;\n contributions.clear();\n contributionListeners.clear();\n snapshotListeners.clear();\n },\n };\n return Object.freeze(service);\n}\n\nexport function readPoHelpService(context: Context): PoHelpService | undefined {\n return context.get(PO_HELP_SERVICE) as PoHelpService | undefined;\n}\n\nexport function requirePoHelpService(context: Context): PoHelpService {\n const service = readPoHelpService(context);\n if (!service) throw new Error('Po Help is unavailable. Load @agimon-ai/po-help.');\n return service;\n}\n"],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ //#region src/schemas/home.ts
2
+ const HOME_PAGE_LIMIT = 50;
3
+ const HOME_ENTITY_LIMIT = 1e3;
4
+ const HOME_KINDS = [
5
+ "decision",
6
+ "failure",
7
+ "blocked",
8
+ "running",
9
+ "queued",
10
+ "paused",
11
+ "completed"
12
+ ];
13
+ function record(input) {
14
+ return input !== null && typeof input === "object" && !Array.isArray(input);
15
+ }
16
+ function text(input, limit = 256) {
17
+ return typeof input === "string" && input.trim().length > 0 && input.length <= limit;
18
+ }
19
+ function timestamp(input) {
20
+ return text(input, 64) && Number.isFinite(Date.parse(input));
21
+ }
22
+ function coverage(input) {
23
+ return input === "ready" || input === "partial" || input === "unavailable";
24
+ }
25
+ function parseHomeContribution(input) {
26
+ if (!record(input) || input.version !== 1 || !text(input.label, 80) || !text(input.source, 128)) return null;
27
+ if (input.destination !== void 0 && !text(input.destination, 128)) return null;
28
+ return {
29
+ version: 1,
30
+ label: input.label,
31
+ source: input.source,
32
+ ...input.destination === void 0 ? {} : { destination: input.destination }
33
+ };
34
+ }
35
+ function parseHomeEntity(input) {
36
+ if (!record(input) || !text(input.id, 512) || !text(input.sessionId) || !text(input.title, 160)) return null;
37
+ if (!HOME_KINDS.includes(input.kind) || !timestamp(input.updatedAt)) return null;
38
+ if (input.detail !== void 0 && !text(input.detail, 320)) return null;
39
+ if (input.relatedSessionIds !== void 0 && (!Array.isArray(input.relatedSessionIds) || input.relatedSessionIds.length > 64 || !input.relatedSessionIds.every((id) => text(id)))) return null;
40
+ return {
41
+ id: input.id,
42
+ kind: input.kind,
43
+ title: input.title,
44
+ updatedAt: input.updatedAt,
45
+ sessionId: input.sessionId,
46
+ ...input.detail === void 0 ? {} : { detail: input.detail },
47
+ ...input.relatedSessionIds === void 0 ? {} : { relatedSessionIds: input.relatedSessionIds }
48
+ };
49
+ }
50
+ /** Reject a malformed source, rather than turning invalid records into a healthy count. */
51
+ function parseHomeProjection(input) {
52
+ if (!record(input) || !coverage(input.coverage) || !Array.isArray(input.entities) || input.entities.length > 1e3) return null;
53
+ const entities = [];
54
+ for (const value of input.entities) {
55
+ const entity = parseHomeEntity(value);
56
+ if (entity === null) return null;
57
+ entities.push(entity);
58
+ }
59
+ if (input.coverage === "unavailable" && entities.length > 0) return null;
60
+ return {
61
+ coverage: input.coverage,
62
+ entities
63
+ };
64
+ }
65
+ function parseHomeCounts(input) {
66
+ if (!record(input)) return null;
67
+ const counts = {};
68
+ for (const kind of HOME_KINDS) {
69
+ const count = input[kind];
70
+ if (!Number.isSafeInteger(count) || count < 0) return null;
71
+ counts[kind] = count;
72
+ }
73
+ return counts;
74
+ }
75
+ function parseHomeSnapshot(input) {
76
+ if (!record(input) || input.version !== 1 || !timestamp(input.observedAt) || !Array.isArray(input.items) || input.items.length > 50 || !Array.isArray(input.sources) || input.sources.length > 5e3 || !Number.isSafeInteger(input.total) || input.total < 0 || !record(input.counts)) return null;
77
+ const counts = parseHomeCounts(input.counts);
78
+ if (counts === null || counts.decision + counts.failure + counts.blocked + counts.paused !== input.total || input.items.length > input.total) return null;
79
+ const items = [];
80
+ for (const value of input.items) {
81
+ const entity = parseHomeEntity(value);
82
+ if (entity === null || ![
83
+ "decision",
84
+ "failure",
85
+ "blocked",
86
+ "paused"
87
+ ].includes(entity.kind) || !record(value) || !text(value.source, 128) || value.workspaceId !== void 0 && !text(value.workspaceId)) return null;
88
+ const { relatedSessionIds: _related, ...publicEntity } = entity;
89
+ items.push({
90
+ ...publicEntity,
91
+ source: value.source,
92
+ ...value.workspaceId === void 0 ? {} : { workspaceId: value.workspaceId }
93
+ });
94
+ }
95
+ const sources = [];
96
+ for (const value of input.sources) {
97
+ if (!record(value) || !text(value.source, 128) || !coverage(value.coverage) || value.workspaceId !== void 0 && !text(value.workspaceId)) return null;
98
+ const sourceCounts = value.counts === void 0 ? void 0 : parseHomeCounts(value.counts);
99
+ if (sourceCounts === null) return null;
100
+ sources.push({
101
+ source: value.source,
102
+ coverage: value.coverage,
103
+ ...sourceCounts === void 0 ? {} : { counts: sourceCounts },
104
+ ...value.workspaceId === void 0 ? {} : { workspaceId: value.workspaceId }
105
+ });
106
+ }
107
+ if (input.nextOffset !== void 0 && (!Number.isSafeInteger(input.nextOffset) || input.nextOffset <= 0 || input.nextOffset >= input.total)) return null;
108
+ return {
109
+ version: 1,
110
+ observedAt: input.observedAt,
111
+ items,
112
+ sources,
113
+ total: input.total,
114
+ counts,
115
+ ...input.nextOffset === void 0 ? {} : { nextOffset: input.nextOffset }
116
+ };
117
+ }
118
+ //#endregion
119
+ exports.HOME_ENTITY_LIMIT = HOME_ENTITY_LIMIT;
120
+ exports.HOME_KINDS = HOME_KINDS;
121
+ exports.HOME_PAGE_LIMIT = HOME_PAGE_LIMIT;
122
+ exports.parseHomeContribution = parseHomeContribution;
123
+ exports.parseHomeEntity = parseHomeEntity;
124
+ exports.parseHomeProjection = parseHomeProjection;
125
+ exports.parseHomeSnapshot = parseHomeSnapshot;
126
+
127
+ //# sourceMappingURL=home.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"home.cjs","names":[],"sources":["../../../src/schemas/home.ts"],"sourcesContent":["/** Compact, read-only operational summaries. Detailed state stays with its package. */\nexport type HomeKind = 'decision' | 'failure' | 'blocked' | 'running' | 'queued' | 'paused' | 'completed';\nexport type HomeCoverage = 'ready' | 'partial' | 'unavailable';\n\nexport interface HomeContribution {\n version: 1;\n label: string;\n /** The existing channel frame type owned by this package. */\n source: string;\n /** Existing session activity group, when the host supports opening it. */\n destination?: string;\n}\n\nexport interface HomeEntity {\n /** Canonical within the source and workspace, including run generation or opaque graph identity. */\n id: string;\n kind: HomeKind;\n title: string;\n detail?: string;\n updatedAt: string;\n sessionId: string;\n /** Every additional session whose information this entity contains. Checked before counting. */\n relatedSessionIds?: readonly string[];\n}\n\nexport interface HomeProjection {\n coverage: HomeCoverage;\n entities: readonly HomeEntity[];\n}\n\nexport interface HomeItem extends Omit<HomeEntity, 'relatedSessionIds'> {\n source: string;\n workspaceId?: string;\n}\n\nexport interface HomeSourceStatus {\n source: string;\n workspaceId?: string;\n coverage: HomeCoverage;\n counts?: Record<HomeKind, number>;\n}\n\nexport interface HomeRequest {\n offset?: number;\n limit?: number;\n source?: string;\n workspaceId?: string;\n}\n\nexport interface HomeSnapshot {\n version: 1;\n observedAt: string;\n sources: HomeSourceStatus[];\n /** Attention rows only. Working and finished entities are represented by counts. */\n items: HomeItem[];\n total: number;\n counts: Record<HomeKind, number>;\n nextOffset?: number;\n}\n\nexport const HOME_PAGE_LIMIT = 50;\nexport const HOME_ENTITY_LIMIT = 1_000;\nexport const HOME_KINDS: readonly HomeKind[] = [\n 'decision',\n 'failure',\n 'blocked',\n 'running',\n 'queued',\n 'paused',\n 'completed',\n];\n\nfunction record(input: unknown): input is Record<string, unknown> {\n return input !== null && typeof input === 'object' && !Array.isArray(input);\n}\n\nfunction text(input: unknown, limit = 256): input is string {\n return typeof input === 'string' && input.trim().length > 0 && input.length <= limit;\n}\n\nfunction timestamp(input: unknown): input is string {\n return text(input, 64) && Number.isFinite(Date.parse(input));\n}\n\nfunction coverage(input: unknown): input is HomeCoverage {\n return input === 'ready' || input === 'partial' || input === 'unavailable';\n}\n\nexport function parseHomeContribution(input: unknown): HomeContribution | null {\n if (!record(input) || input.version !== 1 || !text(input.label, 80) || !text(input.source, 128)) return null;\n if (input.destination !== undefined && !text(input.destination, 128)) return null;\n return {\n version: 1,\n label: input.label,\n source: input.source,\n ...(input.destination === undefined ? {} : { destination: input.destination }),\n };\n}\n\nexport function parseHomeEntity(input: unknown): HomeEntity | null {\n if (!record(input) || !text(input.id, 512) || !text(input.sessionId) || !text(input.title, 160)) return null;\n if (!HOME_KINDS.includes(input.kind as HomeKind) || !timestamp(input.updatedAt)) return null;\n if (input.detail !== undefined && !text(input.detail, 320)) return null;\n if (\n input.relatedSessionIds !== undefined &&\n (!Array.isArray(input.relatedSessionIds) ||\n input.relatedSessionIds.length > 64 ||\n !input.relatedSessionIds.every((id) => text(id)))\n )\n return null;\n return {\n id: input.id,\n kind: input.kind as HomeKind,\n title: input.title,\n updatedAt: input.updatedAt,\n sessionId: input.sessionId,\n ...(input.detail === undefined ? {} : { detail: input.detail }),\n ...(input.relatedSessionIds === undefined ? {} : { relatedSessionIds: input.relatedSessionIds as string[] }),\n };\n}\n\n/** Reject a malformed source, rather than turning invalid records into a healthy count. */\nexport function parseHomeProjection(input: unknown): HomeProjection | null {\n if (\n !record(input) ||\n !coverage(input.coverage) ||\n !Array.isArray(input.entities) ||\n input.entities.length > HOME_ENTITY_LIMIT\n )\n return null;\n const entities: HomeEntity[] = [];\n for (const value of input.entities) {\n const entity = parseHomeEntity(value);\n if (entity === null) return null;\n entities.push(entity);\n }\n if (input.coverage === 'unavailable' && entities.length > 0) return null;\n return { coverage: input.coverage, entities };\n}\n\nfunction parseHomeCounts(input: unknown): Record<HomeKind, number> | null {\n if (!record(input)) return null;\n const counts = {} as Record<HomeKind, number>;\n for (const kind of HOME_KINDS) {\n const count = input[kind];\n if (!Number.isSafeInteger(count) || (count as number) < 0) return null;\n counts[kind] = count as number;\n }\n return counts;\n}\n\nexport function parseHomeSnapshot(input: unknown): HomeSnapshot | null {\n if (\n !record(input) ||\n input.version !== 1 ||\n !timestamp(input.observedAt) ||\n !Array.isArray(input.items) ||\n input.items.length > HOME_PAGE_LIMIT ||\n !Array.isArray(input.sources) ||\n input.sources.length > 5_000 ||\n !Number.isSafeInteger(input.total) ||\n (input.total as number) < 0 ||\n !record(input.counts)\n )\n return null;\n const counts = parseHomeCounts(input.counts);\n if (\n counts === null ||\n counts.decision + counts.failure + counts.blocked + counts.paused !== input.total ||\n input.items.length > input.total\n )\n return null;\n const items: HomeItem[] = [];\n for (const value of input.items) {\n const entity = parseHomeEntity(value);\n if (\n entity === null ||\n !['decision', 'failure', 'blocked', 'paused'].includes(entity.kind) ||\n !record(value) ||\n !text(value.source, 128) ||\n (value.workspaceId !== undefined && !text(value.workspaceId))\n )\n return null;\n const { relatedSessionIds: _related, ...publicEntity } = entity;\n items.push({\n ...publicEntity,\n source: value.source,\n ...(value.workspaceId === undefined ? {} : { workspaceId: value.workspaceId }),\n });\n }\n const sources: HomeSourceStatus[] = [];\n for (const value of input.sources) {\n if (\n !record(value) ||\n !text(value.source, 128) ||\n !coverage(value.coverage) ||\n (value.workspaceId !== undefined && !text(value.workspaceId))\n )\n return null;\n const sourceCounts = value.counts === undefined ? undefined : parseHomeCounts(value.counts);\n if (sourceCounts === null) return null;\n sources.push({\n source: value.source,\n coverage: value.coverage,\n ...(sourceCounts === undefined ? {} : { counts: sourceCounts }),\n ...(value.workspaceId === undefined ? {} : { workspaceId: value.workspaceId }),\n });\n }\n if (\n input.nextOffset !== undefined &&\n (!Number.isSafeInteger(input.nextOffset) ||\n (input.nextOffset as number) <= 0 ||\n (input.nextOffset as number) >= (input.total as number))\n )\n return null;\n return {\n version: 1,\n observedAt: input.observedAt,\n items,\n sources,\n total: input.total as number,\n counts,\n ...(input.nextOffset === undefined ? {} : { nextOffset: input.nextOffset as number }),\n };\n}\n"],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ //#region src/schemas/home.d.ts
2
+ /** Compact, read-only operational summaries. Detailed state stays with its package. */
3
+ export type HomeKind = 'decision' | 'failure' | 'blocked' | 'running' | 'queued' | 'paused' | 'completed';
4
+ export type HomeCoverage = 'ready' | 'partial' | 'unavailable';
5
+ export interface HomeContribution {
6
+ version: 1;
7
+ label: string;
8
+ /** The existing channel frame type owned by this package. */
9
+ source: string;
10
+ /** Existing session activity group, when the host supports opening it. */
11
+ destination?: string;
12
+ }
13
+ export interface HomeEntity {
14
+ /** Canonical within the source and workspace, including run generation or opaque graph identity. */
15
+ id: string;
16
+ kind: HomeKind;
17
+ title: string;
18
+ detail?: string;
19
+ updatedAt: string;
20
+ sessionId: string;
21
+ /** Every additional session whose information this entity contains. Checked before counting. */
22
+ relatedSessionIds?: readonly string[];
23
+ }
24
+ export interface HomeProjection {
25
+ coverage: HomeCoverage;
26
+ entities: readonly HomeEntity[];
27
+ }
28
+ export interface HomeItem extends Omit<HomeEntity, 'relatedSessionIds'> {
29
+ source: string;
30
+ workspaceId?: string;
31
+ }
32
+ export interface HomeSourceStatus {
33
+ source: string;
34
+ workspaceId?: string;
35
+ coverage: HomeCoverage;
36
+ counts?: Record<HomeKind, number>;
37
+ }
38
+ export interface HomeRequest {
39
+ offset?: number;
40
+ limit?: number;
41
+ source?: string;
42
+ workspaceId?: string;
43
+ }
44
+ export interface HomeSnapshot {
45
+ version: 1;
46
+ observedAt: string;
47
+ sources: HomeSourceStatus[];
48
+ /** Attention rows only. Working and finished entities are represented by counts. */
49
+ items: HomeItem[];
50
+ total: number;
51
+ counts: Record<HomeKind, number>;
52
+ nextOffset?: number;
53
+ }
54
+ export declare const HOME_PAGE_LIMIT = 50;
55
+ export declare const HOME_ENTITY_LIMIT = 1000;
56
+ export declare const HOME_KINDS: readonly HomeKind[];
57
+ export declare function parseHomeContribution(input: unknown): HomeContribution | null;
58
+ export declare function parseHomeEntity(input: unknown): HomeEntity | null;
59
+ /** Reject a malformed source, rather than turning invalid records into a healthy count. */
60
+ export declare function parseHomeProjection(input: unknown): HomeProjection | null;
61
+ export declare function parseHomeSnapshot(input: unknown): HomeSnapshot | null;
62
+ //#endregion
63
+ //# sourceMappingURL=home.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"home.d.mts","names":[],"sources":["../../../src/schemas/home.ts"],"mappings":";;YACY;YACA;iBAEK;EACf;EACA;;EAEA;;EAEA;;iBAGe;;EAEf;EACA,MAAM;EACN;EACA;EACA;EACA;;EAEA;;iBAGe;EACf,UAAU;EACV,mBAAmB;;iBAGJ,iBAAiB,KAAK;EACrC;EACA;;iBAGe;EACf;EACA;EACA,UAAU;EACV,SAAS,OAAO;;iBAGD;EACf;EACA;EACA;EACA;;iBAGe;EACf;EACA;EACA,SAAS;;EAET,OAAO;EACP;EACA,QAAQ,OAAO;EACf;;qBAGW;qBACA;qBACA,qBAAqB;wBA0BlB,sBAAsB,iBAAiB;wBAWvC,gBAAgB,iBAAiB;;wBAuBjC,oBAAoB,iBAAiB;wBA6BrC,kBAAkB,iBAAiB"}
@@ -0,0 +1,121 @@
1
+ //#region src/schemas/home.ts
2
+ const HOME_PAGE_LIMIT = 50;
3
+ const HOME_ENTITY_LIMIT = 1e3;
4
+ const HOME_KINDS = [
5
+ "decision",
6
+ "failure",
7
+ "blocked",
8
+ "running",
9
+ "queued",
10
+ "paused",
11
+ "completed"
12
+ ];
13
+ function record(input) {
14
+ return input !== null && typeof input === "object" && !Array.isArray(input);
15
+ }
16
+ function text(input, limit = 256) {
17
+ return typeof input === "string" && input.trim().length > 0 && input.length <= limit;
18
+ }
19
+ function timestamp(input) {
20
+ return text(input, 64) && Number.isFinite(Date.parse(input));
21
+ }
22
+ function coverage(input) {
23
+ return input === "ready" || input === "partial" || input === "unavailable";
24
+ }
25
+ function parseHomeContribution(input) {
26
+ if (!record(input) || input.version !== 1 || !text(input.label, 80) || !text(input.source, 128)) return null;
27
+ if (input.destination !== void 0 && !text(input.destination, 128)) return null;
28
+ return {
29
+ version: 1,
30
+ label: input.label,
31
+ source: input.source,
32
+ ...input.destination === void 0 ? {} : { destination: input.destination }
33
+ };
34
+ }
35
+ function parseHomeEntity(input) {
36
+ if (!record(input) || !text(input.id, 512) || !text(input.sessionId) || !text(input.title, 160)) return null;
37
+ if (!HOME_KINDS.includes(input.kind) || !timestamp(input.updatedAt)) return null;
38
+ if (input.detail !== void 0 && !text(input.detail, 320)) return null;
39
+ if (input.relatedSessionIds !== void 0 && (!Array.isArray(input.relatedSessionIds) || input.relatedSessionIds.length > 64 || !input.relatedSessionIds.every((id) => text(id)))) return null;
40
+ return {
41
+ id: input.id,
42
+ kind: input.kind,
43
+ title: input.title,
44
+ updatedAt: input.updatedAt,
45
+ sessionId: input.sessionId,
46
+ ...input.detail === void 0 ? {} : { detail: input.detail },
47
+ ...input.relatedSessionIds === void 0 ? {} : { relatedSessionIds: input.relatedSessionIds }
48
+ };
49
+ }
50
+ /** Reject a malformed source, rather than turning invalid records into a healthy count. */
51
+ function parseHomeProjection(input) {
52
+ if (!record(input) || !coverage(input.coverage) || !Array.isArray(input.entities) || input.entities.length > 1e3) return null;
53
+ const entities = [];
54
+ for (const value of input.entities) {
55
+ const entity = parseHomeEntity(value);
56
+ if (entity === null) return null;
57
+ entities.push(entity);
58
+ }
59
+ if (input.coverage === "unavailable" && entities.length > 0) return null;
60
+ return {
61
+ coverage: input.coverage,
62
+ entities
63
+ };
64
+ }
65
+ function parseHomeCounts(input) {
66
+ if (!record(input)) return null;
67
+ const counts = {};
68
+ for (const kind of HOME_KINDS) {
69
+ const count = input[kind];
70
+ if (!Number.isSafeInteger(count) || count < 0) return null;
71
+ counts[kind] = count;
72
+ }
73
+ return counts;
74
+ }
75
+ function parseHomeSnapshot(input) {
76
+ if (!record(input) || input.version !== 1 || !timestamp(input.observedAt) || !Array.isArray(input.items) || input.items.length > 50 || !Array.isArray(input.sources) || input.sources.length > 5e3 || !Number.isSafeInteger(input.total) || input.total < 0 || !record(input.counts)) return null;
77
+ const counts = parseHomeCounts(input.counts);
78
+ if (counts === null || counts.decision + counts.failure + counts.blocked + counts.paused !== input.total || input.items.length > input.total) return null;
79
+ const items = [];
80
+ for (const value of input.items) {
81
+ const entity = parseHomeEntity(value);
82
+ if (entity === null || ![
83
+ "decision",
84
+ "failure",
85
+ "blocked",
86
+ "paused"
87
+ ].includes(entity.kind) || !record(value) || !text(value.source, 128) || value.workspaceId !== void 0 && !text(value.workspaceId)) return null;
88
+ const { relatedSessionIds: _related, ...publicEntity } = entity;
89
+ items.push({
90
+ ...publicEntity,
91
+ source: value.source,
92
+ ...value.workspaceId === void 0 ? {} : { workspaceId: value.workspaceId }
93
+ });
94
+ }
95
+ const sources = [];
96
+ for (const value of input.sources) {
97
+ if (!record(value) || !text(value.source, 128) || !coverage(value.coverage) || value.workspaceId !== void 0 && !text(value.workspaceId)) return null;
98
+ const sourceCounts = value.counts === void 0 ? void 0 : parseHomeCounts(value.counts);
99
+ if (sourceCounts === null) return null;
100
+ sources.push({
101
+ source: value.source,
102
+ coverage: value.coverage,
103
+ ...sourceCounts === void 0 ? {} : { counts: sourceCounts },
104
+ ...value.workspaceId === void 0 ? {} : { workspaceId: value.workspaceId }
105
+ });
106
+ }
107
+ if (input.nextOffset !== void 0 && (!Number.isSafeInteger(input.nextOffset) || input.nextOffset <= 0 || input.nextOffset >= input.total)) return null;
108
+ return {
109
+ version: 1,
110
+ observedAt: input.observedAt,
111
+ items,
112
+ sources,
113
+ total: input.total,
114
+ counts,
115
+ ...input.nextOffset === void 0 ? {} : { nextOffset: input.nextOffset }
116
+ };
117
+ }
118
+ //#endregion
119
+ export { HOME_ENTITY_LIMIT, HOME_KINDS, HOME_PAGE_LIMIT, parseHomeContribution, parseHomeEntity, parseHomeProjection, parseHomeSnapshot };
120
+
121
+ //# sourceMappingURL=home.mjs.map