@deepseek-insight/dsi 0.5.5

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 (285) hide show
  1. package/LICENSE +204 -0
  2. package/README.md +98 -0
  3. package/bin/dsi.mjs +147 -0
  4. package/build/client/_app/immutable/assets/0.DqFt8jIM.css +2 -0
  5. package/build/client/_app/immutable/assets/2.YlW45hiM.css +1 -0
  6. package/build/client/_app/immutable/assets/codicon.Brq4_Ui5.ttf +0 -0
  7. package/build/client/_app/immutable/assets/editor.jjEx9u7D.css +1 -0
  8. package/build/client/_app/immutable/assets/settings-monaco.C1CMdMvw.css +1 -0
  9. package/build/client/_app/immutable/chunks/-g7BcI22.js +4 -0
  10. package/build/client/_app/immutable/chunks/08VXUWAP.js +1 -0
  11. package/build/client/_app/immutable/chunks/2irkVCIh.js +10 -0
  12. package/build/client/_app/immutable/chunks/43DmfD33.js +1 -0
  13. package/build/client/_app/immutable/chunks/6GKQw8m6.js +99 -0
  14. package/build/client/_app/immutable/chunks/6RTg0lbw.js +1 -0
  15. package/build/client/_app/immutable/chunks/9TvT6fta.js +120 -0
  16. package/build/client/_app/immutable/chunks/B1YSaoU7.js +96 -0
  17. package/build/client/_app/immutable/chunks/B2J2w5EN.js +1 -0
  18. package/build/client/_app/immutable/chunks/B5-_aFwp.js +2 -0
  19. package/build/client/_app/immutable/chunks/B8-Q2PIv.js +1 -0
  20. package/build/client/_app/immutable/chunks/B8J7ngcE.js +1 -0
  21. package/build/client/_app/immutable/chunks/B9JPFI3C.js +2 -0
  22. package/build/client/_app/immutable/chunks/BAZKJuQw.js +1 -0
  23. package/build/client/_app/immutable/chunks/BBKpNcUe.js +1 -0
  24. package/build/client/_app/immutable/chunks/BEEn4gHE.js +1 -0
  25. package/build/client/_app/immutable/chunks/BEtHBSE6.js +1 -0
  26. package/build/client/_app/immutable/chunks/BFoDCU3G.js +1 -0
  27. package/build/client/_app/immutable/chunks/BHtPwB2y.js +847 -0
  28. package/build/client/_app/immutable/chunks/BI-MrBd-.js +1 -0
  29. package/build/client/_app/immutable/chunks/BI4pMaIG.js +1 -0
  30. package/build/client/_app/immutable/chunks/BJL7RCQE.js +4 -0
  31. package/build/client/_app/immutable/chunks/BKxtCVv1.js +1 -0
  32. package/build/client/_app/immutable/chunks/BOfSXrr7.js +1 -0
  33. package/build/client/_app/immutable/chunks/BOotOW0E.js +1 -0
  34. package/build/client/_app/immutable/chunks/BTzV9O1M.js +3 -0
  35. package/build/client/_app/immutable/chunks/BW-FRVGs.js +1 -0
  36. package/build/client/_app/immutable/chunks/BWPQTe0t.js +1 -0
  37. package/build/client/_app/immutable/chunks/BYgofb2h.js +1 -0
  38. package/build/client/_app/immutable/chunks/Ba7i2nA0.js +1 -0
  39. package/build/client/_app/immutable/chunks/Bb19NAkg.js +1 -0
  40. package/build/client/_app/immutable/chunks/Bc_sGQ0U.js +1 -0
  41. package/build/client/_app/immutable/chunks/BeGwcela.js +1 -0
  42. package/build/client/_app/immutable/chunks/BeZqd5lB.js +1 -0
  43. package/build/client/_app/immutable/chunks/Beo7Z46k.js +7 -0
  44. package/build/client/_app/immutable/chunks/BhNEBkk_.js +39 -0
  45. package/build/client/_app/immutable/chunks/BifhSqXX.js +1 -0
  46. package/build/client/_app/immutable/chunks/Bjy-W4x2.js +81 -0
  47. package/build/client/_app/immutable/chunks/BlltJnm0.js +1 -0
  48. package/build/client/_app/immutable/chunks/Bn9NRi0R.js +168 -0
  49. package/build/client/_app/immutable/chunks/BnF5Jm-h.js +1 -0
  50. package/build/client/_app/immutable/chunks/Bp4uuUjI.js +3 -0
  51. package/build/client/_app/immutable/chunks/BrTsmS-o.js +57 -0
  52. package/build/client/_app/immutable/chunks/Bri6UV-V.js +1 -0
  53. package/build/client/_app/immutable/chunks/Btk-1DaX.js +1 -0
  54. package/build/client/_app/immutable/chunks/BwWrilGY.js +1 -0
  55. package/build/client/_app/immutable/chunks/Bxkupp3x.js +1 -0
  56. package/build/client/_app/immutable/chunks/Bz4Y3fRF.js +1 -0
  57. package/build/client/_app/immutable/chunks/C-OQMol4.js +1 -0
  58. package/build/client/_app/immutable/chunks/C-y9NEjX.js +1 -0
  59. package/build/client/_app/immutable/chunks/C1JXY9b5.js +30 -0
  60. package/build/client/_app/immutable/chunks/C2x7inlt.js +321 -0
  61. package/build/client/_app/immutable/chunks/C531GsRP.js +2 -0
  62. package/build/client/_app/immutable/chunks/C5TAQhFO.js +1 -0
  63. package/build/client/_app/immutable/chunks/C5_-GSwl.js +1 -0
  64. package/build/client/_app/immutable/chunks/C6lv30UQ.js +1 -0
  65. package/build/client/_app/immutable/chunks/C7h46wYY.js +1 -0
  66. package/build/client/_app/immutable/chunks/C8Ef5oNN.js +1 -0
  67. package/build/client/_app/immutable/chunks/CA_WNCsl.js +41 -0
  68. package/build/client/_app/immutable/chunks/CC2rA5mh.js +1 -0
  69. package/build/client/_app/immutable/chunks/CHdTS7qa.js +15 -0
  70. package/build/client/_app/immutable/chunks/CIPQ_RoX.js +1 -0
  71. package/build/client/_app/immutable/chunks/CJ_zvTBg.js +72 -0
  72. package/build/client/_app/immutable/chunks/CPEyWost.js +1 -0
  73. package/build/client/_app/immutable/chunks/CPgSxomx.js +1 -0
  74. package/build/client/_app/immutable/chunks/CRfGWb83.js +1 -0
  75. package/build/client/_app/immutable/chunks/CTgm3pse.js +1 -0
  76. package/build/client/_app/immutable/chunks/CVaqCwHa.js +1 -0
  77. package/build/client/_app/immutable/chunks/CWKM3f5q.js +1 -0
  78. package/build/client/_app/immutable/chunks/CWVpRRWx.js +162 -0
  79. package/build/client/_app/immutable/chunks/CXMH3UgJ.js +257 -0
  80. package/build/client/_app/immutable/chunks/CZ-RNlot.js +1 -0
  81. package/build/client/_app/immutable/chunks/CZXl7qUb.js +70 -0
  82. package/build/client/_app/immutable/chunks/C_N-eONP.js +1 -0
  83. package/build/client/_app/immutable/chunks/Cb1pwoev.js +1 -0
  84. package/build/client/_app/immutable/chunks/CcL1k2On.js +11 -0
  85. package/build/client/_app/immutable/chunks/CcWV7GYH.js +1 -0
  86. package/build/client/_app/immutable/chunks/CcwsVR0C.js +1 -0
  87. package/build/client/_app/immutable/chunks/Cd6K7Y8m.js +1 -0
  88. package/build/client/_app/immutable/chunks/CfSJPG6W.js +1 -0
  89. package/build/client/_app/immutable/chunks/CfZ7uSQe.js +38 -0
  90. package/build/client/_app/immutable/chunks/Cimd5fb3.js +1 -0
  91. package/build/client/_app/immutable/chunks/Cj-Zm41R.js +36 -0
  92. package/build/client/_app/immutable/chunks/CjZ_QSbm.js +1 -0
  93. package/build/client/_app/immutable/chunks/CkrcOjFY.js +1 -0
  94. package/build/client/_app/immutable/chunks/ClamHrr6.js +1 -0
  95. package/build/client/_app/immutable/chunks/Cm7r79vr.js +1 -0
  96. package/build/client/_app/immutable/chunks/CmbEK4CY.js +84 -0
  97. package/build/client/_app/immutable/chunks/CmvnEPtD.js +7 -0
  98. package/build/client/_app/immutable/chunks/CopQ2nXW.js +1 -0
  99. package/build/client/_app/immutable/chunks/CpzslTdj.js +1 -0
  100. package/build/client/_app/immutable/chunks/CsHVnZCH.js +1 -0
  101. package/build/client/_app/immutable/chunks/CsQS60Ue.js +1 -0
  102. package/build/client/_app/immutable/chunks/CuRJVwEq.js +1 -0
  103. package/build/client/_app/immutable/chunks/D-oSqn_W.js +1 -0
  104. package/build/client/_app/immutable/chunks/D-ptJ9y-.js +1 -0
  105. package/build/client/_app/immutable/chunks/D05T4iGw.js +1 -0
  106. package/build/client/_app/immutable/chunks/D0I62FkS.js +1 -0
  107. package/build/client/_app/immutable/chunks/D16vkywU.js +1 -0
  108. package/build/client/_app/immutable/chunks/D1qzYj9m.js +1 -0
  109. package/build/client/_app/immutable/chunks/D3hlyOfw.js +1 -0
  110. package/build/client/_app/immutable/chunks/D4gq_dik.js +1 -0
  111. package/build/client/_app/immutable/chunks/D7fX-3xy.js +1 -0
  112. package/build/client/_app/immutable/chunks/D8-5qLJg.js +231 -0
  113. package/build/client/_app/immutable/chunks/D8hlhfM3.js +1 -0
  114. package/build/client/_app/immutable/chunks/DAS1CLuE.js +24 -0
  115. package/build/client/_app/immutable/chunks/DGarjVZC.js +1 -0
  116. package/build/client/_app/immutable/chunks/DGd2pJF5.js +1 -0
  117. package/build/client/_app/immutable/chunks/DHpiXF5c.js +1 -0
  118. package/build/client/_app/immutable/chunks/DHwB1DNv.js +161 -0
  119. package/build/client/_app/immutable/chunks/DIMkf-bt.js +3 -0
  120. package/build/client/_app/immutable/chunks/DISqw1ZD.js +1 -0
  121. package/build/client/_app/immutable/chunks/DITEY8D_.js +62 -0
  122. package/build/client/_app/immutable/chunks/DL0yNkAA.js +1 -0
  123. package/build/client/_app/immutable/chunks/DL1Hc2zs.js +1 -0
  124. package/build/client/_app/immutable/chunks/DLOOos_8.js +292 -0
  125. package/build/client/_app/immutable/chunks/DMUM7wLl.js +1 -0
  126. package/build/client/_app/immutable/chunks/DPKol_4Z.js +139 -0
  127. package/build/client/_app/immutable/chunks/DS17s2tU.js +1 -0
  128. package/build/client/_app/immutable/chunks/DT7zqm-g.js +1 -0
  129. package/build/client/_app/immutable/chunks/DTj74zXo.js +1 -0
  130. package/build/client/_app/immutable/chunks/DV3o63ZY.js +1 -0
  131. package/build/client/_app/immutable/chunks/DVXVVWkX.js +129 -0
  132. package/build/client/_app/immutable/chunks/DWDfcLfy.js +206 -0
  133. package/build/client/_app/immutable/chunks/DXeGLmed.js +8 -0
  134. package/build/client/_app/immutable/chunks/DYqsupvX.js +1 -0
  135. package/build/client/_app/immutable/chunks/DZ6u0Z-K.js +1 -0
  136. package/build/client/_app/immutable/chunks/DZFCIeNp.js +1 -0
  137. package/build/client/_app/immutable/chunks/D_Lu-MrJ.js +1 -0
  138. package/build/client/_app/immutable/chunks/DauUninz.js +1 -0
  139. package/build/client/_app/immutable/chunks/DbInun42.js +1 -0
  140. package/build/client/_app/immutable/chunks/DbcKN35_.js +3 -0
  141. package/build/client/_app/immutable/chunks/DcZe4Woe.js +1 -0
  142. package/build/client/_app/immutable/chunks/DdL9SqIa.js +1 -0
  143. package/build/client/_app/immutable/chunks/De2hgUGE.js +1 -0
  144. package/build/client/_app/immutable/chunks/DezsRK8O.js +1 -0
  145. package/build/client/_app/immutable/chunks/Dg_UWGX7.js +24 -0
  146. package/build/client/_app/immutable/chunks/Dj2t5yNg.js +1 -0
  147. package/build/client/_app/immutable/chunks/DkqhCAOL.js +1 -0
  148. package/build/client/_app/immutable/chunks/DlQrSOw4.js +7 -0
  149. package/build/client/_app/immutable/chunks/DmHpPYUd.js +1 -0
  150. package/build/client/_app/immutable/chunks/Dmn-tsie.js +1 -0
  151. package/build/client/_app/immutable/chunks/DpFanUEy.js +298 -0
  152. package/build/client/_app/immutable/chunks/DqwfDHZH.js +89 -0
  153. package/build/client/_app/immutable/chunks/Dr0pcX_F.js +1 -0
  154. package/build/client/_app/immutable/chunks/DrH0SRf2.js +1 -0
  155. package/build/client/_app/immutable/chunks/DsF7k-Jl.js +1 -0
  156. package/build/client/_app/immutable/chunks/DtBGId5S.js +2 -0
  157. package/build/client/_app/immutable/chunks/DuM1hSCa.js +1 -0
  158. package/build/client/_app/immutable/chunks/Du_ODUAO.js +1 -0
  159. package/build/client/_app/immutable/chunks/DvCMcJ3P.js +1 -0
  160. package/build/client/_app/immutable/chunks/Dy-Kn_BL.js +1 -0
  161. package/build/client/_app/immutable/chunks/DzVMo6mB.js +62 -0
  162. package/build/client/_app/immutable/chunks/ESmLJICu.js +1 -0
  163. package/build/client/_app/immutable/chunks/FvmIjYaQ.js +1 -0
  164. package/build/client/_app/immutable/chunks/GBaNblmo.js +1 -0
  165. package/build/client/_app/immutable/chunks/HclGiUj8.js +1 -0
  166. package/build/client/_app/immutable/chunks/Ju5jF6hy.js +1 -0
  167. package/build/client/_app/immutable/chunks/KythIMN8.js +1 -0
  168. package/build/client/_app/immutable/chunks/LWre5GKl.js +40 -0
  169. package/build/client/_app/immutable/chunks/NEE52Syq.js +1 -0
  170. package/build/client/_app/immutable/chunks/No6lfiAw.js +1 -0
  171. package/build/client/_app/immutable/chunks/OmE6SGvs.js +106 -0
  172. package/build/client/_app/immutable/chunks/P_ok0Z_j.js +2 -0
  173. package/build/client/_app/immutable/chunks/PaZBB01u.js +1 -0
  174. package/build/client/_app/immutable/chunks/Rh9cy7xg.js +2 -0
  175. package/build/client/_app/immutable/chunks/SOo6toE5.js +1 -0
  176. package/build/client/_app/immutable/chunks/TNLUqJaC.js +1 -0
  177. package/build/client/_app/immutable/chunks/UNxFjlik.js +1 -0
  178. package/build/client/_app/immutable/chunks/UmdltqoE.js +1 -0
  179. package/build/client/_app/immutable/chunks/Z5eAx3Zn.js +1 -0
  180. package/build/client/_app/immutable/chunks/bTuwJoIa.js +1 -0
  181. package/build/client/_app/immutable/chunks/fmXr3nnJ.js +1 -0
  182. package/build/client/_app/immutable/chunks/fybaL0A-.js +1 -0
  183. package/build/client/_app/immutable/chunks/gp-XZpBa.js +3 -0
  184. package/build/client/_app/immutable/chunks/h-p5ZdY8.js +1 -0
  185. package/build/client/_app/immutable/chunks/hxYEUgOo.js +1 -0
  186. package/build/client/_app/immutable/chunks/i0VQdJtv.js +1 -0
  187. package/build/client/_app/immutable/chunks/i0X4ZdIN.js +1 -0
  188. package/build/client/_app/immutable/chunks/mVHw7KEX.js +7 -0
  189. package/build/client/_app/immutable/chunks/nDMCpPkF.js +1 -0
  190. package/build/client/_app/immutable/chunks/nr791fC2.js +1 -0
  191. package/build/client/_app/immutable/chunks/onAF5SnQ.js +1 -0
  192. package/build/client/_app/immutable/chunks/oz_6vUea.js +1 -0
  193. package/build/client/_app/immutable/chunks/qEGLx2Wc.js +78 -0
  194. package/build/client/_app/immutable/chunks/raVGrKQy.js +44 -0
  195. package/build/client/_app/immutable/chunks/sBoK_t0W.js +1 -0
  196. package/build/client/_app/immutable/chunks/sIEmSkn6.js +34 -0
  197. package/build/client/_app/immutable/chunks/wFIeY1Cf.js +88 -0
  198. package/build/client/_app/immutable/chunks/xihTtKlq.js +1 -0
  199. package/build/client/_app/immutable/chunks/zpcgJjUg.js +127 -0
  200. package/build/client/_app/immutable/entry/app.B2QxMn0t.js +2 -0
  201. package/build/client/_app/immutable/entry/start.BR3A4iFi.js +1 -0
  202. package/build/client/_app/immutable/nodes/0.B_ZEZy7b.js +1 -0
  203. package/build/client/_app/immutable/nodes/1.By3Gd2cs.js +1 -0
  204. package/build/client/_app/immutable/nodes/2.1TAwiWw1.js +69 -0
  205. package/build/client/_app/immutable/workers/css.worker-DRH2OcAG.js +93 -0
  206. package/build/client/_app/immutable/workers/html.worker-DQLddT9h.js +506 -0
  207. package/build/client/_app/immutable/workers/json.worker-D_Dqrls5.js +62 -0
  208. package/build/client/_app/immutable/workers/settings-editor-worker-D9zwrD0f.js +30 -0
  209. package/build/client/_app/immutable/workers/ts.worker-DkYoA6bF.js +67738 -0
  210. package/build/client/_app/immutable/workers/yaml.worker-BTGFEDOA.js +449 -0
  211. package/build/client/_app/version.json +1 -0
  212. package/build/client/favicon.svg +7 -0
  213. package/build/env.js +70 -0
  214. package/build/handler.js +23 -0
  215. package/build/index.js +146 -0
  216. package/build/server/chunks/chunks/a2a-protocol.js-C77mVg2Q.js +52 -0
  217. package/build/server/chunks/chunks/app-config.svelte.js-Co9jacqT.js +52 -0
  218. package/build/server/chunks/chunks/config.js-BBYogCe7.js +123 -0
  219. package/build/server/chunks/chunks/db.js-DcmO3JAx.js +120 -0
  220. package/build/server/chunks/chunks/db2.js-DBltVUGg.js +717 -0
  221. package/build/server/chunks/chunks/dsh-connection.js-DwihVtk_.js +1957 -0
  222. package/build/server/chunks/chunks/dsh-events.js-BtDxaV6Q.js +706 -0
  223. package/build/server/chunks/chunks/env.js-l0sNRNKZ.js +2 -0
  224. package/build/server/chunks/chunks/exports.js-DMiPee3x.js +263 -0
  225. package/build/server/chunks/chunks/goal-projection.js-0_34t60K.js +44 -0
  226. package/build/server/chunks/chunks/image-limits.js-BMPZ55kJ.js +186 -0
  227. package/build/server/chunks/chunks/insight-config.js-CfMPTA6Z.js +352 -0
  228. package/build/server/chunks/chunks/internal.js-CQzEjdyk.js +747 -0
  229. package/build/server/chunks/chunks/internal2.js-D-DAuSVh.js +22 -0
  230. package/build/server/chunks/chunks/server.js-DoCd0fEo.js +4104 -0
  231. package/build/server/chunks/chunks/shared.js-C4-Py8s_.js +775 -0
  232. package/build/server/chunks/chunks/state.js-CpmOS0a2.js +114 -0
  233. package/build/server/chunks/chunks/uneval.js-BJ9Qq2SF.js +488 -0
  234. package/build/server/chunks/chunks/utils.js-tOWCe9Wk.js +933 -0
  235. package/build/server/chunks/chunks/watcher.js-BelxjMOP.js +473 -0
  236. package/build/server/chunks/entries/endpoints/api/a2a/_id_/_server.ts.js-B4HUNFZv.js +37 -0
  237. package/build/server/chunks/entries/endpoints/api/a2a/_server.ts.js-JDV_oqbX.js +61 -0
  238. package/build/server/chunks/entries/endpoints/api/a2a/register/_server.ts.js-Dxwc-7-5.js +99 -0
  239. package/build/server/chunks/entries/endpoints/api/config/_server.ts.js-D8i35bGH.js +35 -0
  240. package/build/server/chunks/entries/endpoints/api/dsh/directory/_server.ts.js-CeBU1G85.js +43 -0
  241. package/build/server/chunks/entries/endpoints/api/dsh/pick-directory/_server.ts.js-CyrVUxv3.js +36 -0
  242. package/build/server/chunks/entries/endpoints/api/dsh/presets/_server.ts.js-qeO_1htT.js +33 -0
  243. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/attachment/_server.ts.js-DnHffohz.js +44 -0
  244. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/cancel/_server.ts.js-fm6MFyjP.js +33 -0
  245. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/catalog/_server.ts.js-wJ9V_Ue7.js +42 -0
  246. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/command/_server.ts.js-o83L4GUY.js +85 -0
  247. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/events/_server.ts.js-DLCHSC1M.js +212 -0
  248. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/fork/_server.ts.js-Ca6NU9HO.js +58 -0
  249. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/goal/_server.ts.js-RteR85vn.js +138 -0
  250. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/history/_server.ts.js-CEKDkK7v.js +55 -0
  251. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/models/_server.ts.js-D7ziyW3d.js +35 -0
  252. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/permission/_server.ts.js-DbkD4JZb.js +92 -0
  253. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/prompt/_server.ts.js-eOLNlf1-.js +94 -0
  254. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/rename/_server.ts.js-txQRocK9.js +57 -0
  255. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/respond/_server.ts.js-D3WGYzkE.js +69 -0
  256. package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/select-model/_server.ts.js-g2GtvLTs.js +69 -0
  257. package/build/server/chunks/entries/endpoints/api/dsh/sessions/_server.ts.js-17yKojU_.js +85 -0
  258. package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/_server.ts.js-D16pEhvd.js +99 -0
  259. package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/save/_server.ts.js-BXpZNLK8.js +110 -0
  260. package/build/server/chunks/entries/endpoints/api/dsh/workspace-file-bytes/_server.ts.js-hBlyjq-x.js +113 -0
  261. package/build/server/chunks/entries/endpoints/api/dsh/workspace-tree/_server.ts.js-KWRnsAkm.js +59 -0
  262. package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_server.ts.js-DzNvvCxK.js +55 -0
  263. package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_workspaceId_/delete/_server.ts.js-MK5925CY.js +45 -0
  264. package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_workspaceId_/rename/_server.ts.js-w3Mo0nf7.js +63 -0
  265. package/build/server/chunks/entries/endpoints/api/prompts/_id_/_server.ts.js-CInfjM-i.js +64 -0
  266. package/build/server/chunks/entries/endpoints/api/prompts/_server.ts.js-C1lqP1OV.js +87 -0
  267. package/build/server/chunks/entries/endpoints/api/prompts/use/_server.ts.js-B36YMKMt.js +54 -0
  268. package/build/server/chunks/entries/endpoints/api/settings/_server.ts.js-CHvHNzeB.js +101 -0
  269. package/build/server/chunks/entries/pages/_error.svelte.js-BE3-BWDd.js +41 -0
  270. package/build/server/chunks/entries/pages/_layout.svelte.js-EFiihTdF.js +18 -0
  271. package/build/server/chunks/entries/pages/_layout.ts.js-CNSo-Z1U.js +22 -0
  272. package/build/server/chunks/entries/pages/_page.server.ts.js-Bk8UuUXA.js +85 -0
  273. package/build/server/chunks/entries/pages/_page.svelte.js-CfmKQYLK.js +13883 -0
  274. package/build/server/chunks/handler-BshnD4Y4.js +1735 -0
  275. package/build/server/chunks/index.js-I_pMeIwQ.js +3864 -0
  276. package/build/server/chunks/manifest.js-DwhpAk_y.js +273 -0
  277. package/build/server/chunks/nodes/0.js-DCyDo8-C.js +12 -0
  278. package/build/server/chunks/nodes/1.js-Dx7z_VWN.js +9 -0
  279. package/build/server/chunks/nodes/2.js-CLw9pxho.js +24 -0
  280. package/build/shims.js +33 -0
  281. package/package.json +65 -0
  282. package/template/.dsi/a2a.sqlite +0 -0
  283. package/template/.dsi/config.json +42 -0
  284. package/template/.dsi/prompts.sqlite +0 -0
  285. package/template/.dsi/settings.yaml +33 -0
@@ -0,0 +1,35 @@
1
+ import { d as readSidebarConfig, e as readPanelConfig, c as readA2aConfig, f as readHomeConfig, g as readConversationConfig, h as readChatConfig } from '../../../../chunks/insight-config.js-CfMPTA6Z.js';
2
+ import { j as json } from '../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../chunks/config.js-BBYogCe7.js';
4
+ import 'node:fs';
5
+ import 'node:path';
6
+ import 'node:os';
7
+ import 'yaml';
8
+ import '../../../../chunks/shared.js-C4-Py8s_.js';
9
+ import '../../../../chunks/uneval.js-BJ9Qq2SF.js';
10
+
11
+ //#region src/routes/api/config/+server.ts
12
+ /**
13
+ * GET /api/config
14
+ *
15
+ * Returns DSI's operator-tunable browser config, read from
16
+ * ~/.dsi/settings.yaml (OCI /api/config pattern, ported 2026-08-25).
17
+ * The browser store (app-config.svelte.ts) applies this on load; every
18
+ * section falls back to defaults on missing/invalid values. The server-only
19
+ * section (server.ringCapacity) is intentionally absent — dsh-connection
20
+ * reads it directly server-side.
21
+ */
22
+ var GET = async () => {
23
+ return json({
24
+ ok: true,
25
+ chat: readChatConfig(),
26
+ conversation: readConversationConfig(),
27
+ home: readHomeConfig(),
28
+ a2a: readA2aConfig(),
29
+ panel: readPanelConfig(),
30
+ sidebar: readSidebarConfig()
31
+ });
32
+ };
33
+
34
+ export { GET };
35
+ //# sourceMappingURL=_server.ts.js-D8i35bGH.js.map
@@ -0,0 +1,43 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/directory/+server.ts
13
+ /**
14
+ * api-dsh — GET /api/dsh/directory?path=…
15
+ *
16
+ * One browsed directory level for the Add-workspace folder picker
17
+ * (2026-08-24, DSH parity: the directory-picker browse capability).
18
+ * Absent path lists the host home directory. The browser never reaches
19
+ * the DSH Host directly (BC-1); wire bytes live behind dsh-connection
20
+ * (BC-6).
21
+ */
22
+ var GET = async ({ url }) => {
23
+ const raw = url.searchParams.get("path");
24
+ if (raw !== null && raw.trim().length === 0) return json({
25
+ ok: false,
26
+ error: {
27
+ code: "bad-path",
28
+ message: "path must be a non-empty absolute path when present"
29
+ }
30
+ }, { status: 400 });
31
+ try {
32
+ const listing = await getDshConnection().listDirectory(raw === null ? void 0 : raw);
33
+ return json({
34
+ ok: true,
35
+ listing
36
+ });
37
+ } catch (err) {
38
+ return json(mapRpcFailure(err), { status: statusFor(err) });
39
+ }
40
+ };
41
+
42
+ export { GET };
43
+ //# sourceMappingURL=_server.ts.js-CeBU1G85.js.map
@@ -0,0 +1,36 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/pick-directory/+server.ts
13
+ /**
14
+ * api-dsh — POST /api/dsh/pick-directory
15
+ *
16
+ * The NATIVE folder pick for the Add-workspace flow (2026-08-24, DSH
17
+ * parity): host.pickDirectory opens one OS chooser on the host's own
18
+ * display (the auto backend mounts native on a local darwin/win32 host)
19
+ * and resolves the picked absolute path — null when the operator cancels.
20
+ * The browser request's abort follows through: closing the DSI panel
21
+ * closes the host's dialog mid-choice.
22
+ */
23
+ var POST = async ({ request }) => {
24
+ try {
25
+ const result = await getDshConnection().pickDirectory(request.signal);
26
+ return json({
27
+ ok: true,
28
+ path: result.path
29
+ });
30
+ } catch (err) {
31
+ return json(mapRpcFailure(err), { status: statusFor(err) });
32
+ }
33
+ };
34
+
35
+ export { POST };
36
+ //# sourceMappingURL=_server.ts.js-CyrVUxv3.js.map
@@ -0,0 +1,33 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/presets/+server.ts
13
+ /**
14
+ * api-dsh — GET /api/dsh/presets
15
+ *
16
+ * POC-2 W3: agentPreset.list through the choke point (BC-6) → picker rows
17
+ * {ok:true, presets:[{id,name,description,isDefault}]}. The picker's only
18
+ * source of truth — a preset the host doesn't list can't be created with.
19
+ */
20
+ var GET = async () => {
21
+ try {
22
+ const { presets } = await getDshConnection().listPresets();
23
+ return json({
24
+ ok: true,
25
+ presets
26
+ });
27
+ } catch (err) {
28
+ return json(mapRpcFailure(err), { status: statusFor(err) });
29
+ }
30
+ };
31
+
32
+ export { GET };
33
+ //# sourceMappingURL=_server.ts.js-qeO_1htT.js.map
@@ -0,0 +1,44 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/session/[sessionId]/attachment/+server.ts
13
+ /**
14
+ * api-dsh — GET /api/dsh/session/[sessionId]/attachment?attachmentId=…
15
+ *
16
+ * The echo's authorized read (task 3.2, ADR D7): proxies session.attachment
17
+ * — the ledger stores refs; bytes are fetched through this route only when
18
+ * rendered, session-authorized by the host (BC-A5: the echo renders from
19
+ * the ledger, never from the browser draft).
20
+ */
21
+ var GET = async ({ params, url }) => {
22
+ const sessionId = params.sessionId;
23
+ const attachmentId = url.searchParams.get("attachmentId");
24
+ if (attachmentId === null || attachmentId.length === 0) return json({
25
+ ok: false,
26
+ error: {
27
+ code: "missing-attachment-id",
28
+ message: "attachmentId query parameter is required"
29
+ }
30
+ }, { status: 400 });
31
+ try {
32
+ const value = await getDshConnection().readAttachment(sessionId, attachmentId);
33
+ return json({
34
+ ok: true,
35
+ attachment: value.attachment,
36
+ data: value.data
37
+ });
38
+ } catch (err) {
39
+ return json(mapRpcFailure(err), { status: statusFor(err) });
40
+ }
41
+ };
42
+
43
+ export { GET };
44
+ //# sourceMappingURL=_server.ts.js-DnHffohz.js.map
@@ -0,0 +1,33 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/session/[sessionId]/cancel/+server.ts
13
+ /**
14
+ * api-dsh — POST /api/dsh/session/[sessionId]/cancel
15
+ *
16
+ * session.cancel → {accepted:true}. One POST away from stopping a running
17
+ * turn; error mapping identical to the other routes.
18
+ */
19
+ var POST = async ({ params }) => {
20
+ const sessionId = params.sessionId;
21
+ try {
22
+ const receipt = await getDshConnection().cancel(sessionId);
23
+ return json({
24
+ ok: true,
25
+ accepted: receipt.accepted === true
26
+ });
27
+ } catch (err) {
28
+ return json(mapRpcFailure(err), { status: statusFor(err) });
29
+ }
30
+ };
31
+
32
+ export { POST };
33
+ //# sourceMappingURL=_server.ts.js-fm6MFyjP.js.map
@@ -0,0 +1,42 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/session/[sessionId]/catalog/+server.ts
13
+ /**
14
+ * api-dsh — GET /api/dsh/session/[sessionId]/catalog (Slash Menu W1, task 1.2)
15
+ *
16
+ * The composer's `/` menu read path: BOTH host catalogs in one round-trip —
17
+ * commands/list + skills/list fired in parallel (PRD §5), merged into one
18
+ * payload. Fetched on first menu open per session, never on panel mount
19
+ * (ADR §3.3 — commands/list may resume a cold session); the client cache
20
+ * (slash-directory.svelte.ts) owns that discipline, this route only serves.
21
+ *
22
+ * Honest failure (PRD §5): EITHER leg failing fails the whole catalog — a
23
+ * half catalog is a lie about the session's vocabulary. DshRpcError → 502
24
+ * with the host's code; transport down → 503 (mapRpcFailure/statusFor).
25
+ */
26
+ var GET = async ({ params }) => {
27
+ const sessionId = params.sessionId;
28
+ try {
29
+ const conn = getDshConnection();
30
+ const [commands, skills] = await Promise.all([conn.listCommands(sessionId), conn.listSkills(sessionId)]);
31
+ return json({
32
+ ok: true,
33
+ commands,
34
+ skills: skills.skills
35
+ });
36
+ } catch (err) {
37
+ return json(mapRpcFailure(err), { status: statusFor(err) });
38
+ }
39
+ };
40
+
41
+ export { GET };
42
+ //# sourceMappingURL=_server.ts.js-wJ9V_Ue7.js.map
@@ -0,0 +1,85 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/session/[sessionId]/command/+server.ts
13
+ /**
14
+ * api-dsh — POST /api/dsh/session/[sessionId]/command (Slash Menu W1, task 1.2)
15
+ *
16
+ * The menu's command-pick and the executor ladder rung share this route: the
17
+ * FULL line goes to commands/execute VERBATIM — the client never re-parses a
18
+ * host command's arguments (ADR §4.4). The permission route's generalization,
19
+ * not its replacement (PRD §4): …/permission keeps its own route.
20
+ *
21
+ * Receipts are honest (PRD §5, Resolved decision 2):
22
+ * - success → {ok:true, executed:true, commandId, text?}
23
+ * - admission miss → {ok:true, executed:false} — the host admitted no
24
+ * command; a NEGATIVE ANSWER, never a 5xx (the RCA
25
+ * incident stays impossible: the caller keeps the
26
+ * draft and shows an honest note, never a model send)
27
+ * - command's own error→ {ok:false, code:'command-error', message} — the
28
+ * pick landed but the command refused (unknown preset…)
29
+ * - wire/RpcError → mapRpcFailure/statusFor (502/503)
30
+ */
31
+ var POST = async ({ params, request }) => {
32
+ const sessionId = params.sessionId;
33
+ let body;
34
+ try {
35
+ body = await request.json();
36
+ } catch {
37
+ return json({
38
+ ok: false,
39
+ error: {
40
+ code: "bad-json",
41
+ message: "request body is not valid JSON"
42
+ }
43
+ }, { status: 400 });
44
+ }
45
+ const line = body?.line;
46
+ if (typeof line !== "string" || line.trim().length === 0) return json({
47
+ ok: false,
48
+ error: {
49
+ code: "empty-line",
50
+ message: "line must be a non-empty string"
51
+ }
52
+ }, { status: 400 });
53
+ if (!line.startsWith("/")) return json({
54
+ ok: false,
55
+ error: {
56
+ code: "not-a-command",
57
+ message: "line must start with /"
58
+ }
59
+ }, { status: 400 });
60
+ try {
61
+ const receipt = await getDshConnection().executeCommand(sessionId, line);
62
+ if (receipt === null) return json({
63
+ ok: true,
64
+ executed: false
65
+ });
66
+ if (receipt.result.kind === "error") return json({
67
+ ok: false,
68
+ error: {
69
+ code: "command-error",
70
+ message: receipt.result.text ?? "the command reported an error"
71
+ }
72
+ });
73
+ return json({
74
+ ok: true,
75
+ executed: true,
76
+ commandId: receipt.commandId,
77
+ ...receipt.result.text !== void 0 ? { text: receipt.result.text } : {}
78
+ });
79
+ } catch (err) {
80
+ return json(mapRpcFailure(err), { status: statusFor(err) });
81
+ }
82
+ };
83
+
84
+ export { POST };
85
+ //# sourceMappingURL=_server.ts.js-o83L4GUY.js.map
@@ -0,0 +1,212 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { h as historyToEvents, e as eventsToEntries, a as entryForEvent } from '../../../../../../../chunks/dsh-events.js-BtDxaV6Q.js';
3
+ import { f as filterKnobEvents, i as imageLimitsFromProjection, p as permissionFromProjection } from '../../../../../../../chunks/image-limits.js-BMPZ55kJ.js';
4
+ import { g as goalFromProjection } from '../../../../../../../chunks/goal-projection.js-0_34t60K.js';
5
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
6
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
7
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
8
+ import 'node:fs';
9
+ import 'node:path';
10
+ import 'node:os';
11
+ import 'yaml';
12
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
13
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
14
+
15
+ //#region src/lib/services/conversation/todo-projection.ts
16
+ var STATUSES = /* @__PURE__ */ new Set([
17
+ "pending",
18
+ "in_progress",
19
+ "completed"
20
+ ]);
21
+ /**
22
+ * Validate the projections block's todos value.
23
+ *
24
+ * @param raw - the projection value (projections.values.todos), untyped.
25
+ * @returns undefined when the key is absent (not delivered), null when the
26
+ * host cleared the plan, else the validated items — a malformed ITEM drops
27
+ * from the list; a list left empty that way reads as null (never a plan of
28
+ * zero tasks).
29
+ */
30
+ function todosFromProjection(raw) {
31
+ if (raw === void 0) return void 0;
32
+ if (raw === null) return null;
33
+ if (!Array.isArray(raw)) return null;
34
+ const items = [];
35
+ for (const entry of raw) {
36
+ if (entry === null || typeof entry !== "object") continue;
37
+ const o = entry;
38
+ if (typeof o.content !== "string" || o.content.length === 0) continue;
39
+ if (typeof o.status !== "string" || !STATUSES.has(o.status)) continue;
40
+ items.push({
41
+ content: o.content,
42
+ status: o.status
43
+ });
44
+ }
45
+ return items.length > 0 ? items : null;
46
+ }
47
+ //#endregion
48
+ //#region src/lib/services/conversation/plan-projection.ts
49
+ /**
50
+ * Validate the projections block's plan value.
51
+ *
52
+ * @param raw - the projection value (projections.values.plan), untyped.
53
+ * @returns the {active, pending} pair, or null when absent/malformed —
54
+ * the caller then hides the indicator.
55
+ */
56
+ function planFromProjection(raw) {
57
+ if (raw === null || typeof raw !== "object" || Array.isArray(raw)) return null;
58
+ const value = raw;
59
+ if (typeof value.active !== "boolean" || typeof value.pending !== "boolean") return null;
60
+ return {
61
+ active: value.active,
62
+ pending: value.pending
63
+ };
64
+ }
65
+ //#endregion
66
+ //#region src/lib/services/conversation/ledger-stats.ts
67
+ /** Non-negative finite number guard (projection values are JSON). */
68
+ function nn(v) {
69
+ return typeof v === "number" && Number.isFinite(v) && v >= 0 ? v : null;
70
+ }
71
+ /** Validate one projection record field-by-field; null on any miss. */
72
+ function statsRecord(raw, fields) {
73
+ if (raw === null || typeof raw !== "object" || Array.isArray(raw)) return null;
74
+ const o = raw;
75
+ const out = {};
76
+ for (const field of fields) {
77
+ const v = nn(o[field]);
78
+ if (v === null) return null;
79
+ out[field] = v;
80
+ }
81
+ return out;
82
+ }
83
+ var SESSION_STATS_FIELDS = [
84
+ "turns",
85
+ "steps",
86
+ "llmMs",
87
+ "toolMs",
88
+ "ttftMs",
89
+ "ttftSteps",
90
+ "decodeMs",
91
+ "decodeTokens"
92
+ ];
93
+ var TOKEN_USAGE_FIELDS = [
94
+ "uncachedInputTokens",
95
+ "cacheReadTokens",
96
+ "cacheWriteTokens",
97
+ "outputTokens"
98
+ ];
99
+ /**
100
+ * Validate the projections block's ledger-stats pair.
101
+ *
102
+ * @param sessionStats - projections.values.sessionStats (sessionStats wire view).
103
+ * @param tokenUsage - projections.values.tokenUsage (the flat
104
+ * TokenUsageProjection wire value — the persisted fold state's totals
105
+ * wrapper never rides the projection stream).
106
+ * @returns the merged ledger stats, or null when either projection is
107
+ * absent or malformed (the caller keeps the partial fold).
108
+ */
109
+ function ledgerStatsFromProjections(sessionStats, tokenUsage) {
110
+ const stats = statsRecord(sessionStats, SESSION_STATS_FIELDS);
111
+ if (stats === null) return null;
112
+ const totals = statsRecord(tokenUsage, TOKEN_USAGE_FIELDS);
113
+ if (totals === null) return null;
114
+ return {
115
+ turns: stats.turns,
116
+ steps: stats.steps,
117
+ llmMs: stats.llmMs,
118
+ toolMs: stats.toolMs,
119
+ ttftMs: stats.ttftMs,
120
+ ttftSteps: stats.ttftSteps,
121
+ decodeMs: stats.decodeMs,
122
+ decodeTokens: stats.decodeTokens,
123
+ uncachedInputTokens: totals.uncachedInputTokens,
124
+ cacheReadTokens: totals.cacheReadTokens,
125
+ cacheWriteTokens: totals.cacheWriteTokens,
126
+ outputTokens: totals.outputTokens
127
+ };
128
+ }
129
+ //#endregion
130
+ //#region src/routes/api/dsh/session/[sessionId]/events/+server.ts
131
+ /**
132
+ * api-dsh — GET /api/dsh/session/[sessionId]/events?since=N
133
+ *
134
+ * PollResponse: entries (DsiEntry render list), lastSeq, running — plus the
135
+ * POC-3 W1 additive answerer fields pendingAnswers/settledAnswers (BC-E:
136
+ * control state rides the poll, never the ledger entries).
137
+ *
138
+ * Wave 3 wiring: raw ring-buffer events pass through dsh-events.entryForEvent
139
+ * (the shared mapper) before serving — the same rules as the cold load.
140
+ */
141
+ var GET = async ({ params, url, setHeaders }) => {
142
+ setHeaders({ "cache-control": "no-store" });
143
+ const sessionId = params.sessionId;
144
+ const sinceRaw = url.searchParams.get("since");
145
+ const since = sinceRaw !== null && Number.isFinite(Number(sinceRaw)) ? Number(sinceRaw) : -1;
146
+ const conn = getDshConnection();
147
+ conn.ensureDownlinks();
148
+ conn.subscribe(sessionId);
149
+ const acked = url.searchParams.get("acked");
150
+ if (acked) conn.pruneSettlements(sessionId, acked.split(",").filter((id) => id.length > 0));
151
+ const pendingAnswers = conn.pendingFor(sessionId);
152
+ const settledAnswers = conn.settlementsFor(sessionId);
153
+ try {
154
+ if (url.searchParams.get("full") === "1") {
155
+ const page = await conn.history(sessionId);
156
+ const ledgerEvents = historyToEvents(page.events);
157
+ const entries = eventsToEntries(ledgerEvents);
158
+ const lastSeq = ledgerEvents.at(-1)?.seq ?? -1;
159
+ return json({
160
+ ok: true,
161
+ entries,
162
+ lastSeq,
163
+ running: conn.isRunning(sessionId),
164
+ liveStream: conn.liveAssistantStream(sessionId),
165
+ pendingAnswers,
166
+ settledAnswers,
167
+ permission: permissionFromProjection(page.projections?.values?.["permissions"]) ?? null,
168
+ imageLimits: imageLimitsFromProjection(page.projections?.values?.["imageLimits"]),
169
+ todos: todosFromProjection(page.projections?.values?.["todos"]),
170
+ plan: planFromProjection(page.projections?.values?.["plan"]),
171
+ goal: goalFromProjection(page.projections?.values?.["goal"]),
172
+ ledgerStats: ledgerStatsFromProjections(conn.projectionValue(sessionId, "sessionStats"), conn.projectionValue(sessionId, "tokenUsage")),
173
+ knobEvents: filterKnobEvents(ledgerEvents)
174
+ });
175
+ }
176
+ const { events, lastSeq, running, gap } = conn.eventsSince(sessionId, since);
177
+ const entries = [];
178
+ for (const e of events) {
179
+ const mapped = entryForEvent(e);
180
+ if (mapped) entries.push(mapped);
181
+ }
182
+ const liveStream = conn.liveAssistantStream(sessionId);
183
+ const permission = permissionFromProjection(conn.projectionValue(sessionId, "permissions")) ?? null;
184
+ const imageLimits = imageLimitsFromProjection(conn.projectionValue(sessionId, "imageLimits"));
185
+ const todos = todosFromProjection(conn.projectionValue(sessionId, "todos"));
186
+ const plan = planFromProjection(conn.projectionValue(sessionId, "plan"));
187
+ const goal = goalFromProjection(conn.projectionValue(sessionId, "goal"));
188
+ const ledgerStats = ledgerStatsFromProjections(conn.projectionValue(sessionId, "sessionStats"), conn.projectionValue(sessionId, "tokenUsage"));
189
+ return json({
190
+ ok: true,
191
+ entries,
192
+ lastSeq,
193
+ running,
194
+ gap,
195
+ liveStream,
196
+ pendingAnswers,
197
+ settledAnswers,
198
+ ...permission === null ? {} : { permission },
199
+ ...imageLimits === null ? {} : { imageLimits },
200
+ ...todos === void 0 ? {} : { todos },
201
+ ...plan === null ? {} : { plan },
202
+ ...goal === void 0 ? {} : { goal },
203
+ ...ledgerStats === null ? {} : { ledgerStats },
204
+ knobEvents: filterKnobEvents(events)
205
+ });
206
+ } catch (err) {
207
+ return json(mapRpcFailure(err), { status: statusFor(err) });
208
+ }
209
+ };
210
+
211
+ export { GET };
212
+ //# sourceMappingURL=_server.ts.js-DLCHSC1M.js.map
@@ -0,0 +1,58 @@
1
+ import { g as getDshConnection, s as statusFor, m as mapRpcFailure } from '../../../../../../../chunks/dsh-connection.js-DwihVtk_.js';
2
+ import { j as json } from '../../../../../../../chunks/utils.js-tOWCe9Wk.js';
3
+ import '../../../../../../../chunks/config.js-BBYogCe7.js';
4
+ import '../../../../../../../chunks/insight-config.js-CfMPTA6Z.js';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:os';
8
+ import 'yaml';
9
+ import '../../../../../../../chunks/shared.js-C4-Py8s_.js';
10
+ import '../../../../../../../chunks/uneval.js-BJ9Qq2SF.js';
11
+
12
+ //#region src/routes/api/dsh/session/[sessionId]/fork/+server.ts
13
+ /**
14
+ * api-dsh — POST /api/dsh/session/[sessionId]/fork (The Fork Button ADR, 2026-09-01)
15
+ *
16
+ * Body {atSeq?} → session.fork. An absent atSeq is the normal path: the host
17
+ * cuts at the source's last completed turn. A present atSeq anchors to the
18
+ * first turn/end at or after it; an anchor inside an open turn is a host
19
+ * refusal (`session/fork-unavailable` → 502 here), never a silent clip.
20
+ * Success → {ok:true, sessionId} (the fork child). Error mapping identical
21
+ * to the sibling routes (mapRpcFailure/statusFor): host refusals surface as
22
+ * 502 with the host's code, transport failure as 503 host-unreachable.
23
+ */
24
+ var POST = async ({ params, request }) => {
25
+ const sessionId = params.sessionId;
26
+ let body;
27
+ try {
28
+ body = await request.json();
29
+ } catch {
30
+ return json({
31
+ ok: false,
32
+ error: {
33
+ code: "bad-json",
34
+ message: "request body is not valid JSON"
35
+ }
36
+ }, { status: 400 });
37
+ }
38
+ const atSeq = body?.atSeq;
39
+ if (atSeq !== void 0 && (typeof atSeq !== "number" || !Number.isInteger(atSeq) || atSeq < 0)) return json({
40
+ ok: false,
41
+ error: {
42
+ code: "bad-atSeq",
43
+ message: "atSeq must be a non-negative integer when present"
44
+ }
45
+ }, { status: 400 });
46
+ try {
47
+ const forked = await getDshConnection().forkSession(sessionId, atSeq === void 0 ? void 0 : atSeq);
48
+ return json({
49
+ ok: true,
50
+ sessionId: forked.sessionId
51
+ });
52
+ } catch (err) {
53
+ return json(mapRpcFailure(err), { status: statusFor(err) });
54
+ }
55
+ };
56
+
57
+ export { POST };
58
+ //# sourceMappingURL=_server.ts.js-Ca6NU9HO.js.map