@recombine-ai/bosun 0.16.2 → 0.17.1
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/README.md +24 -0
- package/bin/bosun.js +153 -20
- package/bin/git-mode.js +1139 -0
- package/build/client/_app/immutable/assets/0.D9HpHezk.css +1 -0
- package/build/client/_app/immutable/assets/0.D9HpHezk.css.br +0 -0
- package/build/client/_app/immutable/assets/0.D9HpHezk.css.gz +0 -0
- package/build/client/_app/immutable/assets/{2.DtxQDOXx.css → 2.Bc0Sf3YD.css} +1 -1
- package/build/client/_app/immutable/assets/2.Bc0Sf3YD.css.br +0 -0
- package/build/client/_app/immutable/assets/2.Bc0Sf3YD.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{DneQQ7D5.js → -3ZOIHDA.js} +1 -1
- package/build/client/_app/immutable/chunks/-3ZOIHDA.js.br +0 -0
- package/build/client/_app/immutable/chunks/-3ZOIHDA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/7hV1SZxK.js +1 -0
- package/build/client/_app/immutable/chunks/7hV1SZxK.js.br +2 -0
- package/build/client/_app/immutable/chunks/7hV1SZxK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B-dTD_wm.js +1 -0
- package/build/client/_app/immutable/chunks/B-dTD_wm.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-dTD_wm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{UqjCSZmA.js → B-iasAJv.js} +1 -1
- package/build/client/_app/immutable/chunks/B-iasAJv.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-iasAJv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BDijIo6D.js +33 -0
- package/build/client/_app/immutable/chunks/BDijIo6D.js.br +0 -0
- package/build/client/_app/immutable/chunks/BDijIo6D.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHB0Pj1h.js +2 -0
- package/build/client/_app/immutable/chunks/BHB0Pj1h.js.br +0 -0
- package/build/client/_app/immutable/chunks/BHB0Pj1h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Bog028VR.js → BKfmN1Rj.js} +1 -1
- package/build/client/_app/immutable/chunks/BKfmN1Rj.js.br +0 -0
- package/build/client/_app/immutable/chunks/BKfmN1Rj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{pPpIn6tB.js → BlFOg-Sd.js} +1 -1
- package/build/client/_app/immutable/chunks/BlFOg-Sd.js.br +0 -0
- package/build/client/_app/immutable/chunks/BlFOg-Sd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CJcZ2GVC.js → Byg3jr1u.js} +1 -1
- package/build/client/_app/immutable/chunks/Byg3jr1u.js.br +0 -0
- package/build/client/_app/immutable/chunks/Byg3jr1u.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Bmd5zhWC.js → BzxxLgHi.js} +1 -1
- package/build/client/_app/immutable/chunks/BzxxLgHi.js.br +0 -0
- package/build/client/_app/immutable/chunks/BzxxLgHi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CEHsomMo.js → C4UC6AgE.js} +1 -1
- package/build/client/_app/immutable/chunks/C4UC6AgE.js.br +0 -0
- package/build/client/_app/immutable/chunks/{CEHsomMo.js.gz → C4UC6AgE.js.gz} +0 -0
- package/build/client/_app/immutable/chunks/C60AG6QQ.js +1 -0
- package/build/client/_app/immutable/chunks/C60AG6QQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/C60AG6QQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CAIfVN23.js +1 -0
- package/build/client/_app/immutable/chunks/CAIfVN23.js.br +0 -0
- package/build/client/_app/immutable/chunks/CAIfVN23.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{JcG4w2gF.js → CB9iDxwI.js} +1 -1
- package/build/client/_app/immutable/chunks/CB9iDxwI.js.br +0 -0
- package/build/client/_app/immutable/chunks/CB9iDxwI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DoD3q5w5.js → CD_KdWs9.js} +1 -1
- package/build/client/_app/immutable/chunks/CD_KdWs9.js.br +0 -0
- package/build/client/_app/immutable/chunks/CD_KdWs9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CDy1LBR5.js +1 -0
- package/build/client/_app/immutable/chunks/CDy1LBR5.js.br +0 -0
- package/build/client/_app/immutable/chunks/CDy1LBR5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DCXjBDmY.js → CMFNmSvo.js} +1 -1
- package/build/client/_app/immutable/chunks/CMFNmSvo.js.br +0 -0
- package/build/client/_app/immutable/chunks/CMFNmSvo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Bv1mNXs0.js → CNIn4L55.js} +1 -1
- package/build/client/_app/immutable/chunks/CNIn4L55.js.br +0 -0
- package/build/client/_app/immutable/chunks/CNIn4L55.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CUKoVL36.js +1 -0
- package/build/client/_app/immutable/chunks/CUKoVL36.js.br +0 -0
- package/build/client/_app/immutable/chunks/CUKoVL36.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYGbCr1i.js +3 -0
- package/build/client/_app/immutable/chunks/CYGbCr1i.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYGbCr1i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYr0FGgn.js +1 -0
- package/build/client/_app/immutable/chunks/CYr0FGgn.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYr0FGgn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DtXXy94i.js → Ce6a22qU.js} +1 -1
- package/build/client/_app/immutable/chunks/Ce6a22qU.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ce6a22qU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DfcDjAv-.js → CeoQ-OhK.js} +1 -1
- package/build/client/_app/immutable/chunks/CeoQ-OhK.js.br +0 -0
- package/build/client/_app/immutable/chunks/CeoQ-OhK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{D8mA-uZ4.js → CupXtwVS.js} +1 -1
- package/build/client/_app/immutable/chunks/CupXtwVS.js.br +0 -0
- package/build/client/_app/immutable/chunks/CupXtwVS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{B5zf3x62.js → Cy2Uze-c.js} +1 -1
- package/build/client/_app/immutable/chunks/Cy2Uze-c.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cy2Uze-c.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Dg0A8wPA.js → D8Lmn3S5.js} +1 -1
- package/build/client/_app/immutable/chunks/D8Lmn3S5.js.br +0 -0
- package/build/client/_app/immutable/chunks/D8Lmn3S5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8doM1Y6.js +1 -0
- package/build/client/_app/immutable/chunks/D8doM1Y6.js.br +2 -0
- package/build/client/_app/immutable/chunks/D8doM1Y6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BHHfrjbV.js → D9BWOD7V.js} +1 -1
- package/build/client/_app/immutable/chunks/D9BWOD7V.js.br +3 -0
- package/build/client/_app/immutable/chunks/D9BWOD7V.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Cp_st-64.js → DBB88ZB7.js} +1 -1
- package/build/client/_app/immutable/chunks/DBB88ZB7.js.br +2 -0
- package/build/client/_app/immutable/chunks/DBB88ZB7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Dm49pcMm.js → DC7lPrn4.js} +1 -1
- package/build/client/_app/immutable/chunks/DC7lPrn4.js.br +0 -0
- package/build/client/_app/immutable/chunks/DC7lPrn4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCwWNTpf.js +9 -0
- package/build/client/_app/immutable/chunks/DCwWNTpf.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCwWNTpf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{wcTQUnZO.js → DEnUeQNt.js} +1 -1
- package/build/client/_app/immutable/chunks/DEnUeQNt.js.br +0 -0
- package/build/client/_app/immutable/chunks/DEnUeQNt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D_laxq3h.js +1 -0
- package/build/client/_app/immutable/chunks/D_laxq3h.js.br +0 -0
- package/build/client/_app/immutable/chunks/D_laxq3h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Ddv5LgEc.js → DfkYlKBk.js} +1 -1
- package/build/client/_app/immutable/chunks/DfkYlKBk.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfkYlKBk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DnMS2X6M.js +2 -0
- package/build/client/_app/immutable/chunks/DnMS2X6M.js.br +0 -0
- package/build/client/_app/immutable/chunks/DnMS2X6M.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{B1HdnQRQ.js → DrE1ro9S.js} +1 -1
- package/build/client/_app/immutable/chunks/DrE1ro9S.js.br +0 -0
- package/build/client/_app/immutable/chunks/DrE1ro9S.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DzY_RPb9.js +1 -0
- package/build/client/_app/immutable/chunks/DzY_RPb9.js.br +0 -0
- package/build/client/_app/immutable/chunks/DzY_RPb9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/PrCSpCPg.js +1 -0
- package/build/client/_app/immutable/chunks/PrCSpCPg.js.br +0 -0
- package/build/client/_app/immutable/chunks/PrCSpCPg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CN555stc.js → eMofpOrR.js} +1 -1
- package/build/client/_app/immutable/chunks/eMofpOrR.js.br +0 -0
- package/build/client/_app/immutable/chunks/eMofpOrR.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.BQUuHkSR.js +2 -0
- package/build/client/_app/immutable/entry/app.BQUuHkSR.js.br +0 -0
- package/build/client/_app/immutable/entry/app.BQUuHkSR.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DoeTycdu.js +1 -0
- package/build/client/_app/immutable/entry/start.DoeTycdu.js.br +2 -0
- package/build/client/_app/immutable/entry/start.DoeTycdu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DBnFpwRM.js +4 -0
- package/build/client/_app/immutable/nodes/0.DBnFpwRM.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DBnFpwRM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.D-kI-fLd.js +1 -0
- package/build/client/_app/immutable/nodes/1.D-kI-fLd.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.D-kI-fLd.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.DWb5H7vX.js +28 -0
- package/build/client/_app/immutable/nodes/10.DWb5H7vX.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.DWb5H7vX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{15.D2I0y3ys.js → 15.CGc3_07c.js} +1 -1
- package/build/client/_app/immutable/nodes/15.CGc3_07c.js.br +3 -0
- package/build/client/_app/immutable/nodes/15.CGc3_07c.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.BIba62hW.js +3 -0
- package/build/client/_app/immutable/nodes/17.BIba62hW.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.BIba62hW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.Clxr6FwI.js +11 -0
- package/build/client/_app/immutable/nodes/18.Clxr6FwI.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.Clxr6FwI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.cbpnR8be.js +35 -0
- package/build/client/_app/immutable/nodes/2.cbpnR8be.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.cbpnR8be.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.DsP759xk.js +1 -0
- package/build/client/_app/immutable/nodes/3.DsP759xk.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.DsP759xk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.C8VxVbVn.js → 4.BIGLAIDe.js} +1 -1
- package/build/client/_app/immutable/nodes/4.BIGLAIDe.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BIGLAIDe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BjrnKYaA.js → 5.zMHOyhDv.js} +1 -1
- package/build/client/_app/immutable/nodes/5.zMHOyhDv.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.zMHOyhDv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DFQ1IZsQ.js +1 -0
- package/build/client/_app/immutable/nodes/6.DFQ1IZsQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DFQ1IZsQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.CTgEdr7L.js +2 -0
- package/build/client/_app/immutable/nodes/8.CTgEdr7L.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CTgEdr7L.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.BidF5Uvq.js +2 -0
- package/build/client/_app/immutable/nodes/9.BidF5Uvq.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.BidF5Uvq.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/0-BZOFUIfF.js +9 -0
- package/build/server/chunks/0-BZOFUIfF.js.map +1 -0
- package/build/server/chunks/1-XwGU5VVN.js +9 -0
- package/build/server/chunks/{1-C0HdTvXW.js.map → 1-XwGU5VVN.js.map} +1 -1
- package/build/server/chunks/10-BgFSx4ib.js +9 -0
- package/build/server/chunks/10-BgFSx4ib.js.map +1 -0
- package/build/server/chunks/15-BjTTC1jf.js +9 -0
- package/build/server/chunks/{15-BQcb9C_y.js.map → 15-BjTTC1jf.js.map} +1 -1
- package/build/server/chunks/17-BEkWCfzc.js +9 -0
- package/build/server/chunks/17-BEkWCfzc.js.map +1 -0
- package/build/server/chunks/18-C-S0wKdp.js +9 -0
- package/build/server/chunks/18-C-S0wKdp.js.map +1 -0
- package/build/server/chunks/2-o-cIkIjs.js +9 -0
- package/build/server/chunks/2-o-cIkIjs.js.map +1 -0
- package/build/server/chunks/3-B-ABlyFO.js +9 -0
- package/build/server/chunks/3-B-ABlyFO.js.map +1 -0
- package/build/server/chunks/4-joAFA_Y8.js +9 -0
- package/build/server/chunks/4-joAFA_Y8.js.map +1 -0
- package/build/server/chunks/5-DIhC9k4l.js +9 -0
- package/build/server/chunks/5-DIhC9k4l.js.map +1 -0
- package/build/server/chunks/6-CMuAQIcW.js +9 -0
- package/build/server/chunks/6-CMuAQIcW.js.map +1 -0
- package/build/server/chunks/8-CbETTVRG.js +9 -0
- package/build/server/chunks/8-CbETTVRG.js.map +1 -0
- package/build/server/chunks/9-nMV90uVU.js +9 -0
- package/build/server/chunks/9-nMV90uVU.js.map +1 -0
- package/build/server/chunks/{AgentSidebar-BWBnqHnV.js → AgentSidebar-BEbSdZdN.js} +4 -4
- package/build/server/chunks/{AgentSidebar-BWBnqHnV.js.map → AgentSidebar-BEbSdZdN.js.map} +1 -1
- package/build/server/chunks/{Button-DH7gdU0s.js → Button-Dc9CR4Wh.js} +2 -2
- package/build/server/chunks/{Button-DH7gdU0s.js.map → Button-Dc9CR4Wh.js.map} +1 -1
- package/build/server/chunks/{ChatStepTrace-BivoNYOY.js → ChatStepTrace-OM96X4g8.js} +18 -7
- package/build/server/chunks/ChatStepTrace-OM96X4g8.js.map +1 -0
- package/build/server/chunks/{Dropdown-DnARl86Q.js → Dropdown-Cgd7pG-k.js} +2 -2
- package/build/server/chunks/{Dropdown-DnARl86Q.js.map → Dropdown-Cgd7pG-k.js.map} +1 -1
- package/build/server/chunks/GitControlsButton-BLcNzrDt.js +81 -0
- package/build/server/chunks/GitControlsButton-BLcNzrDt.js.map +1 -0
- package/build/server/chunks/{Icon-DP1YKCRV.js → Icon-Bogvl2n9.js} +2 -2
- package/build/server/chunks/{Icon-DP1YKCRV.js.map → Icon-Bogvl2n9.js.map} +1 -1
- package/build/server/chunks/{Input-CUJ9Cg7b.js → Input-7hpw1WLW.js} +2 -2
- package/build/server/chunks/{Input-CUJ9Cg7b.js.map → Input-7hpw1WLW.js.map} +1 -1
- package/build/server/chunks/{Modal-CGJuNpZ0.js → Modal-7IIIfFEG.js} +5 -5
- package/build/server/chunks/{Modal-CGJuNpZ0.js.map → Modal-7IIIfFEG.js.map} +1 -1
- package/build/server/chunks/{Panel-zvjxe036.js → Panel-Cj1mXx9-.js} +2 -2
- package/build/server/chunks/{Panel-zvjxe036.js.map → Panel-Cj1mXx9-.js.map} +1 -1
- package/build/server/chunks/{Tab-CUkyLqbN.js → Tab-bf4ZDs5y.js} +4 -4
- package/build/server/chunks/{Tab-CUkyLqbN.js.map → Tab-bf4ZDs5y.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-BnrWYuLv.js → _layout.svelte-C71luIwv.js} +10 -10
- package/build/server/chunks/{_layout.svelte-BnrWYuLv.js.map → _layout.svelte-C71luIwv.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-wi6o5Ecu.js → _layout.svelte-CFhHgXI_.js} +24 -18
- package/build/server/chunks/_layout.svelte-CFhHgXI_.js.map +1 -0
- package/build/server/chunks/_layout.svelte-CJd_pmkx.js +431 -0
- package/build/server/chunks/_layout.svelte-CJd_pmkx.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-B88WMyk0.js → _layout.svelte-D6rhwm98.js} +445 -70
- package/build/server/chunks/_layout.svelte-D6rhwm98.js.map +1 -0
- package/build/server/chunks/{_page.svelte-CeS_21Ho.js → _page.svelte-BBvDMiTV.js} +25 -21
- package/build/server/chunks/_page.svelte-BBvDMiTV.js.map +1 -0
- package/build/server/chunks/{_page.svelte-h_J4lNT9.js → _page.svelte-BQs9dEuq.js} +8 -7
- package/build/server/chunks/{_page.svelte-h_J4lNT9.js.map → _page.svelte-BQs9dEuq.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DhFNFMnl.js → _page.svelte-BoO2LWVX.js} +34 -14
- package/build/server/chunks/_page.svelte-BoO2LWVX.js.map +1 -0
- package/build/server/chunks/{_page.svelte-CHgQjBQj.js → _page.svelte-DUCTSdv-.js} +2 -2
- package/build/server/chunks/{_page.svelte-CHgQjBQj.js.map → _page.svelte-DUCTSdv-.js.map} +1 -1
- package/build/server/chunks/_page.svelte-FXYLKyMw.js +110 -0
- package/build/server/chunks/_page.svelte-FXYLKyMw.js.map +1 -0
- package/build/server/chunks/{_page.svelte-57pyhszV.js → _page.svelte-KA1hqKj2.js} +20 -107
- package/build/server/chunks/_page.svelte-KA1hqKj2.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BSVJ2d2G.js → _page.svelte-y8CZFL8a.js} +210 -106
- package/build/server/chunks/_page.svelte-y8CZFL8a.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DHSYVLoj.js → _page.svelte-yIHSIEW6.js} +21 -15
- package/build/server/chunks/_page.svelte-yIHSIEW6.js.map +1 -0
- package/build/server/chunks/_server.ts-Cp9DgLcE.js +336 -0
- package/build/server/chunks/_server.ts-Cp9DgLcE.js.map +1 -0
- package/build/server/chunks/{agents-context-CbFsZmi5.js → agents-context-owgusUPR.js} +2 -2
- package/build/server/chunks/{agents-context-CbFsZmi5.js.map → agents-context-owgusUPR.js.map} +1 -1
- package/build/server/chunks/{client-DO-hqMbT.js → client-P-7bDULt.js} +4 -4
- package/build/server/chunks/{client-DO-hqMbT.js.map → client-P-7bDULt.js.map} +1 -1
- package/build/server/chunks/{conversation-view-memory-CtbUZd_L.js → conversation-view-memory-SdpdqTR7.js} +2 -2
- package/build/server/chunks/{conversation-view-memory-CtbUZd_L.js.map → conversation-view-memory-SdpdqTR7.js.map} +1 -1
- package/build/server/chunks/{edit-workspace-context-tyHBPujC.js → edit-workspace-context-hanFnXR3.js} +2 -2
- package/build/server/chunks/{edit-workspace-context-tyHBPujC.js.map → edit-workspace-context-hanFnXR3.js.map} +1 -1
- package/build/server/chunks/error.svelte-yI9RS6H4.js +15 -0
- package/build/server/chunks/{error.svelte-DmKKN1RU.js.map → error.svelte-yI9RS6H4.js.map} +1 -1
- package/build/server/chunks/git-mode-context-BpNsAUGF.js +18 -0
- package/build/server/chunks/git-mode-context-BpNsAUGF.js.map +1 -0
- package/build/server/chunks/{index-LMsd1ih2.js → index-DGtbUu8Y.js} +2 -2
- package/build/server/chunks/{index-LMsd1ih2.js.map → index-DGtbUu8Y.js.map} +1 -1
- package/build/server/chunks/{index-server-BRr5mZEq.js → index-server-l8-WsVn4.js} +2 -2
- package/build/server/chunks/{index-server-BRr5mZEq.js.map → index-server-l8-WsVn4.js.map} +1 -1
- package/build/server/chunks/{index2-ClgfzZ89.js → index2-CtgLiJVO.js} +3 -3
- package/build/server/chunks/{index2-ClgfzZ89.js.map → index2-CtgLiJVO.js.map} +1 -1
- package/build/server/chunks/{index3-BdRUAffj.js → index3-4hbbCqW0.js} +2 -2
- package/build/server/chunks/{index3-BdRUAffj.js.map → index3-4hbbCqW0.js.map} +1 -1
- package/build/server/chunks/{root-4q2Pr7ck.js → root-sWPnlpi3.js} +2 -2
- package/build/server/chunks/{root-4q2Pr7ck.js.map → root-sWPnlpi3.js.map} +1 -1
- package/build/server/chunks/{source-selection-CcN1cgXc.js → source-selection-DSkaPGfZ.js} +7 -2
- package/build/server/chunks/source-selection-DSkaPGfZ.js.map +1 -0
- package/build/server/chunks/{state.svelte-Bd1i-u49.js → state.svelte-BkvaElc6.js} +3 -3
- package/build/server/chunks/{state.svelte-Bd1i-u49.js.map → state.svelte-BkvaElc6.js.map} +1 -1
- package/build/server/chunks/trpc-client-Cr8RJ4UO.js +260 -0
- package/build/server/chunks/trpc-client-Cr8RJ4UO.js.map +1 -0
- package/build/server/index.js +4 -4
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +15 -15
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/src/backend/git-mode/command.spec.ts +172 -0
- package/src/backend/git-mode/command.ts +405 -0
- package/src/backend/git-mode/config.spec.ts +45 -0
- package/src/backend/git-mode/config.ts +90 -0
- package/src/backend/git-mode/index.ts +20 -0
- package/src/backend/git-mode/repository-write-gate.spec.ts +116 -0
- package/src/backend/git-mode/repository-write-gate.ts +260 -0
- package/src/backend/git-mode/router.ts +59 -0
- package/src/backend/git-mode/service.spec.ts +1653 -0
- package/src/backend/git-mode/service.ts +2183 -0
- package/src/backend/git-mode/types.ts +82 -0
- package/src/backend/git-mode/write-tracker.spec.ts +46 -0
- package/src/backend/git-mode/write-tracker.ts +39 -0
- package/src/backend/lib/backend-restart.spec.ts +27 -0
- package/src/backend/lib/backend-restart.ts +16 -2
- package/src/backend/lib/middleware/cors.spec.ts +67 -0
- package/src/backend/lib/middleware/cors.ts +40 -12
- package/src/backend/roleplay/agent-loader.ts +49 -0
- package/src/backend/roleplay/old-server.ts +106 -56
- package/src/backend/roleplay/prompt-edit-proposals.ts +38 -4
- package/src/backend/roleplay/prompt-file.ts +59 -0
- package/src/backend/roleplay/router.spec.ts +75 -0
- package/src/backend/roleplay/router.ts +123 -69
- package/src/backend/roleplay/suggest-file-edit.ts +160 -0
- package/src/backend/roleplay/suggest-prompt-edit.ts +9 -138
- package/src/backend/roleplay/suggest-test-fix.spec.ts +50 -0
- package/src/backend/roleplay/suggest-test-fix.ts +65 -0
- package/src/backend/roleplay/test-fix-proposal-acceptance.spec.ts +253 -0
- package/src/backend/server.ts +116 -13
- package/src/backend/tests/academy.ts +17 -3
- package/src/backend/tests/data.spec.ts +81 -2
- package/src/backend/tests/data.ts +74 -4
- package/src/backend/tests/router.ts +101 -36
- package/src/backend/tests/suggest-test-history-edit.spec.ts +20 -0
- package/src/backend/tests/suggest-test-history-edit.ts +52 -0
- package/src/backend/tests/test-edit-source.spec.ts +61 -0
- package/src/backend/tests/test-edit-source.ts +34 -0
- package/src/backend/tests/test-history-edit-proposals.ts +69 -0
- package/src/backend/tests/test-history-overrides.spec.ts +24 -0
- package/src/backend/tests/test-selection.ts +27 -0
- package/src/lib/api-telescope/source-selection.spec.ts +44 -0
- package/src/lib/api-telescope/source-selection.ts +28 -0
- package/src/lib/components/Modal.svelte +1 -1
- package/src/lib/edit/edit-workspace-context.ts +33 -3
- package/src/lib/edit/test-ai-edit.spec.ts +31 -0
- package/src/lib/edit/test-ai-edit.ts +52 -0
- package/src/lib/git-mode/BlockingGitDialog.svelte +118 -0
- package/src/lib/git-mode/GitControlsButton.svelte +96 -0
- package/src/lib/git-mode/client-admission.spec.ts +304 -0
- package/src/lib/git-mode/client-admission.ts +343 -0
- package/src/lib/git-mode/errors.ts +2 -0
- package/src/lib/git-mode/git-mode-context.ts +70 -0
- package/src/lib/git-mode/refresh-policy.spec.ts +95 -0
- package/src/lib/git-mode/refresh-policy.ts +39 -0
- package/src/lib/git-mode/status-recovery.spec.ts +86 -0
- package/src/lib/git-mode/status-recovery.ts +33 -0
- package/src/lib/monaco/bosun-theme.ts +6 -83
- package/src/lib/monaco/editor-appearance.spec.ts +84 -0
- package/src/lib/monaco/editor-appearance.ts +154 -0
- package/src/lib/monaco/editor-decorations.spec.ts +91 -0
- package/src/lib/monaco/editor-decorations.ts +133 -0
- package/src/lib/tests/assertion-types.ts +74 -0
- package/src/lib/trpc-client.ts +15 -1
- package/src/lib/ws-client.spec.ts +208 -0
- package/src/lib/ws-client.ts +196 -14
- package/src/lib/ws-message.ts +24 -0
- package/build/client/_app/immutable/assets/0.Rrc0O--C.css +0 -1
- package/build/client/_app/immutable/assets/0.Rrc0O--C.css.br +0 -0
- package/build/client/_app/immutable/assets/0.Rrc0O--C.css.gz +0 -0
- package/build/client/_app/immutable/assets/2.DtxQDOXx.css.br +0 -0
- package/build/client/_app/immutable/assets/2.DtxQDOXx.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B1HdnQRQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1HdnQRQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B5zf3x62.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5zf3x62.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHHfrjbV.js.br +0 -2
- package/build/client/_app/immutable/chunks/BHHfrjbV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BU7aeYn4.js +0 -1
- package/build/client/_app/immutable/chunks/BU7aeYn4.js.br +0 -0
- package/build/client/_app/immutable/chunks/BU7aeYn4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BbGYcfPY.js +0 -3
- package/build/client/_app/immutable/chunks/BbGYcfPY.js.br +0 -0
- package/build/client/_app/immutable/chunks/BbGYcfPY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bmd5zhWC.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bmd5zhWC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnqH7p3U.js +0 -33
- package/build/client/_app/immutable/chunks/BnqH7p3U.js.br +0 -0
- package/build/client/_app/immutable/chunks/BnqH7p3U.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bog028VR.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bog028VR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bv1mNXs0.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bv1mNXs0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BvjXTrOz.js +0 -1
- package/build/client/_app/immutable/chunks/BvjXTrOz.js.br +0 -0
- package/build/client/_app/immutable/chunks/BvjXTrOz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C1R-s4aD.js +0 -1
- package/build/client/_app/immutable/chunks/C1R-s4aD.js.br +0 -0
- package/build/client/_app/immutable/chunks/C1R-s4aD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CC1OcqhR.js +0 -1
- package/build/client/_app/immutable/chunks/CC1OcqhR.js.br +0 -0
- package/build/client/_app/immutable/chunks/CC1OcqhR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CEHsomMo.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJcZ2GVC.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJcZ2GVC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CN555stc.js.br +0 -0
- package/build/client/_app/immutable/chunks/CN555stc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CQg2Mme0.js +0 -9
- package/build/client/_app/immutable/chunks/CQg2Mme0.js.br +0 -0
- package/build/client/_app/immutable/chunks/CQg2Mme0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cp_st-64.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cp_st-64.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8mA-uZ4.js.br +0 -0
- package/build/client/_app/immutable/chunks/D8mA-uZ4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCXjBDmY.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCXjBDmY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DSLyVE1P.js +0 -1
- package/build/client/_app/immutable/chunks/DSLyVE1P.js.br +0 -0
- package/build/client/_app/immutable/chunks/DSLyVE1P.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ddv5LgEc.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ddv5LgEc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfcDjAv-.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfcDjAv-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dg0A8wPA.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dg0A8wPA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dm49pcMm.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dm49pcMm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DneQQ7D5.js.br +0 -0
- package/build/client/_app/immutable/chunks/DneQQ7D5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DoD3q5w5.js.br +0 -0
- package/build/client/_app/immutable/chunks/DoD3q5w5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DtXXy94i.js.br +0 -0
- package/build/client/_app/immutable/chunks/DtXXy94i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dy2CFyD6.js +0 -2
- package/build/client/_app/immutable/chunks/Dy2CFyD6.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dy2CFyD6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DyBwTDJp.js +0 -2
- package/build/client/_app/immutable/chunks/DyBwTDJp.js.br +0 -0
- package/build/client/_app/immutable/chunks/DyBwTDJp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ILTCveYH.js +0 -1
- package/build/client/_app/immutable/chunks/ILTCveYH.js.br +0 -0
- package/build/client/_app/immutable/chunks/ILTCveYH.js.gz +0 -0
- package/build/client/_app/immutable/chunks/JcG4w2gF.js.br +0 -0
- package/build/client/_app/immutable/chunks/JcG4w2gF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/UqjCSZmA.js.br +0 -0
- package/build/client/_app/immutable/chunks/UqjCSZmA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/_YcrHZ6P.js +0 -1
- package/build/client/_app/immutable/chunks/_YcrHZ6P.js.br +0 -2
- package/build/client/_app/immutable/chunks/_YcrHZ6P.js.gz +0 -0
- package/build/client/_app/immutable/chunks/i6ygh6h8.js +0 -1
- package/build/client/_app/immutable/chunks/i6ygh6h8.js.br +0 -2
- package/build/client/_app/immutable/chunks/i6ygh6h8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/oRi68ch3.js +0 -1
- package/build/client/_app/immutable/chunks/oRi68ch3.js.br +0 -0
- package/build/client/_app/immutable/chunks/oRi68ch3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/pPpIn6tB.js.br +0 -0
- package/build/client/_app/immutable/chunks/pPpIn6tB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/r0sHOWrM.js +0 -1
- package/build/client/_app/immutable/chunks/r0sHOWrM.js.br +0 -0
- package/build/client/_app/immutable/chunks/r0sHOWrM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/wcTQUnZO.js.br +0 -0
- package/build/client/_app/immutable/chunks/wcTQUnZO.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.DdO0gkPg.js +0 -2
- package/build/client/_app/immutable/entry/app.DdO0gkPg.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DdO0gkPg.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.eAjDq0c9.js +0 -1
- package/build/client/_app/immutable/entry/start.eAjDq0c9.js.br +0 -2
- package/build/client/_app/immutable/entry/start.eAjDq0c9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.nG3DdvIX.js +0 -3
- package/build/client/_app/immutable/nodes/0.nG3DdvIX.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.nG3DdvIX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js +0 -1
- package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.dm2dgy31.js +0 -13
- package/build/client/_app/immutable/nodes/10.dm2dgy31.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.dm2dgy31.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.D2I0y3ys.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.D2I0y3ys.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.CKxGp0E7.js +0 -3
- package/build/client/_app/immutable/nodes/17.CKxGp0E7.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.CKxGp0E7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.DHJxyQpw.js +0 -11
- package/build/client/_app/immutable/nodes/18.DHJxyQpw.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.DHJxyQpw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DesR2keg.js +0 -35
- package/build/client/_app/immutable/nodes/2.DesR2keg.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DesR2keg.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.BUKrXGR_.js +0 -1
- package/build/client/_app/immutable/nodes/3.BUKrXGR_.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.BUKrXGR_.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.C8VxVbVn.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.C8VxVbVn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BjrnKYaA.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BjrnKYaA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.C_hEzPrU.js +0 -1
- package/build/client/_app/immutable/nodes/6.C_hEzPrU.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.C_hEzPrU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BTYaOiDC.js +0 -2
- package/build/client/_app/immutable/nodes/8.BTYaOiDC.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BTYaOiDC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DVspuDYY.js +0 -2
- package/build/client/_app/immutable/nodes/9.DVspuDYY.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DVspuDYY.js.gz +0 -0
- package/build/server/chunks/0-D_duQDWy.js +0 -9
- package/build/server/chunks/0-D_duQDWy.js.map +0 -1
- package/build/server/chunks/1-C0HdTvXW.js +0 -9
- package/build/server/chunks/10-DcfhCR4R.js +0 -9
- package/build/server/chunks/10-DcfhCR4R.js.map +0 -1
- package/build/server/chunks/15-BQcb9C_y.js +0 -9
- package/build/server/chunks/17-DuVCTioj.js +0 -9
- package/build/server/chunks/17-DuVCTioj.js.map +0 -1
- package/build/server/chunks/18-CT0VFW_p.js +0 -9
- package/build/server/chunks/18-CT0VFW_p.js.map +0 -1
- package/build/server/chunks/2-DgTzKQAP.js +0 -9
- package/build/server/chunks/2-DgTzKQAP.js.map +0 -1
- package/build/server/chunks/3-eQMSMzXP.js +0 -9
- package/build/server/chunks/3-eQMSMzXP.js.map +0 -1
- package/build/server/chunks/4-OaAJtDqP.js +0 -9
- package/build/server/chunks/4-OaAJtDqP.js.map +0 -1
- package/build/server/chunks/5-CBdMutbv.js +0 -9
- package/build/server/chunks/5-CBdMutbv.js.map +0 -1
- package/build/server/chunks/6-FoEi7ggm.js +0 -9
- package/build/server/chunks/6-FoEi7ggm.js.map +0 -1
- package/build/server/chunks/8-B44yRkfX.js +0 -9
- package/build/server/chunks/8-B44yRkfX.js.map +0 -1
- package/build/server/chunks/9-eUjFpHzI.js +0 -9
- package/build/server/chunks/9-eUjFpHzI.js.map +0 -1
- package/build/server/chunks/ChatStepTrace-BivoNYOY.js.map +0 -1
- package/build/server/chunks/_layout.svelte-B-0DHjLB.js +0 -45
- package/build/server/chunks/_layout.svelte-B-0DHjLB.js.map +0 -1
- package/build/server/chunks/_layout.svelte-B88WMyk0.js.map +0 -1
- package/build/server/chunks/_layout.svelte-wi6o5Ecu.js.map +0 -1
- package/build/server/chunks/_page.svelte-57pyhszV.js.map +0 -1
- package/build/server/chunks/_page.svelte-BSVJ2d2G.js.map +0 -1
- package/build/server/chunks/_page.svelte-BoHt2cpr.js +0 -61
- package/build/server/chunks/_page.svelte-BoHt2cpr.js.map +0 -1
- package/build/server/chunks/_page.svelte-CeS_21Ho.js.map +0 -1
- package/build/server/chunks/_page.svelte-DHSYVLoj.js.map +0 -1
- package/build/server/chunks/_page.svelte-DhFNFMnl.js.map +0 -1
- package/build/server/chunks/_server.ts-D_eo_OAK.js +0 -139
- package/build/server/chunks/_server.ts-D_eo_OAK.js.map +0 -1
- package/build/server/chunks/error.svelte-DmKKN1RU.js +0 -15
- package/build/server/chunks/source-selection-CcN1cgXc.js.map +0 -1
- package/build/server/chunks/trpc-client-D8L6vWf4.js +0 -14
- package/build/server/chunks/trpc-client-D8L6vWf4.js.map +0 -1
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
import { k as escape_html, l as attr, m as attr_class, n as derived } from './index-DGtbUu8Y.js';
|
|
2
|
+
import { s as setAgentsContext } from './agents-context-owgusUPR.js';
|
|
3
|
+
import { p as page } from './index2-CtgLiJVO.js';
|
|
4
|
+
import { g as goto } from './client-P-7bDULt.js';
|
|
5
|
+
import { t as trpc } from './trpc-client-Cr8RJ4UO.js';
|
|
6
|
+
import { B as Button } from './Button-Dc9CR4Wh.js';
|
|
7
|
+
import { o as onDestroy } from './index-server-l8-WsVn4.js';
|
|
8
|
+
import { s as setGitModeContext, d as disabledGitModeStatus } from './git-mode-context-BpNsAUGF.js';
|
|
9
|
+
import '@trpc/client';
|
|
10
|
+
import './state.svelte-BkvaElc6.js';
|
|
11
|
+
import './root-sWPnlpi3.js';
|
|
12
|
+
import './index3-4hbbCqW0.js';
|
|
13
|
+
import './shared-server-DaWdgxVh.js';
|
|
14
|
+
import '@trpc/server/observable';
|
|
15
|
+
|
|
16
|
+
function BlockingGitDialog($$renderer, $$props) {
|
|
17
|
+
$$renderer.component(($$renderer2) => {
|
|
18
|
+
let {
|
|
19
|
+
open,
|
|
20
|
+
label,
|
|
21
|
+
stacked = false,
|
|
22
|
+
class: className = "",
|
|
23
|
+
children
|
|
24
|
+
} = $$props;
|
|
25
|
+
let entered = false;
|
|
26
|
+
let closeTimer = null;
|
|
27
|
+
let frame = 0;
|
|
28
|
+
function clearPending() {
|
|
29
|
+
if (closeTimer) clearTimeout(closeTimer);
|
|
30
|
+
closeTimer = null;
|
|
31
|
+
if (frame) cancelAnimationFrame(frame);
|
|
32
|
+
frame = 0;
|
|
33
|
+
}
|
|
34
|
+
onDestroy(clearPending);
|
|
35
|
+
$$renderer2.push(`<dialog${attr("aria-label", label)}${attr_class(`git-blocking-dialog m-auto max-h-[90vh] w-[min(92vw,32rem)] overflow-visible rounded-xl border border-rc-gray-600 bg-rc-gray-800 p-0 text-rc-gray-100 shadow-2xl outline-none ${className}`, "svelte-vbchqd", { "entered": entered, "stacked": stacked })}><div class="p-6">`);
|
|
36
|
+
children($$renderer2);
|
|
37
|
+
$$renderer2.push(`<!----></div></dialog>`);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function isBackgroundGitRefresh(status) {
|
|
41
|
+
if (!status.enabled) return false;
|
|
42
|
+
if (status.phase === "preparing") return status.preparationStage === "browser-writes";
|
|
43
|
+
return ["flushing", "refreshing", "processing", "restarting"].includes(status.phase);
|
|
44
|
+
}
|
|
45
|
+
function gitStatusPausesWrites(status) {
|
|
46
|
+
return isBackgroundGitRefresh(status) || status.enabled && ["awaiting-changes", "fatal"].includes(status.phase);
|
|
47
|
+
}
|
|
48
|
+
function _layout($$renderer, $$props) {
|
|
49
|
+
$$renderer.component(($$renderer2) => {
|
|
50
|
+
let { children } = $$props;
|
|
51
|
+
let error = "";
|
|
52
|
+
const gitState = disabledGitModeStatus();
|
|
53
|
+
const gitFlushers = /* @__PURE__ */ new Map();
|
|
54
|
+
const gitBlockers = /* @__PURE__ */ new Map();
|
|
55
|
+
let gitTabId = "";
|
|
56
|
+
let gitStatusRequestSequence = 0;
|
|
57
|
+
let activationRequestInFlight = false;
|
|
58
|
+
let gitWritesPaused = true;
|
|
59
|
+
let refreshNoticeRequested = false;
|
|
60
|
+
let activationRefreshVisible = false;
|
|
61
|
+
let manualDialog = null;
|
|
62
|
+
let manualDescription = "";
|
|
63
|
+
let manualProcessing = null;
|
|
64
|
+
let manualOperationId = null;
|
|
65
|
+
let manualOperationObserved = false;
|
|
66
|
+
let manualAcceptedAfterStatusSequence = 0;
|
|
67
|
+
let manualValidationError = null;
|
|
68
|
+
let activationDialog = null;
|
|
69
|
+
let activationDescription = "";
|
|
70
|
+
let activationProcessing = null;
|
|
71
|
+
let activationValidationError = null;
|
|
72
|
+
const backgroundRefreshActive = derived(() => isBackgroundGitRefresh(gitState));
|
|
73
|
+
const manualDialogProcessing = derived(() => manualProcessing === "save" || manualProcessing === "discard");
|
|
74
|
+
const showRefreshingDialog = derived(() => gitState.enabled && (gitState.phase === "fatal" || activationRefreshVisible || backgroundRefreshActive() && refreshNoticeRequested && !manualDialogProcessing()));
|
|
75
|
+
function requestBlockedOperationNotice() {
|
|
76
|
+
if (!backgroundRefreshActive() || manualDialogProcessing()) return;
|
|
77
|
+
refreshNoticeRequested = true;
|
|
78
|
+
}
|
|
79
|
+
function registerGitFlusher(name, flusher, options) {
|
|
80
|
+
const registration = { flush: flusher, final: options?.final === true };
|
|
81
|
+
gitFlushers.set(name, registration);
|
|
82
|
+
return () => {
|
|
83
|
+
if (gitFlushers.get(name) === registration) gitFlushers.delete(name);
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
function registerGitBlocker(name, blocker) {
|
|
87
|
+
gitBlockers.set(name, blocker);
|
|
88
|
+
return () => {
|
|
89
|
+
if (gitBlockers.get(name) === blocker) gitBlockers.delete(name);
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
setGitModeContext({
|
|
93
|
+
state: gitState,
|
|
94
|
+
openSaveDialog: () => {
|
|
95
|
+
if (!gitState.enabled || !gitState.hasChanges || gitState.phase !== "idle" || gitWritesPaused) return;
|
|
96
|
+
},
|
|
97
|
+
openDiscardDialog: () => {
|
|
98
|
+
if (!gitState.enabled || !gitState.hasChanges || gitState.phase !== "idle" || gitWritesPaused) return;
|
|
99
|
+
},
|
|
100
|
+
prepareRelease: () => void prepareRelease(),
|
|
101
|
+
manualAction: () => manualProcessing,
|
|
102
|
+
registerFlusher: registerGitFlusher,
|
|
103
|
+
registerBlocker: registerGitBlocker,
|
|
104
|
+
requestBlockedOperationNotice,
|
|
105
|
+
isActivationStarting: () => activationRequestInFlight,
|
|
106
|
+
isWritePaused: () => {
|
|
107
|
+
const locallyPaused = gitWritesPaused;
|
|
108
|
+
gitStatusPausesWrites(gitState);
|
|
109
|
+
return typeof document !== "undefined" && document.visibilityState !== "visible" || locallyPaused;
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
function handleError(errorMessage) {
|
|
113
|
+
error = errorMessage;
|
|
114
|
+
setTimeout(
|
|
115
|
+
() => {
|
|
116
|
+
error = "";
|
|
117
|
+
},
|
|
118
|
+
5e3
|
|
119
|
+
);
|
|
120
|
+
console.error(errorMessage);
|
|
121
|
+
}
|
|
122
|
+
async function refreshGitStatus() {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
function broadcastGitInvalidation() {
|
|
126
|
+
void refreshGitStatus();
|
|
127
|
+
}
|
|
128
|
+
async function runManualAction(action) {
|
|
129
|
+
if (manualProcessing) return;
|
|
130
|
+
const description = manualDescription.trim();
|
|
131
|
+
if (action === "save" && !description) {
|
|
132
|
+
manualValidationError = "Describe your changes before saving.";
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
manualValidationError = null;
|
|
136
|
+
manualProcessing = action;
|
|
137
|
+
manualOperationId = null;
|
|
138
|
+
manualOperationObserved = false;
|
|
139
|
+
manualAcceptedAfterStatusSequence = 0;
|
|
140
|
+
try {
|
|
141
|
+
const started = await trpc.gitMode.startManual.mutate({
|
|
142
|
+
tabId: gitTabId,
|
|
143
|
+
action,
|
|
144
|
+
description: action === "save" ? description : void 0
|
|
145
|
+
});
|
|
146
|
+
if (manualProcessing !== action) return;
|
|
147
|
+
if (!started.operationId) {
|
|
148
|
+
manualProcessing = null;
|
|
149
|
+
if (started.phase !== "fatal" && !started.fatal) {
|
|
150
|
+
manualValidationError = "There are no changes to save or discard.";
|
|
151
|
+
}
|
|
152
|
+
void refreshGitStatus();
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
manualOperationId = started.operationId;
|
|
156
|
+
manualOperationObserved = true;
|
|
157
|
+
manualAcceptedAfterStatusSequence = gitStatusRequestSequence;
|
|
158
|
+
broadcastGitInvalidation();
|
|
159
|
+
} catch (manualError) {
|
|
160
|
+
manualProcessing = null;
|
|
161
|
+
manualOperationId = null;
|
|
162
|
+
manualOperationObserved = false;
|
|
163
|
+
manualAcceptedAfterStatusSequence = 0;
|
|
164
|
+
manualValidationError = manualError instanceof Error ? manualError.message : "Could not start the Git operation.";
|
|
165
|
+
void refreshGitStatus();
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
async function prepareRelease() {
|
|
169
|
+
if (manualProcessing || !gitState.enabled || gitState.hasChanges || !gitState.canPrepareRelease || gitState.phase !== "idle" || gitWritesPaused) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
async function resolveActivationChanges(action) {
|
|
174
|
+
if (!gitState.operationId || activationProcessing) return;
|
|
175
|
+
const description = activationDescription.trim();
|
|
176
|
+
if (action === "save" && !description) {
|
|
177
|
+
activationValidationError = "Describe your changes before saving.";
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
activationValidationError = null;
|
|
181
|
+
activationProcessing = action;
|
|
182
|
+
try {
|
|
183
|
+
await trpc.gitMode.resolveChanges.mutate({
|
|
184
|
+
tabId: gitTabId,
|
|
185
|
+
operationId: gitState.operationId,
|
|
186
|
+
action,
|
|
187
|
+
description: action === "save" ? description : void 0
|
|
188
|
+
});
|
|
189
|
+
broadcastGitInvalidation();
|
|
190
|
+
} catch (resolveError) {
|
|
191
|
+
activationProcessing = null;
|
|
192
|
+
activationValidationError = resolveError instanceof Error ? resolveError.message : "Could not continue the refresh.";
|
|
193
|
+
void refreshGitStatus();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
setAgentsContext({
|
|
197
|
+
onAgentSelect: (agentId) => {
|
|
198
|
+
const search = new URLSearchParams(page.url.search);
|
|
199
|
+
search.get("step");
|
|
200
|
+
goto();
|
|
201
|
+
},
|
|
202
|
+
onError: handleError
|
|
203
|
+
});
|
|
204
|
+
$$renderer2.push(`<main class="h-screen overflow-hidden bg-gray-600">`);
|
|
205
|
+
children($$renderer2);
|
|
206
|
+
$$renderer2.push(`<!----> `);
|
|
207
|
+
if (error) {
|
|
208
|
+
$$renderer2.push("<!--[0-->");
|
|
209
|
+
$$renderer2.push(`<div class="absolute bottom-0 right-0 z-50 m-4 rounded-sm border border-red-500 bg-red-50 px-4 py-2 text-red-800 focus:outline-none focus:ring-0">${escape_html(error)}</div>`);
|
|
210
|
+
} else {
|
|
211
|
+
$$renderer2.push("<!--[-1-->");
|
|
212
|
+
}
|
|
213
|
+
$$renderer2.push(`<!--]--> `);
|
|
214
|
+
if (gitState.enabled && gitState.deferredReason && gitState.phase === "idle") {
|
|
215
|
+
$$renderer2.push("<!--[0-->");
|
|
216
|
+
$$renderer2.push(`<div class="fixed bottom-4 left-1/2 z-40 w-[min(92vw,38rem)] -translate-x-1/2 rounded-lg border border-amber-500/60 bg-rc-gray-800 px-4 py-3 text-sm text-amber-100 shadow-xl" role="status">Refresh paused: ${escape_html(gitState.deferredReason)} Save or close that draft to continue.</div>`);
|
|
217
|
+
} else {
|
|
218
|
+
$$renderer2.push("<!--[-1-->");
|
|
219
|
+
}
|
|
220
|
+
$$renderer2.push(`<!--]--> `);
|
|
221
|
+
{
|
|
222
|
+
$$renderer2.push("<!--[-1-->");
|
|
223
|
+
}
|
|
224
|
+
$$renderer2.push(`<!--]--> `);
|
|
225
|
+
BlockingGitDialog($$renderer2, {
|
|
226
|
+
open: showRefreshingDialog(),
|
|
227
|
+
label: "Bosun repository refresh",
|
|
228
|
+
children: ($$renderer3) => {
|
|
229
|
+
if (gitState.phase === "fatal" && gitState.fatal) {
|
|
230
|
+
$$renderer3.push("<!--[0-->");
|
|
231
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">${escape_html(gitState.fatal.title)}</h2> <p class="mt-3 whitespace-pre-line text-rc-gray-200">${escape_html(gitState.fatal.message)}</p> `);
|
|
232
|
+
if (gitState.fatal.prUrl) {
|
|
233
|
+
$$renderer3.push("<!--[0-->");
|
|
234
|
+
$$renderer3.push(`<a${attr("href", gitState.fatal.prUrl)} target="_blank" rel="noreferrer" class="mt-4 inline-flex text-rc-green-200 underline underline-offset-2">Open the conflict pull request</a>`);
|
|
235
|
+
} else {
|
|
236
|
+
$$renderer3.push("<!--[-1-->");
|
|
237
|
+
}
|
|
238
|
+
$$renderer3.push(`<!--]-->`);
|
|
239
|
+
} else {
|
|
240
|
+
$$renderer3.push("<!--[-1-->");
|
|
241
|
+
$$renderer3.push(`<div class="flex items-center gap-4"><div class="h-6 w-6 animate-spin rounded-full border-2 border-rc-gray-400 border-t-rc-green-200" aria-hidden="true"></div> <div><h2 class="text-xl font-semibold text-rc-gray-100">Refreshing...</h2></div></div>`);
|
|
242
|
+
}
|
|
243
|
+
$$renderer3.push(`<!--]-->`);
|
|
244
|
+
}
|
|
245
|
+
});
|
|
246
|
+
$$renderer2.push(`<!----> `);
|
|
247
|
+
BlockingGitDialog($$renderer2, {
|
|
248
|
+
open: gitState.phase === "awaiting-changes",
|
|
249
|
+
label: "Save or discard current changes",
|
|
250
|
+
stacked: true,
|
|
251
|
+
children: ($$renderer3) => {
|
|
252
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">To continue, save or discard your current changes</h2> <p class="mt-3 text-rc-gray-200">Bosun cannot refresh your personal branch without handling these changes first.</p> <div class="mt-5 flex justify-end gap-3">`);
|
|
253
|
+
Button($$renderer3, {
|
|
254
|
+
variant: "outlined",
|
|
255
|
+
disabled: !!activationProcessing,
|
|
256
|
+
onclick: () => {
|
|
257
|
+
activationValidationError = null;
|
|
258
|
+
activationDialog = "discard";
|
|
259
|
+
},
|
|
260
|
+
children: ($$renderer4) => {
|
|
261
|
+
$$renderer4.push(`<!---->Discard`);
|
|
262
|
+
},
|
|
263
|
+
$$slots: { default: true }
|
|
264
|
+
});
|
|
265
|
+
$$renderer3.push(`<!----> `);
|
|
266
|
+
Button($$renderer3, {
|
|
267
|
+
disabled: !!activationProcessing,
|
|
268
|
+
onclick: () => {
|
|
269
|
+
activationValidationError = null;
|
|
270
|
+
activationDialog = "save";
|
|
271
|
+
},
|
|
272
|
+
children: ($$renderer4) => {
|
|
273
|
+
$$renderer4.push(`<!---->Save`);
|
|
274
|
+
},
|
|
275
|
+
$$slots: { default: true }
|
|
276
|
+
});
|
|
277
|
+
$$renderer3.push(`<!----></div>`);
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
$$renderer2.push(`<!----> `);
|
|
281
|
+
BlockingGitDialog($$renderer2, {
|
|
282
|
+
open: activationDialog === "save" && (gitState.phase === "awaiting-changes" || activationProcessing === "save"),
|
|
283
|
+
label: "Save current changes",
|
|
284
|
+
stacked: true,
|
|
285
|
+
children: ($$renderer3) => {
|
|
286
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">Save changes</h2> <div class="mt-5 space-y-4"><label class="block"><span class="mb-1 block text-sm text-rc-gray-200">Describe your changes</span> <input${attr("value", activationDescription)}${attr("disabled", !!activationProcessing, true)} maxlength="500" class="w-full rounded-lg border border-rc-gray-600 bg-rc-gray-900 px-3 py-2 text-rc-gray-100 outline-none focus:border-rc-gray-400 disabled:opacity-60"/></label> `);
|
|
287
|
+
if (activationValidationError) {
|
|
288
|
+
$$renderer3.push("<!--[0-->");
|
|
289
|
+
$$renderer3.push(`<p class="text-sm text-rc-red-600">${escape_html(activationValidationError)}</p>`);
|
|
290
|
+
} else {
|
|
291
|
+
$$renderer3.push("<!--[-1-->");
|
|
292
|
+
}
|
|
293
|
+
$$renderer3.push(`<!--]--> <div class="flex justify-end gap-3 pt-2">`);
|
|
294
|
+
Button($$renderer3, {
|
|
295
|
+
variant: "ghost",
|
|
296
|
+
disabled: !!activationProcessing,
|
|
297
|
+
onclick: () => {
|
|
298
|
+
activationValidationError = null;
|
|
299
|
+
activationDialog = null;
|
|
300
|
+
},
|
|
301
|
+
children: ($$renderer4) => {
|
|
302
|
+
$$renderer4.push(`<!---->Cancel`);
|
|
303
|
+
},
|
|
304
|
+
$$slots: { default: true }
|
|
305
|
+
});
|
|
306
|
+
$$renderer3.push(`<!----> `);
|
|
307
|
+
Button($$renderer3, {
|
|
308
|
+
disabled: !!activationProcessing,
|
|
309
|
+
onclick: () => resolveActivationChanges("save"),
|
|
310
|
+
children: ($$renderer4) => {
|
|
311
|
+
$$renderer4.push(`<!---->${escape_html(activationProcessing === "save" ? "Saving..." : "Save")}`);
|
|
312
|
+
},
|
|
313
|
+
$$slots: { default: true }
|
|
314
|
+
});
|
|
315
|
+
$$renderer3.push(`<!----></div></div>`);
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
$$renderer2.push(`<!----> `);
|
|
319
|
+
BlockingGitDialog($$renderer2, {
|
|
320
|
+
open: activationDialog === "discard" && (gitState.phase === "awaiting-changes" || activationProcessing === "discard"),
|
|
321
|
+
label: "Confirm discard",
|
|
322
|
+
stacked: true,
|
|
323
|
+
children: ($$renderer3) => {
|
|
324
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">Discard current changes?</h2> <p class="mt-3 text-rc-gray-200">Discarding removes all changes since your last Save. They can be recovered later if needed.</p> `);
|
|
325
|
+
if (activationValidationError) {
|
|
326
|
+
$$renderer3.push("<!--[0-->");
|
|
327
|
+
$$renderer3.push(`<p class="mt-4 text-sm text-rc-red-600">${escape_html(activationValidationError)}</p>`);
|
|
328
|
+
} else {
|
|
329
|
+
$$renderer3.push("<!--[-1-->");
|
|
330
|
+
}
|
|
331
|
+
$$renderer3.push(`<!--]--> <div class="mt-5 flex justify-end gap-3">`);
|
|
332
|
+
Button($$renderer3, {
|
|
333
|
+
variant: "ghost",
|
|
334
|
+
disabled: !!activationProcessing,
|
|
335
|
+
onclick: () => {
|
|
336
|
+
activationValidationError = null;
|
|
337
|
+
activationDialog = null;
|
|
338
|
+
},
|
|
339
|
+
children: ($$renderer4) => {
|
|
340
|
+
$$renderer4.push(`<!---->Cancel`);
|
|
341
|
+
},
|
|
342
|
+
$$slots: { default: true }
|
|
343
|
+
});
|
|
344
|
+
$$renderer3.push(`<!----> `);
|
|
345
|
+
Button($$renderer3, {
|
|
346
|
+
variant: "outlined",
|
|
347
|
+
disabled: !!activationProcessing,
|
|
348
|
+
onclick: () => resolveActivationChanges("discard"),
|
|
349
|
+
children: ($$renderer4) => {
|
|
350
|
+
$$renderer4.push(`<!---->${escape_html(activationProcessing === "discard" ? "Discarding..." : "Discard changes")}`);
|
|
351
|
+
},
|
|
352
|
+
$$slots: { default: true }
|
|
353
|
+
});
|
|
354
|
+
$$renderer3.push(`<!----></div>`);
|
|
355
|
+
}
|
|
356
|
+
});
|
|
357
|
+
$$renderer2.push(`<!----> `);
|
|
358
|
+
BlockingGitDialog($$renderer2, {
|
|
359
|
+
open: manualDialog === "save",
|
|
360
|
+
label: "Save project changes",
|
|
361
|
+
children: ($$renderer3) => {
|
|
362
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">Save changes</h2> <div class="mt-5 space-y-4"><label class="block"><span class="mb-1 block text-sm text-rc-gray-200">Describe your changes</span> <input${attr("value", manualDescription)}${attr("disabled", !!manualProcessing, true)} maxlength="500" class="w-full rounded-lg border border-rc-gray-600 bg-rc-gray-900 px-3 py-2 text-rc-gray-100 outline-none focus:border-rc-gray-400 disabled:opacity-60"/></label> `);
|
|
363
|
+
if (manualValidationError) {
|
|
364
|
+
$$renderer3.push("<!--[0-->");
|
|
365
|
+
$$renderer3.push(`<p class="text-sm text-rc-red-600">${escape_html(manualValidationError)}</p>`);
|
|
366
|
+
} else {
|
|
367
|
+
$$renderer3.push("<!--[-1-->");
|
|
368
|
+
}
|
|
369
|
+
$$renderer3.push(`<!--]--> <div class="flex justify-end gap-3 pt-2">`);
|
|
370
|
+
Button($$renderer3, {
|
|
371
|
+
variant: "ghost",
|
|
372
|
+
disabled: !!manualProcessing,
|
|
373
|
+
onclick: () => manualDialog = null,
|
|
374
|
+
children: ($$renderer4) => {
|
|
375
|
+
$$renderer4.push(`<!---->Cancel`);
|
|
376
|
+
},
|
|
377
|
+
$$slots: { default: true }
|
|
378
|
+
});
|
|
379
|
+
$$renderer3.push(`<!----> `);
|
|
380
|
+
Button($$renderer3, {
|
|
381
|
+
disabled: !!manualProcessing,
|
|
382
|
+
onclick: () => runManualAction("save"),
|
|
383
|
+
children: ($$renderer4) => {
|
|
384
|
+
$$renderer4.push(`<!---->${escape_html(manualProcessing === "save" ? "Saving..." : "Save")}`);
|
|
385
|
+
},
|
|
386
|
+
$$slots: { default: true }
|
|
387
|
+
});
|
|
388
|
+
$$renderer3.push(`<!----></div></div>`);
|
|
389
|
+
}
|
|
390
|
+
});
|
|
391
|
+
$$renderer2.push(`<!----> `);
|
|
392
|
+
BlockingGitDialog($$renderer2, {
|
|
393
|
+
open: manualDialog === "discard",
|
|
394
|
+
label: "Confirm discard",
|
|
395
|
+
children: ($$renderer3) => {
|
|
396
|
+
$$renderer3.push(`<h2 class="text-xl font-semibold text-rc-gray-100">Discard current changes?</h2> <p class="mt-3 text-rc-gray-200">Discarding removes all changes since your last Save. They can be recovered later if needed.</p> `);
|
|
397
|
+
if (manualValidationError) {
|
|
398
|
+
$$renderer3.push("<!--[0-->");
|
|
399
|
+
$$renderer3.push(`<p class="mt-4 text-sm text-rc-red-600">${escape_html(manualValidationError)}</p>`);
|
|
400
|
+
} else {
|
|
401
|
+
$$renderer3.push("<!--[-1-->");
|
|
402
|
+
}
|
|
403
|
+
$$renderer3.push(`<!--]--> <div class="mt-5 flex justify-end gap-3">`);
|
|
404
|
+
Button($$renderer3, {
|
|
405
|
+
variant: "ghost",
|
|
406
|
+
disabled: !!manualProcessing,
|
|
407
|
+
onclick: () => manualDialog = null,
|
|
408
|
+
children: ($$renderer4) => {
|
|
409
|
+
$$renderer4.push(`<!---->Cancel`);
|
|
410
|
+
},
|
|
411
|
+
$$slots: { default: true }
|
|
412
|
+
});
|
|
413
|
+
$$renderer3.push(`<!----> `);
|
|
414
|
+
Button($$renderer3, {
|
|
415
|
+
variant: "outlined",
|
|
416
|
+
disabled: !!manualProcessing,
|
|
417
|
+
onclick: () => runManualAction("discard"),
|
|
418
|
+
children: ($$renderer4) => {
|
|
419
|
+
$$renderer4.push(`<!---->${escape_html(manualProcessing === "discard" ? "Discarding..." : "Discard changes")}`);
|
|
420
|
+
},
|
|
421
|
+
$$slots: { default: true }
|
|
422
|
+
});
|
|
423
|
+
$$renderer3.push(`<!----></div>`);
|
|
424
|
+
}
|
|
425
|
+
});
|
|
426
|
+
$$renderer2.push(`<!----></main>`);
|
|
427
|
+
});
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
export { _layout as default };
|
|
431
|
+
//# sourceMappingURL=_layout.svelte-CJd_pmkx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_layout.svelte-CJd_pmkx.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { a as attr, b as attr_class, e as escape_html, d as derived } from \"../../chunks/index.js\";\nimport { s as setAgentsContext } from \"../../chunks/agents-context.js\";\nimport { p as page } from \"../../chunks/index2.js\";\nimport { g as goto } from \"../../chunks/client.js\";\nimport { t as trpc } from \"../../chunks/trpc-client.js\";\nimport { B as Button } from \"../../chunks/Button.js\";\nimport { o as onDestroy } from \"../../chunks/index-server.js\";\nimport { s as setGitModeContext, d as disabledGitModeStatus } from \"../../chunks/git-mode-context.js\";\nimport \"@trpc/client\";\nfunction BlockingGitDialog($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n open,\n label,\n stacked = false,\n class: className = \"\",\n children\n } = $$props;\n let entered = false;\n let closeTimer = null;\n let frame = 0;\n function clearPending() {\n if (closeTimer) clearTimeout(closeTimer);\n closeTimer = null;\n if (frame) cancelAnimationFrame(frame);\n frame = 0;\n }\n onDestroy(clearPending);\n $$renderer2.push(`<dialog${attr(\"aria-label\", label)}${attr_class(`git-blocking-dialog m-auto max-h-[90vh] w-[min(92vw,32rem)] overflow-visible rounded-xl border border-rc-gray-600 bg-rc-gray-800 p-0 text-rc-gray-100 shadow-2xl outline-none ${className}`, \"svelte-vbchqd\", { \"entered\": entered, \"stacked\": stacked })}><div class=\"p-6\">`);\n children($$renderer2);\n $$renderer2.push(`<!----></div></dialog>`);\n });\n}\nfunction isBackgroundGitRefresh(status) {\n if (!status.enabled) return false;\n if (status.phase === \"preparing\") return status.preparationStage === \"browser-writes\";\n return [\"flushing\", \"refreshing\", \"processing\", \"restarting\"].includes(status.phase);\n}\nfunction gitStatusPausesWrites(status) {\n return isBackgroundGitRefresh(status) || status.enabled && [\"awaiting-changes\", \"fatal\"].includes(status.phase);\n}\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { children } = $$props;\n let error = \"\";\n const gitState = disabledGitModeStatus();\n const gitFlushers = /* @__PURE__ */ new Map();\n const gitBlockers = /* @__PURE__ */ new Map();\n let gitTabId = \"\";\n let gitStatusRequestSequence = 0;\n let activationRequestInFlight = false;\n let gitWritesPaused = true;\n let refreshNoticeRequested = false;\n let activationRefreshVisible = false;\n let manualDialog = null;\n let manualDescription = \"\";\n let manualProcessing = null;\n let manualOperationId = null;\n let manualOperationObserved = false;\n let manualAcceptedAfterStatusSequence = 0;\n let manualValidationError = null;\n let activationDialog = null;\n let activationDescription = \"\";\n let activationProcessing = null;\n let activationValidationError = null;\n const backgroundRefreshActive = derived(() => isBackgroundGitRefresh(gitState));\n const manualDialogProcessing = derived(() => manualProcessing === \"save\" || manualProcessing === \"discard\");\n const showRefreshingDialog = derived(() => gitState.enabled && (gitState.phase === \"fatal\" || activationRefreshVisible || backgroundRefreshActive() && refreshNoticeRequested && !manualDialogProcessing()));\n function requestBlockedOperationNotice() {\n if (!backgroundRefreshActive() || manualDialogProcessing()) return;\n refreshNoticeRequested = true;\n }\n function registerGitFlusher(name, flusher, options) {\n const registration = { flush: flusher, final: options?.final === true };\n gitFlushers.set(name, registration);\n return () => {\n if (gitFlushers.get(name) === registration) gitFlushers.delete(name);\n };\n }\n function registerGitBlocker(name, blocker) {\n gitBlockers.set(name, blocker);\n return () => {\n if (gitBlockers.get(name) === blocker) gitBlockers.delete(name);\n };\n }\n setGitModeContext({\n state: gitState,\n openSaveDialog: () => {\n if (!gitState.enabled || !gitState.hasChanges || gitState.phase !== \"idle\" || gitWritesPaused) return;\n },\n openDiscardDialog: () => {\n if (!gitState.enabled || !gitState.hasChanges || gitState.phase !== \"idle\" || gitWritesPaused) return;\n },\n prepareRelease: () => void prepareRelease(),\n manualAction: () => manualProcessing,\n registerFlusher: registerGitFlusher,\n registerBlocker: registerGitBlocker,\n requestBlockedOperationNotice,\n isActivationStarting: () => activationRequestInFlight,\n isWritePaused: () => {\n const locallyPaused = gitWritesPaused;\n const statusPaused = gitStatusPausesWrites(gitState);\n return typeof document !== \"undefined\" && document.visibilityState !== \"visible\" || locallyPaused || statusPaused;\n }\n });\n function handleError(errorMessage) {\n error = errorMessage;\n setTimeout(\n () => {\n error = \"\";\n },\n 5e3\n );\n console.error(errorMessage);\n }\n async function refreshGitStatus() {\n return;\n }\n function broadcastGitInvalidation() {\n void refreshGitStatus();\n }\n async function runManualAction(action) {\n if (manualProcessing) return;\n const description = manualDescription.trim();\n if (action === \"save\" && !description) {\n manualValidationError = \"Describe your changes before saving.\";\n return;\n }\n manualValidationError = null;\n manualProcessing = action;\n manualOperationId = null;\n manualOperationObserved = false;\n manualAcceptedAfterStatusSequence = 0;\n try {\n const started = await trpc.gitMode.startManual.mutate({\n tabId: gitTabId,\n action,\n description: action === \"save\" ? description : void 0\n });\n if (manualProcessing !== action) return;\n if (!started.operationId) {\n manualProcessing = null;\n if (started.phase !== \"fatal\" && !started.fatal) {\n manualValidationError = \"There are no changes to save or discard.\";\n }\n void refreshGitStatus();\n return;\n }\n manualOperationId = started.operationId;\n manualOperationObserved = true;\n manualAcceptedAfterStatusSequence = gitStatusRequestSequence;\n broadcastGitInvalidation();\n } catch (manualError) {\n manualProcessing = null;\n manualOperationId = null;\n manualOperationObserved = false;\n manualAcceptedAfterStatusSequence = 0;\n manualValidationError = manualError instanceof Error ? manualError.message : \"Could not start the Git operation.\";\n void refreshGitStatus();\n }\n }\n async function prepareRelease() {\n if (manualProcessing || !gitState.enabled || gitState.hasChanges || !gitState.canPrepareRelease || gitState.phase !== \"idle\" || gitWritesPaused) {\n return;\n }\n }\n async function resolveActivationChanges(action) {\n if (!gitState.operationId || activationProcessing) return;\n const description = activationDescription.trim();\n if (action === \"save\" && !description) {\n activationValidationError = \"Describe your changes before saving.\";\n return;\n }\n activationValidationError = null;\n activationProcessing = action;\n try {\n await trpc.gitMode.resolveChanges.mutate({\n tabId: gitTabId,\n operationId: gitState.operationId,\n action,\n description: action === \"save\" ? description : void 0\n });\n broadcastGitInvalidation();\n } catch (resolveError) {\n activationProcessing = null;\n activationValidationError = resolveError instanceof Error ? resolveError.message : \"Could not continue the refresh.\";\n void refreshGitStatus();\n }\n }\n setAgentsContext({\n onAgentSelect: (agentId) => {\n const search = new URLSearchParams(page.url.search);\n search.get(\"step\");\n goto();\n },\n onError: handleError\n });\n $$renderer2.push(`<main class=\"h-screen overflow-hidden bg-gray-600\">`);\n children($$renderer2);\n $$renderer2.push(`<!----> `);\n if (error) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"absolute bottom-0 right-0 z-50 m-4 rounded-sm border border-red-500 bg-red-50 px-4 py-2 text-red-800 focus:outline-none focus:ring-0\">${escape_html(error)}</div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (gitState.enabled && gitState.deferredReason && gitState.phase === \"idle\") {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"fixed bottom-4 left-1/2 z-40 w-[min(92vw,38rem)] -translate-x-1/2 rounded-lg border border-amber-500/60 bg-rc-gray-800 px-4 py-3 text-sm text-amber-100 shadow-xl\" role=\"status\">Refresh paused: ${escape_html(gitState.deferredReason)} Save or close that draft to continue.</div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n BlockingGitDialog($$renderer2, {\n open: showRefreshingDialog(),\n label: \"Bosun repository refresh\",\n children: ($$renderer3) => {\n if (gitState.phase === \"fatal\" && gitState.fatal) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">${escape_html(gitState.fatal.title)}</h2> <p class=\"mt-3 whitespace-pre-line text-rc-gray-200\">${escape_html(gitState.fatal.message)}</p> `);\n if (gitState.fatal.prUrl) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<a${attr(\"href\", gitState.fatal.prUrl)} target=\"_blank\" rel=\"noreferrer\" class=\"mt-4 inline-flex text-rc-green-200 underline underline-offset-2\">Open the conflict pull request</a>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]-->`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<div class=\"flex items-center gap-4\"><div class=\"h-6 w-6 animate-spin rounded-full border-2 border-rc-gray-400 border-t-rc-green-200\" aria-hidden=\"true\"></div> <div><h2 class=\"text-xl font-semibold text-rc-gray-100\">Refreshing...</h2></div></div>`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n });\n $$renderer2.push(`<!----> `);\n BlockingGitDialog($$renderer2, {\n open: gitState.phase === \"awaiting-changes\",\n label: \"Save or discard current changes\",\n stacked: true,\n children: ($$renderer3) => {\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">To continue, save or discard your current changes</h2> <p class=\"mt-3 text-rc-gray-200\">Bosun cannot refresh your personal branch without handling these changes first.</p> <div class=\"mt-5 flex justify-end gap-3\">`);\n Button($$renderer3, {\n variant: \"outlined\",\n disabled: !!activationProcessing,\n onclick: () => {\n activationValidationError = null;\n activationDialog = \"discard\";\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Discard`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n disabled: !!activationProcessing,\n onclick: () => {\n activationValidationError = null;\n activationDialog = \"save\";\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Save`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div>`);\n }\n });\n $$renderer2.push(`<!----> `);\n BlockingGitDialog($$renderer2, {\n open: activationDialog === \"save\" && (gitState.phase === \"awaiting-changes\" || activationProcessing === \"save\"),\n label: \"Save current changes\",\n stacked: true,\n children: ($$renderer3) => {\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">Save changes</h2> <div class=\"mt-5 space-y-4\"><label class=\"block\"><span class=\"mb-1 block text-sm text-rc-gray-200\">Describe your changes</span> <input${attr(\"value\", activationDescription)}${attr(\"disabled\", !!activationProcessing, true)} maxlength=\"500\" class=\"w-full rounded-lg border border-rc-gray-600 bg-rc-gray-900 px-3 py-2 text-rc-gray-100 outline-none focus:border-rc-gray-400 disabled:opacity-60\"/></label> `);\n if (activationValidationError) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<p class=\"text-sm text-rc-red-600\">${escape_html(activationValidationError)}</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"flex justify-end gap-3 pt-2\">`);\n Button($$renderer3, {\n variant: \"ghost\",\n disabled: !!activationProcessing,\n onclick: () => {\n activationValidationError = null;\n activationDialog = null;\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n disabled: !!activationProcessing,\n onclick: () => resolveActivationChanges(\"save\"),\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(activationProcessing === \"save\" ? \"Saving...\" : \"Save\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div></div>`);\n }\n });\n $$renderer2.push(`<!----> `);\n BlockingGitDialog($$renderer2, {\n open: activationDialog === \"discard\" && (gitState.phase === \"awaiting-changes\" || activationProcessing === \"discard\"),\n label: \"Confirm discard\",\n stacked: true,\n children: ($$renderer3) => {\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">Discard current changes?</h2> <p class=\"mt-3 text-rc-gray-200\">Discarding removes all changes since your last Save. They can be recovered later if needed.</p> `);\n if (activationValidationError) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<p class=\"mt-4 text-sm text-rc-red-600\">${escape_html(activationValidationError)}</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"mt-5 flex justify-end gap-3\">`);\n Button($$renderer3, {\n variant: \"ghost\",\n disabled: !!activationProcessing,\n onclick: () => {\n activationValidationError = null;\n activationDialog = null;\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n variant: \"outlined\",\n disabled: !!activationProcessing,\n onclick: () => resolveActivationChanges(\"discard\"),\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(activationProcessing === \"discard\" ? \"Discarding...\" : \"Discard changes\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div>`);\n }\n });\n $$renderer2.push(`<!----> `);\n BlockingGitDialog($$renderer2, {\n open: manualDialog === \"save\",\n label: \"Save project changes\",\n children: ($$renderer3) => {\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">Save changes</h2> <div class=\"mt-5 space-y-4\"><label class=\"block\"><span class=\"mb-1 block text-sm text-rc-gray-200\">Describe your changes</span> <input${attr(\"value\", manualDescription)}${attr(\"disabled\", !!manualProcessing, true)} maxlength=\"500\" class=\"w-full rounded-lg border border-rc-gray-600 bg-rc-gray-900 px-3 py-2 text-rc-gray-100 outline-none focus:border-rc-gray-400 disabled:opacity-60\"/></label> `);\n if (manualValidationError) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<p class=\"text-sm text-rc-red-600\">${escape_html(manualValidationError)}</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"flex justify-end gap-3 pt-2\">`);\n Button($$renderer3, {\n variant: \"ghost\",\n disabled: !!manualProcessing,\n onclick: () => manualDialog = null,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n disabled: !!manualProcessing,\n onclick: () => runManualAction(\"save\"),\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(manualProcessing === \"save\" ? \"Saving...\" : \"Save\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div></div>`);\n }\n });\n $$renderer2.push(`<!----> `);\n BlockingGitDialog($$renderer2, {\n open: manualDialog === \"discard\",\n label: \"Confirm discard\",\n children: ($$renderer3) => {\n $$renderer3.push(`<h2 class=\"text-xl font-semibold text-rc-gray-100\">Discard current changes?</h2> <p class=\"mt-3 text-rc-gray-200\">Discarding removes all changes since your last Save. They can be recovered later if needed.</p> `);\n if (manualValidationError) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<p class=\"mt-4 text-sm text-rc-red-600\">${escape_html(manualValidationError)}</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"mt-5 flex justify-end gap-3\">`);\n Button($$renderer3, {\n variant: \"ghost\",\n disabled: !!manualProcessing,\n onclick: () => manualDialog = null,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n variant: \"outlined\",\n disabled: !!manualProcessing,\n onclick: () => runManualAction(\"discard\"),\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(manualProcessing === \"discard\" ? \"Discarding...\" : \"Discard changes\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div>`);\n }\n });\n $$renderer2.push(`<!----></main>`);\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":"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"}
|