@recombine-ai/bosun 0.16.0 → 0.16.2
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/build/client/_app/immutable/assets/0.Rrc0O--C.css +1 -0
- 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 +1 -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/assets/ReadOnlyMonacoDiff.iiWNRlR-.css +1 -0
- package/build/client/_app/immutable/assets/ReadOnlyMonacoDiff.iiWNRlR-.css.br +0 -0
- package/build/client/_app/immutable/assets/ReadOnlyMonacoDiff.iiWNRlR-.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{Cyai3SOj.js → B1HdnQRQ.js} +1 -1
- 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/{uLGP0py1.js → B5zf3x62.js} +1 -1
- 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/{Buo-57fF.js → BHHfrjbV.js} +1 -1
- package/build/client/_app/immutable/chunks/BHHfrjbV.js.br +2 -0
- package/build/client/_app/immutable/chunks/BHHfrjbV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BbGYcfPY.js +3 -0
- 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/{CX0Ekq8t.js → Bmd5zhWC.js} +1 -1
- 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/{Dslf9OwW.js → BnqH7p3U.js} +1 -1
- 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/{CJYOmGlC.js → Bog028VR.js} +1 -1
- 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/{iAhzu4tv.js → Bv1mNXs0.js} +1 -1
- 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/{BD9x_mnu.js → BvjXTrOz.js} +1 -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 +1 -0
- 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/{DCuEIs0S.js → CC1OcqhR.js} +1 -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 +1 -0
- package/build/client/_app/immutable/chunks/CEHsomMo.js.br +0 -0
- package/build/client/_app/immutable/chunks/CEHsomMo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CVlsAO8k.js → CJcZ2GVC.js} +1 -1
- 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/{DJriQKD9.js → CN555stc.js} +1 -1
- 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 +9 -0
- 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/{CXESoUel.js → Cp_st-64.js} +1 -1
- 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/{CPXdAKdv.js → D8mA-uZ4.js} +1 -1
- 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/{Ca197UDq.js → DCXjBDmY.js} +1 -1
- package/build/client/_app/immutable/chunks/{Ca197UDq.js.br → DCXjBDmY.js.br} +0 -0
- package/build/client/_app/immutable/chunks/DCXjBDmY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DSLyVE1P.js +1 -0
- 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/{07xNIa59.js → Ddv5LgEc.js} +1 -1
- 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/{nYD9wsyN.js → DfcDjAv-.js} +1 -1
- 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/{D-B5X35l.js → Dg0A8wPA.js} +1 -1
- 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/{BPNEONy5.js → Dm49pcMm.js} +1 -1
- 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/{BI42X8h_.js → DneQQ7D5.js} +1 -1
- 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/{C39ai1md.js → DoD3q5w5.js} +1 -1
- 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/{BLu86SbA.js → DtXXy94i.js} +1 -1
- 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/{CAjPRvNs.js → Dy2CFyD6.js} +1 -1
- 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 +2 -0
- 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/{BsDZe4N6.js → ILTCveYH.js} +1 -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/{Bj8jfBTi.js → UqjCSZmA.js} +1 -1
- 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 +1 -0
- package/build/client/_app/immutable/chunks/_YcrHZ6P.js.br +2 -0
- package/build/client/_app/immutable/chunks/_YcrHZ6P.js.gz +0 -0
- package/build/client/_app/immutable/chunks/i6ygh6h8.js +1 -0
- package/build/client/_app/immutable/chunks/i6ygh6h8.js.br +2 -0
- package/build/client/_app/immutable/chunks/i6ygh6h8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/oRi68ch3.js +1 -0
- 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/{BJTwdUYr.js → pPpIn6tB.js} +1 -1
- 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/{C7he4XPB.js → r0sHOWrM.js} +1 -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/{CaHl3dME.js → wcTQUnZO.js} +1 -1
- 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.Du7JgOF0.js → app.DdO0gkPg.js} +2 -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 +1 -0
- package/build/client/_app/immutable/entry/start.eAjDq0c9.js.br +2 -0
- package/build/client/_app/immutable/entry/start.eAjDq0c9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.EJrjlOP2.js → 0.nG3DdvIX.js} +1 -1
- 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 +1 -0
- 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 +13 -0
- 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.BFy4oAT6.js → 15.D2I0y3ys.js} +1 -1
- 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.DQQN2LTu.js → 17.CKxGp0E7.js} +1 -1
- 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.Dx1VeGYs.js → 18.DHJxyQpw.js} +1 -1
- 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 +35 -0
- 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.D2P9M-PP.js → 3.BUKrXGR_.js} +1 -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.Cx97sxk5.js → 4.C8VxVbVn.js} +1 -1
- 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.BAliV6Wc.js → 5.BjrnKYaA.js} +1 -1
- 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.CmUnus-n.js → 6.C_hEzPrU.js} +1 -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.DLYtZXzs.js → 8.BTYaOiDC.js} +1 -1
- 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 +2 -0
- 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/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-D_duQDWy.js +9 -0
- package/build/server/chunks/0-D_duQDWy.js.map +1 -0
- package/build/server/chunks/1-C0HdTvXW.js +9 -0
- package/build/server/chunks/{1-kigiZghR.js.map → 1-C0HdTvXW.js.map} +1 -1
- package/build/server/chunks/10-DcfhCR4R.js +9 -0
- package/build/server/chunks/10-DcfhCR4R.js.map +1 -0
- package/build/server/chunks/15-BQcb9C_y.js +9 -0
- package/build/server/chunks/{15-BRw8wtLp.js.map → 15-BQcb9C_y.js.map} +1 -1
- package/build/server/chunks/17-DuVCTioj.js +9 -0
- package/build/server/chunks/17-DuVCTioj.js.map +1 -0
- package/build/server/chunks/18-CT0VFW_p.js +9 -0
- package/build/server/chunks/18-CT0VFW_p.js.map +1 -0
- package/build/server/chunks/2-DgTzKQAP.js +9 -0
- package/build/server/chunks/2-DgTzKQAP.js.map +1 -0
- package/build/server/chunks/3-eQMSMzXP.js +9 -0
- package/build/server/chunks/3-eQMSMzXP.js.map +1 -0
- package/build/server/chunks/4-OaAJtDqP.js +9 -0
- package/build/server/chunks/4-OaAJtDqP.js.map +1 -0
- package/build/server/chunks/5-CBdMutbv.js +9 -0
- package/build/server/chunks/{5-Cumig7Am.js.map → 5-CBdMutbv.js.map} +1 -1
- package/build/server/chunks/6-FoEi7ggm.js +9 -0
- package/build/server/chunks/{6-Ez7v6PpX.js.map → 6-FoEi7ggm.js.map} +1 -1
- package/build/server/chunks/8-B44yRkfX.js +9 -0
- package/build/server/chunks/8-B44yRkfX.js.map +1 -0
- package/build/server/chunks/9-eUjFpHzI.js +9 -0
- package/build/server/chunks/9-eUjFpHzI.js.map +1 -0
- package/build/server/chunks/{AgentSidebar-C--dGIV5.js → AgentSidebar-BWBnqHnV.js} +4 -4
- package/build/server/chunks/{AgentSidebar-C--dGIV5.js.map → AgentSidebar-BWBnqHnV.js.map} +1 -1
- package/build/server/chunks/{Button-oIUr2LUP.js → Button-DH7gdU0s.js} +2 -2
- package/build/server/chunks/{Button-oIUr2LUP.js.map → Button-DH7gdU0s.js.map} +1 -1
- package/build/server/chunks/{ChatStepTrace-CX2Zolmp.js → ChatStepTrace-BivoNYOY.js} +6 -4
- package/build/server/chunks/ChatStepTrace-BivoNYOY.js.map +1 -0
- package/build/server/chunks/{Dropdown-DfCyYHqi.js → Dropdown-DnARl86Q.js} +2 -2
- package/build/server/chunks/{Dropdown-DfCyYHqi.js.map → Dropdown-DnARl86Q.js.map} +1 -1
- package/build/server/chunks/{Icon-DadJPtVP.js → Icon-DP1YKCRV.js} +2 -2
- package/build/server/chunks/{Icon-DadJPtVP.js.map → Icon-DP1YKCRV.js.map} +1 -1
- package/build/server/chunks/{Input-R74u4cO5.js → Input-CUJ9Cg7b.js} +2 -2
- package/build/server/chunks/{Input-R74u4cO5.js.map → Input-CUJ9Cg7b.js.map} +1 -1
- package/build/server/chunks/{Modal-CAzVFw5x.js → Modal-CGJuNpZ0.js} +21 -9
- package/build/server/chunks/{Modal-CAzVFw5x.js.map → Modal-CGJuNpZ0.js.map} +1 -1
- package/build/server/chunks/{Panel-D0IY1AzO.js → Panel-zvjxe036.js} +2 -2
- package/build/server/chunks/{Panel-D0IY1AzO.js.map → Panel-zvjxe036.js.map} +1 -1
- package/build/server/chunks/{Tab-D13L_Up5.js → Tab-CUkyLqbN.js} +4 -4
- package/build/server/chunks/{Tab-D13L_Up5.js.map → Tab-CUkyLqbN.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-D4EOIHJJ.js → _layout.svelte-B-0DHjLB.js} +8 -8
- package/build/server/chunks/{_layout.svelte-D4EOIHJJ.js.map → _layout.svelte-B-0DHjLB.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-Blfto3jh.js → _layout.svelte-B88WMyk0.js} +681 -31
- package/build/server/chunks/_layout.svelte-B88WMyk0.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-Dk-9LkfL.js → _layout.svelte-BnrWYuLv.js} +10 -10
- package/build/server/chunks/{_layout.svelte-Dk-9LkfL.js.map → _layout.svelte-BnrWYuLv.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-BIMexfnk.js → _layout.svelte-wi6o5Ecu.js} +14 -14
- package/build/server/chunks/{_layout.svelte-BIMexfnk.js.map → _layout.svelte-wi6o5Ecu.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DZvcjON6.js → _page.svelte-57pyhszV.js} +10 -10
- package/build/server/chunks/{_page.svelte-DZvcjON6.js.map → _page.svelte-57pyhszV.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DhhqK6z3.js → _page.svelte-BSVJ2d2G.js} +13 -12
- package/build/server/chunks/_page.svelte-BSVJ2d2G.js.map +1 -0
- package/build/server/chunks/{_page.svelte-B1erTzoN.js → _page.svelte-BoHt2cpr.js} +5 -5
- package/build/server/chunks/{_page.svelte-B1erTzoN.js.map → _page.svelte-BoHt2cpr.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CeO_ScC8.js → _page.svelte-CHgQjBQj.js} +2 -2
- package/build/server/chunks/{_page.svelte-CeO_ScC8.js.map → _page.svelte-CHgQjBQj.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CoCBnE2l.js → _page.svelte-CeS_21Ho.js} +11 -11
- package/build/server/chunks/{_page.svelte-CoCBnE2l.js.map → _page.svelte-CeS_21Ho.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-D5S0QjlI.js → _page.svelte-DHSYVLoj.js} +12 -12
- package/build/server/chunks/{_page.svelte-D5S0QjlI.js.map → _page.svelte-DHSYVLoj.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-xf-0yXQM.js → _page.svelte-DhFNFMnl.js} +21 -19
- package/build/server/chunks/_page.svelte-DhFNFMnl.js.map +1 -0
- package/build/server/chunks/{_page.svelte-YoDx7gDL.js → _page.svelte-h_J4lNT9.js} +6 -6
- package/build/server/chunks/{_page.svelte-YoDx7gDL.js.map → _page.svelte-h_J4lNT9.js.map} +1 -1
- package/build/server/chunks/{agents-context-w03Lz_6n.js → agents-context-CbFsZmi5.js} +2 -2
- package/build/server/chunks/{agents-context-w03Lz_6n.js.map → agents-context-CbFsZmi5.js.map} +1 -1
- package/build/server/chunks/{client-WFEvX_be.js → client-DO-hqMbT.js} +4 -4
- package/build/server/chunks/{client-WFEvX_be.js.map → client-DO-hqMbT.js.map} +1 -1
- package/build/server/chunks/{conversation-view-memory-B0PllWRL.js → conversation-view-memory-CtbUZd_L.js} +2 -2
- package/build/server/chunks/{conversation-view-memory-B0PllWRL.js.map → conversation-view-memory-CtbUZd_L.js.map} +1 -1
- package/build/server/chunks/{edit-workspace-context-biaZqjOf.js → edit-workspace-context-tyHBPujC.js} +2 -2
- package/build/server/chunks/{edit-workspace-context-biaZqjOf.js.map → edit-workspace-context-tyHBPujC.js.map} +1 -1
- package/build/server/chunks/error.svelte-DmKKN1RU.js +15 -0
- package/build/server/chunks/{error.svelte-BjIDhioc.js.map → error.svelte-DmKKN1RU.js.map} +1 -1
- package/build/server/chunks/{index-rHCWxLFZ.js → index-LMsd1ih2.js} +2 -2
- package/build/server/chunks/{index-rHCWxLFZ.js.map → index-LMsd1ih2.js.map} +1 -1
- package/build/server/chunks/{index-server-BMxlf3ZC.js → index-server-BRr5mZEq.js} +2 -2
- package/build/server/chunks/{index-server-BMxlf3ZC.js.map → index-server-BRr5mZEq.js.map} +1 -1
- package/build/server/chunks/{index2-DdOgqE2_.js → index2-ClgfzZ89.js} +3 -3
- package/build/server/chunks/{index2-DdOgqE2_.js.map → index2-ClgfzZ89.js.map} +1 -1
- package/build/server/chunks/{index3-DC4GTqD1.js → index3-BdRUAffj.js} +2 -2
- package/build/server/chunks/{index3-DC4GTqD1.js.map → index3-BdRUAffj.js.map} +1 -1
- package/build/server/chunks/{root-UeqiktJA.js → root-4q2Pr7ck.js} +2 -2
- package/build/server/chunks/{root-UeqiktJA.js.map → root-4q2Pr7ck.js.map} +1 -1
- package/build/server/chunks/{state.svelte-CLOYXiU6.js → state.svelte-Bd1i-u49.js} +3 -3
- package/build/server/chunks/{state.svelte-CLOYXiU6.js.map → state.svelte-Bd1i-u49.js.map} +1 -1
- package/build/server/index.js +4 -4
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +14 -14
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/src/backend/lib/apply-v4a-diff.spec.ts +45 -0
- package/src/backend/lib/apply-v4a-diff.ts +167 -0
- package/src/backend/roleplay/agents.ts +16 -2
- package/src/backend/roleplay/old-server.ts +18 -4
- package/src/backend/roleplay/prompt-edit-progress.ts +36 -0
- package/src/backend/roleplay/prompt-edit-proposals.ts +38 -0
- package/src/backend/roleplay/router.ts +63 -15
- package/src/backend/roleplay/step-registry.spec.ts +20 -0
- package/src/backend/roleplay/step-registry.ts +13 -2
- package/src/backend/roleplay/suggest-prompt-edit.ts +163 -0
- package/src/backend/roleplay/variants.ts +8 -4
- package/src/backend/tests/academy-json.spec.ts +32 -0
- package/src/backend/tests/academy.ts +10 -2
- package/src/backend/tests/data.ts +1 -0
- package/src/backend/tests/emulate-agents.spec.ts +106 -0
- package/src/backend/tests/emulate-agents.ts +42 -4
- package/src/backend/tests/json-field-match.ts +29 -8
- package/src/backend/tests/pii-sanitizer.spec.ts +122 -6
- package/src/backend/tests/pii-sanitizer.ts +140 -29
- package/src/backend/tests/router.ts +22 -3
- package/src/backend/tests/suite.spec.ts +20 -0
- package/src/backend/tests/suite.ts +7 -2
- package/src/lib/components/Modal.svelte +42 -13
- package/src/lib/components/Textarea.svelte +41 -0
- package/src/lib/edit/edit-workspace-context.ts +12 -0
- package/src/lib/ws-message.ts +7 -0
- package/build/client/_app/immutable/assets/0.FwR3B_mV.css +0 -1
- package/build/client/_app/immutable/assets/0.FwR3B_mV.css.br +0 -0
- package/build/client/_app/immutable/assets/0.FwR3B_mV.css.gz +0 -0
- package/build/client/_app/immutable/assets/2.DxwYfh1z.css +0 -1
- package/build/client/_app/immutable/assets/2.DxwYfh1z.css.br +0 -0
- package/build/client/_app/immutable/assets/2.DxwYfh1z.css.gz +0 -0
- package/build/client/_app/immutable/assets/Modal.tn0RQdqM.css +0 -0
- package/build/client/_app/immutable/assets/Modal.tn0RQdqM.css.br +0 -1
- package/build/client/_app/immutable/assets/Modal.tn0RQdqM.css.gz +0 -0
- package/build/client/_app/immutable/chunks/07xNIa59.js.br +0 -0
- package/build/client/_app/immutable/chunks/07xNIa59.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BD9x_mnu.js.br +0 -0
- package/build/client/_app/immutable/chunks/BD9x_mnu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BDl2QuyN.js +0 -1
- package/build/client/_app/immutable/chunks/BDl2QuyN.js.br +0 -0
- package/build/client/_app/immutable/chunks/BDl2QuyN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BI42X8h_.js.br +0 -0
- package/build/client/_app/immutable/chunks/BI42X8h_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BJTwdUYr.js.br +0 -0
- package/build/client/_app/immutable/chunks/BJTwdUYr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BLu86SbA.js.br +0 -0
- package/build/client/_app/immutable/chunks/BLu86SbA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BNifnXkO.js +0 -1
- package/build/client/_app/immutable/chunks/BNifnXkO.js.br +0 -2
- package/build/client/_app/immutable/chunks/BNifnXkO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BPNEONy5.js.br +0 -0
- package/build/client/_app/immutable/chunks/BPNEONy5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B_K7D6rX.js +0 -2
- package/build/client/_app/immutable/chunks/B_K7D6rX.js.br +0 -0
- package/build/client/_app/immutable/chunks/B_K7D6rX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bj8jfBTi.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bj8jfBTi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsDZe4N6.js.br +0 -0
- package/build/client/_app/immutable/chunks/BsDZe4N6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Buo-57fF.js.br +0 -0
- package/build/client/_app/immutable/chunks/Buo-57fF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C39ai1md.js.br +0 -0
- package/build/client/_app/immutable/chunks/C39ai1md.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C7he4XPB.js.br +0 -0
- package/build/client/_app/immutable/chunks/C7he4XPB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CAjPRvNs.js.br +0 -0
- package/build/client/_app/immutable/chunks/CAjPRvNs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJYOmGlC.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJYOmGlC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CPXdAKdv.js.br +0 -0
- package/build/client/_app/immutable/chunks/CPXdAKdv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CVlsAO8k.js.br +0 -0
- package/build/client/_app/immutable/chunks/CVlsAO8k.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CX0Ekq8t.js.br +0 -0
- package/build/client/_app/immutable/chunks/CX0Ekq8t.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CXESoUel.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXESoUel.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ca197UDq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CaHl3dME.js.br +0 -0
- package/build/client/_app/immutable/chunks/CaHl3dME.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cql_e8Of.js +0 -1
- package/build/client/_app/immutable/chunks/Cql_e8Of.js.br +0 -2
- package/build/client/_app/immutable/chunks/Cql_e8Of.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CxLomzuE.js +0 -1
- package/build/client/_app/immutable/chunks/CxLomzuE.js.br +0 -0
- package/build/client/_app/immutable/chunks/CxLomzuE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cyai3SOj.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cyai3SOj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CyvQWZoe.js +0 -8
- package/build/client/_app/immutable/chunks/CyvQWZoe.js.br +0 -0
- package/build/client/_app/immutable/chunks/CyvQWZoe.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CzXNWL4m.js +0 -1
- package/build/client/_app/immutable/chunks/CzXNWL4m.js.br +0 -1
- package/build/client/_app/immutable/chunks/CzXNWL4m.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-B5X35l.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-B5X35l.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCuEIs0S.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCuEIs0S.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DJriQKD9.js.br +0 -0
- package/build/client/_app/immutable/chunks/DJriQKD9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dslf9OwW.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dslf9OwW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/QpaC6J6s.js +0 -1
- package/build/client/_app/immutable/chunks/QpaC6J6s.js.br +0 -0
- package/build/client/_app/immutable/chunks/QpaC6J6s.js.gz +0 -0
- package/build/client/_app/immutable/chunks/_U9sB4BM.js +0 -3
- package/build/client/_app/immutable/chunks/_U9sB4BM.js.br +0 -0
- package/build/client/_app/immutable/chunks/_U9sB4BM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/iAhzu4tv.js.br +0 -0
- package/build/client/_app/immutable/chunks/iAhzu4tv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/nYD9wsyN.js.br +0 -0
- package/build/client/_app/immutable/chunks/nYD9wsyN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/uLGP0py1.js.br +0 -0
- package/build/client/_app/immutable/chunks/uLGP0py1.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.Du7JgOF0.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Du7JgOF0.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BssSvo4L.js +0 -1
- package/build/client/_app/immutable/entry/start.BssSvo4L.js.br +0 -2
- package/build/client/_app/immutable/entry/start.BssSvo4L.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.EJrjlOP2.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.EJrjlOP2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.BX3yW9Ki.js +0 -1
- package/build/client/_app/immutable/nodes/1.BX3yW9Ki.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BX3yW9Ki.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js +0 -13
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.HnX8Jhtn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.BFy4oAT6.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.BFy4oAT6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.DQQN2LTu.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.DQQN2LTu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.Dx1VeGYs.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.Dx1VeGYs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.BSZUitGm.js +0 -35
- package/build/client/_app/immutable/nodes/2.BSZUitGm.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BSZUitGm.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.D2P9M-PP.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.D2P9M-PP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.Cx97sxk5.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Cx97sxk5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BAliV6Wc.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BAliV6Wc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CmUnus-n.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CmUnus-n.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DLYtZXzs.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DLYtZXzs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DQ0jyQBU.js +0 -2
- package/build/client/_app/immutable/nodes/9.DQ0jyQBU.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DQ0jyQBU.js.gz +0 -0
- package/build/server/chunks/0-DB4bFp_f.js +0 -9
- package/build/server/chunks/0-DB4bFp_f.js.map +0 -1
- package/build/server/chunks/1-kigiZghR.js +0 -9
- package/build/server/chunks/10-C49_L5kn.js +0 -9
- package/build/server/chunks/10-C49_L5kn.js.map +0 -1
- package/build/server/chunks/15-BRw8wtLp.js +0 -9
- package/build/server/chunks/17-Dbb76ckK.js +0 -9
- package/build/server/chunks/17-Dbb76ckK.js.map +0 -1
- package/build/server/chunks/18-CvqluQBN.js +0 -9
- package/build/server/chunks/18-CvqluQBN.js.map +0 -1
- package/build/server/chunks/2-JGarRt-z.js +0 -9
- package/build/server/chunks/2-JGarRt-z.js.map +0 -1
- package/build/server/chunks/3-CnXV_OO3.js +0 -9
- package/build/server/chunks/3-CnXV_OO3.js.map +0 -1
- package/build/server/chunks/4-B-XLuotH.js +0 -9
- package/build/server/chunks/4-B-XLuotH.js.map +0 -1
- package/build/server/chunks/5-Cumig7Am.js +0 -9
- package/build/server/chunks/6-Ez7v6PpX.js +0 -9
- package/build/server/chunks/8-COGeKy3N.js +0 -9
- package/build/server/chunks/8-COGeKy3N.js.map +0 -1
- package/build/server/chunks/9-DlMHnRdZ.js +0 -9
- package/build/server/chunks/9-DlMHnRdZ.js.map +0 -1
- package/build/server/chunks/ChatStepTrace-CX2Zolmp.js.map +0 -1
- package/build/server/chunks/_layout.svelte-Blfto3jh.js.map +0 -1
- package/build/server/chunks/_page.svelte-DhhqK6z3.js.map +0 -1
- package/build/server/chunks/_page.svelte-xf-0yXQM.js.map +0 -1
- package/build/server/chunks/error.svelte-BjIDhioc.js +0 -15
package/build/server/manifest.js
CHANGED
|
@@ -10,27 +10,27 @@ return {
|
|
|
10
10
|
assets: new Set(["favicon.png","fonts/DarkerGrotesque-Black.ttf","fonts/DarkerGrotesque-Bold.ttf","fonts/DarkerGrotesque-Light.ttf","fonts/DarkerGrotesque-Medium.ttf","fonts/DarkerGrotesque-Regular.ttf","fonts/DarkerGrotesque-SemiBold.ttf","fonts.css","recombine.svg","telescope-icon.svg","ui/arrow_tests.svg","ui/paperclip.svg","ui/send.svg"]),
|
|
11
11
|
mimeTypes: {".png":"image/png",".ttf":"font/ttf",".css":"text/css",".svg":"image/svg+xml"},
|
|
12
12
|
_: {
|
|
13
|
-
client: {start:"_app/immutable/entry/start.
|
|
13
|
+
client: {start:"_app/immutable/entry/start.eAjDq0c9.js",app:"_app/immutable/entry/app.DdO0gkPg.js",imports:["_app/immutable/entry/start.eAjDq0c9.js","_app/immutable/chunks/BvjXTrOz.js","_app/immutable/chunks/CEHsomMo.js","_app/immutable/chunks/B5zf3x62.js","_app/immutable/chunks/OA8UcISh.js","_app/immutable/chunks/DoD3q5w5.js","_app/immutable/entry/app.DdO0gkPg.js","_app/immutable/chunks/C1FmrZbK.js","_app/immutable/chunks/CEHsomMo.js","_app/immutable/chunks/CN555stc.js","_app/immutable/chunks/DCXjBDmY.js","_app/immutable/chunks/xC2C8d09.js","_app/immutable/chunks/DoD3q5w5.js","_app/immutable/chunks/BHHfrjbV.js","_app/immutable/chunks/Bog028VR.js","_app/immutable/chunks/B1HdnQRQ.js","_app/immutable/chunks/DtXXy94i.js","_app/immutable/chunks/D8mA-uZ4.js","_app/immutable/chunks/B5zf3x62.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:true},
|
|
14
14
|
nodes: [
|
|
15
|
-
__memo(() => import('./chunks/0-
|
|
16
|
-
__memo(() => import('./chunks/1-
|
|
17
|
-
__memo(() => import('./chunks/2-
|
|
18
|
-
__memo(() => import('./chunks/3-
|
|
19
|
-
__memo(() => import('./chunks/4-
|
|
20
|
-
__memo(() => import('./chunks/5-
|
|
21
|
-
__memo(() => import('./chunks/6-
|
|
15
|
+
__memo(() => import('./chunks/0-D_duQDWy.js')),
|
|
16
|
+
__memo(() => import('./chunks/1-C0HdTvXW.js')),
|
|
17
|
+
__memo(() => import('./chunks/2-DgTzKQAP.js')),
|
|
18
|
+
__memo(() => import('./chunks/3-eQMSMzXP.js')),
|
|
19
|
+
__memo(() => import('./chunks/4-OaAJtDqP.js')),
|
|
20
|
+
__memo(() => import('./chunks/5-CBdMutbv.js')),
|
|
21
|
+
__memo(() => import('./chunks/6-FoEi7ggm.js')),
|
|
22
22
|
__memo(() => import('./chunks/7-olXOjo4r.js')),
|
|
23
|
-
__memo(() => import('./chunks/8-
|
|
24
|
-
__memo(() => import('./chunks/9-
|
|
25
|
-
__memo(() => import('./chunks/10-
|
|
23
|
+
__memo(() => import('./chunks/8-B44yRkfX.js')),
|
|
24
|
+
__memo(() => import('./chunks/9-eUjFpHzI.js')),
|
|
25
|
+
__memo(() => import('./chunks/10-DcfhCR4R.js')),
|
|
26
26
|
__memo(() => import('./chunks/11-CB5q84io.js')),
|
|
27
27
|
__memo(() => import('./chunks/12-CfqC_Y1R.js')),
|
|
28
28
|
__memo(() => import('./chunks/13-ByddfU7G.js')),
|
|
29
29
|
__memo(() => import('./chunks/14-Dk7DCwHC.js')),
|
|
30
|
-
__memo(() => import('./chunks/15-
|
|
30
|
+
__memo(() => import('./chunks/15-BQcb9C_y.js')),
|
|
31
31
|
__memo(() => import('./chunks/16-Y9KLA9UF.js')),
|
|
32
|
-
__memo(() => import('./chunks/17-
|
|
33
|
-
__memo(() => import('./chunks/18-
|
|
32
|
+
__memo(() => import('./chunks/17-DuVCTioj.js')),
|
|
33
|
+
__memo(() => import('./chunks/18-CT0VFW_p.js'))
|
|
34
34
|
],
|
|
35
35
|
remotes: {
|
|
36
36
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sources":["../../.svelte-kit/adapter-node/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"favicon.png\",\"fonts/DarkerGrotesque-Black.ttf\",\"fonts/DarkerGrotesque-Bold.ttf\",\"fonts/DarkerGrotesque-Light.ttf\",\"fonts/DarkerGrotesque-Medium.ttf\",\"fonts/DarkerGrotesque-Regular.ttf\",\"fonts/DarkerGrotesque-SemiBold.ttf\",\"fonts.css\",\"recombine.svg\",\"telescope-icon.svg\",\"ui/arrow_tests.svg\",\"ui/paperclip.svg\",\"ui/send.svg\"]),\n\tmimeTypes: {\".png\":\"image/png\",\".ttf\":\"font/ttf\",\".css\":\"text/css\",\".svg\":\"image/svg+xml\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.BssSvo4L.js\",app:\"_app/immutable/entry/app.Du7JgOF0.js\",imports:[\"_app/immutable/entry/start.BssSvo4L.js\",\"_app/immutable/chunks/BD9x_mnu.js\",\"_app/immutable/chunks/CxLomzuE.js\",\"_app/immutable/chunks/uLGP0py1.js\",\"_app/immutable/chunks/OA8UcISh.js\",\"_app/immutable/chunks/C39ai1md.js\",\"_app/immutable/entry/app.Du7JgOF0.js\",\"_app/immutable/chunks/C1FmrZbK.js\",\"_app/immutable/chunks/CxLomzuE.js\",\"_app/immutable/chunks/DJriQKD9.js\",\"_app/immutable/chunks/Ca197UDq.js\",\"_app/immutable/chunks/xC2C8d09.js\",\"_app/immutable/chunks/C39ai1md.js\",\"_app/immutable/chunks/Buo-57fF.js\",\"_app/immutable/chunks/CJYOmGlC.js\",\"_app/immutable/chunks/Cyai3SOj.js\",\"_app/immutable/chunks/BLu86SbA.js\",\"_app/immutable/chunks/CPXdAKdv.js\",\"_app/immutable/chunks/uLGP0py1.js\"],stylesheets:[],fonts:[],uses_env_dynamic_public:true},\n\t\tnodes: [\n\t\t\t__memo(() => import('./nodes/0.js')),\n\t\t\t__memo(() => import('./nodes/1.js')),\n\t\t\t__memo(() => import('./nodes/2.js')),\n\t\t\t__memo(() => import('./nodes/3.js')),\n\t\t\t__memo(() => import('./nodes/4.js')),\n\t\t\t__memo(() => import('./nodes/5.js')),\n\t\t\t__memo(() => import('./nodes/6.js')),\n\t\t\t__memo(() => import('./nodes/7.js')),\n\t\t\t__memo(() => import('./nodes/8.js')),\n\t\t\t__memo(() => import('./nodes/9.js')),\n\t\t\t__memo(() => import('./nodes/10.js')),\n\t\t\t__memo(() => import('./nodes/11.js')),\n\t\t\t__memo(() => import('./nodes/12.js')),\n\t\t\t__memo(() => import('./nodes/13.js')),\n\t\t\t__memo(() => import('./nodes/14.js')),\n\t\t\t__memo(() => import('./nodes/15.js')),\n\t\t\t__memo(() => import('./nodes/16.js')),\n\t\t\t__memo(() => import('./nodes/17.js')),\n\t\t\t__memo(() => import('./nodes/18.js'))\n\t\t],\n\t\tremotes: {\n\t\t\t\n\t\t},\n\t\troutes: [\n\t\t\t{\n\t\t\t\tid: \"/\",\n\t\t\t\tpattern: /^\\/$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 5 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit\",\n\t\t\t\tpattern: /^\\/edit\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 6 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 7 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/configure\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/configure\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 8 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/roleplay\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/roleplay\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 9 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/tests\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/tests\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 10 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/roleplay\",\n\t\t\t\tpattern: /^\\/roleplay\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 11 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/tests\",\n\t\t\t\tpattern: /^\\/tests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 12 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/tests/[agent]\",\n\t\t\t\tpattern: /^\\/tests\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 13 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces\",\n\t\t\t\tpattern: /^\\/traces\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 14 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/latency/[conversationId]\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/latency\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/latency/_conversationId_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/latency/[conversationId]/audio\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/latency\\/([^/]+?)\\/audio\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/latency/_conversationId_/audio/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/proxy/[...path]\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/proxy(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/proxy/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/sources\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/sources\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/sources/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,3,], errors: [1,,], leaf: 15 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 16 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]/latency\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/latency\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 17 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]/traces\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/traces\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 18 },\n\t\t\t\tendpoint: null\n\t\t\t}\n\t\t],\n\t\tprerendered_routes: new Set([]),\n\t\tmatchers: async () => {\n\t\t\t\n\t\t\treturn { };\n\t\t},\n\t\tserver_assets: {}\n\t}\n}\n})();\n\nexport const prerendered = new Set([]);\n\nexport const base = \"\";"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manifest.js","sources":["../../.svelte-kit/adapter-node/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"favicon.png\",\"fonts/DarkerGrotesque-Black.ttf\",\"fonts/DarkerGrotesque-Bold.ttf\",\"fonts/DarkerGrotesque-Light.ttf\",\"fonts/DarkerGrotesque-Medium.ttf\",\"fonts/DarkerGrotesque-Regular.ttf\",\"fonts/DarkerGrotesque-SemiBold.ttf\",\"fonts.css\",\"recombine.svg\",\"telescope-icon.svg\",\"ui/arrow_tests.svg\",\"ui/paperclip.svg\",\"ui/send.svg\"]),\n\tmimeTypes: {\".png\":\"image/png\",\".ttf\":\"font/ttf\",\".css\":\"text/css\",\".svg\":\"image/svg+xml\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.eAjDq0c9.js\",app:\"_app/immutable/entry/app.DdO0gkPg.js\",imports:[\"_app/immutable/entry/start.eAjDq0c9.js\",\"_app/immutable/chunks/BvjXTrOz.js\",\"_app/immutable/chunks/CEHsomMo.js\",\"_app/immutable/chunks/B5zf3x62.js\",\"_app/immutable/chunks/OA8UcISh.js\",\"_app/immutable/chunks/DoD3q5w5.js\",\"_app/immutable/entry/app.DdO0gkPg.js\",\"_app/immutable/chunks/C1FmrZbK.js\",\"_app/immutable/chunks/CEHsomMo.js\",\"_app/immutable/chunks/CN555stc.js\",\"_app/immutable/chunks/DCXjBDmY.js\",\"_app/immutable/chunks/xC2C8d09.js\",\"_app/immutable/chunks/DoD3q5w5.js\",\"_app/immutable/chunks/BHHfrjbV.js\",\"_app/immutable/chunks/Bog028VR.js\",\"_app/immutable/chunks/B1HdnQRQ.js\",\"_app/immutable/chunks/DtXXy94i.js\",\"_app/immutable/chunks/D8mA-uZ4.js\",\"_app/immutable/chunks/B5zf3x62.js\"],stylesheets:[],fonts:[],uses_env_dynamic_public:true},\n\t\tnodes: [\n\t\t\t__memo(() => import('./nodes/0.js')),\n\t\t\t__memo(() => import('./nodes/1.js')),\n\t\t\t__memo(() => import('./nodes/2.js')),\n\t\t\t__memo(() => import('./nodes/3.js')),\n\t\t\t__memo(() => import('./nodes/4.js')),\n\t\t\t__memo(() => import('./nodes/5.js')),\n\t\t\t__memo(() => import('./nodes/6.js')),\n\t\t\t__memo(() => import('./nodes/7.js')),\n\t\t\t__memo(() => import('./nodes/8.js')),\n\t\t\t__memo(() => import('./nodes/9.js')),\n\t\t\t__memo(() => import('./nodes/10.js')),\n\t\t\t__memo(() => import('./nodes/11.js')),\n\t\t\t__memo(() => import('./nodes/12.js')),\n\t\t\t__memo(() => import('./nodes/13.js')),\n\t\t\t__memo(() => import('./nodes/14.js')),\n\t\t\t__memo(() => import('./nodes/15.js')),\n\t\t\t__memo(() => import('./nodes/16.js')),\n\t\t\t__memo(() => import('./nodes/17.js')),\n\t\t\t__memo(() => import('./nodes/18.js'))\n\t\t],\n\t\tremotes: {\n\t\t\t\n\t\t},\n\t\troutes: [\n\t\t\t{\n\t\t\t\tid: \"/\",\n\t\t\t\tpattern: /^\\/$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 5 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit\",\n\t\t\t\tpattern: /^\\/edit\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 6 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 7 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/configure\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/configure\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 8 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/roleplay\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/roleplay\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 9 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/edit/[agent]/tests\",\n\t\t\t\tpattern: /^\\/edit\\/([^/]+?)\\/tests\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,2,], errors: [1,,], leaf: 10 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/roleplay\",\n\t\t\t\tpattern: /^\\/roleplay\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 11 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/tests\",\n\t\t\t\tpattern: /^\\/tests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 12 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/tests/[agent]\",\n\t\t\t\tpattern: /^\\/tests\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"agent\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 13 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces\",\n\t\t\t\tpattern: /^\\/traces\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 14 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/latency/[conversationId]\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/latency\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/latency/_conversationId_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/latency/[conversationId]/audio\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/latency\\/([^/]+?)\\/audio\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/latency/_conversationId_/audio/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/proxy/[...path]\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/proxy(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/proxy/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/api/sources\",\n\t\t\t\tpattern: /^\\/traces\\/api\\/sources\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/traces/api/sources/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,3,], errors: [1,,], leaf: 15 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 16 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]/latency\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/latency\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 17 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/traces/conversations/[conversationId]/traces\",\n\t\t\t\tpattern: /^\\/traces\\/conversations\\/([^/]+?)\\/traces\\/?$/,\n\t\t\t\tparams: [{\"name\":\"conversationId\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,3,4,], errors: [1,,,], leaf: 18 },\n\t\t\t\tendpoint: null\n\t\t\t}\n\t\t],\n\t\tprerendered_routes: new Set([]),\n\t\tmatchers: async () => {\n\t\t\t\n\t\t\treturn { };\n\t\t},\n\t\tserver_assets: {}\n\t}\n}\n})();\n\nexport const prerendered = new Set([]);\n\nexport const base = \"\";"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest'
|
|
2
|
+
|
|
3
|
+
import { applyV4ADiff } from './apply-v4a-diff'
|
|
4
|
+
|
|
5
|
+
describe('applyV4ADiff', () => {
|
|
6
|
+
it('applies a focused paragraph edit', () => {
|
|
7
|
+
const original = `# Greeting
|
|
8
|
+
|
|
9
|
+
Welcome the user and explain what you can do.
|
|
10
|
+
|
|
11
|
+
# Safety
|
|
12
|
+
|
|
13
|
+
Never reveal secrets.
|
|
14
|
+
`
|
|
15
|
+
const diff = [
|
|
16
|
+
'@@',
|
|
17
|
+
' # Greeting',
|
|
18
|
+
' ',
|
|
19
|
+
'-Welcome the user and explain what you can do.',
|
|
20
|
+
'+Welcome the user, ask for their name, and explain what you can do.',
|
|
21
|
+
' ',
|
|
22
|
+
' # Safety'
|
|
23
|
+
].join('\n')
|
|
24
|
+
|
|
25
|
+
expect(applyV4ADiff(original, diff)).toBe(`# Greeting
|
|
26
|
+
|
|
27
|
+
Welcome the user, ask for their name, and explain what you can do.
|
|
28
|
+
|
|
29
|
+
# Safety
|
|
30
|
+
|
|
31
|
+
Never reveal secrets.
|
|
32
|
+
`)
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
it('rejects a patch whose context is not present', () => {
|
|
36
|
+
expect(() =>
|
|
37
|
+
applyV4ADiff(
|
|
38
|
+
'Hello',
|
|
39
|
+
`@@
|
|
40
|
+
-Goodbye
|
|
41
|
+
+Welcome`
|
|
42
|
+
)
|
|
43
|
+
).toThrow(/Invalid context/)
|
|
44
|
+
})
|
|
45
|
+
})
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applies the headerless V4A format emitted by the Responses API Apply Patch tool.
|
|
3
|
+
* Adapted from the MIT-licensed OpenAI Agents SDK implementation:
|
|
4
|
+
* https://github.com/openai/openai-agents-js/blob/main/packages/agents-core/src/utils/applyDiff.ts
|
|
5
|
+
*/
|
|
6
|
+
export function applyV4ADiff(input: string, diff: string): string {
|
|
7
|
+
const lines = normalizeLines(diff)
|
|
8
|
+
const inputLines = input.split('\n')
|
|
9
|
+
const chunks: Chunk[] = []
|
|
10
|
+
let diffIndex = 0
|
|
11
|
+
let cursor = 0
|
|
12
|
+
|
|
13
|
+
while (diffIndex < lines.length) {
|
|
14
|
+
const current = lines[diffIndex]
|
|
15
|
+
if (isTerminator(current)) break
|
|
16
|
+
|
|
17
|
+
let anchor = ''
|
|
18
|
+
if (current === '@@') {
|
|
19
|
+
diffIndex += 1
|
|
20
|
+
} else if (current.startsWith('@@ ')) {
|
|
21
|
+
anchor = current.slice(3)
|
|
22
|
+
diffIndex += 1
|
|
23
|
+
} else if (diffIndex !== 0) {
|
|
24
|
+
throw new Error(`Invalid patch line: ${current}`)
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (anchor.trim()) cursor = advanceToAnchor(inputLines, cursor, anchor)
|
|
28
|
+
|
|
29
|
+
const section = readSection(lines, diffIndex)
|
|
30
|
+
const match = findContext(inputLines, section.context, cursor, section.eof)
|
|
31
|
+
if (match === -1) {
|
|
32
|
+
throw new Error(
|
|
33
|
+
`${section.eof ? 'Invalid EOF context' : 'Invalid context'}:\n${section.context.join('\n')}`
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
for (const chunk of section.chunks) {
|
|
38
|
+
chunks.push({ ...chunk, originalIndex: chunk.originalIndex + match })
|
|
39
|
+
}
|
|
40
|
+
cursor = match + section.context.length
|
|
41
|
+
diffIndex = section.endIndex
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return applyChunks(inputLines, chunks)
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
type Chunk = {
|
|
48
|
+
originalIndex: number
|
|
49
|
+
deleted: string[]
|
|
50
|
+
inserted: string[]
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
function normalizeLines(diff: string): string[] {
|
|
54
|
+
const lines = diff.split(/\r?\n/).map((line) => line.replace(/\r$/, ''))
|
|
55
|
+
if (lines.at(-1) === '') lines.pop()
|
|
56
|
+
return lines
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function isTerminator(line: string | undefined): boolean {
|
|
60
|
+
return (
|
|
61
|
+
line === undefined ||
|
|
62
|
+
line === '*** End Patch' ||
|
|
63
|
+
line === '*** End of File' ||
|
|
64
|
+
line.startsWith('*** Update File:') ||
|
|
65
|
+
line.startsWith('*** Delete File:') ||
|
|
66
|
+
line.startsWith('*** Add File:')
|
|
67
|
+
)
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function advanceToAnchor(input: string[], cursor: number, anchor: string): number {
|
|
71
|
+
for (let index = cursor; index < input.length; index += 1) {
|
|
72
|
+
if (input[index] === anchor) return index + 1
|
|
73
|
+
}
|
|
74
|
+
for (let index = cursor; index < input.length; index += 1) {
|
|
75
|
+
if (input[index].trim() === anchor.trim()) return index + 1
|
|
76
|
+
}
|
|
77
|
+
return cursor
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
function readSection(lines: string[], startIndex: number) {
|
|
81
|
+
const context: string[] = []
|
|
82
|
+
const chunks: Chunk[] = []
|
|
83
|
+
let deleted: string[] = []
|
|
84
|
+
let inserted: string[] = []
|
|
85
|
+
let mode: 'keep' | 'delete' | 'add' = 'keep'
|
|
86
|
+
let index = startIndex
|
|
87
|
+
|
|
88
|
+
const flush = () => {
|
|
89
|
+
if (!deleted.length && !inserted.length) return
|
|
90
|
+
chunks.push({
|
|
91
|
+
originalIndex: context.length - deleted.length,
|
|
92
|
+
deleted,
|
|
93
|
+
inserted
|
|
94
|
+
})
|
|
95
|
+
deleted = []
|
|
96
|
+
inserted = []
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
while (index < lines.length) {
|
|
100
|
+
const raw = lines[index]
|
|
101
|
+
if (raw.startsWith('@@') || isTerminator(raw) || raw === '***') break
|
|
102
|
+
if (raw.startsWith('***')) throw new Error(`Invalid patch line: ${raw}`)
|
|
103
|
+
index += 1
|
|
104
|
+
|
|
105
|
+
const normalized = raw === '' ? ' ' : raw
|
|
106
|
+
const prefix = normalized[0]
|
|
107
|
+
const nextMode =
|
|
108
|
+
prefix === '+' ? 'add' : prefix === '-' ? 'delete' : prefix === ' ' ? 'keep' : null
|
|
109
|
+
if (!nextMode) throw new Error(`Invalid patch line: ${normalized}`)
|
|
110
|
+
|
|
111
|
+
if (nextMode === 'keep' && mode !== 'keep') flush()
|
|
112
|
+
mode = nextMode
|
|
113
|
+
const line = normalized.slice(1)
|
|
114
|
+
if (mode === 'delete') {
|
|
115
|
+
deleted.push(line)
|
|
116
|
+
context.push(line)
|
|
117
|
+
} else if (mode === 'add') {
|
|
118
|
+
inserted.push(line)
|
|
119
|
+
} else {
|
|
120
|
+
context.push(line)
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
flush()
|
|
125
|
+
if (index === startIndex) throw new Error('Apply Patch returned an empty patch section')
|
|
126
|
+
const eof = lines[index] === '*** End of File'
|
|
127
|
+
return { context, chunks, endIndex: eof ? index + 1 : index, eof }
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
function findContext(input: string[], context: string[], start: number, eof: boolean): number {
|
|
131
|
+
if (!context.length) return start
|
|
132
|
+
if (eof) {
|
|
133
|
+
const atEnd = findContextCore(input, context, Math.max(0, input.length - context.length))
|
|
134
|
+
if (atEnd !== -1) return atEnd
|
|
135
|
+
}
|
|
136
|
+
return findContextCore(input, context, start)
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function findContextCore(input: string[], context: string[], start: number): number {
|
|
140
|
+
const transforms = [
|
|
141
|
+
(value: string) => value,
|
|
142
|
+
(value: string) => value.trimEnd(),
|
|
143
|
+
(value: string) => value.trim()
|
|
144
|
+
]
|
|
145
|
+
for (const transform of transforms) {
|
|
146
|
+
for (let index = start; index + context.length <= input.length; index += 1) {
|
|
147
|
+
if (context.every((line, offset) => transform(input[index + offset]) === transform(line))) {
|
|
148
|
+
return index
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return -1
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function applyChunks(input: string[], chunks: Chunk[]): string {
|
|
156
|
+
const output: string[] = []
|
|
157
|
+
let cursor = 0
|
|
158
|
+
for (const chunk of chunks) {
|
|
159
|
+
if (chunk.originalIndex > input.length || cursor > chunk.originalIndex) {
|
|
160
|
+
throw new Error('Apply Patch returned overlapping or out-of-range changes')
|
|
161
|
+
}
|
|
162
|
+
output.push(...input.slice(cursor, chunk.originalIndex), ...chunk.inserted)
|
|
163
|
+
cursor = chunk.originalIndex + chunk.deleted.length
|
|
164
|
+
}
|
|
165
|
+
output.push(...input.slice(cursor))
|
|
166
|
+
return output.join('\n')
|
|
167
|
+
}
|
|
@@ -20,7 +20,7 @@ import type { Context, ContextPersistence, StatePersistence } from './fs-persist
|
|
|
20
20
|
import { createLogger } from './logger'
|
|
21
21
|
import type { MessageDispatcher } from './message-dispatcher'
|
|
22
22
|
import { createScheduler, type BosunScheduler } from './scheduler'
|
|
23
|
-
import { createStepRegistry } from './step-registry'
|
|
23
|
+
import { createStepRegistry, type PromptOverrides } from './step-registry'
|
|
24
24
|
import { getAgentFactories } from '../lib/get-agent-factories'
|
|
25
25
|
import { getImportNonce } from '../lib/import-nonce'
|
|
26
26
|
import { getRootPath } from '../lib/get-root-path'
|
|
@@ -152,11 +152,18 @@ export function createAgents(
|
|
|
152
152
|
delete agentStates[cacheKey]
|
|
153
153
|
await api.select(agentId, currentStateId, currentRegion)
|
|
154
154
|
},
|
|
155
|
-
select: async (
|
|
155
|
+
select: async (
|
|
156
|
+
agentId: string,
|
|
157
|
+
stateId?: string | null,
|
|
158
|
+
region?: string | null,
|
|
159
|
+
promptOverrides: PromptOverrides = {}
|
|
160
|
+
) => {
|
|
156
161
|
console.log('createAgents, select; agents: ', Object.keys(agents), 'selected: ', agentId)
|
|
157
162
|
currentAgent = agentId
|
|
158
163
|
currentRegion = region || null
|
|
159
164
|
const agent = await getCurrentAgent()
|
|
165
|
+
// Agent metadata must always reflect the real file, not a pending UI proposal.
|
|
166
|
+
agent.setPromptOverrides({})
|
|
160
167
|
|
|
161
168
|
await dispatcher.sendAgentSelected({
|
|
162
169
|
id: agentId,
|
|
@@ -173,6 +180,7 @@ export function createAgents(
|
|
|
173
180
|
}))
|
|
174
181
|
)
|
|
175
182
|
})
|
|
183
|
+
agent.setPromptOverrides(promptOverrides)
|
|
176
184
|
if (agent.ctx.get()) {
|
|
177
185
|
const context = agent.ctx.get()
|
|
178
186
|
const promptContext = agent.ctx.getPromptContextMapper()(context)
|
|
@@ -207,6 +215,9 @@ export function createAgents(
|
|
|
207
215
|
updatePrompt: async (prompt: string) => {
|
|
208
216
|
await (await getCurrentAgent()).updatePrompt(prompt)
|
|
209
217
|
},
|
|
218
|
+
updatePromptOverrides: async (promptOverrides: PromptOverrides) => {
|
|
219
|
+
;(await getCurrentAgent()).setPromptOverrides(promptOverrides)
|
|
220
|
+
},
|
|
210
221
|
triggerAction: async (action: string) => {
|
|
211
222
|
await (await getCurrentAgent()).triggerAction(action)
|
|
212
223
|
},
|
|
@@ -432,6 +443,9 @@ export async function loadAgent(props: LoadProps) {
|
|
|
432
443
|
stepRegistry,
|
|
433
444
|
basePath: props.basePath,
|
|
434
445
|
ctx,
|
|
446
|
+
setPromptOverrides: (promptOverrides: PromptOverrides) => {
|
|
447
|
+
stepRegistry.setPromptOverrides(promptOverrides)
|
|
448
|
+
},
|
|
435
449
|
selectState: async (
|
|
436
450
|
stateHistory: AgentState[],
|
|
437
451
|
stateId?: string | null,
|
|
@@ -16,7 +16,11 @@ export async function oldServer(ws: WebSocket) {
|
|
|
16
16
|
let messageQueue = Promise.resolve()
|
|
17
17
|
|
|
18
18
|
ws.on('message', (event) => {
|
|
19
|
-
const raw =
|
|
19
|
+
const raw = Array.isArray(event)
|
|
20
|
+
? Buffer.concat(event).toString()
|
|
21
|
+
: event instanceof ArrayBuffer
|
|
22
|
+
? Buffer.from(event).toString()
|
|
23
|
+
: event.toString()
|
|
20
24
|
|
|
21
25
|
messageQueue = messageQueue
|
|
22
26
|
.then(async () => {
|
|
@@ -35,7 +39,15 @@ export async function oldServer(ws: WebSocket) {
|
|
|
35
39
|
case 'app-events':
|
|
36
40
|
switch (msg.event.type) {
|
|
37
41
|
case 'select-agent':
|
|
38
|
-
await agents.select(
|
|
42
|
+
await agents.select(
|
|
43
|
+
msg.event.agent,
|
|
44
|
+
msg.event.state,
|
|
45
|
+
msg.event.region,
|
|
46
|
+
msg.event.promptOverrides
|
|
47
|
+
)
|
|
48
|
+
break
|
|
49
|
+
case 'prompt-overrides-updated':
|
|
50
|
+
await agents.updatePromptOverrides(msg.event.prompts)
|
|
39
51
|
break
|
|
40
52
|
case 'reload-project':
|
|
41
53
|
await agents.reload()
|
|
@@ -71,11 +83,13 @@ export async function oldServer(ws: WebSocket) {
|
|
|
71
83
|
console.error('Error handling message', error)
|
|
72
84
|
try {
|
|
73
85
|
ws.send(JSON.stringify({ channel: 'error', message: String(error) }))
|
|
74
|
-
} catch {
|
|
86
|
+
} catch (sendError) {
|
|
87
|
+
console.error('Error sending websocket error', sendError)
|
|
88
|
+
}
|
|
75
89
|
})
|
|
76
90
|
})
|
|
77
91
|
|
|
78
|
-
ws.on('close',
|
|
92
|
+
ws.on('close', () => {
|
|
79
93
|
// TODO destroy agents here
|
|
80
94
|
console.log('=== client disconnected ===')
|
|
81
95
|
})
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export type PromptEditProgressPhase = 'thinking' | 'drafting' | 'reviewing'
|
|
2
|
+
|
|
3
|
+
export type PromptEditProgress = {
|
|
4
|
+
id: string
|
|
5
|
+
phase: PromptEditProgressPhase
|
|
6
|
+
activity: number
|
|
7
|
+
summary: string
|
|
8
|
+
updatedAt: number
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
const progressById = new Map<string, PromptEditProgress>()
|
|
12
|
+
const PROGRESS_TTL_MS = 15 * 60 * 1000
|
|
13
|
+
|
|
14
|
+
export function updatePromptEditProgress(
|
|
15
|
+
id: string,
|
|
16
|
+
progress: Pick<PromptEditProgress, 'phase' | 'activity' | 'summary'>
|
|
17
|
+
) {
|
|
18
|
+
removeExpiredProgress()
|
|
19
|
+
progressById.set(id, { id, ...progress, updatedAt: Date.now() })
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function getPromptEditProgress(id: string): PromptEditProgress | null {
|
|
23
|
+
removeExpiredProgress()
|
|
24
|
+
const progress = progressById.get(id)
|
|
25
|
+
return progress ? { ...progress } : null
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function deletePromptEditProgress(id: string) {
|
|
29
|
+
progressById.delete(id)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function removeExpiredProgress(now = Date.now()) {
|
|
33
|
+
for (const [id, progress] of progressById) {
|
|
34
|
+
if (progress.updatedAt + PROGRESS_TTL_MS <= now) progressById.delete(id)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { randomUUID } from 'node:crypto'
|
|
2
|
+
|
|
3
|
+
export type PromptEditProposal = {
|
|
4
|
+
id: string
|
|
5
|
+
agentId: string
|
|
6
|
+
step: string
|
|
7
|
+
originalPrompt: string
|
|
8
|
+
suggestedPrompt: string
|
|
9
|
+
createdAt: number
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const proposals = new Map<string, PromptEditProposal>()
|
|
13
|
+
const PROPOSAL_TTL_MS = 12 * 60 * 60 * 1000
|
|
14
|
+
|
|
15
|
+
export function createPromptEditProposal(
|
|
16
|
+
proposal: Omit<PromptEditProposal, 'id' | 'createdAt'>
|
|
17
|
+
): PromptEditProposal {
|
|
18
|
+
removeExpiredPromptEditProposals()
|
|
19
|
+
const stored = { ...proposal, id: randomUUID(), createdAt: Date.now() }
|
|
20
|
+
proposals.set(stored.id, stored)
|
|
21
|
+
return { ...stored }
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function getPromptEditProposal(id: string): PromptEditProposal | null {
|
|
25
|
+
removeExpiredPromptEditProposals()
|
|
26
|
+
const proposal = proposals.get(id)
|
|
27
|
+
return proposal ? { ...proposal } : null
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function deletePromptEditProposal(id: string): boolean {
|
|
31
|
+
return proposals.delete(id)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function removeExpiredPromptEditProposals(now = Date.now()) {
|
|
35
|
+
for (const [id, proposal] of proposals) {
|
|
36
|
+
if (proposal.createdAt + PROPOSAL_TTL_MS <= now) proposals.delete(id)
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -14,6 +14,13 @@ import type { AgentState } from './agents'
|
|
|
14
14
|
import { fsContextPersistence, fsStatePersistence } from './fs-persistence'
|
|
15
15
|
import { validateAndReplaceSchemaFile } from './schema-file'
|
|
16
16
|
import { generateReplyVariants, replaceSavedState } from './variants'
|
|
17
|
+
import {
|
|
18
|
+
createPromptEditProposal,
|
|
19
|
+
deletePromptEditProposal,
|
|
20
|
+
getPromptEditProposal
|
|
21
|
+
} from './prompt-edit-proposals'
|
|
22
|
+
import { suggestPromptEdit } from './suggest-prompt-edit'
|
|
23
|
+
import { getPromptEditProgress, updatePromptEditProgress } from './prompt-edit-progress'
|
|
17
24
|
|
|
18
25
|
const AgentIdSchema = z.string().trim().min(1).max(512)
|
|
19
26
|
const promptMappersCache = new Map<string, (ctx: object) => object>()
|
|
@@ -87,6 +94,50 @@ export function createRolePlayRouter(t: TRPCRootObject<TrpcContext, any, any>) {
|
|
|
87
94
|
await persistPromptUpdate(input.agentId, input.step, input.prompt)
|
|
88
95
|
return { ok: true }
|
|
89
96
|
}),
|
|
97
|
+
suggestPromptEdit: t.procedure
|
|
98
|
+
.input(
|
|
99
|
+
z.object({
|
|
100
|
+
agentId: AgentIdSchema,
|
|
101
|
+
step: z.string().trim().min(1).max(512),
|
|
102
|
+
request: z.string().trim().min(1).max(100_000),
|
|
103
|
+
progressId: z.string().uuid()
|
|
104
|
+
})
|
|
105
|
+
)
|
|
106
|
+
.mutation(async ({ input }) => {
|
|
107
|
+
const originalPrompt = await readEditablePrompt(input.agentId, input.step)
|
|
108
|
+
const suggestedPrompt = await suggestPromptEdit({
|
|
109
|
+
request: input.request,
|
|
110
|
+
originalPrompt,
|
|
111
|
+
onProgress: (progress) => updatePromptEditProgress(input.progressId, progress)
|
|
112
|
+
})
|
|
113
|
+
if (suggestedPrompt === originalPrompt) return { status: 'unchanged' as const }
|
|
114
|
+
|
|
115
|
+
const proposal = createPromptEditProposal({
|
|
116
|
+
agentId: input.agentId,
|
|
117
|
+
step: input.step,
|
|
118
|
+
originalPrompt,
|
|
119
|
+
suggestedPrompt
|
|
120
|
+
})
|
|
121
|
+
return { status: 'changed' as const, proposal }
|
|
122
|
+
}),
|
|
123
|
+
promptEditProgress: t.procedure
|
|
124
|
+
.input(z.object({ id: z.string().uuid() }))
|
|
125
|
+
.query(({ input }) => getPromptEditProgress(input.id)),
|
|
126
|
+
promptEditProposal: t.procedure
|
|
127
|
+
.input(z.object({ id: z.string().uuid() }))
|
|
128
|
+
.query(({ input }) => getPromptEditProposal(input.id)),
|
|
129
|
+
acceptPromptEdit: t.procedure
|
|
130
|
+
.input(z.object({ id: z.string().uuid() }))
|
|
131
|
+
.mutation(async ({ input }) => {
|
|
132
|
+
const proposal = getPromptEditProposal(input.id)
|
|
133
|
+
if (!proposal) throw new Error('This prompt suggestion is no longer available')
|
|
134
|
+
await persistPromptUpdate(proposal.agentId, proposal.step, proposal.suggestedPrompt)
|
|
135
|
+
deletePromptEditProposal(proposal.id)
|
|
136
|
+
return { ok: true, prompt: proposal.suggestedPrompt }
|
|
137
|
+
}),
|
|
138
|
+
rejectPromptEdit: t.procedure
|
|
139
|
+
.input(z.object({ id: z.string().uuid() }))
|
|
140
|
+
.mutation(({ input }) => ({ ok: deletePromptEditProposal(input.id) })),
|
|
90
141
|
saveSchema: t.procedure
|
|
91
142
|
.input(
|
|
92
143
|
z.object({
|
|
@@ -155,24 +206,11 @@ export function createRolePlayRouter(t: TRPCRootObject<TrpcContext, any, any>) {
|
|
|
155
206
|
agentId: AgentIdSchema,
|
|
156
207
|
region: z.string().trim().min(1).max(128).nullable().optional(),
|
|
157
208
|
context: z.record(z.string(), z.unknown()).nullable().optional(),
|
|
158
|
-
|
|
159
|
-
.object({
|
|
160
|
-
step: z.string().trim().min(1).max(512),
|
|
161
|
-
prompt: z.string().max(1_000_000)
|
|
162
|
-
})
|
|
163
|
-
.nullable()
|
|
164
|
-
.optional(),
|
|
209
|
+
promptOverrides: z.record(z.string(), z.string().max(1_000_000)).optional(),
|
|
165
210
|
count: z.number().int().min(1).max(9).default(9)
|
|
166
211
|
})
|
|
167
212
|
)
|
|
168
213
|
.mutation(async ({ input }) => {
|
|
169
|
-
if (input.promptUpdate) {
|
|
170
|
-
await persistPromptUpdate(
|
|
171
|
-
input.agentId,
|
|
172
|
-
input.promptUpdate.step,
|
|
173
|
-
input.promptUpdate.prompt
|
|
174
|
-
)
|
|
175
|
-
}
|
|
176
214
|
const stateKey = resolveAgentStateKey(input.agentId, input.region ?? null)
|
|
177
215
|
const rawStates = await fsStatePersistence.load(stateKey)
|
|
178
216
|
const states = Array.isArray(rawStates) ? rawStates : []
|
|
@@ -185,7 +223,8 @@ export function createRolePlayRouter(t: TRPCRootObject<TrpcContext, any, any>) {
|
|
|
185
223
|
region: input.region ?? null,
|
|
186
224
|
states,
|
|
187
225
|
count: input.count,
|
|
188
|
-
context
|
|
226
|
+
context,
|
|
227
|
+
promptOverrides: input.promptOverrides ?? {}
|
|
189
228
|
})
|
|
190
229
|
|
|
191
230
|
return variants.map((variant, index) => ({
|
|
@@ -279,6 +318,15 @@ async function persistPromptUpdate(agentId: string, stepName: string, prompt: st
|
|
|
279
318
|
await fs.promises.writeFile(promptPath, prompt, 'utf-8')
|
|
280
319
|
}
|
|
281
320
|
|
|
321
|
+
async function readEditablePrompt(agentId: string, stepName: string): Promise<string> {
|
|
322
|
+
const { steps } = await loadAgentSteps(agentId)
|
|
323
|
+
const targetStep = steps.find((step) => step?.name === stepName)
|
|
324
|
+
if (!targetStep || targetStep?.prompt?.type !== 'file') {
|
|
325
|
+
throw new Error(`Step '${stepName}' does not have an editable file prompt`)
|
|
326
|
+
}
|
|
327
|
+
return targetStep.prompt.content()
|
|
328
|
+
}
|
|
329
|
+
|
|
282
330
|
async function persistSchemaUpdate(agentId: string, stepName: string, schema: string) {
|
|
283
331
|
const { basePath, steps } = await loadAgentSteps(agentId)
|
|
284
332
|
const targetStep = steps.find((step) => step?.name === stepName)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest'
|
|
2
|
+
|
|
3
|
+
import { createStepRegistry } from './step-registry'
|
|
4
|
+
|
|
5
|
+
describe('createStepRegistry prompt overrides', () => {
|
|
6
|
+
it('uses an in-memory override without changing the underlying prompt source', async () => {
|
|
7
|
+
const prompt = {
|
|
8
|
+
type: 'file' as const,
|
|
9
|
+
path: 'prompts/main.md',
|
|
10
|
+
content: async () => 'saved prompt'
|
|
11
|
+
}
|
|
12
|
+
const registry = createStepRegistry(console, { main: 'suggested prompt' })
|
|
13
|
+
registry.addStep({ name: 'main', type: 'text', prompt })
|
|
14
|
+
|
|
15
|
+
expect(await prompt.content()).toBe('suggested prompt')
|
|
16
|
+
|
|
17
|
+
registry.setPromptOverrides({})
|
|
18
|
+
expect(await prompt.content()).toBe('saved prompt')
|
|
19
|
+
})
|
|
20
|
+
})
|