@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.
- package/LICENSE +204 -0
- package/README.md +98 -0
- package/bin/dsi.mjs +147 -0
- package/build/client/_app/immutable/assets/0.DqFt8jIM.css +2 -0
- package/build/client/_app/immutable/assets/2.YlW45hiM.css +1 -0
- package/build/client/_app/immutable/assets/codicon.Brq4_Ui5.ttf +0 -0
- package/build/client/_app/immutable/assets/editor.jjEx9u7D.css +1 -0
- package/build/client/_app/immutable/assets/settings-monaco.C1CMdMvw.css +1 -0
- package/build/client/_app/immutable/chunks/-g7BcI22.js +4 -0
- package/build/client/_app/immutable/chunks/08VXUWAP.js +1 -0
- package/build/client/_app/immutable/chunks/2irkVCIh.js +10 -0
- package/build/client/_app/immutable/chunks/43DmfD33.js +1 -0
- package/build/client/_app/immutable/chunks/6GKQw8m6.js +99 -0
- package/build/client/_app/immutable/chunks/6RTg0lbw.js +1 -0
- package/build/client/_app/immutable/chunks/9TvT6fta.js +120 -0
- package/build/client/_app/immutable/chunks/B1YSaoU7.js +96 -0
- package/build/client/_app/immutable/chunks/B2J2w5EN.js +1 -0
- package/build/client/_app/immutable/chunks/B5-_aFwp.js +2 -0
- package/build/client/_app/immutable/chunks/B8-Q2PIv.js +1 -0
- package/build/client/_app/immutable/chunks/B8J7ngcE.js +1 -0
- package/build/client/_app/immutable/chunks/B9JPFI3C.js +2 -0
- package/build/client/_app/immutable/chunks/BAZKJuQw.js +1 -0
- package/build/client/_app/immutable/chunks/BBKpNcUe.js +1 -0
- package/build/client/_app/immutable/chunks/BEEn4gHE.js +1 -0
- package/build/client/_app/immutable/chunks/BEtHBSE6.js +1 -0
- package/build/client/_app/immutable/chunks/BFoDCU3G.js +1 -0
- package/build/client/_app/immutable/chunks/BHtPwB2y.js +847 -0
- package/build/client/_app/immutable/chunks/BI-MrBd-.js +1 -0
- package/build/client/_app/immutable/chunks/BI4pMaIG.js +1 -0
- package/build/client/_app/immutable/chunks/BJL7RCQE.js +4 -0
- package/build/client/_app/immutable/chunks/BKxtCVv1.js +1 -0
- package/build/client/_app/immutable/chunks/BOfSXrr7.js +1 -0
- package/build/client/_app/immutable/chunks/BOotOW0E.js +1 -0
- package/build/client/_app/immutable/chunks/BTzV9O1M.js +3 -0
- package/build/client/_app/immutable/chunks/BW-FRVGs.js +1 -0
- package/build/client/_app/immutable/chunks/BWPQTe0t.js +1 -0
- package/build/client/_app/immutable/chunks/BYgofb2h.js +1 -0
- package/build/client/_app/immutable/chunks/Ba7i2nA0.js +1 -0
- package/build/client/_app/immutable/chunks/Bb19NAkg.js +1 -0
- package/build/client/_app/immutable/chunks/Bc_sGQ0U.js +1 -0
- package/build/client/_app/immutable/chunks/BeGwcela.js +1 -0
- package/build/client/_app/immutable/chunks/BeZqd5lB.js +1 -0
- package/build/client/_app/immutable/chunks/Beo7Z46k.js +7 -0
- package/build/client/_app/immutable/chunks/BhNEBkk_.js +39 -0
- package/build/client/_app/immutable/chunks/BifhSqXX.js +1 -0
- package/build/client/_app/immutable/chunks/Bjy-W4x2.js +81 -0
- package/build/client/_app/immutable/chunks/BlltJnm0.js +1 -0
- package/build/client/_app/immutable/chunks/Bn9NRi0R.js +168 -0
- package/build/client/_app/immutable/chunks/BnF5Jm-h.js +1 -0
- package/build/client/_app/immutable/chunks/Bp4uuUjI.js +3 -0
- package/build/client/_app/immutable/chunks/BrTsmS-o.js +57 -0
- package/build/client/_app/immutable/chunks/Bri6UV-V.js +1 -0
- package/build/client/_app/immutable/chunks/Btk-1DaX.js +1 -0
- package/build/client/_app/immutable/chunks/BwWrilGY.js +1 -0
- package/build/client/_app/immutable/chunks/Bxkupp3x.js +1 -0
- package/build/client/_app/immutable/chunks/Bz4Y3fRF.js +1 -0
- package/build/client/_app/immutable/chunks/C-OQMol4.js +1 -0
- package/build/client/_app/immutable/chunks/C-y9NEjX.js +1 -0
- package/build/client/_app/immutable/chunks/C1JXY9b5.js +30 -0
- package/build/client/_app/immutable/chunks/C2x7inlt.js +321 -0
- package/build/client/_app/immutable/chunks/C531GsRP.js +2 -0
- package/build/client/_app/immutable/chunks/C5TAQhFO.js +1 -0
- package/build/client/_app/immutable/chunks/C5_-GSwl.js +1 -0
- package/build/client/_app/immutable/chunks/C6lv30UQ.js +1 -0
- package/build/client/_app/immutable/chunks/C7h46wYY.js +1 -0
- package/build/client/_app/immutable/chunks/C8Ef5oNN.js +1 -0
- package/build/client/_app/immutable/chunks/CA_WNCsl.js +41 -0
- package/build/client/_app/immutable/chunks/CC2rA5mh.js +1 -0
- package/build/client/_app/immutable/chunks/CHdTS7qa.js +15 -0
- package/build/client/_app/immutable/chunks/CIPQ_RoX.js +1 -0
- package/build/client/_app/immutable/chunks/CJ_zvTBg.js +72 -0
- package/build/client/_app/immutable/chunks/CPEyWost.js +1 -0
- package/build/client/_app/immutable/chunks/CPgSxomx.js +1 -0
- package/build/client/_app/immutable/chunks/CRfGWb83.js +1 -0
- package/build/client/_app/immutable/chunks/CTgm3pse.js +1 -0
- package/build/client/_app/immutable/chunks/CVaqCwHa.js +1 -0
- package/build/client/_app/immutable/chunks/CWKM3f5q.js +1 -0
- package/build/client/_app/immutable/chunks/CWVpRRWx.js +162 -0
- package/build/client/_app/immutable/chunks/CXMH3UgJ.js +257 -0
- package/build/client/_app/immutable/chunks/CZ-RNlot.js +1 -0
- package/build/client/_app/immutable/chunks/CZXl7qUb.js +70 -0
- package/build/client/_app/immutable/chunks/C_N-eONP.js +1 -0
- package/build/client/_app/immutable/chunks/Cb1pwoev.js +1 -0
- package/build/client/_app/immutable/chunks/CcL1k2On.js +11 -0
- package/build/client/_app/immutable/chunks/CcWV7GYH.js +1 -0
- package/build/client/_app/immutable/chunks/CcwsVR0C.js +1 -0
- package/build/client/_app/immutable/chunks/Cd6K7Y8m.js +1 -0
- package/build/client/_app/immutable/chunks/CfSJPG6W.js +1 -0
- package/build/client/_app/immutable/chunks/CfZ7uSQe.js +38 -0
- package/build/client/_app/immutable/chunks/Cimd5fb3.js +1 -0
- package/build/client/_app/immutable/chunks/Cj-Zm41R.js +36 -0
- package/build/client/_app/immutable/chunks/CjZ_QSbm.js +1 -0
- package/build/client/_app/immutable/chunks/CkrcOjFY.js +1 -0
- package/build/client/_app/immutable/chunks/ClamHrr6.js +1 -0
- package/build/client/_app/immutable/chunks/Cm7r79vr.js +1 -0
- package/build/client/_app/immutable/chunks/CmbEK4CY.js +84 -0
- package/build/client/_app/immutable/chunks/CmvnEPtD.js +7 -0
- package/build/client/_app/immutable/chunks/CopQ2nXW.js +1 -0
- package/build/client/_app/immutable/chunks/CpzslTdj.js +1 -0
- package/build/client/_app/immutable/chunks/CsHVnZCH.js +1 -0
- package/build/client/_app/immutable/chunks/CsQS60Ue.js +1 -0
- package/build/client/_app/immutable/chunks/CuRJVwEq.js +1 -0
- package/build/client/_app/immutable/chunks/D-oSqn_W.js +1 -0
- package/build/client/_app/immutable/chunks/D-ptJ9y-.js +1 -0
- package/build/client/_app/immutable/chunks/D05T4iGw.js +1 -0
- package/build/client/_app/immutable/chunks/D0I62FkS.js +1 -0
- package/build/client/_app/immutable/chunks/D16vkywU.js +1 -0
- package/build/client/_app/immutable/chunks/D1qzYj9m.js +1 -0
- package/build/client/_app/immutable/chunks/D3hlyOfw.js +1 -0
- package/build/client/_app/immutable/chunks/D4gq_dik.js +1 -0
- package/build/client/_app/immutable/chunks/D7fX-3xy.js +1 -0
- package/build/client/_app/immutable/chunks/D8-5qLJg.js +231 -0
- package/build/client/_app/immutable/chunks/D8hlhfM3.js +1 -0
- package/build/client/_app/immutable/chunks/DAS1CLuE.js +24 -0
- package/build/client/_app/immutable/chunks/DGarjVZC.js +1 -0
- package/build/client/_app/immutable/chunks/DGd2pJF5.js +1 -0
- package/build/client/_app/immutable/chunks/DHpiXF5c.js +1 -0
- package/build/client/_app/immutable/chunks/DHwB1DNv.js +161 -0
- package/build/client/_app/immutable/chunks/DIMkf-bt.js +3 -0
- package/build/client/_app/immutable/chunks/DISqw1ZD.js +1 -0
- package/build/client/_app/immutable/chunks/DITEY8D_.js +62 -0
- package/build/client/_app/immutable/chunks/DL0yNkAA.js +1 -0
- package/build/client/_app/immutable/chunks/DL1Hc2zs.js +1 -0
- package/build/client/_app/immutable/chunks/DLOOos_8.js +292 -0
- package/build/client/_app/immutable/chunks/DMUM7wLl.js +1 -0
- package/build/client/_app/immutable/chunks/DPKol_4Z.js +139 -0
- package/build/client/_app/immutable/chunks/DS17s2tU.js +1 -0
- package/build/client/_app/immutable/chunks/DT7zqm-g.js +1 -0
- package/build/client/_app/immutable/chunks/DTj74zXo.js +1 -0
- package/build/client/_app/immutable/chunks/DV3o63ZY.js +1 -0
- package/build/client/_app/immutable/chunks/DVXVVWkX.js +129 -0
- package/build/client/_app/immutable/chunks/DWDfcLfy.js +206 -0
- package/build/client/_app/immutable/chunks/DXeGLmed.js +8 -0
- package/build/client/_app/immutable/chunks/DYqsupvX.js +1 -0
- package/build/client/_app/immutable/chunks/DZ6u0Z-K.js +1 -0
- package/build/client/_app/immutable/chunks/DZFCIeNp.js +1 -0
- package/build/client/_app/immutable/chunks/D_Lu-MrJ.js +1 -0
- package/build/client/_app/immutable/chunks/DauUninz.js +1 -0
- package/build/client/_app/immutable/chunks/DbInun42.js +1 -0
- package/build/client/_app/immutable/chunks/DbcKN35_.js +3 -0
- package/build/client/_app/immutable/chunks/DcZe4Woe.js +1 -0
- package/build/client/_app/immutable/chunks/DdL9SqIa.js +1 -0
- package/build/client/_app/immutable/chunks/De2hgUGE.js +1 -0
- package/build/client/_app/immutable/chunks/DezsRK8O.js +1 -0
- package/build/client/_app/immutable/chunks/Dg_UWGX7.js +24 -0
- package/build/client/_app/immutable/chunks/Dj2t5yNg.js +1 -0
- package/build/client/_app/immutable/chunks/DkqhCAOL.js +1 -0
- package/build/client/_app/immutable/chunks/DlQrSOw4.js +7 -0
- package/build/client/_app/immutable/chunks/DmHpPYUd.js +1 -0
- package/build/client/_app/immutable/chunks/Dmn-tsie.js +1 -0
- package/build/client/_app/immutable/chunks/DpFanUEy.js +298 -0
- package/build/client/_app/immutable/chunks/DqwfDHZH.js +89 -0
- package/build/client/_app/immutable/chunks/Dr0pcX_F.js +1 -0
- package/build/client/_app/immutable/chunks/DrH0SRf2.js +1 -0
- package/build/client/_app/immutable/chunks/DsF7k-Jl.js +1 -0
- package/build/client/_app/immutable/chunks/DtBGId5S.js +2 -0
- package/build/client/_app/immutable/chunks/DuM1hSCa.js +1 -0
- package/build/client/_app/immutable/chunks/Du_ODUAO.js +1 -0
- package/build/client/_app/immutable/chunks/DvCMcJ3P.js +1 -0
- package/build/client/_app/immutable/chunks/Dy-Kn_BL.js +1 -0
- package/build/client/_app/immutable/chunks/DzVMo6mB.js +62 -0
- package/build/client/_app/immutable/chunks/ESmLJICu.js +1 -0
- package/build/client/_app/immutable/chunks/FvmIjYaQ.js +1 -0
- package/build/client/_app/immutable/chunks/GBaNblmo.js +1 -0
- package/build/client/_app/immutable/chunks/HclGiUj8.js +1 -0
- package/build/client/_app/immutable/chunks/Ju5jF6hy.js +1 -0
- package/build/client/_app/immutable/chunks/KythIMN8.js +1 -0
- package/build/client/_app/immutable/chunks/LWre5GKl.js +40 -0
- package/build/client/_app/immutable/chunks/NEE52Syq.js +1 -0
- package/build/client/_app/immutable/chunks/No6lfiAw.js +1 -0
- package/build/client/_app/immutable/chunks/OmE6SGvs.js +106 -0
- package/build/client/_app/immutable/chunks/P_ok0Z_j.js +2 -0
- package/build/client/_app/immutable/chunks/PaZBB01u.js +1 -0
- package/build/client/_app/immutable/chunks/Rh9cy7xg.js +2 -0
- package/build/client/_app/immutable/chunks/SOo6toE5.js +1 -0
- package/build/client/_app/immutable/chunks/TNLUqJaC.js +1 -0
- package/build/client/_app/immutable/chunks/UNxFjlik.js +1 -0
- package/build/client/_app/immutable/chunks/UmdltqoE.js +1 -0
- package/build/client/_app/immutable/chunks/Z5eAx3Zn.js +1 -0
- package/build/client/_app/immutable/chunks/bTuwJoIa.js +1 -0
- package/build/client/_app/immutable/chunks/fmXr3nnJ.js +1 -0
- package/build/client/_app/immutable/chunks/fybaL0A-.js +1 -0
- package/build/client/_app/immutable/chunks/gp-XZpBa.js +3 -0
- package/build/client/_app/immutable/chunks/h-p5ZdY8.js +1 -0
- package/build/client/_app/immutable/chunks/hxYEUgOo.js +1 -0
- package/build/client/_app/immutable/chunks/i0VQdJtv.js +1 -0
- package/build/client/_app/immutable/chunks/i0X4ZdIN.js +1 -0
- package/build/client/_app/immutable/chunks/mVHw7KEX.js +7 -0
- package/build/client/_app/immutable/chunks/nDMCpPkF.js +1 -0
- package/build/client/_app/immutable/chunks/nr791fC2.js +1 -0
- package/build/client/_app/immutable/chunks/onAF5SnQ.js +1 -0
- package/build/client/_app/immutable/chunks/oz_6vUea.js +1 -0
- package/build/client/_app/immutable/chunks/qEGLx2Wc.js +78 -0
- package/build/client/_app/immutable/chunks/raVGrKQy.js +44 -0
- package/build/client/_app/immutable/chunks/sBoK_t0W.js +1 -0
- package/build/client/_app/immutable/chunks/sIEmSkn6.js +34 -0
- package/build/client/_app/immutable/chunks/wFIeY1Cf.js +88 -0
- package/build/client/_app/immutable/chunks/xihTtKlq.js +1 -0
- package/build/client/_app/immutable/chunks/zpcgJjUg.js +127 -0
- package/build/client/_app/immutable/entry/app.B2QxMn0t.js +2 -0
- package/build/client/_app/immutable/entry/start.BR3A4iFi.js +1 -0
- package/build/client/_app/immutable/nodes/0.B_ZEZy7b.js +1 -0
- package/build/client/_app/immutable/nodes/1.By3Gd2cs.js +1 -0
- package/build/client/_app/immutable/nodes/2.1TAwiWw1.js +69 -0
- package/build/client/_app/immutable/workers/css.worker-DRH2OcAG.js +93 -0
- package/build/client/_app/immutable/workers/html.worker-DQLddT9h.js +506 -0
- package/build/client/_app/immutable/workers/json.worker-D_Dqrls5.js +62 -0
- package/build/client/_app/immutable/workers/settings-editor-worker-D9zwrD0f.js +30 -0
- package/build/client/_app/immutable/workers/ts.worker-DkYoA6bF.js +67738 -0
- package/build/client/_app/immutable/workers/yaml.worker-BTGFEDOA.js +449 -0
- package/build/client/_app/version.json +1 -0
- package/build/client/favicon.svg +7 -0
- package/build/env.js +70 -0
- package/build/handler.js +23 -0
- package/build/index.js +146 -0
- package/build/server/chunks/chunks/a2a-protocol.js-C77mVg2Q.js +52 -0
- package/build/server/chunks/chunks/app-config.svelte.js-Co9jacqT.js +52 -0
- package/build/server/chunks/chunks/config.js-BBYogCe7.js +123 -0
- package/build/server/chunks/chunks/db.js-DcmO3JAx.js +120 -0
- package/build/server/chunks/chunks/db2.js-DBltVUGg.js +717 -0
- package/build/server/chunks/chunks/dsh-connection.js-DwihVtk_.js +1957 -0
- package/build/server/chunks/chunks/dsh-events.js-BtDxaV6Q.js +706 -0
- package/build/server/chunks/chunks/env.js-l0sNRNKZ.js +2 -0
- package/build/server/chunks/chunks/exports.js-DMiPee3x.js +263 -0
- package/build/server/chunks/chunks/goal-projection.js-0_34t60K.js +44 -0
- package/build/server/chunks/chunks/image-limits.js-BMPZ55kJ.js +186 -0
- package/build/server/chunks/chunks/insight-config.js-CfMPTA6Z.js +352 -0
- package/build/server/chunks/chunks/internal.js-CQzEjdyk.js +747 -0
- package/build/server/chunks/chunks/internal2.js-D-DAuSVh.js +22 -0
- package/build/server/chunks/chunks/server.js-DoCd0fEo.js +4104 -0
- package/build/server/chunks/chunks/shared.js-C4-Py8s_.js +775 -0
- package/build/server/chunks/chunks/state.js-CpmOS0a2.js +114 -0
- package/build/server/chunks/chunks/uneval.js-BJ9Qq2SF.js +488 -0
- package/build/server/chunks/chunks/utils.js-tOWCe9Wk.js +933 -0
- package/build/server/chunks/chunks/watcher.js-BelxjMOP.js +473 -0
- package/build/server/chunks/entries/endpoints/api/a2a/_id_/_server.ts.js-B4HUNFZv.js +37 -0
- package/build/server/chunks/entries/endpoints/api/a2a/_server.ts.js-JDV_oqbX.js +61 -0
- package/build/server/chunks/entries/endpoints/api/a2a/register/_server.ts.js-Dxwc-7-5.js +99 -0
- package/build/server/chunks/entries/endpoints/api/config/_server.ts.js-D8i35bGH.js +35 -0
- package/build/server/chunks/entries/endpoints/api/dsh/directory/_server.ts.js-CeBU1G85.js +43 -0
- package/build/server/chunks/entries/endpoints/api/dsh/pick-directory/_server.ts.js-CyrVUxv3.js +36 -0
- package/build/server/chunks/entries/endpoints/api/dsh/presets/_server.ts.js-qeO_1htT.js +33 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/attachment/_server.ts.js-DnHffohz.js +44 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/cancel/_server.ts.js-fm6MFyjP.js +33 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/catalog/_server.ts.js-wJ9V_Ue7.js +42 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/command/_server.ts.js-o83L4GUY.js +85 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/events/_server.ts.js-DLCHSC1M.js +212 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/fork/_server.ts.js-Ca6NU9HO.js +58 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/goal/_server.ts.js-RteR85vn.js +138 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/history/_server.ts.js-CEKDkK7v.js +55 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/models/_server.ts.js-D7ziyW3d.js +35 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/permission/_server.ts.js-DbkD4JZb.js +92 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/prompt/_server.ts.js-eOLNlf1-.js +94 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/rename/_server.ts.js-txQRocK9.js +57 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/respond/_server.ts.js-D3WGYzkE.js +69 -0
- package/build/server/chunks/entries/endpoints/api/dsh/session/_sessionId_/select-model/_server.ts.js-g2GtvLTs.js +69 -0
- package/build/server/chunks/entries/endpoints/api/dsh/sessions/_server.ts.js-17yKojU_.js +85 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/_server.ts.js-D16pEhvd.js +99 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/save/_server.ts.js-BXpZNLK8.js +110 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspace-file-bytes/_server.ts.js-hBlyjq-x.js +113 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspace-tree/_server.ts.js-KWRnsAkm.js +59 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_server.ts.js-DzNvvCxK.js +55 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_workspaceId_/delete/_server.ts.js-MK5925CY.js +45 -0
- package/build/server/chunks/entries/endpoints/api/dsh/workspaces/_workspaceId_/rename/_server.ts.js-w3Mo0nf7.js +63 -0
- package/build/server/chunks/entries/endpoints/api/prompts/_id_/_server.ts.js-CInfjM-i.js +64 -0
- package/build/server/chunks/entries/endpoints/api/prompts/_server.ts.js-C1lqP1OV.js +87 -0
- package/build/server/chunks/entries/endpoints/api/prompts/use/_server.ts.js-B36YMKMt.js +54 -0
- package/build/server/chunks/entries/endpoints/api/settings/_server.ts.js-CHvHNzeB.js +101 -0
- package/build/server/chunks/entries/pages/_error.svelte.js-BE3-BWDd.js +41 -0
- package/build/server/chunks/entries/pages/_layout.svelte.js-EFiihTdF.js +18 -0
- package/build/server/chunks/entries/pages/_layout.ts.js-CNSo-Z1U.js +22 -0
- package/build/server/chunks/entries/pages/_page.server.ts.js-Bk8UuUXA.js +85 -0
- package/build/server/chunks/entries/pages/_page.svelte.js-CfmKQYLK.js +13883 -0
- package/build/server/chunks/handler-BshnD4Y4.js +1735 -0
- package/build/server/chunks/index.js-I_pMeIwQ.js +3864 -0
- package/build/server/chunks/manifest.js-DwhpAk_y.js +273 -0
- package/build/server/chunks/nodes/0.js-DCyDo8-C.js +12 -0
- package/build/server/chunks/nodes/1.js-Dx7z_VWN.js +9 -0
- package/build/server/chunks/nodes/2.js-CLw9pxho.js +24 -0
- package/build/shims.js +33 -0
- package/package.json +65 -0
- package/template/.dsi/a2a.sqlite +0 -0
- package/template/.dsi/config.json +42 -0
- package/template/.dsi/prompts.sqlite +0 -0
- package/template/.dsi/settings.yaml +33 -0
|
@@ -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/sessions/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — GET /api/dsh/sessions · POST /api/dsh/sessions
|
|
15
|
+
*
|
|
16
|
+
* GET: the live session list (DsiSessionSummary rows) + the workspace
|
|
17
|
+
* registry + the full preset catalog. The browser never reaches the DSH
|
|
18
|
+
* Host directly (BC-1); this route is its only view of session.list,
|
|
19
|
+
* workspace.list, and agentPreset.list (BC-6: wire bytes live behind
|
|
20
|
+
* dsh-connection → dsh-rpc).
|
|
21
|
+
*
|
|
22
|
+
* POST (POC-2 W3, self-sufficiency): create a session on the host through
|
|
23
|
+
* the same choke point. Body {agentPreset?} → {ok:true, sessionId, agentPreset}.
|
|
24
|
+
*/
|
|
25
|
+
var GET = async () => {
|
|
26
|
+
try {
|
|
27
|
+
const conn = getDshConnection();
|
|
28
|
+
const [sessions, workspaces, presets] = await Promise.all([
|
|
29
|
+
conn.listSessions(),
|
|
30
|
+
conn.listWorkspaces(),
|
|
31
|
+
conn.listPresets()
|
|
32
|
+
]);
|
|
33
|
+
return json({
|
|
34
|
+
ok: true,
|
|
35
|
+
sessions: sessions.items,
|
|
36
|
+
workspaces: workspaces.items,
|
|
37
|
+
presets: presets.presets
|
|
38
|
+
});
|
|
39
|
+
} catch (err) {
|
|
40
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
var POST = async ({ request }) => {
|
|
44
|
+
let body;
|
|
45
|
+
try {
|
|
46
|
+
body = await request.json();
|
|
47
|
+
} catch {
|
|
48
|
+
return json({
|
|
49
|
+
ok: false,
|
|
50
|
+
error: {
|
|
51
|
+
code: "bad-json",
|
|
52
|
+
message: "request body is not valid JSON"
|
|
53
|
+
}
|
|
54
|
+
}, { status: 400 });
|
|
55
|
+
}
|
|
56
|
+
const agentPreset = body?.agentPreset;
|
|
57
|
+
if (agentPreset !== void 0 && typeof agentPreset !== "string") return json({
|
|
58
|
+
ok: false,
|
|
59
|
+
error: {
|
|
60
|
+
code: "bad-preset",
|
|
61
|
+
message: "agentPreset must be a string"
|
|
62
|
+
}
|
|
63
|
+
}, { status: 400 });
|
|
64
|
+
const cwd = body?.cwd;
|
|
65
|
+
if (cwd !== void 0 && (typeof cwd !== "string" || cwd.length === 0)) return json({
|
|
66
|
+
ok: false,
|
|
67
|
+
error: {
|
|
68
|
+
code: "bad-cwd",
|
|
69
|
+
message: "cwd must be a non-empty string"
|
|
70
|
+
}
|
|
71
|
+
}, { status: 400 });
|
|
72
|
+
try {
|
|
73
|
+
const created = await getDshConnection().createSession(cwd === void 0 ? void 0 : cwd, agentPreset === void 0 || agentPreset === "" ? void 0 : agentPreset);
|
|
74
|
+
return json({
|
|
75
|
+
ok: true,
|
|
76
|
+
sessionId: created.sessionId,
|
|
77
|
+
agentPreset: created.agentPreset ?? null
|
|
78
|
+
});
|
|
79
|
+
} catch (err) {
|
|
80
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export { GET, POST };
|
|
85
|
+
//# sourceMappingURL=_server.ts.js-17yKojU_.js.map
|
package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/_server.ts.js-D16pEhvd.js
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { g as getDshConnection, D as DshRpcError, m as mapRpcFailure, s as statusFor } 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/workspace-file/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — GET /api/dsh/workspace-file?sessionId=…&path=…&offset=…&limit=…
|
|
15
|
+
*
|
|
16
|
+
* One page of one real workspace file (Workspace Explorer W2, 2026-09-10
|
|
17
|
+
* ADR D2): the ONE module that touches host file bytes. The browser never
|
|
18
|
+
* reaches the DSH Host directly (BC-1); the read rides dsh-rpc →
|
|
19
|
+
* workspaceFiles/read, whose host side confines the path to the session's
|
|
20
|
+
* workspace root by containment. Every host refusal maps to an HTTP status
|
|
21
|
+
* so a file panel never renders blank (Karpathy Layer 2 failure condition):
|
|
22
|
+
*
|
|
23
|
+
* workspace-file/not-found → 404
|
|
24
|
+
* workspace-file/outside-workspace → 403
|
|
25
|
+
* workspace-file/too-large → 413
|
|
26
|
+
* workspace-file/not-text
|
|
27
|
+
* workspace-file/not-regular-file → 415
|
|
28
|
+
* any other DshRpcError → 502 (host answered, we relay)
|
|
29
|
+
* transport failure → 503 host-unreachable
|
|
30
|
+
*/
|
|
31
|
+
/** Refusal code → HTTP status for the panel's failure line. */
|
|
32
|
+
var REFUSAL_STATUS = {
|
|
33
|
+
"workspace-file/not-found": 404,
|
|
34
|
+
"workspace-file/outside-workspace": 403,
|
|
35
|
+
"workspace-file/too-large": 413,
|
|
36
|
+
"workspace-file/not-text": 415,
|
|
37
|
+
"workspace-file/not-regular-file": 415
|
|
38
|
+
};
|
|
39
|
+
/** Positive-integer query param: undefined when absent, 'bad' when malformed. */
|
|
40
|
+
function pageParam(raw) {
|
|
41
|
+
if (raw === null) return void 0;
|
|
42
|
+
if (!/^\d+$/.test(raw) || Number(raw) < 1) return "bad";
|
|
43
|
+
return Number(raw);
|
|
44
|
+
}
|
|
45
|
+
var GET = async ({ url }) => {
|
|
46
|
+
const sessionId = url.searchParams.get("sessionId");
|
|
47
|
+
if (sessionId === null || sessionId.trim().length === 0) return json({
|
|
48
|
+
ok: false,
|
|
49
|
+
error: {
|
|
50
|
+
code: "bad-session",
|
|
51
|
+
message: "sessionId is required"
|
|
52
|
+
}
|
|
53
|
+
}, { status: 400 });
|
|
54
|
+
const path = url.searchParams.get("path");
|
|
55
|
+
if (path === null || path.length === 0) return json({
|
|
56
|
+
ok: false,
|
|
57
|
+
error: {
|
|
58
|
+
code: "bad-path",
|
|
59
|
+
message: "path is required"
|
|
60
|
+
}
|
|
61
|
+
}, { status: 400 });
|
|
62
|
+
const offset = pageParam(url.searchParams.get("offset"));
|
|
63
|
+
if (offset === "bad") return json({
|
|
64
|
+
ok: false,
|
|
65
|
+
error: {
|
|
66
|
+
code: "bad-offset",
|
|
67
|
+
message: "offset must be a positive integer"
|
|
68
|
+
}
|
|
69
|
+
}, { status: 400 });
|
|
70
|
+
const limit = pageParam(url.searchParams.get("limit"));
|
|
71
|
+
if (limit === "bad") return json({
|
|
72
|
+
ok: false,
|
|
73
|
+
error: {
|
|
74
|
+
code: "bad-limit",
|
|
75
|
+
message: "limit must be a positive integer"
|
|
76
|
+
}
|
|
77
|
+
}, { status: 400 });
|
|
78
|
+
try {
|
|
79
|
+
const conn = getDshConnection();
|
|
80
|
+
const owner = await conn.workspaceOwnerSessionId(sessionId);
|
|
81
|
+
const file = await conn.readWorkspaceFile(owner, path, offset === void 0 && limit === void 0 ? void 0 : {
|
|
82
|
+
offset,
|
|
83
|
+
limit
|
|
84
|
+
});
|
|
85
|
+
return json({
|
|
86
|
+
ok: true,
|
|
87
|
+
file
|
|
88
|
+
});
|
|
89
|
+
} catch (err) {
|
|
90
|
+
if (err instanceof DshRpcError) {
|
|
91
|
+
const mapped = REFUSAL_STATUS[err.code];
|
|
92
|
+
if (mapped !== void 0) return json(mapRpcFailure(err), { status: mapped });
|
|
93
|
+
}
|
|
94
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
export { GET };
|
|
99
|
+
//# sourceMappingURL=_server.ts.js-D16pEhvd.js.map
|
package/build/server/chunks/entries/endpoints/api/dsh/workspace-file/save/_server.ts.js-BXpZNLK8.js
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
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/lib/services/panels/delegated-save.ts
|
|
13
|
+
/**
|
|
14
|
+
* delegated-save — the pure composer behind the file panel's Save button
|
|
15
|
+
* (ADR "The Delegated Save", 2026-09-11, D1/D2): the save is a PLAIN user
|
|
16
|
+
* turn — "update this file to exactly this content" — delivered through
|
|
17
|
+
* the session prompt route, so the write crosses the agent's own sandbox,
|
|
18
|
+
* approval, and session-log path. This module owns the PINNED turn
|
|
19
|
+
* wording: operator-visible model input, unit-tested verbatim.
|
|
20
|
+
*/
|
|
21
|
+
/** The literal fence lines the composed turn wraps the content in. */
|
|
22
|
+
var CONTENT_BEGIN = "CONTENT-BEGIN";
|
|
23
|
+
var CONTENT_END = "CONTENT-END";
|
|
24
|
+
/**
|
|
25
|
+
* Compose the delegated save turn.
|
|
26
|
+
* @param path - the file's root-relative path (the panel's `path` prop).
|
|
27
|
+
* @param content - the editor buffer, embedded VERBATIM between the
|
|
28
|
+
* fence markers — every character, including a trailing newline,
|
|
29
|
+
* is content the agent must write.
|
|
30
|
+
* @returns the turn text; a plain user turn, indistinguishable on the
|
|
31
|
+
* wire from the operator typing the request.
|
|
32
|
+
*/
|
|
33
|
+
function delegatedSaveTurn(path, content) {
|
|
34
|
+
return [
|
|
35
|
+
"Update the workspace file \"" + path + "\" to EXACTLY the following content.",
|
|
36
|
+
"Replace the whole file: do not append, do not truncate, do not reformat,",
|
|
37
|
+
"do not add or remove a trailing newline. Between the CONTENT-BEGIN",
|
|
38
|
+
"and CONTENT-END markers below, every character is literal file content.",
|
|
39
|
+
"",
|
|
40
|
+
CONTENT_BEGIN,
|
|
41
|
+
content,
|
|
42
|
+
CONTENT_END,
|
|
43
|
+
"",
|
|
44
|
+
"When the file is written, reply with the path you wrote and nothing else."
|
|
45
|
+
].join("\n");
|
|
46
|
+
}
|
|
47
|
+
//#endregion
|
|
48
|
+
//#region src/routes/api/dsh/workspace-file/save/+server.ts
|
|
49
|
+
/**
|
|
50
|
+
* api-dsh — POST /api/dsh/workspace-file/save
|
|
51
|
+
*
|
|
52
|
+
* The Delegated Save (ADR "The Delegated Save", 2026-09-11, D1/D3): the
|
|
53
|
+
* file panel's Save button does NOT write bytes — it composes a plain
|
|
54
|
+
* user turn (delegated-save.ts) and injects it into the session's ROOT
|
|
55
|
+
* owner, so the write crosses the agent's own sandbox + approval + log
|
|
56
|
+
* path. Returns after the receipt only (the prompt route's BC-3
|
|
57
|
+
* boundary): {accepted:true} or a mapped RPC error. DSI never touches
|
|
58
|
+
* disk and never proves bytes landed — the receipt is acceptance, not
|
|
59
|
+
* effect (ADR D5).
|
|
60
|
+
*/
|
|
61
|
+
var POST = async ({ request }) => {
|
|
62
|
+
let body;
|
|
63
|
+
try {
|
|
64
|
+
body = await request.json();
|
|
65
|
+
} catch {
|
|
66
|
+
return json({
|
|
67
|
+
ok: false,
|
|
68
|
+
error: {
|
|
69
|
+
code: "bad-json",
|
|
70
|
+
message: "request body is not valid JSON"
|
|
71
|
+
}
|
|
72
|
+
}, { status: 400 });
|
|
73
|
+
}
|
|
74
|
+
const { sessionId, path, content } = body ?? {};
|
|
75
|
+
if (typeof sessionId !== "string" || sessionId.trim().length === 0) return json({
|
|
76
|
+
ok: false,
|
|
77
|
+
error: {
|
|
78
|
+
code: "bad-session",
|
|
79
|
+
message: "sessionId is required"
|
|
80
|
+
}
|
|
81
|
+
}, { status: 400 });
|
|
82
|
+
if (typeof path !== "string" || path.length === 0) return json({
|
|
83
|
+
ok: false,
|
|
84
|
+
error: {
|
|
85
|
+
code: "bad-path",
|
|
86
|
+
message: "path is required"
|
|
87
|
+
}
|
|
88
|
+
}, { status: 400 });
|
|
89
|
+
if (typeof content !== "string") return json({
|
|
90
|
+
ok: false,
|
|
91
|
+
error: {
|
|
92
|
+
code: "bad-content",
|
|
93
|
+
message: "content must be a string"
|
|
94
|
+
}
|
|
95
|
+
}, { status: 400 });
|
|
96
|
+
try {
|
|
97
|
+
const conn = getDshConnection();
|
|
98
|
+
const owner = await conn.workspaceOwnerSessionId(sessionId);
|
|
99
|
+
const receipt = await conn.prompt(owner, delegatedSaveTurn(path, content));
|
|
100
|
+
return json({
|
|
101
|
+
ok: true,
|
|
102
|
+
accepted: receipt.accepted === true
|
|
103
|
+
});
|
|
104
|
+
} catch (err) {
|
|
105
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export { POST };
|
|
110
|
+
//# sourceMappingURL=_server.ts.js-BXpZNLK8.js.map
|
package/build/server/chunks/entries/endpoints/api/dsh/workspace-file-bytes/_server.ts.js-hBlyjq-x.js
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { g as getDshConnection, D as DshRpcError, m as mapRpcFailure, s as statusFor } 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/workspace-file-bytes/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — GET /api/dsh/workspace-file-bytes?sessionId=…&path=…
|
|
15
|
+
*
|
|
16
|
+
* Binary workspace file read (2026-09-10): images and other non-text
|
|
17
|
+
* files refused by workspaceFiles/read (workspace-file/not-text) read
|
|
18
|
+
* through workspaceFiles/readBytes — base64 byte windows on the wire,
|
|
19
|
+
* paged here until eof and re-joined into one binary Response the
|
|
20
|
+
* browser renders with an <img> element. Refusal mapping follows the
|
|
21
|
+
* workspace-file route: not-found → 404, outside-workspace → 403,
|
|
22
|
+
* not-regular-file → 415, other DshRpcError → 502, transport → 503.
|
|
23
|
+
*/
|
|
24
|
+
/** The extensions DSI previews as images; anything else refuses 415. */
|
|
25
|
+
var IMAGE_MIME = {
|
|
26
|
+
png: "image/png",
|
|
27
|
+
jpg: "image/jpeg",
|
|
28
|
+
jpeg: "image/jpeg",
|
|
29
|
+
gif: "image/gif",
|
|
30
|
+
webp: "image/webp",
|
|
31
|
+
svg: "image/svg+xml",
|
|
32
|
+
bmp: "image/bmp",
|
|
33
|
+
ico: "image/x-icon",
|
|
34
|
+
avif: "image/avif"
|
|
35
|
+
};
|
|
36
|
+
/** Byte window per readBytes call — bounded so one huge file cannot
|
|
37
|
+
* balloon the response; the window count cap below is the real bound. */
|
|
38
|
+
var WINDOW_BYTES = 524288;
|
|
39
|
+
/** 64 windows × 512 KiB = the 32 MiB per-request ceiling. */
|
|
40
|
+
var MAX_WINDOWS = 64;
|
|
41
|
+
var MIME_BY_EXT = (path) => {
|
|
42
|
+
return IMAGE_MIME[path.split(".").pop()?.toLowerCase() ?? ""] ?? null;
|
|
43
|
+
};
|
|
44
|
+
/** Refusal code → HTTP status, identical to the workspace-file route. */
|
|
45
|
+
var REFUSAL_STATUS = {
|
|
46
|
+
"workspace-file/not-found": 404,
|
|
47
|
+
"workspace-file/outside-workspace": 403,
|
|
48
|
+
"workspace-file/not-regular-file": 415
|
|
49
|
+
};
|
|
50
|
+
var GET = async ({ url }) => {
|
|
51
|
+
const sessionId = url.searchParams.get("sessionId");
|
|
52
|
+
if (sessionId === null || sessionId.trim().length === 0) return json({
|
|
53
|
+
ok: false,
|
|
54
|
+
error: {
|
|
55
|
+
code: "bad-session",
|
|
56
|
+
message: "sessionId is required"
|
|
57
|
+
}
|
|
58
|
+
}, { status: 400 });
|
|
59
|
+
const path = url.searchParams.get("path");
|
|
60
|
+
if (path === null || path.trim().length === 0) return json({
|
|
61
|
+
ok: false,
|
|
62
|
+
error: {
|
|
63
|
+
code: "bad-path",
|
|
64
|
+
message: "path is required"
|
|
65
|
+
}
|
|
66
|
+
}, { status: 400 });
|
|
67
|
+
const mime = MIME_BY_EXT(path);
|
|
68
|
+
if (mime === null) return json({
|
|
69
|
+
ok: false,
|
|
70
|
+
error: {
|
|
71
|
+
code: "bad-ext",
|
|
72
|
+
message: "not a previewable image extension"
|
|
73
|
+
}
|
|
74
|
+
}, { status: 415 });
|
|
75
|
+
try {
|
|
76
|
+
const conn = getDshConnection();
|
|
77
|
+
const owner = await conn.workspaceOwnerSessionId(sessionId);
|
|
78
|
+
const chunks = [];
|
|
79
|
+
let offset = 0;
|
|
80
|
+
for (let window = 0; window < MAX_WINDOWS; window++) {
|
|
81
|
+
const page = await conn.readWorkspaceFileBytes(owner, path, {
|
|
82
|
+
offset,
|
|
83
|
+
length: WINDOW_BYTES
|
|
84
|
+
});
|
|
85
|
+
const buf = Buffer.from(page.data, "base64");
|
|
86
|
+
if (buf.length > 0) chunks.push(buf);
|
|
87
|
+
if (page.eof) {
|
|
88
|
+
const body = Buffer.concat(chunks);
|
|
89
|
+
return new Response(new Uint8Array(body), { headers: {
|
|
90
|
+
"content-type": mime,
|
|
91
|
+
"cache-control": "no-store"
|
|
92
|
+
} });
|
|
93
|
+
}
|
|
94
|
+
offset += buf.length;
|
|
95
|
+
}
|
|
96
|
+
return json({
|
|
97
|
+
ok: false,
|
|
98
|
+
error: {
|
|
99
|
+
code: "too-many-windows",
|
|
100
|
+
message: "file exceeds the preview ceiling"
|
|
101
|
+
}
|
|
102
|
+
}, { status: 413 });
|
|
103
|
+
} catch (err) {
|
|
104
|
+
if (err instanceof DshRpcError) {
|
|
105
|
+
const mapped = REFUSAL_STATUS[err.code];
|
|
106
|
+
if (mapped !== void 0) return json(mapRpcFailure(err), { status: mapped });
|
|
107
|
+
}
|
|
108
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
export { GET };
|
|
113
|
+
//# sourceMappingURL=_server.ts.js-hBlyjq-x.js.map
|
package/build/server/chunks/entries/endpoints/api/dsh/workspace-tree/_server.ts.js-KWRnsAkm.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { g as getDshConnection, D as DshRpcError, m as mapRpcFailure, s as statusFor } 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/workspace-tree/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — GET /api/dsh/workspace-tree?sessionId=…&path=…
|
|
15
|
+
*
|
|
16
|
+
* One directory level inside the session's workspace (Workspace Explorer
|
|
17
|
+
* bugfix 2026-09-09): the LIVE tree lists through workspaceFiles/list —
|
|
18
|
+
* session-authorized and workspace-confined — because the picker's
|
|
19
|
+
* directoryPicker/list is native-only on real hosts (the live refusal
|
|
20
|
+
* this route replaces: "the composed picker serves \"native\""). path is
|
|
21
|
+
* workspace-relative; '' lists the root itself. Refusal mapping follows
|
|
22
|
+
* the workspace-file route: not-found → 404, outside-workspace → 403,
|
|
23
|
+
* not-directory → 415, other DshRpcError → 502, transport → 503.
|
|
24
|
+
*/
|
|
25
|
+
/** Refusal code → HTTP status for the tree's failure row. */
|
|
26
|
+
var REFUSAL_STATUS = {
|
|
27
|
+
"workspace-file/not-found": 404,
|
|
28
|
+
"workspace-file/outside-workspace": 403,
|
|
29
|
+
"workspace-file/not-directory": 415
|
|
30
|
+
};
|
|
31
|
+
var GET = async ({ url }) => {
|
|
32
|
+
const sessionId = url.searchParams.get("sessionId");
|
|
33
|
+
if (sessionId === null || sessionId.trim().length === 0) return json({
|
|
34
|
+
ok: false,
|
|
35
|
+
error: {
|
|
36
|
+
code: "bad-session",
|
|
37
|
+
message: "sessionId is required"
|
|
38
|
+
}
|
|
39
|
+
}, { status: 400 });
|
|
40
|
+
const path = url.searchParams.get("path") ?? "";
|
|
41
|
+
try {
|
|
42
|
+
const conn = getDshConnection();
|
|
43
|
+
const owner = await conn.workspaceOwnerSessionId(sessionId);
|
|
44
|
+
const listing = await conn.listWorkspaceDirectory(owner, path);
|
|
45
|
+
return json({
|
|
46
|
+
ok: true,
|
|
47
|
+
listing
|
|
48
|
+
});
|
|
49
|
+
} catch (err) {
|
|
50
|
+
if (err instanceof DshRpcError) {
|
|
51
|
+
const mapped = REFUSAL_STATUS[err.code];
|
|
52
|
+
if (mapped !== void 0) return json(mapRpcFailure(err), { status: mapped });
|
|
53
|
+
}
|
|
54
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export { GET };
|
|
59
|
+
//# sourceMappingURL=_server.ts.js-KWRnsAkm.js.map
|
|
@@ -0,0 +1,55 @@
|
|
|
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/workspaces/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — POST /api/dsh/workspaces
|
|
15
|
+
*
|
|
16
|
+
* Workspace registry adoption (2026-08-23, DSH "Add workspace" parity):
|
|
17
|
+
* the sidebar header button's carrier. Body {path} → host workspace.create
|
|
18
|
+
* → {ok:true, workspace, created}. The browser never reaches the DSH Host
|
|
19
|
+
* directly (BC-1); wire bytes live behind dsh-connection (BC-6).
|
|
20
|
+
*/
|
|
21
|
+
var POST = async ({ request }) => {
|
|
22
|
+
let body;
|
|
23
|
+
try {
|
|
24
|
+
body = await request.json();
|
|
25
|
+
} catch {
|
|
26
|
+
return json({
|
|
27
|
+
ok: false,
|
|
28
|
+
error: {
|
|
29
|
+
code: "bad-json",
|
|
30
|
+
message: "request body is not valid JSON"
|
|
31
|
+
}
|
|
32
|
+
}, { status: 400 });
|
|
33
|
+
}
|
|
34
|
+
const path = body?.path;
|
|
35
|
+
if (typeof path !== "string" || path.trim().length === 0) return json({
|
|
36
|
+
ok: false,
|
|
37
|
+
error: {
|
|
38
|
+
code: "bad-path",
|
|
39
|
+
message: "path must be a non-empty string"
|
|
40
|
+
}
|
|
41
|
+
}, { status: 400 });
|
|
42
|
+
try {
|
|
43
|
+
const result = await getDshConnection().createWorkspace(path);
|
|
44
|
+
return json({
|
|
45
|
+
ok: true,
|
|
46
|
+
workspace: result.workspace,
|
|
47
|
+
created: result.created
|
|
48
|
+
});
|
|
49
|
+
} catch (err) {
|
|
50
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export { POST };
|
|
55
|
+
//# sourceMappingURL=_server.ts.js-DzNvvCxK.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
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/workspaces/[workspaceId]/delete/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — POST /api/dsh/workspaces/[workspaceId]/delete
|
|
15
|
+
*
|
|
16
|
+
* Chip Menu ADR D3: the workspace chip's Delete action (confirmed
|
|
17
|
+
* client-side, ADR D2). No body → host workspace/delete →
|
|
18
|
+
* {ok:true, workspaceId}. The host removes ONLY the registry row —
|
|
19
|
+
* sessions survive and turn ghost (ADR D2's honest cost copy states
|
|
20
|
+
* this in the UI). Refusals map through mapRpcFailure (502).
|
|
21
|
+
* The browser never reaches the DSH Host directly (BC-1); wire bytes
|
|
22
|
+
* live behind dsh-connection (BC-6).
|
|
23
|
+
*/
|
|
24
|
+
var POST = async ({ params }) => {
|
|
25
|
+
const workspaceId = params.workspaceId;
|
|
26
|
+
if (typeof workspaceId !== "string" || workspaceId.trim().length === 0) return json({
|
|
27
|
+
ok: false,
|
|
28
|
+
error: {
|
|
29
|
+
code: "bad-workspace-id",
|
|
30
|
+
message: "workspaceId must be a non-empty string"
|
|
31
|
+
}
|
|
32
|
+
}, { status: 400 });
|
|
33
|
+
try {
|
|
34
|
+
const result = await getDshConnection().deleteWorkspace(workspaceId);
|
|
35
|
+
return json({
|
|
36
|
+
ok: true,
|
|
37
|
+
workspaceId: result.workspaceId
|
|
38
|
+
});
|
|
39
|
+
} catch (err) {
|
|
40
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export { POST };
|
|
45
|
+
//# sourceMappingURL=_server.ts.js-MK5925CY.js.map
|
|
@@ -0,0 +1,63 @@
|
|
|
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/workspaces/[workspaceId]/rename/+server.ts
|
|
13
|
+
/**
|
|
14
|
+
* api-dsh — POST /api/dsh/workspaces/[workspaceId]/rename
|
|
15
|
+
*
|
|
16
|
+
* Chip Menu ADR D3: the workspace chip's Rename action. Body {title} →
|
|
17
|
+
* host workspace/rename → {ok:true, workspace}. Refusals map through
|
|
18
|
+
* mapRpcFailure (workspace/not-found, workspace/name-conflict → 502).
|
|
19
|
+
* The browser never reaches the DSH Host directly (BC-1); wire bytes
|
|
20
|
+
* live behind dsh-connection (BC-6).
|
|
21
|
+
*/
|
|
22
|
+
var POST = async ({ params, request }) => {
|
|
23
|
+
const workspaceId = params.workspaceId;
|
|
24
|
+
if (typeof workspaceId !== "string" || workspaceId.trim().length === 0) return json({
|
|
25
|
+
ok: false,
|
|
26
|
+
error: {
|
|
27
|
+
code: "bad-workspace-id",
|
|
28
|
+
message: "workspaceId must be a non-empty string"
|
|
29
|
+
}
|
|
30
|
+
}, { status: 400 });
|
|
31
|
+
let body;
|
|
32
|
+
try {
|
|
33
|
+
body = await request.json();
|
|
34
|
+
} catch {
|
|
35
|
+
return json({
|
|
36
|
+
ok: false,
|
|
37
|
+
error: {
|
|
38
|
+
code: "bad-json",
|
|
39
|
+
message: "request body is not valid JSON"
|
|
40
|
+
}
|
|
41
|
+
}, { status: 400 });
|
|
42
|
+
}
|
|
43
|
+
const title = body?.title;
|
|
44
|
+
if (typeof title !== "string" || title.trim().length === 0) return json({
|
|
45
|
+
ok: false,
|
|
46
|
+
error: {
|
|
47
|
+
code: "bad-title",
|
|
48
|
+
message: "title must be a non-empty string"
|
|
49
|
+
}
|
|
50
|
+
}, { status: 400 });
|
|
51
|
+
try {
|
|
52
|
+
const result = await getDshConnection().renameWorkspace(workspaceId, title.trim());
|
|
53
|
+
return json({
|
|
54
|
+
ok: true,
|
|
55
|
+
workspace: result.workspace
|
|
56
|
+
});
|
|
57
|
+
} catch (err) {
|
|
58
|
+
return json(mapRpcFailure(err), { status: statusFor(err) });
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
export { POST };
|
|
63
|
+
//# sourceMappingURL=_server.ts.js-w3Mo0nf7.js.map
|