@recombine-ai/bosun 0.16.2-cloud-1 → 0.16.2-cloud-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/_app/immutable/assets/0.CDmx-FLf.css +1 -0
- package/build/_app/immutable/assets/0.CDmx-FLf.css.br +0 -0
- package/build/_app/immutable/assets/0.CDmx-FLf.css.gz +0 -0
- package/build/_app/immutable/assets/{2.Dc5_ru9X.css → 2.C-ckNQUz.css} +1 -1
- package/build/_app/immutable/assets/2.C-ckNQUz.css.br +0 -0
- package/build/_app/immutable/assets/2.C-ckNQUz.css.gz +0 -0
- package/build/_app/immutable/chunks/12bfCwgn.js +2 -0
- package/build/_app/immutable/chunks/12bfCwgn.js.br +0 -0
- package/build/_app/immutable/chunks/12bfCwgn.js.gz +0 -0
- package/build/_app/immutable/chunks/{C-Qcqb3K.js → 6OCsQ6r7.js} +2 -2
- package/build/_app/immutable/chunks/6OCsQ6r7.js.br +0 -0
- package/build/_app/immutable/chunks/6OCsQ6r7.js.gz +0 -0
- package/build/_app/immutable/chunks/AvXp07rr.js +1 -0
- package/build/_app/immutable/chunks/AvXp07rr.js.br +2 -0
- package/build/_app/immutable/chunks/AvXp07rr.js.gz +0 -0
- package/build/_app/immutable/chunks/{OYhYuonT.js → B434V0h8.js} +1 -1
- package/build/_app/immutable/chunks/B434V0h8.js.br +0 -0
- package/build/_app/immutable/chunks/B434V0h8.js.gz +0 -0
- package/build/_app/immutable/chunks/BJqZY8o2.js +1 -0
- package/build/_app/immutable/chunks/BJqZY8o2.js.br +0 -0
- package/build/_app/immutable/chunks/BJqZY8o2.js.gz +0 -0
- package/build/_app/immutable/chunks/{DHvIizf-.js → BKQbRSey.js} +1 -1
- package/build/_app/immutable/chunks/BKQbRSey.js.br +0 -0
- package/build/_app/immutable/chunks/BKQbRSey.js.gz +0 -0
- package/build/_app/immutable/chunks/BOHUKGg_.js +1 -0
- package/build/_app/immutable/chunks/BOHUKGg_.js.br +0 -0
- package/build/_app/immutable/chunks/BOHUKGg_.js.gz +0 -0
- package/build/_app/immutable/chunks/BP0Xadq7.js +5 -0
- package/build/_app/immutable/chunks/BP0Xadq7.js.br +0 -0
- package/build/_app/immutable/chunks/BP0Xadq7.js.gz +0 -0
- package/build/_app/immutable/chunks/BT98u4gR.js +35 -0
- package/build/_app/immutable/chunks/BT98u4gR.js.br +0 -0
- package/build/_app/immutable/chunks/BT98u4gR.js.gz +0 -0
- package/build/_app/immutable/chunks/{DjqcYvLr.js → Bc1oIj2c.js} +1 -1
- package/build/_app/immutable/chunks/Bc1oIj2c.js.br +0 -0
- package/build/_app/immutable/chunks/Bc1oIj2c.js.gz +0 -0
- package/build/_app/immutable/chunks/{CWB6mNDX.js → BiDy9-HP.js} +1 -1
- package/build/_app/immutable/chunks/BiDy9-HP.js.br +0 -0
- package/build/_app/immutable/chunks/BiDy9-HP.js.gz +0 -0
- package/build/_app/immutable/chunks/{BEa3nvFX.js → By9tvIIw.js} +1 -1
- package/build/_app/immutable/chunks/By9tvIIw.js.br +0 -0
- package/build/_app/immutable/chunks/By9tvIIw.js.gz +0 -0
- package/build/_app/immutable/chunks/Byx1piFp.js +3 -0
- package/build/_app/immutable/chunks/Byx1piFp.js.br +0 -0
- package/build/_app/immutable/chunks/Byx1piFp.js.gz +0 -0
- package/build/_app/immutable/chunks/{DSaIAZ57.js → C1TsmEOe.js} +1 -1
- package/build/_app/immutable/chunks/C1TsmEOe.js.br +0 -0
- package/build/_app/immutable/chunks/C1TsmEOe.js.gz +0 -0
- package/build/_app/immutable/chunks/CGV7fMmX.js +1 -0
- package/build/_app/immutable/chunks/CGV7fMmX.js.br +0 -0
- package/build/_app/immutable/chunks/CGV7fMmX.js.gz +0 -0
- package/build/_app/immutable/chunks/CL717zGu.js +2 -0
- package/build/_app/immutable/chunks/CL717zGu.js.br +0 -0
- package/build/_app/immutable/chunks/CL717zGu.js.gz +0 -0
- package/build/_app/immutable/chunks/{DrOC9WNt.js → CPCsWwEy.js} +1 -1
- package/build/_app/immutable/chunks/CPCsWwEy.js.br +0 -0
- package/build/_app/immutable/chunks/{DrOC9WNt.js.gz → CPCsWwEy.js.gz} +0 -0
- package/build/_app/immutable/chunks/{Ds1yKsjr.js → CUZn05nQ.js} +2 -2
- package/build/_app/immutable/chunks/CUZn05nQ.js.br +0 -0
- package/build/_app/immutable/chunks/{Ds1yKsjr.js.gz → CUZn05nQ.js.gz} +0 -0
- package/build/_app/immutable/chunks/{ClP8OL3G.js → CZMMlaMl.js} +1 -1
- package/build/_app/immutable/chunks/CZMMlaMl.js.br +0 -0
- package/build/_app/immutable/chunks/CZMMlaMl.js.gz +0 -0
- package/build/_app/immutable/chunks/{DLL_0B-9.js → C_yvzB4Z.js} +1 -1
- package/build/_app/immutable/chunks/C_yvzB4Z.js.br +0 -0
- package/build/_app/immutable/chunks/{DLL_0B-9.js.gz → C_yvzB4Z.js.gz} +0 -0
- package/build/_app/immutable/chunks/{DC_-4bAG.js → CdnbUlBq.js} +1 -1
- package/build/_app/immutable/chunks/CdnbUlBq.js.br +0 -0
- package/build/_app/immutable/chunks/CdnbUlBq.js.gz +0 -0
- package/build/_app/immutable/chunks/Cf3l6QEG.js +2 -0
- package/build/_app/immutable/chunks/Cf3l6QEG.js.br +0 -0
- package/build/_app/immutable/chunks/Cf3l6QEG.js.gz +0 -0
- package/build/_app/immutable/chunks/CfzHeBbL.js +1 -0
- package/build/_app/immutable/chunks/CfzHeBbL.js.br +1 -0
- package/build/_app/immutable/chunks/CfzHeBbL.js.gz +0 -0
- package/build/_app/immutable/chunks/{BzyUIe1_.js → D1-opoqB.js} +1 -1
- package/build/_app/immutable/chunks/D1-opoqB.js.br +0 -0
- package/build/_app/immutable/chunks/D1-opoqB.js.gz +0 -0
- package/build/_app/immutable/chunks/D3fLfD-Y.js +1 -0
- package/build/_app/immutable/chunks/D3fLfD-Y.js.br +0 -0
- package/build/_app/immutable/chunks/D3fLfD-Y.js.gz +0 -0
- package/build/_app/immutable/chunks/DDZ8GqHh.js +1 -0
- package/build/_app/immutable/chunks/DDZ8GqHh.js.br +0 -0
- package/build/_app/immutable/chunks/DDZ8GqHh.js.gz +0 -0
- package/build/_app/immutable/chunks/{CH4VrfW2.js → DD_fL9ig.js} +1 -1
- package/build/_app/immutable/chunks/DD_fL9ig.js.br +0 -0
- package/build/_app/immutable/chunks/DD_fL9ig.js.gz +0 -0
- package/build/_app/immutable/chunks/{ByU1nS5x.js → DVZC5aEW.js} +1 -1
- package/build/_app/immutable/chunks/DVZC5aEW.js.br +0 -0
- package/build/_app/immutable/chunks/DVZC5aEW.js.gz +0 -0
- package/build/_app/immutable/chunks/D_MTg6YY.js +1 -0
- package/build/_app/immutable/chunks/D_MTg6YY.js.br +0 -0
- package/build/_app/immutable/chunks/D_MTg6YY.js.gz +0 -0
- package/build/_app/immutable/chunks/{C78K0g2i.js → DbZCwjKq.js} +1 -1
- package/build/_app/immutable/chunks/DbZCwjKq.js.br +0 -0
- package/build/_app/immutable/chunks/DbZCwjKq.js.gz +0 -0
- package/build/_app/immutable/chunks/Dc2hpeC4.js +1 -0
- package/build/_app/immutable/chunks/Dc2hpeC4.js.br +2 -0
- package/build/_app/immutable/chunks/Dc2hpeC4.js.gz +0 -0
- package/build/_app/immutable/chunks/{NZcW2kfJ.js → DjxKCxwY.js} +1 -1
- package/build/_app/immutable/chunks/DjxKCxwY.js.br +0 -0
- package/build/_app/immutable/chunks/DjxKCxwY.js.gz +0 -0
- package/build/_app/immutable/chunks/{DeiSJRh0.js → DkJi5BM4.js} +1 -1
- package/build/_app/immutable/chunks/DkJi5BM4.js.br +0 -0
- package/build/_app/immutable/chunks/DkJi5BM4.js.gz +0 -0
- package/build/_app/immutable/chunks/Dne1wF_T.js +1 -0
- package/build/_app/immutable/chunks/Dne1wF_T.js.br +0 -0
- package/build/_app/immutable/chunks/Dne1wF_T.js.gz +0 -0
- package/build/_app/immutable/chunks/{BlwlkbCs.js → Dt1k81ic.js} +1 -1
- package/build/_app/immutable/chunks/Dt1k81ic.js.br +0 -0
- package/build/_app/immutable/chunks/Dt1k81ic.js.gz +0 -0
- package/build/_app/immutable/chunks/{CKf4QksN.js → DugeGFnl.js} +1 -1
- package/build/_app/immutable/chunks/DugeGFnl.js.br +0 -0
- package/build/_app/immutable/chunks/DugeGFnl.js.gz +0 -0
- package/build/_app/immutable/chunks/{D5UNd3Zp.js → MIEISUXS.js} +1 -1
- package/build/_app/immutable/chunks/MIEISUXS.js.br +0 -0
- package/build/_app/immutable/chunks/MIEISUXS.js.gz +0 -0
- package/build/_app/immutable/chunks/{lyi4TUVm.js → Vn-6xHGu.js} +1 -1
- package/build/_app/immutable/chunks/Vn-6xHGu.js.br +0 -0
- package/build/_app/immutable/chunks/Vn-6xHGu.js.gz +0 -0
- package/build/_app/immutable/chunks/{jk4Hz_9M.js → krcqaNpB.js} +1 -1
- package/build/_app/immutable/chunks/krcqaNpB.js.br +0 -0
- package/build/_app/immutable/chunks/krcqaNpB.js.gz +0 -0
- package/build/_app/immutable/chunks/oarl--hZ.js +1 -0
- package/build/_app/immutable/chunks/oarl--hZ.js.br +0 -0
- package/build/_app/immutable/chunks/oarl--hZ.js.gz +0 -0
- package/build/_app/immutable/chunks/{CfbKmr1m.js → qrpS1hNb.js} +1 -1
- package/build/_app/immutable/chunks/qrpS1hNb.js.br +0 -0
- package/build/_app/immutable/chunks/qrpS1hNb.js.gz +0 -0
- package/build/_app/immutable/entry/app.D_IBy7uS.js +2 -0
- package/build/_app/immutable/entry/app.D_IBy7uS.js.br +0 -0
- package/build/_app/immutable/entry/app.D_IBy7uS.js.gz +0 -0
- package/build/_app/immutable/entry/start.DbNkBLf5.js +1 -0
- package/build/_app/immutable/entry/start.DbNkBLf5.js.br +0 -0
- package/build/_app/immutable/entry/start.DbNkBLf5.js.gz +0 -0
- package/build/_app/immutable/nodes/0.CS5BBLx9.js +3 -0
- package/build/_app/immutable/nodes/0.CS5BBLx9.js.br +0 -0
- package/build/_app/immutable/nodes/0.CS5BBLx9.js.gz +0 -0
- package/build/_app/immutable/nodes/1.Bx_DOFs1.js +1 -0
- package/build/_app/immutable/nodes/1.Bx_DOFs1.js.br +1 -0
- package/build/_app/immutable/nodes/1.Bx_DOFs1.js.gz +0 -0
- package/build/_app/immutable/nodes/14.DSu8i_qz.js +1 -0
- package/build/_app/immutable/nodes/14.DSu8i_qz.js.br +0 -0
- package/build/_app/immutable/nodes/14.DSu8i_qz.js.gz +0 -0
- package/build/_app/immutable/nodes/16.Cev9Grgc.js +3 -0
- package/build/_app/immutable/nodes/16.Cev9Grgc.js.br +0 -0
- package/build/_app/immutable/nodes/16.Cev9Grgc.js.gz +0 -0
- package/build/_app/immutable/nodes/17.C869oOf4.js +10 -0
- package/build/_app/immutable/nodes/17.C869oOf4.js.br +0 -0
- package/build/_app/immutable/nodes/17.C869oOf4.js.gz +0 -0
- package/build/_app/immutable/nodes/2.DdU1kSNu.js +35 -0
- package/build/_app/immutable/nodes/2.DdU1kSNu.js.br +0 -0
- package/build/_app/immutable/nodes/2.DdU1kSNu.js.gz +0 -0
- package/build/_app/immutable/nodes/3.C5QPqWTE.js +1 -0
- package/build/_app/immutable/nodes/3.C5QPqWTE.js.br +0 -0
- package/build/_app/immutable/nodes/3.C5QPqWTE.js.gz +0 -0
- package/build/_app/immutable/nodes/4.CNS3NZ4Z.js +1 -0
- package/build/_app/immutable/nodes/4.CNS3NZ4Z.js.br +0 -0
- package/build/_app/immutable/nodes/4.CNS3NZ4Z.js.gz +0 -0
- package/build/_app/immutable/nodes/5.B1H9pyMk.js +1 -0
- package/build/_app/immutable/nodes/5.B1H9pyMk.js.br +0 -0
- package/build/_app/immutable/nodes/5.B1H9pyMk.js.gz +0 -0
- package/build/_app/immutable/nodes/6.h6Y1Z_zh.js +1 -0
- package/build/_app/immutable/nodes/6.h6Y1Z_zh.js.br +0 -0
- package/build/_app/immutable/nodes/6.h6Y1Z_zh.js.gz +0 -0
- package/build/_app/immutable/nodes/8.BCatMgwB.js +2 -0
- package/build/_app/immutable/nodes/8.BCatMgwB.js.br +0 -0
- package/build/_app/immutable/nodes/8.BCatMgwB.js.gz +0 -0
- package/build/_app/immutable/nodes/9.BUnel48-.js +24 -0
- package/build/_app/immutable/nodes/9.BUnel48-.js.br +0 -0
- package/build/_app/immutable/nodes/9.BUnel48-.js.gz +0 -0
- package/build/_app/immutable/workers/{css.worker-DflDYzxC.js → css.worker-D61Wlo1y.js} +1 -1
- package/build/_app/immutable/workers/css.worker-D61Wlo1y.js.br +0 -0
- package/build/_app/immutable/workers/{css.worker-DflDYzxC.js.gz → css.worker-D61Wlo1y.js.gz} +0 -0
- package/build/_app/immutable/workers/{editor.worker-DbG82rLA.js → editor.worker-BaAK1IVA.js} +1 -1
- package/build/_app/immutable/workers/editor.worker-BaAK1IVA.js.br +0 -0
- package/build/_app/immutable/workers/{editor.worker-DbG82rLA.js.gz → editor.worker-BaAK1IVA.js.gz} +0 -0
- package/build/_app/immutable/workers/{html.worker-Bn6S4v1s.js → html.worker-i4ABlmR0.js} +1 -1
- package/build/_app/immutable/workers/html.worker-i4ABlmR0.js.br +0 -0
- package/build/_app/immutable/workers/{html.worker-Bn6S4v1s.js.gz → html.worker-i4ABlmR0.js.gz} +0 -0
- package/build/_app/immutable/workers/{json.worker-CfS7sFxM.js → json.worker-C-kBQgxp.js} +1 -1
- package/build/_app/immutable/workers/json.worker-C-kBQgxp.js.br +0 -0
- package/build/_app/immutable/workers/{json.worker-CfS7sFxM.js.gz → json.worker-C-kBQgxp.js.gz} +0 -0
- package/build/_app/immutable/workers/{ts.worker-Bqwj6xoy.js → ts.worker-KJ4wGYue.js} +2 -2
- package/build/_app/immutable/workers/ts.worker-KJ4wGYue.js.br +0 -0
- package/build/_app/immutable/workers/{ts.worker-Bqwj6xoy.js.gz → ts.worker-KJ4wGYue.js.gz} +0 -0
- package/build/_app/version.json +1 -1
- package/build/_app/version.json.br +0 -0
- package/build/_app/version.json.gz +0 -0
- package/build/index.html +13 -13
- package/build/index.html.br +0 -0
- package/build/index.html.gz +0 -0
- package/dist/index.js +616 -106
- package/dist/index.js.map +4 -4
- package/dist/types/backend/roleplay/prompt-edit-proposals.d.ts +13 -1
- package/dist/types/backend/roleplay/prompt-file.d.ts +8 -0
- package/dist/types/backend/roleplay/router.d.ts +29 -0
- package/dist/types/backend/roleplay/suggest-file-edit.d.ts +13 -0
- package/dist/types/backend/roleplay/suggest-test-fix.d.ts +29 -0
- package/dist/types/backend/server.d.ts +116 -0
- package/dist/types/backend/telescope/router.d.ts +23 -0
- package/dist/types/backend/tests/academy.d.ts +9 -1
- package/dist/types/backend/tests/data.d.ts +13 -1
- package/dist/types/backend/tests/router.d.ts +64 -0
- package/dist/types/backend/tests/suggest-test-history-edit.d.ts +21 -0
- package/dist/types/backend/tests/test-edit-source.d.ts +4 -0
- package/dist/types/backend/tests/test-history-edit-proposals.d.ts +24 -0
- package/dist/types/lib/api-telescope/types.d.ts +38 -0
- package/dist/types/lib/edit/test-ai-edit.d.ts +12 -0
- package/dist/types/lib/tests/assertion-types.d.ts +6 -0
- package/package.json +1 -1
- package/build/_app/immutable/assets/0.CyF-TaEi.css +0 -1
- package/build/_app/immutable/assets/0.CyF-TaEi.css.br +0 -0
- package/build/_app/immutable/assets/0.CyF-TaEi.css.gz +0 -0
- package/build/_app/immutable/assets/2.Dc5_ru9X.css.br +0 -0
- package/build/_app/immutable/assets/2.Dc5_ru9X.css.gz +0 -0
- package/build/_app/immutable/chunks/0Yl3erOE.js +0 -2
- package/build/_app/immutable/chunks/0Yl3erOE.js.br +0 -0
- package/build/_app/immutable/chunks/0Yl3erOE.js.gz +0 -0
- package/build/_app/immutable/chunks/797NXciN.js +0 -1
- package/build/_app/immutable/chunks/797NXciN.js.br +0 -0
- package/build/_app/immutable/chunks/797NXciN.js.gz +0 -0
- package/build/_app/immutable/chunks/9JriNUvn.js +0 -1
- package/build/_app/immutable/chunks/9JriNUvn.js.br +0 -0
- package/build/_app/immutable/chunks/9JriNUvn.js.gz +0 -0
- package/build/_app/immutable/chunks/BEa3nvFX.js.br +0 -0
- package/build/_app/immutable/chunks/BEa3nvFX.js.gz +0 -0
- package/build/_app/immutable/chunks/BOL6qRLe.js +0 -3
- package/build/_app/immutable/chunks/BOL6qRLe.js.br +0 -0
- package/build/_app/immutable/chunks/BOL6qRLe.js.gz +0 -0
- package/build/_app/immutable/chunks/BYkIDsVz.js +0 -1
- package/build/_app/immutable/chunks/BYkIDsVz.js.br +0 -0
- package/build/_app/immutable/chunks/BYkIDsVz.js.gz +0 -0
- package/build/_app/immutable/chunks/BlwlkbCs.js.br +0 -0
- package/build/_app/immutable/chunks/BlwlkbCs.js.gz +0 -0
- package/build/_app/immutable/chunks/ByU1nS5x.js.br +0 -0
- package/build/_app/immutable/chunks/ByU1nS5x.js.gz +0 -0
- package/build/_app/immutable/chunks/BzyUIe1_.js.br +0 -0
- package/build/_app/immutable/chunks/BzyUIe1_.js.gz +0 -0
- package/build/_app/immutable/chunks/C-Qcqb3K.js.br +0 -0
- package/build/_app/immutable/chunks/C-Qcqb3K.js.gz +0 -0
- package/build/_app/immutable/chunks/C-qso1Pb.js +0 -2
- package/build/_app/immutable/chunks/C-qso1Pb.js.br +0 -0
- package/build/_app/immutable/chunks/C-qso1Pb.js.gz +0 -0
- package/build/_app/immutable/chunks/C78K0g2i.js.br +0 -0
- package/build/_app/immutable/chunks/C78K0g2i.js.gz +0 -0
- package/build/_app/immutable/chunks/C970FsJW.js +0 -1
- package/build/_app/immutable/chunks/C970FsJW.js.br +0 -0
- package/build/_app/immutable/chunks/C970FsJW.js.gz +0 -0
- package/build/_app/immutable/chunks/CBzPmXSf.js +0 -1
- package/build/_app/immutable/chunks/CBzPmXSf.js.br +0 -0
- package/build/_app/immutable/chunks/CBzPmXSf.js.gz +0 -0
- package/build/_app/immutable/chunks/CH4VrfW2.js.br +0 -0
- package/build/_app/immutable/chunks/CH4VrfW2.js.gz +0 -0
- package/build/_app/immutable/chunks/CKf4QksN.js.br +0 -0
- package/build/_app/immutable/chunks/CKf4QksN.js.gz +0 -0
- package/build/_app/immutable/chunks/CPnjcwfB.js +0 -1
- package/build/_app/immutable/chunks/CPnjcwfB.js.br +0 -0
- package/build/_app/immutable/chunks/CPnjcwfB.js.gz +0 -0
- package/build/_app/immutable/chunks/CWB6mNDX.js.br +0 -0
- package/build/_app/immutable/chunks/CWB6mNDX.js.gz +0 -0
- package/build/_app/immutable/chunks/CcZs-N7g.js +0 -6
- package/build/_app/immutable/chunks/CcZs-N7g.js.br +0 -0
- package/build/_app/immutable/chunks/CcZs-N7g.js.gz +0 -0
- package/build/_app/immutable/chunks/CfbKmr1m.js.br +0 -0
- package/build/_app/immutable/chunks/CfbKmr1m.js.gz +0 -0
- package/build/_app/immutable/chunks/ClP8OL3G.js.br +0 -0
- package/build/_app/immutable/chunks/ClP8OL3G.js.gz +0 -0
- package/build/_app/immutable/chunks/D5UNd3Zp.js.br +0 -0
- package/build/_app/immutable/chunks/D5UNd3Zp.js.gz +0 -0
- package/build/_app/immutable/chunks/D6ibSY3A.js +0 -1
- package/build/_app/immutable/chunks/D6ibSY3A.js.br +0 -1
- package/build/_app/immutable/chunks/D6ibSY3A.js.gz +0 -0
- package/build/_app/immutable/chunks/DC_-4bAG.js.br +0 -1
- package/build/_app/immutable/chunks/DC_-4bAG.js.gz +0 -0
- package/build/_app/immutable/chunks/DHvIizf-.js.br +0 -0
- package/build/_app/immutable/chunks/DHvIizf-.js.gz +0 -0
- package/build/_app/immutable/chunks/DLL_0B-9.js.br +0 -0
- package/build/_app/immutable/chunks/DSaIAZ57.js.br +0 -0
- package/build/_app/immutable/chunks/DSaIAZ57.js.gz +0 -0
- package/build/_app/immutable/chunks/DeiSJRh0.js.br +0 -0
- package/build/_app/immutable/chunks/DeiSJRh0.js.gz +0 -0
- package/build/_app/immutable/chunks/DjqcYvLr.js.br +0 -0
- package/build/_app/immutable/chunks/DjqcYvLr.js.gz +0 -0
- package/build/_app/immutable/chunks/DrOC9WNt.js.br +0 -0
- package/build/_app/immutable/chunks/Ds1yKsjr.js.br +0 -0
- package/build/_app/immutable/chunks/NZcW2kfJ.js.br +0 -0
- package/build/_app/immutable/chunks/NZcW2kfJ.js.gz +0 -0
- package/build/_app/immutable/chunks/OPRu0_Dd.js +0 -1
- package/build/_app/immutable/chunks/OPRu0_Dd.js.br +0 -2
- package/build/_app/immutable/chunks/OPRu0_Dd.js.gz +0 -0
- package/build/_app/immutable/chunks/OYhYuonT.js.br +0 -0
- package/build/_app/immutable/chunks/OYhYuonT.js.gz +0 -0
- package/build/_app/immutable/chunks/VR9lxEL5.js +0 -1
- package/build/_app/immutable/chunks/VR9lxEL5.js.br +0 -0
- package/build/_app/immutable/chunks/VR9lxEL5.js.gz +0 -0
- package/build/_app/immutable/chunks/_lbjRyAo.js +0 -35
- package/build/_app/immutable/chunks/_lbjRyAo.js.br +0 -0
- package/build/_app/immutable/chunks/_lbjRyAo.js.gz +0 -0
- package/build/_app/immutable/chunks/arxGXJ5w.js +0 -1
- package/build/_app/immutable/chunks/arxGXJ5w.js.br +0 -2
- package/build/_app/immutable/chunks/arxGXJ5w.js.gz +0 -0
- package/build/_app/immutable/chunks/cVn7fglh.js +0 -1
- package/build/_app/immutable/chunks/cVn7fglh.js.br +0 -1
- package/build/_app/immutable/chunks/cVn7fglh.js.gz +0 -0
- package/build/_app/immutable/chunks/jk4Hz_9M.js.br +0 -0
- package/build/_app/immutable/chunks/jk4Hz_9M.js.gz +0 -0
- package/build/_app/immutable/chunks/lyi4TUVm.js.br +0 -0
- package/build/_app/immutable/chunks/lyi4TUVm.js.gz +0 -0
- package/build/_app/immutable/entry/app.D01tWdhc.js +0 -2
- package/build/_app/immutable/entry/app.D01tWdhc.js.br +0 -0
- package/build/_app/immutable/entry/app.D01tWdhc.js.gz +0 -0
- package/build/_app/immutable/entry/start.Dkgn2MUA.js +0 -1
- package/build/_app/immutable/entry/start.Dkgn2MUA.js.br +0 -0
- package/build/_app/immutable/entry/start.Dkgn2MUA.js.gz +0 -0
- package/build/_app/immutable/nodes/0.t2rvsaQV.js +0 -3
- package/build/_app/immutable/nodes/0.t2rvsaQV.js.br +0 -0
- package/build/_app/immutable/nodes/0.t2rvsaQV.js.gz +0 -0
- package/build/_app/immutable/nodes/1.B8XtGxov.js +0 -1
- package/build/_app/immutable/nodes/1.B8XtGxov.js.br +0 -2
- package/build/_app/immutable/nodes/1.B8XtGxov.js.gz +0 -0
- package/build/_app/immutable/nodes/14.uj6UKEKM.js +0 -1
- package/build/_app/immutable/nodes/14.uj6UKEKM.js.br +0 -0
- package/build/_app/immutable/nodes/14.uj6UKEKM.js.gz +0 -0
- package/build/_app/immutable/nodes/16.C4g9w36Y.js +0 -3
- package/build/_app/immutable/nodes/16.C4g9w36Y.js.br +0 -0
- package/build/_app/immutable/nodes/16.C4g9w36Y.js.gz +0 -0
- package/build/_app/immutable/nodes/17.DQrHVfP-.js +0 -10
- package/build/_app/immutable/nodes/17.DQrHVfP-.js.br +0 -0
- package/build/_app/immutable/nodes/17.DQrHVfP-.js.gz +0 -0
- package/build/_app/immutable/nodes/2.DFs_rmXb.js +0 -35
- package/build/_app/immutable/nodes/2.DFs_rmXb.js.br +0 -0
- package/build/_app/immutable/nodes/2.DFs_rmXb.js.gz +0 -0
- package/build/_app/immutable/nodes/3.CmzGRE5R.js +0 -1
- package/build/_app/immutable/nodes/3.CmzGRE5R.js.br +0 -0
- package/build/_app/immutable/nodes/3.CmzGRE5R.js.gz +0 -0
- package/build/_app/immutable/nodes/4.D6TiMacd.js +0 -1
- package/build/_app/immutable/nodes/4.D6TiMacd.js.br +0 -0
- package/build/_app/immutable/nodes/4.D6TiMacd.js.gz +0 -0
- package/build/_app/immutable/nodes/5.C3QbUkKf.js +0 -1
- package/build/_app/immutable/nodes/5.C3QbUkKf.js.br +0 -0
- package/build/_app/immutable/nodes/5.C3QbUkKf.js.gz +0 -0
- package/build/_app/immutable/nodes/6.UWx6wdAE.js +0 -1
- package/build/_app/immutable/nodes/6.UWx6wdAE.js.br +0 -0
- package/build/_app/immutable/nodes/6.UWx6wdAE.js.gz +0 -0
- package/build/_app/immutable/nodes/8.bZ206KXo.js +0 -2
- package/build/_app/immutable/nodes/8.bZ206KXo.js.br +0 -0
- package/build/_app/immutable/nodes/8.bZ206KXo.js.gz +0 -0
- package/build/_app/immutable/nodes/9.CCSxSizl.js +0 -24
- package/build/_app/immutable/nodes/9.CCSxSizl.js.br +0 -0
- package/build/_app/immutable/nodes/9.CCSxSizl.js.gz +0 -0
- package/build/_app/immutable/workers/css.worker-DflDYzxC.js.br +0 -0
- package/build/_app/immutable/workers/editor.worker-DbG82rLA.js.br +0 -0
- package/build/_app/immutable/workers/html.worker-Bn6S4v1s.js.br +0 -0
- package/build/_app/immutable/workers/json.worker-CfS7sFxM.js.br +0 -0
- package/build/_app/immutable/workers/ts.worker-Bqwj6xoy.js.br +0 -0
- /package/build/_app/immutable/assets/{ReadOnlyMonacoDiff.Ba-kUPX7.css → Modal.Ba-kUPX7.css} +0 -0
- /package/build/_app/immutable/assets/{ReadOnlyMonacoDiff.Ba-kUPX7.css.br → Modal.Ba-kUPX7.css.br} +0 -0
- /package/build/_app/immutable/assets/{ReadOnlyMonacoDiff.Ba-kUPX7.css.gz → Modal.Ba-kUPX7.css.gz} +0 -0
|
@@ -6,6 +6,18 @@ export type PromptEditProposal = {
|
|
|
6
6
|
suggestedPrompt: string;
|
|
7
7
|
createdAt: number;
|
|
8
8
|
};
|
|
9
|
-
export
|
|
9
|
+
export interface PromptEditTestSourceGuard {
|
|
10
|
+
suiteKey: string;
|
|
11
|
+
testId: string;
|
|
12
|
+
allowedFingerprints: string[];
|
|
13
|
+
}
|
|
14
|
+
type StoredPromptEditProposal = PromptEditProposal & {
|
|
15
|
+
testSourceGuard?: PromptEditTestSourceGuard;
|
|
16
|
+
};
|
|
17
|
+
export declare function createPromptEditProposal(proposal: Omit<PromptEditProposal, 'id' | 'createdAt'> & {
|
|
18
|
+
testSourceGuard?: PromptEditTestSourceGuard;
|
|
19
|
+
}): PromptEditProposal;
|
|
10
20
|
export declare function getPromptEditProposal(id: string): PromptEditProposal | null;
|
|
21
|
+
export declare function getPromptEditProposalForAcceptance(id: string): StoredPromptEditProposal | null;
|
|
11
22
|
export declare function deletePromptEditProposal(id: string): boolean;
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BosunContext } from '../lib/bosun-context';
|
|
2
|
+
export interface LockedPromptFile {
|
|
3
|
+
path: string;
|
|
4
|
+
read: () => Promise<string>;
|
|
5
|
+
write: (prompt: string) => Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare function readEditablePrompt(ctx: BosunContext, agentId: string, stepName: string): Promise<string>;
|
|
8
|
+
export declare function withPromptFileLock<T>(ctx: BosunContext, agentId: string, stepName: string, operation: (file: LockedPromptFile) => Promise<T>): Promise<T>;
|
|
@@ -88,6 +88,35 @@ export declare function createRolePlayRouter(t: TRPCRootObject<TrpcContext, any,
|
|
|
88
88
|
};
|
|
89
89
|
meta: any;
|
|
90
90
|
}>;
|
|
91
|
+
suggestTestFix: import("@trpc/server").TRPCMutationProcedure<{
|
|
92
|
+
input: {
|
|
93
|
+
agentId: string;
|
|
94
|
+
testId: string;
|
|
95
|
+
step: string;
|
|
96
|
+
request: string;
|
|
97
|
+
prompt: string;
|
|
98
|
+
basePrompt: string;
|
|
99
|
+
currentIncorrectOutcome: string;
|
|
100
|
+
progressId: string;
|
|
101
|
+
};
|
|
102
|
+
output: {
|
|
103
|
+
history: {
|
|
104
|
+
status: "unchanged";
|
|
105
|
+
proposal?: undefined;
|
|
106
|
+
} | {
|
|
107
|
+
status: "changed";
|
|
108
|
+
proposal: import("../tests/test-history-edit-proposals").TestHistoryEditProposal;
|
|
109
|
+
};
|
|
110
|
+
prompt: {
|
|
111
|
+
status: "unchanged";
|
|
112
|
+
proposal?: undefined;
|
|
113
|
+
} | {
|
|
114
|
+
status: "changed";
|
|
115
|
+
proposal: import("./prompt-edit-proposals").PromptEditProposal;
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
meta: any;
|
|
119
|
+
}>;
|
|
91
120
|
promptEditProgress: import("@trpc/server").TRPCQueryProcedure<{
|
|
92
121
|
input: {
|
|
93
122
|
id: string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { BosunContext } from '../lib/bosun-context';
|
|
2
|
+
import type { PromptEditProgressPhase } from './prompt-edit-progress';
|
|
3
|
+
export declare function suggestFileEdit(ctx: BosunContext, input: {
|
|
4
|
+
request: string;
|
|
5
|
+
originalContent: string;
|
|
6
|
+
virtualPath: string;
|
|
7
|
+
instructions: string;
|
|
8
|
+
onProgress?: (progress: {
|
|
9
|
+
phase: PromptEditProgressPhase;
|
|
10
|
+
activity: number;
|
|
11
|
+
summary: string;
|
|
12
|
+
}) => void;
|
|
13
|
+
}): Promise<string>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { BosunContext } from '../lib/bosun-context';
|
|
2
|
+
import { suggestTestHistoryEdit } from '../tests/suggest-test-history-edit';
|
|
3
|
+
import type { PromptEditProgressPhase } from './prompt-edit-progress';
|
|
4
|
+
import { suggestPromptEdit } from './suggest-prompt-edit';
|
|
5
|
+
type Progress = {
|
|
6
|
+
phase: PromptEditProgressPhase;
|
|
7
|
+
activity: number;
|
|
8
|
+
summary: string;
|
|
9
|
+
};
|
|
10
|
+
interface SuggestTestFixInput {
|
|
11
|
+
request: string;
|
|
12
|
+
originalPrompt: string;
|
|
13
|
+
context: string;
|
|
14
|
+
conversation: string;
|
|
15
|
+
expectedOutput: string;
|
|
16
|
+
assertionLabel: string;
|
|
17
|
+
assertionValue: string;
|
|
18
|
+
currentIncorrectOutcome: string;
|
|
19
|
+
onProgress?: (progress: Progress) => void;
|
|
20
|
+
}
|
|
21
|
+
interface SuggestTestFixDependencies {
|
|
22
|
+
suggestHistory: typeof suggestTestHistoryEdit;
|
|
23
|
+
suggestPrompt: typeof suggestPromptEdit;
|
|
24
|
+
}
|
|
25
|
+
export declare function suggestTestFix(ctx: BosunContext, input: SuggestTestFixInput, dependencies?: SuggestTestFixDependencies): Promise<{
|
|
26
|
+
suggestedConversation: string;
|
|
27
|
+
suggestedPrompt: string;
|
|
28
|
+
}>;
|
|
29
|
+
export {};
|
|
@@ -94,6 +94,35 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
94
94
|
};
|
|
95
95
|
meta: any;
|
|
96
96
|
}>;
|
|
97
|
+
suggestTestFix: import("@trpc/server").TRPCMutationProcedure<{
|
|
98
|
+
input: {
|
|
99
|
+
agentId: string;
|
|
100
|
+
testId: string;
|
|
101
|
+
step: string;
|
|
102
|
+
request: string;
|
|
103
|
+
prompt: string;
|
|
104
|
+
basePrompt: string;
|
|
105
|
+
currentIncorrectOutcome: string;
|
|
106
|
+
progressId: string;
|
|
107
|
+
};
|
|
108
|
+
output: {
|
|
109
|
+
history: {
|
|
110
|
+
status: "unchanged";
|
|
111
|
+
proposal?: undefined;
|
|
112
|
+
} | {
|
|
113
|
+
status: "changed";
|
|
114
|
+
proposal: import("./tests/test-history-edit-proposals").TestHistoryEditProposal;
|
|
115
|
+
};
|
|
116
|
+
prompt: {
|
|
117
|
+
status: "unchanged";
|
|
118
|
+
proposal?: undefined;
|
|
119
|
+
} | {
|
|
120
|
+
status: "changed";
|
|
121
|
+
proposal: import("./roleplay/prompt-edit-proposals").PromptEditProposal;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
meta: any;
|
|
125
|
+
}>;
|
|
97
126
|
promptEditProgress: import("@trpc/server").TRPCQueryProcedure<{
|
|
98
127
|
input: {
|
|
99
128
|
id: string;
|
|
@@ -295,6 +324,25 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
295
324
|
output: import("./tests/prompt-issues").FindPromptIssuesResult;
|
|
296
325
|
meta: any;
|
|
297
326
|
}>;
|
|
327
|
+
suggestHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
328
|
+
input: {
|
|
329
|
+
agent: string;
|
|
330
|
+
testId: string;
|
|
331
|
+
step: string;
|
|
332
|
+
request: string;
|
|
333
|
+
prompt: string;
|
|
334
|
+
basePrompt: string;
|
|
335
|
+
progressId: string;
|
|
336
|
+
};
|
|
337
|
+
output: {
|
|
338
|
+
status: "unchanged";
|
|
339
|
+
proposal?: undefined;
|
|
340
|
+
} | {
|
|
341
|
+
status: "changed";
|
|
342
|
+
proposal: import("./tests/test-history-edit-proposals").TestHistoryEditProposal;
|
|
343
|
+
};
|
|
344
|
+
meta: any;
|
|
345
|
+
}>;
|
|
298
346
|
suite: import("@trpc/server").TRPCQueryProcedure<{
|
|
299
347
|
input: {
|
|
300
348
|
agent: string;
|
|
@@ -344,6 +392,7 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
344
392
|
context?: Record<string, unknown> | undefined;
|
|
345
393
|
mocks?: Record<string, unknown> | undefined;
|
|
346
394
|
};
|
|
395
|
+
beforeTestId?: string | undefined;
|
|
347
396
|
};
|
|
348
397
|
output: {
|
|
349
398
|
id: string;
|
|
@@ -479,6 +528,44 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
479
528
|
} | null;
|
|
480
529
|
meta: any;
|
|
481
530
|
}>;
|
|
531
|
+
acceptHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
532
|
+
input: {
|
|
533
|
+
id: string;
|
|
534
|
+
};
|
|
535
|
+
output: {
|
|
536
|
+
ok: true;
|
|
537
|
+
test: {
|
|
538
|
+
id: string;
|
|
539
|
+
order: number;
|
|
540
|
+
pinned: "TRUE" | "FALSE";
|
|
541
|
+
scenario: string;
|
|
542
|
+
assertion_type: string;
|
|
543
|
+
assertion_value: string;
|
|
544
|
+
conversation: string;
|
|
545
|
+
expected_output: string;
|
|
546
|
+
timeout: string;
|
|
547
|
+
similarity_threshold: string;
|
|
548
|
+
context: Record<string, unknown>;
|
|
549
|
+
step?: string | undefined;
|
|
550
|
+
author?: string | undefined;
|
|
551
|
+
category?: string | undefined;
|
|
552
|
+
evaluation_mode?: "assertion" | "json-deep-equal" | undefined;
|
|
553
|
+
case_sensitive?: boolean | undefined;
|
|
554
|
+
context_mode?: "replace" | "merge" | undefined;
|
|
555
|
+
mocks?: Record<string, unknown> | undefined;
|
|
556
|
+
};
|
|
557
|
+
};
|
|
558
|
+
meta: any;
|
|
559
|
+
}>;
|
|
560
|
+
rejectHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
561
|
+
input: {
|
|
562
|
+
id: string;
|
|
563
|
+
};
|
|
564
|
+
output: {
|
|
565
|
+
ok: boolean;
|
|
566
|
+
};
|
|
567
|
+
meta: any;
|
|
568
|
+
}>;
|
|
482
569
|
patchTestsBatch: import("@trpc/server").TRPCMutationProcedure<{
|
|
483
570
|
input: {
|
|
484
571
|
agent: string;
|
|
@@ -550,12 +637,18 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
550
637
|
concurrency: number;
|
|
551
638
|
scope?: "pinned" | "all" | undefined;
|
|
552
639
|
promptOverrides?: Record<string, string> | undefined;
|
|
640
|
+
testHistoryOverrides?: Record<string, {
|
|
641
|
+
conversation: string;
|
|
642
|
+
}> | undefined;
|
|
553
643
|
} | {
|
|
554
644
|
agent: string;
|
|
555
645
|
testId: string;
|
|
556
646
|
repeats: number;
|
|
557
647
|
concurrency: number;
|
|
558
648
|
promptOverrides?: Record<string, string> | undefined;
|
|
649
|
+
testHistoryOverrides?: Record<string, {
|
|
650
|
+
conversation: string;
|
|
651
|
+
}> | undefined;
|
|
559
652
|
};
|
|
560
653
|
output: import("./tests/academy").WrittenRunReport;
|
|
561
654
|
meta: any;
|
|
@@ -589,6 +682,11 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
589
682
|
lastConversationId?: string | undefined;
|
|
590
683
|
phoneNumber?: string | undefined;
|
|
591
684
|
agentId?: string | undefined;
|
|
685
|
+
analyticsFilters?: {
|
|
686
|
+
key: string;
|
|
687
|
+
type: "string" | "number" | "boolean";
|
|
688
|
+
values: (string | number | boolean)[];
|
|
689
|
+
}[] | undefined;
|
|
592
690
|
};
|
|
593
691
|
output: {
|
|
594
692
|
items: {
|
|
@@ -611,6 +709,24 @@ declare const appRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
611
709
|
};
|
|
612
710
|
meta: any;
|
|
613
711
|
}>;
|
|
712
|
+
analyticsFields: import("@trpc/server").TRPCQueryProcedure<{
|
|
713
|
+
input: {
|
|
714
|
+
sourceId?: string | undefined;
|
|
715
|
+
agentId?: string | undefined;
|
|
716
|
+
};
|
|
717
|
+
output: {
|
|
718
|
+
items: {
|
|
719
|
+
key: string;
|
|
720
|
+
type: "string" | "number" | "boolean";
|
|
721
|
+
variantCount: number;
|
|
722
|
+
values: {
|
|
723
|
+
value: string | number | boolean;
|
|
724
|
+
count: number;
|
|
725
|
+
}[];
|
|
726
|
+
}[];
|
|
727
|
+
};
|
|
728
|
+
meta: any;
|
|
729
|
+
}>;
|
|
614
730
|
conversation: import("@trpc/server").TRPCQueryProcedure<{
|
|
615
731
|
input: {
|
|
616
732
|
conversationId: string;
|
|
@@ -22,6 +22,11 @@ export declare function createTelescopeRouter(t: TRPCRootObject<TrpcContext, any
|
|
|
22
22
|
lastConversationId?: string | undefined;
|
|
23
23
|
phoneNumber?: string | undefined;
|
|
24
24
|
agentId?: string | undefined;
|
|
25
|
+
analyticsFilters?: {
|
|
26
|
+
key: string;
|
|
27
|
+
type: "string" | "number" | "boolean";
|
|
28
|
+
values: (string | number | boolean)[];
|
|
29
|
+
}[] | undefined;
|
|
25
30
|
};
|
|
26
31
|
output: {
|
|
27
32
|
items: {
|
|
@@ -44,6 +49,24 @@ export declare function createTelescopeRouter(t: TRPCRootObject<TrpcContext, any
|
|
|
44
49
|
};
|
|
45
50
|
meta: any;
|
|
46
51
|
}>;
|
|
52
|
+
analyticsFields: import("@trpc/server").TRPCQueryProcedure<{
|
|
53
|
+
input: {
|
|
54
|
+
sourceId?: string | undefined;
|
|
55
|
+
agentId?: string | undefined;
|
|
56
|
+
};
|
|
57
|
+
output: {
|
|
58
|
+
items: {
|
|
59
|
+
key: string;
|
|
60
|
+
type: "string" | "number" | "boolean";
|
|
61
|
+
variantCount: number;
|
|
62
|
+
values: {
|
|
63
|
+
value: string | number | boolean;
|
|
64
|
+
count: number;
|
|
65
|
+
}[];
|
|
66
|
+
}[];
|
|
67
|
+
};
|
|
68
|
+
meta: any;
|
|
69
|
+
}>;
|
|
47
70
|
conversation: import("@trpc/server").TRPCQueryProcedure<{
|
|
48
71
|
input: {
|
|
49
72
|
conversationId: string;
|
|
@@ -43,6 +43,13 @@ export interface WrittenRunReportConfig {
|
|
|
43
43
|
concurrency: number;
|
|
44
44
|
}
|
|
45
45
|
export type PromptTestsRunConfig = Pick<WrittenRunReportConfig, 'repeats' | 'concurrency'>;
|
|
46
|
+
export type TestHistoryOverrides = Record<string, {
|
|
47
|
+
conversation: string;
|
|
48
|
+
}>;
|
|
49
|
+
export declare function applyTestHistoryOverrides<T extends {
|
|
50
|
+
id?: unknown;
|
|
51
|
+
conversation: string;
|
|
52
|
+
}>(rows: T[], overrides: TestHistoryOverrides): T[];
|
|
46
53
|
export interface WrittenRunReportRow extends TableRow {
|
|
47
54
|
test: SuiteTestRow;
|
|
48
55
|
agent: string;
|
|
@@ -82,7 +89,7 @@ export type SuiteSelection = {
|
|
|
82
89
|
agentId: string;
|
|
83
90
|
};
|
|
84
91
|
export declare function cancelPromptTests(suiteKey: string): boolean;
|
|
85
|
-
export declare function runPromptTestsManaged(ctx: BosunContext, suite: SuiteSelection, selection: PromptTestsSelection, requestedConfig: PromptTestsRunConfig, promptOverrides?: Record<string, string
|
|
92
|
+
export declare function runPromptTestsManaged(ctx: BosunContext, suite: SuiteSelection, selection: PromptTestsSelection, requestedConfig: PromptTestsRunConfig, promptOverrides?: Record<string, string>, testHistoryOverrides?: TestHistoryOverrides): Promise<WrittenRunReport>;
|
|
86
93
|
export declare class RecombineAgentProvider implements ApiProvider {
|
|
87
94
|
protected providerId: string;
|
|
88
95
|
config: Record<string, unknown>;
|
|
@@ -98,6 +105,7 @@ export declare class RecombineAgentProvider implements ApiProvider {
|
|
|
98
105
|
export declare function runPromptTests(ctx: BosunContext, suite: SuiteSelection, selection: PromptTestsSelection, requestedConfig: PromptTestsRunConfig, opts?: {
|
|
99
106
|
signal?: AbortSignal;
|
|
100
107
|
promptOverrides?: Record<string, string>;
|
|
108
|
+
testHistoryOverrides?: TestHistoryOverrides;
|
|
101
109
|
setProgress?: (progress: MutablePromptTestsProgress) => boolean;
|
|
102
110
|
}): Promise<WrittenRunReport>;
|
|
103
111
|
export type WrittenRunResult = Awaited<ReturnType<typeof runPromptTests>>;
|
|
@@ -67,11 +67,23 @@ export interface TestRunHistoryDetail {
|
|
|
67
67
|
}
|
|
68
68
|
export declare function loadTests(ctx: BosunContext, agent: string): Promise<TestTable>;
|
|
69
69
|
export declare function patchTest(ctx: BosunContext, agent: string, id: string, patch: Partial<TestRow>): Promise<TestRow | null>;
|
|
70
|
+
export declare function patchTestConversationIfCurrent(ctx: BosunContext, agent: string, id: string, expectedConversation: string, conversation: string, allowedSourceFingerprints?: string[]): Promise<{
|
|
71
|
+
status: 'changed';
|
|
72
|
+
test: TestRow;
|
|
73
|
+
} | {
|
|
74
|
+
status: 'stale';
|
|
75
|
+
currentConversation: string;
|
|
76
|
+
} | {
|
|
77
|
+
status: 'not-found';
|
|
78
|
+
}>;
|
|
70
79
|
export declare function patchTestsBatch(ctx: BosunContext, agent: string, updates: Array<{
|
|
71
80
|
id: string;
|
|
72
81
|
patch: Partial<TestRow>;
|
|
73
82
|
}>): Promise<TestRow[]>;
|
|
74
|
-
|
|
83
|
+
interface AddTestOptions {
|
|
84
|
+
beforeTestId?: string;
|
|
85
|
+
}
|
|
86
|
+
export declare function addTest(ctx: BosunContext, agent: string, seed?: Partial<TestRow>, options?: AddTestOptions): Promise<TestRow>;
|
|
75
87
|
export declare function deleteTest(ctx: BosunContext, agent: string, id: string): Promise<boolean>;
|
|
76
88
|
export declare function reorderTests(ctx: BosunContext, agent: string, order: string[]): Promise<void>;
|
|
77
89
|
export declare function loadLatestResultsByTest(ctx: BosunContext, agent: string): Promise<Record<string, TestResult>>;
|
|
@@ -72,6 +72,25 @@ export declare function createTestsRouter(t: TRPCRootObject<TrpcContext, any, an
|
|
|
72
72
|
output: import("./prompt-issues").FindPromptIssuesResult;
|
|
73
73
|
meta: any;
|
|
74
74
|
}>;
|
|
75
|
+
suggestHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
76
|
+
input: {
|
|
77
|
+
agent: string;
|
|
78
|
+
testId: string;
|
|
79
|
+
step: string;
|
|
80
|
+
request: string;
|
|
81
|
+
prompt: string;
|
|
82
|
+
basePrompt: string;
|
|
83
|
+
progressId: string;
|
|
84
|
+
};
|
|
85
|
+
output: {
|
|
86
|
+
status: "unchanged";
|
|
87
|
+
proposal?: undefined;
|
|
88
|
+
} | {
|
|
89
|
+
status: "changed";
|
|
90
|
+
proposal: import("./test-history-edit-proposals").TestHistoryEditProposal;
|
|
91
|
+
};
|
|
92
|
+
meta: any;
|
|
93
|
+
}>;
|
|
75
94
|
suite: import("@trpc/server").TRPCQueryProcedure<{
|
|
76
95
|
input: {
|
|
77
96
|
agent: string;
|
|
@@ -121,6 +140,7 @@ export declare function createTestsRouter(t: TRPCRootObject<TrpcContext, any, an
|
|
|
121
140
|
context?: Record<string, unknown> | undefined;
|
|
122
141
|
mocks?: Record<string, unknown> | undefined;
|
|
123
142
|
};
|
|
143
|
+
beforeTestId?: string | undefined;
|
|
124
144
|
};
|
|
125
145
|
output: {
|
|
126
146
|
id: string;
|
|
@@ -256,6 +276,44 @@ export declare function createTestsRouter(t: TRPCRootObject<TrpcContext, any, an
|
|
|
256
276
|
} | null;
|
|
257
277
|
meta: any;
|
|
258
278
|
}>;
|
|
279
|
+
acceptHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
280
|
+
input: {
|
|
281
|
+
id: string;
|
|
282
|
+
};
|
|
283
|
+
output: {
|
|
284
|
+
ok: true;
|
|
285
|
+
test: {
|
|
286
|
+
id: string;
|
|
287
|
+
order: number;
|
|
288
|
+
pinned: "TRUE" | "FALSE";
|
|
289
|
+
scenario: string;
|
|
290
|
+
assertion_type: string;
|
|
291
|
+
assertion_value: string;
|
|
292
|
+
conversation: string;
|
|
293
|
+
expected_output: string;
|
|
294
|
+
timeout: string;
|
|
295
|
+
similarity_threshold: string;
|
|
296
|
+
context: Record<string, unknown>;
|
|
297
|
+
step?: string | undefined;
|
|
298
|
+
author?: string | undefined;
|
|
299
|
+
category?: string | undefined;
|
|
300
|
+
evaluation_mode?: "assertion" | "json-deep-equal" | undefined;
|
|
301
|
+
case_sensitive?: boolean | undefined;
|
|
302
|
+
context_mode?: "replace" | "merge" | undefined;
|
|
303
|
+
mocks?: Record<string, unknown> | undefined;
|
|
304
|
+
};
|
|
305
|
+
};
|
|
306
|
+
meta: any;
|
|
307
|
+
}>;
|
|
308
|
+
rejectHistoryEdit: import("@trpc/server").TRPCMutationProcedure<{
|
|
309
|
+
input: {
|
|
310
|
+
id: string;
|
|
311
|
+
};
|
|
312
|
+
output: {
|
|
313
|
+
ok: boolean;
|
|
314
|
+
};
|
|
315
|
+
meta: any;
|
|
316
|
+
}>;
|
|
259
317
|
patchTestsBatch: import("@trpc/server").TRPCMutationProcedure<{
|
|
260
318
|
input: {
|
|
261
319
|
agent: string;
|
|
@@ -327,12 +385,18 @@ export declare function createTestsRouter(t: TRPCRootObject<TrpcContext, any, an
|
|
|
327
385
|
concurrency: number;
|
|
328
386
|
scope?: "pinned" | "all" | undefined;
|
|
329
387
|
promptOverrides?: Record<string, string> | undefined;
|
|
388
|
+
testHistoryOverrides?: Record<string, {
|
|
389
|
+
conversation: string;
|
|
390
|
+
}> | undefined;
|
|
330
391
|
} | {
|
|
331
392
|
agent: string;
|
|
332
393
|
testId: string;
|
|
333
394
|
repeats: number;
|
|
334
395
|
concurrency: number;
|
|
335
396
|
promptOverrides?: Record<string, string> | undefined;
|
|
397
|
+
testHistoryOverrides?: Record<string, {
|
|
398
|
+
conversation: string;
|
|
399
|
+
}> | undefined;
|
|
336
400
|
};
|
|
337
401
|
output: import("./academy").WrittenRunReport;
|
|
338
402
|
meta: any;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { BosunContext } from '../lib/bosun-context';
|
|
2
|
+
import type { PromptEditProgressPhase } from '../roleplay/prompt-edit-progress';
|
|
3
|
+
export declare function suggestTestHistoryEdit(ctx: BosunContext, input: {
|
|
4
|
+
request: string;
|
|
5
|
+
prompt: string;
|
|
6
|
+
context: string;
|
|
7
|
+
conversation: string;
|
|
8
|
+
expectedOutput: string;
|
|
9
|
+
onProgress?: (progress: {
|
|
10
|
+
phase: PromptEditProgressPhase;
|
|
11
|
+
activity: number;
|
|
12
|
+
summary: string;
|
|
13
|
+
}) => void;
|
|
14
|
+
}): Promise<string>;
|
|
15
|
+
export declare function buildTestHistoryPrompt(input: {
|
|
16
|
+
request: string;
|
|
17
|
+
prompt: string;
|
|
18
|
+
context: string;
|
|
19
|
+
conversation: string;
|
|
20
|
+
expectedOutput: string;
|
|
21
|
+
}): string;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface TestHistoryEditProposal {
|
|
2
|
+
id: string;
|
|
3
|
+
agentId: string;
|
|
4
|
+
testId: string;
|
|
5
|
+
step: string;
|
|
6
|
+
originalConversation: string;
|
|
7
|
+
suggestedConversation: string;
|
|
8
|
+
expectedOutput: string;
|
|
9
|
+
createdAt: number;
|
|
10
|
+
}
|
|
11
|
+
export interface TestHistoryEditSourceGuard {
|
|
12
|
+
suiteKey: string;
|
|
13
|
+
allowedTestFingerprints: string[];
|
|
14
|
+
allowedPromptContents: string[];
|
|
15
|
+
}
|
|
16
|
+
type StoredTestHistoryEditProposal = TestHistoryEditProposal & {
|
|
17
|
+
sourceGuard: TestHistoryEditSourceGuard;
|
|
18
|
+
};
|
|
19
|
+
export declare function createTestHistoryEditProposal(proposal: Omit<TestHistoryEditProposal, 'id' | 'createdAt'> & {
|
|
20
|
+
sourceGuard: TestHistoryEditSourceGuard;
|
|
21
|
+
}): TestHistoryEditProposal;
|
|
22
|
+
export declare function getTestHistoryEditProposalForAcceptance(id: string): StoredTestHistoryEditProposal | null;
|
|
23
|
+
export declare function deleteTestHistoryEditProposal(id: string): boolean;
|
|
24
|
+
export {};
|
|
@@ -41,9 +41,47 @@ export declare const PaginatedConversationsResponseSchema: z.ZodObject<{
|
|
|
41
41
|
lastConversationId: z.ZodOptional<z.ZodString>;
|
|
42
42
|
}, z.core.$strip>;
|
|
43
43
|
export type PaginatedConversationsResponse = z.infer<typeof PaginatedConversationsResponseSchema>;
|
|
44
|
+
export declare const AnalyticsScalarSchema: z.ZodUnion<readonly [z.ZodBoolean, z.ZodNumber, z.ZodString]>;
|
|
45
|
+
export type AnalyticsScalar = z.infer<typeof AnalyticsScalarSchema>;
|
|
46
|
+
export declare const AnalyticsFieldSchema: z.ZodObject<{
|
|
47
|
+
key: z.ZodString;
|
|
48
|
+
type: z.ZodEnum<{
|
|
49
|
+
string: "string";
|
|
50
|
+
number: "number";
|
|
51
|
+
boolean: "boolean";
|
|
52
|
+
}>;
|
|
53
|
+
variantCount: z.ZodNumber;
|
|
54
|
+
values: z.ZodArray<z.ZodObject<{
|
|
55
|
+
value: z.ZodUnion<readonly [z.ZodBoolean, z.ZodNumber, z.ZodString]>;
|
|
56
|
+
count: z.ZodNumber;
|
|
57
|
+
}, z.core.$strip>>;
|
|
58
|
+
}, z.core.$strip>;
|
|
59
|
+
export type AnalyticsField = z.infer<typeof AnalyticsFieldSchema>;
|
|
60
|
+
export declare const AnalyticsFieldsResponseSchema: z.ZodObject<{
|
|
61
|
+
items: z.ZodArray<z.ZodObject<{
|
|
62
|
+
key: z.ZodString;
|
|
63
|
+
type: z.ZodEnum<{
|
|
64
|
+
string: "string";
|
|
65
|
+
number: "number";
|
|
66
|
+
boolean: "boolean";
|
|
67
|
+
}>;
|
|
68
|
+
variantCount: z.ZodNumber;
|
|
69
|
+
values: z.ZodArray<z.ZodObject<{
|
|
70
|
+
value: z.ZodUnion<readonly [z.ZodBoolean, z.ZodNumber, z.ZodString]>;
|
|
71
|
+
count: z.ZodNumber;
|
|
72
|
+
}, z.core.$strip>>;
|
|
73
|
+
}, z.core.$strip>>;
|
|
74
|
+
}, z.core.$strip>;
|
|
75
|
+
export type AnalyticsFieldsResponse = z.infer<typeof AnalyticsFieldsResponseSchema>;
|
|
76
|
+
export type AnalyticsConversationFilter = {
|
|
77
|
+
key: string;
|
|
78
|
+
type: AnalyticsField['type'];
|
|
79
|
+
values: AnalyticsScalar[];
|
|
80
|
+
};
|
|
44
81
|
export type GetConversationsRequest = {
|
|
45
82
|
phoneNumber?: string;
|
|
46
83
|
agentId?: string;
|
|
84
|
+
analyticsFilters?: AnalyticsConversationFilter[];
|
|
47
85
|
limit?: number;
|
|
48
86
|
lastConversationId?: string;
|
|
49
87
|
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface TestFixRequestInput {
|
|
2
|
+
context: string;
|
|
3
|
+
conversation: string;
|
|
4
|
+
expectedOutput: string;
|
|
5
|
+
assertionLabel: string;
|
|
6
|
+
assertionValue: string;
|
|
7
|
+
currentIncorrectOutcome: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const UPDATE_HISTORY_REQUEST = "Update the conversation history so it reflects behaviour that is valid under the current prompt. Preserve the test's intent and expected outcome, and make only the smallest necessary changes. Possible roles: \"Agent\", \"User\", \"System\"";
|
|
10
|
+
export declare function formatTestFixAssertion(label: string, value: string): string;
|
|
11
|
+
export declare function buildTestFixRequest(input: TestFixRequestInput): string;
|
|
12
|
+
export declare function buildPromptFixRequest(enteredRequest: string, input: TestFixRequestInput, originalConversation: string): string;
|