@recombine-ai/bosun 0.16.2 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (481) hide show
  1. package/build/client/_app/immutable/assets/0.B4Hv80zl.css +1 -0
  2. package/build/client/_app/immutable/assets/0.B4Hv80zl.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.B4Hv80zl.css.gz +0 -0
  4. package/build/client/_app/immutable/assets/{2.DtxQDOXx.css → 2.Bc0Sf3YD.css} +1 -1
  5. package/build/client/_app/immutable/assets/2.Bc0Sf3YD.css.br +0 -0
  6. package/build/client/_app/immutable/assets/2.Bc0Sf3YD.css.gz +0 -0
  7. package/build/client/_app/immutable/chunks/A4HgFSOM.js +1 -0
  8. package/build/client/_app/immutable/chunks/A4HgFSOM.js.br +2 -0
  9. package/build/client/_app/immutable/chunks/A4HgFSOM.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{DoD3q5w5.js → B00B3Gwh.js} +1 -1
  11. package/build/client/_app/immutable/chunks/B00B3Gwh.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/B00B3Gwh.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/B43-lfXY.js +1 -0
  14. package/build/client/_app/immutable/chunks/B43-lfXY.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/B43-lfXY.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/B4tOnDzM.js +1 -0
  17. package/build/client/_app/immutable/chunks/B4tOnDzM.js.br +2 -0
  18. package/build/client/_app/immutable/chunks/B4tOnDzM.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/{Bv1mNXs0.js → BDY0xZsU.js} +1 -1
  20. package/build/client/_app/immutable/chunks/BDY0xZsU.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/BDY0xZsU.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{UqjCSZmA.js → BIxSqfKT.js} +1 -1
  23. package/build/client/_app/immutable/chunks/BIxSqfKT.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/BIxSqfKT.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/{r0sHOWrM.js → BQJs3N6E.js} +1 -1
  26. package/build/client/_app/immutable/chunks/BQJs3N6E.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/BQJs3N6E.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/{BHHfrjbV.js → BXh99ZNk.js} +1 -1
  29. package/build/client/_app/immutable/chunks/BXh99ZNk.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/BXh99ZNk.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/B_RIpUuZ.js +1 -0
  32. package/build/client/_app/immutable/chunks/B_RIpUuZ.js.br +0 -0
  33. package/build/client/_app/immutable/chunks/B_RIpUuZ.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/{CEHsomMo.js → Bd-a6hgR.js} +1 -1
  35. package/build/client/_app/immutable/chunks/Bd-a6hgR.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/{CEHsomMo.js.gz → Bd-a6hgR.js.gz} +0 -0
  37. package/build/client/_app/immutable/chunks/{Dm49pcMm.js → BftRRaUE.js} +1 -1
  38. package/build/client/_app/immutable/chunks/BftRRaUE.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/BftRRaUE.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/Bm4FdRXc.js +1 -0
  41. package/build/client/_app/immutable/chunks/Bm4FdRXc.js.br +0 -0
  42. package/build/client/_app/immutable/chunks/Bm4FdRXc.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/{Ddv5LgEc.js → BmdpEiKy.js} +2 -2
  44. package/build/client/_app/immutable/chunks/BmdpEiKy.js.br +0 -0
  45. package/build/client/_app/immutable/chunks/BmdpEiKy.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/{B5zf3x62.js → BxZ1WgZm.js} +1 -1
  47. package/build/client/_app/immutable/chunks/BxZ1WgZm.js.br +0 -0
  48. package/build/client/_app/immutable/chunks/BxZ1WgZm.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/{Cp_st-64.js → C9LBPFJH.js} +1 -1
  50. package/build/client/_app/immutable/chunks/C9LBPFJH.js.br +0 -0
  51. package/build/client/_app/immutable/chunks/C9LBPFJH.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/{JcG4w2gF.js → CH3XJDoO.js} +1 -1
  53. package/build/client/_app/immutable/chunks/CH3XJDoO.js.br +0 -0
  54. package/build/client/_app/immutable/chunks/CH3XJDoO.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/CWVkeRMt.js +3 -0
  56. package/build/client/_app/immutable/chunks/CWVkeRMt.js.br +0 -0
  57. package/build/client/_app/immutable/chunks/CWVkeRMt.js.gz +0 -0
  58. package/build/client/_app/immutable/chunks/CXfw8fai.js +1 -0
  59. package/build/client/_app/immutable/chunks/CXfw8fai.js.br +2 -0
  60. package/build/client/_app/immutable/chunks/CXfw8fai.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/{DfcDjAv-.js → Clfp4Zf_.js} +1 -1
  62. package/build/client/_app/immutable/chunks/Clfp4Zf_.js.br +0 -0
  63. package/build/client/_app/immutable/chunks/Clfp4Zf_.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/{DneQQ7D5.js → Cr5XqyuF.js} +1 -1
  65. package/build/client/_app/immutable/chunks/Cr5XqyuF.js.br +0 -0
  66. package/build/client/_app/immutable/chunks/Cr5XqyuF.js.gz +0 -0
  67. package/build/client/_app/immutable/chunks/{Bmd5zhWC.js → CxzD8Edk.js} +1 -1
  68. package/build/client/_app/immutable/chunks/CxzD8Edk.js.br +0 -0
  69. package/build/client/_app/immutable/chunks/CxzD8Edk.js.gz +0 -0
  70. package/build/client/_app/immutable/chunks/D6iBTJD_.js +1 -0
  71. package/build/client/_app/immutable/chunks/D6iBTJD_.js.br +0 -0
  72. package/build/client/_app/immutable/chunks/D6iBTJD_.js.gz +0 -0
  73. package/build/client/_app/immutable/chunks/{CJcZ2GVC.js → DB-s6wHX.js} +1 -1
  74. package/build/client/_app/immutable/chunks/DB-s6wHX.js.br +0 -0
  75. package/build/client/_app/immutable/chunks/DB-s6wHX.js.gz +0 -0
  76. package/build/client/_app/immutable/chunks/D_LCsjN0.js +1 -0
  77. package/build/client/_app/immutable/chunks/D_LCsjN0.js.br +0 -0
  78. package/build/client/_app/immutable/chunks/D_LCsjN0.js.gz +0 -0
  79. package/build/client/_app/immutable/chunks/Dd-8KgV2.js +2 -0
  80. package/build/client/_app/immutable/chunks/Dd-8KgV2.js.br +0 -0
  81. package/build/client/_app/immutable/chunks/Dd-8KgV2.js.gz +0 -0
  82. package/build/client/_app/immutable/chunks/{pPpIn6tB.js → DdmShlNz.js} +1 -1
  83. package/build/client/_app/immutable/chunks/DdmShlNz.js.br +0 -0
  84. package/build/client/_app/immutable/chunks/DdmShlNz.js.gz +0 -0
  85. package/build/client/_app/immutable/chunks/Df5gZp_x.js +1 -0
  86. package/build/client/_app/immutable/chunks/Df5gZp_x.js.br +0 -0
  87. package/build/client/_app/immutable/chunks/Df5gZp_x.js.gz +0 -0
  88. package/build/client/_app/immutable/chunks/{wcTQUnZO.js → Dfg-7N3Z.js} +1 -1
  89. package/build/client/_app/immutable/chunks/Dfg-7N3Z.js.br +0 -0
  90. package/build/client/_app/immutable/chunks/Dfg-7N3Z.js.gz +0 -0
  91. package/build/client/_app/immutable/chunks/{BnqH7p3U.js → DnsnkygW.js} +2 -2
  92. package/build/client/_app/immutable/chunks/DnsnkygW.js.br +0 -0
  93. package/build/client/_app/immutable/chunks/DnsnkygW.js.gz +0 -0
  94. package/build/client/_app/immutable/chunks/{D8mA-uZ4.js → Do-VHn0U.js} +1 -1
  95. package/build/client/_app/immutable/chunks/Do-VHn0U.js.br +0 -0
  96. package/build/client/_app/immutable/chunks/Do-VHn0U.js.gz +0 -0
  97. package/build/client/_app/immutable/chunks/{DyBwTDJp.js → DtC6KNFZ.js} +1 -1
  98. package/build/client/_app/immutable/chunks/DtC6KNFZ.js.br +0 -0
  99. package/build/client/_app/immutable/chunks/DtC6KNFZ.js.gz +0 -0
  100. package/build/client/_app/immutable/chunks/{DtXXy94i.js → LEDvCGy2.js} +1 -1
  101. package/build/client/_app/immutable/chunks/LEDvCGy2.js.br +0 -0
  102. package/build/client/_app/immutable/chunks/LEDvCGy2.js.gz +0 -0
  103. package/build/client/_app/immutable/chunks/PrCSpCPg.js +1 -0
  104. package/build/client/_app/immutable/chunks/PrCSpCPg.js.br +0 -0
  105. package/build/client/_app/immutable/chunks/PrCSpCPg.js.gz +0 -0
  106. package/build/client/_app/immutable/chunks/Si6VyCMt.js +8 -0
  107. package/build/client/_app/immutable/chunks/Si6VyCMt.js.br +0 -0
  108. package/build/client/_app/immutable/chunks/Si6VyCMt.js.gz +0 -0
  109. package/build/client/_app/immutable/chunks/{Dy2CFyD6.js → W2LAs4ks.js} +1 -1
  110. package/build/client/_app/immutable/chunks/W2LAs4ks.js.br +0 -0
  111. package/build/client/_app/immutable/chunks/W2LAs4ks.js.gz +0 -0
  112. package/build/client/_app/immutable/chunks/{DCXjBDmY.js → cxBf7mxj.js} +1 -1
  113. package/build/client/_app/immutable/chunks/cxBf7mxj.js.br +0 -0
  114. package/build/client/_app/immutable/chunks/cxBf7mxj.js.gz +0 -0
  115. package/build/client/_app/immutable/chunks/g6pAcE-g.js +1 -0
  116. package/build/client/_app/immutable/chunks/g6pAcE-g.js.br +0 -0
  117. package/build/client/_app/immutable/chunks/g6pAcE-g.js.gz +0 -0
  118. package/build/client/_app/immutable/chunks/nt0OWMrn.js +2 -0
  119. package/build/client/_app/immutable/chunks/nt0OWMrn.js.br +0 -0
  120. package/build/client/_app/immutable/chunks/nt0OWMrn.js.gz +0 -0
  121. package/build/client/_app/immutable/chunks/r0jEdDRH.js +1 -0
  122. package/build/client/_app/immutable/chunks/r0jEdDRH.js.br +0 -0
  123. package/build/client/_app/immutable/chunks/r0jEdDRH.js.gz +0 -0
  124. package/build/client/_app/immutable/entry/app.C6BwoHPB.js +2 -0
  125. package/build/client/_app/immutable/entry/app.C6BwoHPB.js.br +0 -0
  126. package/build/client/_app/immutable/entry/app.C6BwoHPB.js.gz +0 -0
  127. package/build/client/_app/immutable/entry/start.DtdsXA4D.js +1 -0
  128. package/build/client/_app/immutable/entry/start.DtdsXA4D.js.br +2 -0
  129. package/build/client/_app/immutable/entry/start.DtdsXA4D.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/{0.nG3DdvIX.js → 0.Be4zhwyU.js} +1 -1
  131. package/build/client/_app/immutable/nodes/0.Be4zhwyU.js.br +0 -0
  132. package/build/client/_app/immutable/nodes/0.Be4zhwyU.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/1.DU-ZnWjM.js +1 -0
  134. package/build/client/_app/immutable/nodes/1.DU-ZnWjM.js.br +0 -0
  135. package/build/client/_app/immutable/nodes/1.DU-ZnWjM.js.gz +0 -0
  136. package/build/client/_app/immutable/nodes/10.CnYak_rj.js +28 -0
  137. package/build/client/_app/immutable/nodes/10.CnYak_rj.js.br +0 -0
  138. package/build/client/_app/immutable/nodes/10.CnYak_rj.js.gz +0 -0
  139. package/build/client/_app/immutable/nodes/{15.D2I0y3ys.js → 15.DZxmOvq_.js} +1 -1
  140. package/build/client/_app/immutable/nodes/15.DZxmOvq_.js.br +0 -0
  141. package/build/client/_app/immutable/nodes/15.DZxmOvq_.js.gz +0 -0
  142. package/build/client/_app/immutable/nodes/17.6u3BMaGP.js +3 -0
  143. package/build/client/_app/immutable/nodes/17.6u3BMaGP.js.br +0 -0
  144. package/build/client/_app/immutable/nodes/17.6u3BMaGP.js.gz +0 -0
  145. package/build/client/_app/immutable/nodes/18.B74hqK3k.js +11 -0
  146. package/build/client/_app/immutable/nodes/18.B74hqK3k.js.br +0 -0
  147. package/build/client/_app/immutable/nodes/18.B74hqK3k.js.gz +0 -0
  148. package/build/client/_app/immutable/nodes/2.tsu7vFWw.js +35 -0
  149. package/build/client/_app/immutable/nodes/2.tsu7vFWw.js.br +0 -0
  150. package/build/client/_app/immutable/nodes/2.tsu7vFWw.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/3.uagy_HG1.js +1 -0
  152. package/build/client/_app/immutable/nodes/3.uagy_HG1.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/3.uagy_HG1.js.gz +0 -0
  154. package/build/client/_app/immutable/nodes/{4.C8VxVbVn.js → 4.DMbfNKYL.js} +1 -1
  155. package/build/client/_app/immutable/nodes/4.DMbfNKYL.js.br +0 -0
  156. package/build/client/_app/immutable/nodes/4.DMbfNKYL.js.gz +0 -0
  157. package/build/client/_app/immutable/nodes/{5.BjrnKYaA.js → 5.DpWrPX3L.js} +1 -1
  158. package/build/client/_app/immutable/nodes/5.DpWrPX3L.js.br +0 -0
  159. package/build/client/_app/immutable/nodes/5.DpWrPX3L.js.gz +0 -0
  160. package/build/client/_app/immutable/nodes/{6.C_hEzPrU.js → 6.D7wtfdve.js} +1 -1
  161. package/build/client/_app/immutable/nodes/6.D7wtfdve.js.br +0 -0
  162. package/build/client/_app/immutable/nodes/6.D7wtfdve.js.gz +0 -0
  163. package/build/client/_app/immutable/nodes/8.Bo50UIdy.js +2 -0
  164. package/build/client/_app/immutable/nodes/8.Bo50UIdy.js.br +0 -0
  165. package/build/client/_app/immutable/nodes/8.Bo50UIdy.js.gz +0 -0
  166. package/build/client/_app/immutable/nodes/{9.DVspuDYY.js → 9.B2xXyeYp.js} +1 -1
  167. package/build/client/_app/immutable/nodes/9.B2xXyeYp.js.br +0 -0
  168. package/build/client/_app/immutable/nodes/9.B2xXyeYp.js.gz +0 -0
  169. package/build/client/_app/version.json +1 -1
  170. package/build/client/_app/version.json.br +0 -0
  171. package/build/client/_app/version.json.gz +0 -0
  172. package/build/server/chunks/0-BFGwTpfy.js +9 -0
  173. package/build/server/chunks/0-BFGwTpfy.js.map +1 -0
  174. package/build/server/chunks/1-B_bvJcKE.js +9 -0
  175. package/build/server/chunks/{1-C0HdTvXW.js.map → 1-B_bvJcKE.js.map} +1 -1
  176. package/build/server/chunks/10-CVT4oo13.js +9 -0
  177. package/build/server/chunks/10-CVT4oo13.js.map +1 -0
  178. package/build/server/chunks/15-B6cgfT20.js +9 -0
  179. package/build/server/chunks/{15-BQcb9C_y.js.map → 15-B6cgfT20.js.map} +1 -1
  180. package/build/server/chunks/17-fi2rlX_T.js +9 -0
  181. package/build/server/chunks/17-fi2rlX_T.js.map +1 -0
  182. package/build/server/chunks/18-CdypjWwX.js +9 -0
  183. package/build/server/chunks/18-CdypjWwX.js.map +1 -0
  184. package/build/server/chunks/2-CkwyQ1U4.js +9 -0
  185. package/build/server/chunks/2-CkwyQ1U4.js.map +1 -0
  186. package/build/server/chunks/3-BXLsvzRq.js +9 -0
  187. package/build/server/chunks/3-BXLsvzRq.js.map +1 -0
  188. package/build/server/chunks/4-C3Me7zq3.js +9 -0
  189. package/build/server/chunks/4-C3Me7zq3.js.map +1 -0
  190. package/build/server/chunks/5-DYS5LmK2.js +9 -0
  191. package/build/server/chunks/{5-CBdMutbv.js.map → 5-DYS5LmK2.js.map} +1 -1
  192. package/build/server/chunks/6-Cp6GA1FS.js +9 -0
  193. package/build/server/chunks/{6-FoEi7ggm.js.map → 6-Cp6GA1FS.js.map} +1 -1
  194. package/build/server/chunks/8-Csly_0ub.js +9 -0
  195. package/build/server/chunks/8-Csly_0ub.js.map +1 -0
  196. package/build/server/chunks/9-C1UZfJDT.js +9 -0
  197. package/build/server/chunks/9-C1UZfJDT.js.map +1 -0
  198. package/build/server/chunks/{AgentSidebar-BWBnqHnV.js → AgentSidebar-BqqgUCT2.js} +4 -4
  199. package/build/server/chunks/{AgentSidebar-BWBnqHnV.js.map → AgentSidebar-BqqgUCT2.js.map} +1 -1
  200. package/build/server/chunks/{Button-DH7gdU0s.js → Button-Huqrc2wY.js} +2 -2
  201. package/build/server/chunks/{Button-DH7gdU0s.js.map → Button-Huqrc2wY.js.map} +1 -1
  202. package/build/server/chunks/{ChatStepTrace-BivoNYOY.js → ChatStepTrace-CmyR6NOL.js} +21 -7
  203. package/build/server/chunks/ChatStepTrace-CmyR6NOL.js.map +1 -0
  204. package/build/server/chunks/{Icon-DP1YKCRV.js → Icon-BJfQMgGu.js} +2 -2
  205. package/build/server/chunks/{Icon-DP1YKCRV.js.map → Icon-BJfQMgGu.js.map} +1 -1
  206. package/build/server/chunks/{Input-CUJ9Cg7b.js → Input-D-uxKbuX.js} +2 -2
  207. package/build/server/chunks/{Input-CUJ9Cg7b.js.map → Input-D-uxKbuX.js.map} +1 -1
  208. package/build/server/chunks/{Modal-CGJuNpZ0.js → Modal-B_fVcSLK.js} +5 -5
  209. package/build/server/chunks/{Modal-CGJuNpZ0.js.map → Modal-B_fVcSLK.js.map} +1 -1
  210. package/build/server/chunks/{Panel-zvjxe036.js → Panel-mV52rK4D.js} +2 -2
  211. package/build/server/chunks/{Panel-zvjxe036.js.map → Panel-mV52rK4D.js.map} +1 -1
  212. package/build/server/chunks/{Tab-CUkyLqbN.js → Tab-tFWS4zzn.js} +8 -11
  213. package/build/server/chunks/Tab-tFWS4zzn.js.map +1 -0
  214. package/build/server/chunks/{_layout.svelte-B-0DHjLB.js → _layout.svelte-BjBXlTt-.js} +8 -8
  215. package/build/server/chunks/{_layout.svelte-B-0DHjLB.js.map → _layout.svelte-BjBXlTt-.js.map} +1 -1
  216. package/build/server/chunks/{_layout.svelte-BnrWYuLv.js → _layout.svelte-Bv87ouh2.js} +9 -10
  217. package/build/server/chunks/{_layout.svelte-BnrWYuLv.js.map → _layout.svelte-Bv87ouh2.js.map} +1 -1
  218. package/build/server/chunks/{_layout.svelte-B88WMyk0.js → _layout.svelte-CHJ_Q00I.js} +130 -37
  219. package/build/server/chunks/_layout.svelte-CHJ_Q00I.js.map +1 -0
  220. package/build/server/chunks/{_layout.svelte-wi6o5Ecu.js → _layout.svelte-DPP4TE7p.js} +305 -46
  221. package/build/server/chunks/_layout.svelte-DPP4TE7p.js.map +1 -0
  222. package/build/server/chunks/{_page.svelte-DhFNFMnl.js → _page.svelte-CDGPJuVG.js} +11 -11
  223. package/build/server/chunks/_page.svelte-CDGPJuVG.js.map +1 -0
  224. package/build/server/chunks/{_page.svelte-CeS_21Ho.js → _page.svelte-CXjHZqjR.js} +22 -20
  225. package/build/server/chunks/_page.svelte-CXjHZqjR.js.map +1 -0
  226. package/build/server/chunks/{_page.svelte-BoHt2cpr.js → _page.svelte-CZXVTrWJ.js} +5 -5
  227. package/build/server/chunks/{_page.svelte-BoHt2cpr.js.map → _page.svelte-CZXVTrWJ.js.map} +1 -1
  228. package/build/server/chunks/{_page.svelte-h_J4lNT9.js → _page.svelte-CvPyTgqp.js} +6 -6
  229. package/build/server/chunks/{_page.svelte-h_J4lNT9.js.map → _page.svelte-CvPyTgqp.js.map} +1 -1
  230. package/build/server/chunks/{_page.svelte-DHSYVLoj.js → _page.svelte-DHE9UaxV.js} +11 -12
  231. package/build/server/chunks/{_page.svelte-DHSYVLoj.js.map → _page.svelte-DHE9UaxV.js.map} +1 -1
  232. package/build/server/chunks/{_page.svelte-CHgQjBQj.js → _page.svelte-DSLYtPvs.js} +2 -2
  233. package/build/server/chunks/{_page.svelte-CHgQjBQj.js.map → _page.svelte-DSLYtPvs.js.map} +1 -1
  234. package/build/server/chunks/{_page.svelte-57pyhszV.js → _page.svelte-Yjru58jZ.js} +20 -107
  235. package/build/server/chunks/_page.svelte-Yjru58jZ.js.map +1 -0
  236. package/build/server/chunks/{_page.svelte-BSVJ2d2G.js → _page.svelte-nQ_thh1S.js} +186 -104
  237. package/build/server/chunks/_page.svelte-nQ_thh1S.js.map +1 -0
  238. package/build/server/chunks/{agents-context-CbFsZmi5.js → agents-context-BdX2j9DI.js} +2 -2
  239. package/build/server/chunks/{agents-context-CbFsZmi5.js.map → agents-context-BdX2j9DI.js.map} +1 -1
  240. package/build/server/chunks/{Dropdown-DnARl86Q.js → chat-content.svelte-x4GXVNwU.js} +16 -4
  241. package/build/server/chunks/chat-content.svelte-x4GXVNwU.js.map +1 -0
  242. package/build/server/chunks/{client-DO-hqMbT.js → client-D1Y2ZQJN.js} +4 -4
  243. package/build/server/chunks/{client-DO-hqMbT.js.map → client-D1Y2ZQJN.js.map} +1 -1
  244. package/build/server/chunks/{conversation-view-memory-CtbUZd_L.js → conversation-view-memory-CMgSQUdu.js} +2 -2
  245. package/build/server/chunks/{conversation-view-memory-CtbUZd_L.js.map → conversation-view-memory-CMgSQUdu.js.map} +1 -1
  246. package/build/server/chunks/{edit-workspace-context-tyHBPujC.js → edit-workspace-context-ClnqepZ4.js} +2 -2
  247. package/build/server/chunks/{edit-workspace-context-tyHBPujC.js.map → edit-workspace-context-ClnqepZ4.js.map} +1 -1
  248. package/build/server/chunks/error.svelte-B5VtiMGd.js +15 -0
  249. package/build/server/chunks/{error.svelte-DmKKN1RU.js.map → error.svelte-B5VtiMGd.js.map} +1 -1
  250. package/build/server/chunks/{index-LMsd1ih2.js → index-Do08hKbr.js} +8 -5
  251. package/build/server/chunks/index-Do08hKbr.js.map +1 -0
  252. package/build/server/chunks/{index-server-BRr5mZEq.js → index-server-CHFC9Apw.js} +2 -2
  253. package/build/server/chunks/index-server-CHFC9Apw.js.map +1 -0
  254. package/build/server/chunks/{index2-ClgfzZ89.js → index2-B_Xf0ugP.js} +3 -3
  255. package/build/server/chunks/{index2-ClgfzZ89.js.map → index2-B_Xf0ugP.js.map} +1 -1
  256. package/build/server/chunks/{index3-BdRUAffj.js → index3-C9gC86lU.js} +2 -2
  257. package/build/server/chunks/{index3-BdRUAffj.js.map → index3-C9gC86lU.js.map} +1 -1
  258. package/build/server/chunks/log-content.svelte-D5gN0L7Q.js +7 -0
  259. package/build/server/chunks/log-content.svelte-D5gN0L7Q.js.map +1 -0
  260. package/build/server/chunks/{root-4q2Pr7ck.js → root-DoSdrdfw.js} +2 -2
  261. package/build/server/chunks/root-DoSdrdfw.js.map +1 -0
  262. package/build/server/chunks/{source-selection-CcN1cgXc.js → source-selection-1aBuBpkL.js} +45 -2
  263. package/build/server/chunks/source-selection-1aBuBpkL.js.map +1 -0
  264. package/build/server/chunks/{state.svelte-Bd1i-u49.js → state.svelte-B2OaeWMp.js} +3 -3
  265. package/build/server/chunks/{state.svelte-Bd1i-u49.js.map → state.svelte-B2OaeWMp.js.map} +1 -1
  266. package/build/server/index.js +4 -4
  267. package/build/server/index.js.map +1 -1
  268. package/build/server/manifest.js +14 -14
  269. package/build/server/manifest.js.map +1 -1
  270. package/package.json +1 -5
  271. package/src/backend/roleplay/agent-loader.ts +49 -0
  272. package/src/backend/roleplay/prompt-edit-proposals.ts +38 -4
  273. package/src/backend/roleplay/prompt-file.ts +59 -0
  274. package/src/backend/roleplay/router.spec.ts +75 -0
  275. package/src/backend/roleplay/router.ts +123 -69
  276. package/src/backend/roleplay/suggest-file-edit.ts +160 -0
  277. package/src/backend/roleplay/suggest-prompt-edit.ts +9 -138
  278. package/src/backend/roleplay/suggest-test-fix.spec.ts +50 -0
  279. package/src/backend/roleplay/suggest-test-fix.ts +65 -0
  280. package/src/backend/roleplay/test-fix-proposal-acceptance.spec.ts +253 -0
  281. package/src/backend/tests/academy.ts +16 -2
  282. package/src/backend/tests/data.spec.ts +81 -2
  283. package/src/backend/tests/data.ts +74 -4
  284. package/src/backend/tests/router.ts +101 -36
  285. package/src/backend/tests/suggest-test-history-edit.spec.ts +20 -0
  286. package/src/backend/tests/suggest-test-history-edit.ts +52 -0
  287. package/src/backend/tests/test-edit-source.spec.ts +61 -0
  288. package/src/backend/tests/test-edit-source.ts +34 -0
  289. package/src/backend/tests/test-history-edit-proposals.ts +69 -0
  290. package/src/backend/tests/test-history-overrides.spec.ts +24 -0
  291. package/src/backend/tests/test-selection.ts +27 -0
  292. package/src/lib/api-telescope/client.ts +25 -0
  293. package/src/lib/api-telescope/source-selection.spec.ts +44 -0
  294. package/src/lib/api-telescope/source-selection.ts +28 -0
  295. package/src/lib/api-telescope/types.ts +28 -0
  296. package/src/lib/components/Modal.svelte +1 -1
  297. package/src/lib/components/Tab.svelte +10 -12
  298. package/src/lib/edit/edit-workspace-context.ts +29 -0
  299. package/src/lib/edit/test-ai-edit.spec.ts +31 -0
  300. package/src/lib/edit/test-ai-edit.ts +52 -0
  301. package/src/lib/monaco/bosun-theme.ts +6 -83
  302. package/src/lib/monaco/editor-appearance.spec.ts +84 -0
  303. package/src/lib/monaco/editor-appearance.ts +154 -0
  304. package/src/lib/monaco/editor-decorations.spec.ts +91 -0
  305. package/src/lib/monaco/editor-decorations.ts +133 -0
  306. package/src/lib/tests/assertion-types.ts +74 -0
  307. package/build/client/_app/immutable/assets/0.Rrc0O--C.css +0 -1
  308. package/build/client/_app/immutable/assets/0.Rrc0O--C.css.br +0 -0
  309. package/build/client/_app/immutable/assets/0.Rrc0O--C.css.gz +0 -0
  310. package/build/client/_app/immutable/assets/2.DtxQDOXx.css.br +0 -0
  311. package/build/client/_app/immutable/assets/2.DtxQDOXx.css.gz +0 -0
  312. package/build/client/_app/immutable/chunks/B1HdnQRQ.js +0 -1
  313. package/build/client/_app/immutable/chunks/B1HdnQRQ.js.br +0 -0
  314. package/build/client/_app/immutable/chunks/B1HdnQRQ.js.gz +0 -0
  315. package/build/client/_app/immutable/chunks/B5zf3x62.js.br +0 -0
  316. package/build/client/_app/immutable/chunks/B5zf3x62.js.gz +0 -0
  317. package/build/client/_app/immutable/chunks/BHHfrjbV.js.br +0 -2
  318. package/build/client/_app/immutable/chunks/BHHfrjbV.js.gz +0 -0
  319. package/build/client/_app/immutable/chunks/BU7aeYn4.js +0 -1
  320. package/build/client/_app/immutable/chunks/BU7aeYn4.js.br +0 -0
  321. package/build/client/_app/immutable/chunks/BU7aeYn4.js.gz +0 -0
  322. package/build/client/_app/immutable/chunks/BbGYcfPY.js +0 -3
  323. package/build/client/_app/immutable/chunks/BbGYcfPY.js.br +0 -0
  324. package/build/client/_app/immutable/chunks/BbGYcfPY.js.gz +0 -0
  325. package/build/client/_app/immutable/chunks/Bmd5zhWC.js.br +0 -0
  326. package/build/client/_app/immutable/chunks/Bmd5zhWC.js.gz +0 -0
  327. package/build/client/_app/immutable/chunks/BnqH7p3U.js.br +0 -0
  328. package/build/client/_app/immutable/chunks/BnqH7p3U.js.gz +0 -0
  329. package/build/client/_app/immutable/chunks/Bog028VR.js +0 -1
  330. package/build/client/_app/immutable/chunks/Bog028VR.js.br +0 -0
  331. package/build/client/_app/immutable/chunks/Bog028VR.js.gz +0 -0
  332. package/build/client/_app/immutable/chunks/Bv1mNXs0.js.br +0 -0
  333. package/build/client/_app/immutable/chunks/Bv1mNXs0.js.gz +0 -0
  334. package/build/client/_app/immutable/chunks/BvjXTrOz.js +0 -1
  335. package/build/client/_app/immutable/chunks/BvjXTrOz.js.br +0 -0
  336. package/build/client/_app/immutable/chunks/BvjXTrOz.js.gz +0 -0
  337. package/build/client/_app/immutable/chunks/C1R-s4aD.js +0 -1
  338. package/build/client/_app/immutable/chunks/C1R-s4aD.js.br +0 -0
  339. package/build/client/_app/immutable/chunks/C1R-s4aD.js.gz +0 -0
  340. package/build/client/_app/immutable/chunks/CC1OcqhR.js +0 -1
  341. package/build/client/_app/immutable/chunks/CC1OcqhR.js.br +0 -0
  342. package/build/client/_app/immutable/chunks/CC1OcqhR.js.gz +0 -0
  343. package/build/client/_app/immutable/chunks/CEHsomMo.js.br +0 -0
  344. package/build/client/_app/immutable/chunks/CJcZ2GVC.js.br +0 -0
  345. package/build/client/_app/immutable/chunks/CJcZ2GVC.js.gz +0 -0
  346. package/build/client/_app/immutable/chunks/CN555stc.js +0 -2
  347. package/build/client/_app/immutable/chunks/CN555stc.js.br +0 -0
  348. package/build/client/_app/immutable/chunks/CN555stc.js.gz +0 -0
  349. package/build/client/_app/immutable/chunks/CQg2Mme0.js +0 -9
  350. package/build/client/_app/immutable/chunks/CQg2Mme0.js.br +0 -0
  351. package/build/client/_app/immutable/chunks/CQg2Mme0.js.gz +0 -0
  352. package/build/client/_app/immutable/chunks/Cp_st-64.js.br +0 -0
  353. package/build/client/_app/immutable/chunks/Cp_st-64.js.gz +0 -0
  354. package/build/client/_app/immutable/chunks/D8mA-uZ4.js.br +0 -0
  355. package/build/client/_app/immutable/chunks/D8mA-uZ4.js.gz +0 -0
  356. package/build/client/_app/immutable/chunks/DCXjBDmY.js.br +0 -0
  357. package/build/client/_app/immutable/chunks/DCXjBDmY.js.gz +0 -0
  358. package/build/client/_app/immutable/chunks/DSLyVE1P.js +0 -1
  359. package/build/client/_app/immutable/chunks/DSLyVE1P.js.br +0 -0
  360. package/build/client/_app/immutable/chunks/DSLyVE1P.js.gz +0 -0
  361. package/build/client/_app/immutable/chunks/Ddv5LgEc.js.br +0 -0
  362. package/build/client/_app/immutable/chunks/Ddv5LgEc.js.gz +0 -0
  363. package/build/client/_app/immutable/chunks/DfcDjAv-.js.br +0 -0
  364. package/build/client/_app/immutable/chunks/DfcDjAv-.js.gz +0 -0
  365. package/build/client/_app/immutable/chunks/Dg0A8wPA.js +0 -1
  366. package/build/client/_app/immutable/chunks/Dg0A8wPA.js.br +0 -0
  367. package/build/client/_app/immutable/chunks/Dg0A8wPA.js.gz +0 -0
  368. package/build/client/_app/immutable/chunks/Dm49pcMm.js.br +0 -0
  369. package/build/client/_app/immutable/chunks/Dm49pcMm.js.gz +0 -0
  370. package/build/client/_app/immutable/chunks/DneQQ7D5.js.br +0 -0
  371. package/build/client/_app/immutable/chunks/DneQQ7D5.js.gz +0 -0
  372. package/build/client/_app/immutable/chunks/DoD3q5w5.js.br +0 -0
  373. package/build/client/_app/immutable/chunks/DoD3q5w5.js.gz +0 -0
  374. package/build/client/_app/immutable/chunks/DtXXy94i.js.br +0 -0
  375. package/build/client/_app/immutable/chunks/DtXXy94i.js.gz +0 -0
  376. package/build/client/_app/immutable/chunks/Dy2CFyD6.js.br +0 -0
  377. package/build/client/_app/immutable/chunks/Dy2CFyD6.js.gz +0 -0
  378. package/build/client/_app/immutable/chunks/DyBwTDJp.js.br +0 -0
  379. package/build/client/_app/immutable/chunks/DyBwTDJp.js.gz +0 -0
  380. package/build/client/_app/immutable/chunks/ILTCveYH.js +0 -1
  381. package/build/client/_app/immutable/chunks/ILTCveYH.js.br +0 -0
  382. package/build/client/_app/immutable/chunks/ILTCveYH.js.gz +0 -0
  383. package/build/client/_app/immutable/chunks/JcG4w2gF.js.br +0 -0
  384. package/build/client/_app/immutable/chunks/JcG4w2gF.js.gz +0 -0
  385. package/build/client/_app/immutable/chunks/UqjCSZmA.js.br +0 -0
  386. package/build/client/_app/immutable/chunks/UqjCSZmA.js.gz +0 -0
  387. package/build/client/_app/immutable/chunks/_YcrHZ6P.js +0 -1
  388. package/build/client/_app/immutable/chunks/_YcrHZ6P.js.br +0 -2
  389. package/build/client/_app/immutable/chunks/_YcrHZ6P.js.gz +0 -0
  390. package/build/client/_app/immutable/chunks/i6ygh6h8.js +0 -1
  391. package/build/client/_app/immutable/chunks/i6ygh6h8.js.br +0 -2
  392. package/build/client/_app/immutable/chunks/i6ygh6h8.js.gz +0 -0
  393. package/build/client/_app/immutable/chunks/oRi68ch3.js +0 -1
  394. package/build/client/_app/immutable/chunks/oRi68ch3.js.br +0 -0
  395. package/build/client/_app/immutable/chunks/oRi68ch3.js.gz +0 -0
  396. package/build/client/_app/immutable/chunks/pPpIn6tB.js.br +0 -0
  397. package/build/client/_app/immutable/chunks/pPpIn6tB.js.gz +0 -0
  398. package/build/client/_app/immutable/chunks/r0sHOWrM.js.br +0 -0
  399. package/build/client/_app/immutable/chunks/r0sHOWrM.js.gz +0 -0
  400. package/build/client/_app/immutable/chunks/wcTQUnZO.js.br +0 -0
  401. package/build/client/_app/immutable/chunks/wcTQUnZO.js.gz +0 -0
  402. package/build/client/_app/immutable/entry/app.DdO0gkPg.js +0 -2
  403. package/build/client/_app/immutable/entry/app.DdO0gkPg.js.br +0 -0
  404. package/build/client/_app/immutable/entry/app.DdO0gkPg.js.gz +0 -0
  405. package/build/client/_app/immutable/entry/start.eAjDq0c9.js +0 -1
  406. package/build/client/_app/immutable/entry/start.eAjDq0c9.js.br +0 -2
  407. package/build/client/_app/immutable/entry/start.eAjDq0c9.js.gz +0 -0
  408. package/build/client/_app/immutable/nodes/0.nG3DdvIX.js.br +0 -0
  409. package/build/client/_app/immutable/nodes/0.nG3DdvIX.js.gz +0 -0
  410. package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js +0 -1
  411. package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js.br +0 -0
  412. package/build/client/_app/immutable/nodes/1.Ceu0XS6v.js.gz +0 -0
  413. package/build/client/_app/immutable/nodes/10.dm2dgy31.js +0 -13
  414. package/build/client/_app/immutable/nodes/10.dm2dgy31.js.br +0 -0
  415. package/build/client/_app/immutable/nodes/10.dm2dgy31.js.gz +0 -0
  416. package/build/client/_app/immutable/nodes/15.D2I0y3ys.js.br +0 -0
  417. package/build/client/_app/immutable/nodes/15.D2I0y3ys.js.gz +0 -0
  418. package/build/client/_app/immutable/nodes/17.CKxGp0E7.js +0 -3
  419. package/build/client/_app/immutable/nodes/17.CKxGp0E7.js.br +0 -0
  420. package/build/client/_app/immutable/nodes/17.CKxGp0E7.js.gz +0 -0
  421. package/build/client/_app/immutable/nodes/18.DHJxyQpw.js +0 -11
  422. package/build/client/_app/immutable/nodes/18.DHJxyQpw.js.br +0 -0
  423. package/build/client/_app/immutable/nodes/18.DHJxyQpw.js.gz +0 -0
  424. package/build/client/_app/immutable/nodes/2.DesR2keg.js +0 -35
  425. package/build/client/_app/immutable/nodes/2.DesR2keg.js.br +0 -0
  426. package/build/client/_app/immutable/nodes/2.DesR2keg.js.gz +0 -0
  427. package/build/client/_app/immutable/nodes/3.BUKrXGR_.js +0 -1
  428. package/build/client/_app/immutable/nodes/3.BUKrXGR_.js.br +0 -0
  429. package/build/client/_app/immutable/nodes/3.BUKrXGR_.js.gz +0 -0
  430. package/build/client/_app/immutable/nodes/4.C8VxVbVn.js.br +0 -0
  431. package/build/client/_app/immutable/nodes/4.C8VxVbVn.js.gz +0 -0
  432. package/build/client/_app/immutable/nodes/5.BjrnKYaA.js.br +0 -0
  433. package/build/client/_app/immutable/nodes/5.BjrnKYaA.js.gz +0 -0
  434. package/build/client/_app/immutable/nodes/6.C_hEzPrU.js.br +0 -0
  435. package/build/client/_app/immutable/nodes/6.C_hEzPrU.js.gz +0 -0
  436. package/build/client/_app/immutable/nodes/8.BTYaOiDC.js +0 -2
  437. package/build/client/_app/immutable/nodes/8.BTYaOiDC.js.br +0 -0
  438. package/build/client/_app/immutable/nodes/8.BTYaOiDC.js.gz +0 -0
  439. package/build/client/_app/immutable/nodes/9.DVspuDYY.js.br +0 -0
  440. package/build/client/_app/immutable/nodes/9.DVspuDYY.js.gz +0 -0
  441. package/build/server/chunks/0-D_duQDWy.js +0 -9
  442. package/build/server/chunks/0-D_duQDWy.js.map +0 -1
  443. package/build/server/chunks/1-C0HdTvXW.js +0 -9
  444. package/build/server/chunks/10-DcfhCR4R.js +0 -9
  445. package/build/server/chunks/10-DcfhCR4R.js.map +0 -1
  446. package/build/server/chunks/15-BQcb9C_y.js +0 -9
  447. package/build/server/chunks/17-DuVCTioj.js +0 -9
  448. package/build/server/chunks/17-DuVCTioj.js.map +0 -1
  449. package/build/server/chunks/18-CT0VFW_p.js +0 -9
  450. package/build/server/chunks/18-CT0VFW_p.js.map +0 -1
  451. package/build/server/chunks/2-DgTzKQAP.js +0 -9
  452. package/build/server/chunks/2-DgTzKQAP.js.map +0 -1
  453. package/build/server/chunks/3-eQMSMzXP.js +0 -9
  454. package/build/server/chunks/3-eQMSMzXP.js.map +0 -1
  455. package/build/server/chunks/4-OaAJtDqP.js +0 -9
  456. package/build/server/chunks/4-OaAJtDqP.js.map +0 -1
  457. package/build/server/chunks/5-CBdMutbv.js +0 -9
  458. package/build/server/chunks/6-FoEi7ggm.js +0 -9
  459. package/build/server/chunks/8-B44yRkfX.js +0 -9
  460. package/build/server/chunks/8-B44yRkfX.js.map +0 -1
  461. package/build/server/chunks/9-eUjFpHzI.js +0 -9
  462. package/build/server/chunks/9-eUjFpHzI.js.map +0 -1
  463. package/build/server/chunks/ChatStepTrace-BivoNYOY.js.map +0 -1
  464. package/build/server/chunks/Dropdown-DnARl86Q.js.map +0 -1
  465. package/build/server/chunks/Tab-CUkyLqbN.js.map +0 -1
  466. package/build/server/chunks/_layout.svelte-B88WMyk0.js.map +0 -1
  467. package/build/server/chunks/_layout.svelte-wi6o5Ecu.js.map +0 -1
  468. package/build/server/chunks/_page.svelte-57pyhszV.js.map +0 -1
  469. package/build/server/chunks/_page.svelte-BSVJ2d2G.js.map +0 -1
  470. package/build/server/chunks/_page.svelte-CeS_21Ho.js.map +0 -1
  471. package/build/server/chunks/_page.svelte-DhFNFMnl.js.map +0 -1
  472. package/build/server/chunks/error.svelte-DmKKN1RU.js +0 -15
  473. package/build/server/chunks/index-LMsd1ih2.js.map +0 -1
  474. package/build/server/chunks/index-server-BRr5mZEq.js.map +0 -1
  475. package/build/server/chunks/log-content.svelte-CfQzj-v_.js +0 -20
  476. package/build/server/chunks/log-content.svelte-CfQzj-v_.js.map +0 -1
  477. package/build/server/chunks/root-4q2Pr7ck.js.map +0 -1
  478. package/build/server/chunks/source-selection-CcN1cgXc.js.map +0 -1
  479. /package/build/client/_app/immutable/assets/{ReadOnlyMonacoDiff.iiWNRlR-.css → Modal.iiWNRlR-.css} +0 -0
  480. /package/build/client/_app/immutable/assets/{ReadOnlyMonacoDiff.iiWNRlR-.css.br → Modal.iiWNRlR-.css.br} +0 -0
  481. /package/build/client/_app/immutable/assets/{ReadOnlyMonacoDiff.iiWNRlR-.css.gz → Modal.iiWNRlR-.css.gz} +0 -0
@@ -1,17 +1,17 @@
1
- import { w as head, p as ensure_array_like, o as attr_class, k as escape_html, r as clsx, m as attr, x as attr_style, l as derived, q as attributes } from './index-LMsd1ih2.js';
2
- import { B as Button } from './Button-DH7gdU0s.js';
3
- import { M as Modal } from './Modal-CGJuNpZ0.js';
4
- import { I as Input } from './Input-CUJ9Cg7b.js';
5
- import { o as onDestroy } from './index-server-BRr5mZEq.js';
6
- import { I as Icon$1, h as html } from './Icon-DP1YKCRV.js';
7
- import './client-DO-hqMbT.js';
1
+ import { x as head, p as ensure_array_like, o as attr_class, k as escape_html, t as clsx, m as attr, y as attr_style, l as derived, q as attributes } from './index-Do08hKbr.js';
2
+ import { B as Button } from './Button-Huqrc2wY.js';
3
+ import { M as Modal } from './Modal-B_fVcSLK.js';
4
+ import { I as Input } from './Input-D-uxKbuX.js';
5
+ import { o as onDestroy } from './index-server-CHFC9Apw.js';
6
+ import { I as Icon$1, h as html } from './Icon-BJfQMgGu.js';
7
+ import './client-D1Y2ZQJN.js';
8
8
  import 'js-yaml';
9
9
  import './trpc-client-D8L6vWf4.js';
10
- import { g as getEditWorkspaceContext } from './edit-workspace-context-tyHBPujC.js';
10
+ import { g as getEditWorkspaceContext } from './edit-workspace-context-ClnqepZ4.js';
11
11
  import { i as isMainStepName } from './steps-DzZCg39h.js';
12
- import './root-4q2Pr7ck.js';
13
- import './state.svelte-Bd1i-u49.js';
14
- import './index3-BdRUAffj.js';
12
+ import './root-DoSdrdfw.js';
13
+ import './state.svelte-B2OaeWMp.js';
14
+ import './index3-C9gC86lU.js';
15
15
  import './shared-server-DaWdgxVh.js';
16
16
  import '@trpc/client';
17
17
 
@@ -1389,6 +1389,7 @@ function MiniEditor($$renderer, $$props) {
1389
1389
  let {
1390
1390
  height = 120
1391
1391
  } = $$props;
1392
+ let editorDecorations = null;
1392
1393
  function handleWheelCapture(e) {
1393
1394
  e.stopPropagation();
1394
1395
  }
@@ -1404,6 +1405,8 @@ function MiniEditor($$renderer, $$props) {
1404
1405
  }
1405
1406
  }
1406
1407
  disposables = [];
1408
+ editorDecorations?.dispose();
1409
+ editorDecorations = null;
1407
1410
  const toDisposeModel = model;
1408
1411
  model = null;
1409
1412
  try {
@@ -1424,7 +1427,7 @@ function MiniEditor($$renderer, $$props) {
1424
1427
  });
1425
1428
  $$renderer2.push(`<div class="w-full"${attr_style(
1426
1429
  // Update language when prop changes without recreating the editor
1427
- // External value changes should update the model (avoid loops)
1430
+ // Keep the model and its semantic decorations in sync with external changes.
1428
1431
  `height:${height}px`
1429
1432
  )}></div>`);
1430
1433
  });
@@ -1436,7 +1439,9 @@ function RunResultActions($$renderer, $$props) {
1436
1439
  actionsInert = false,
1437
1440
  addTestDisabled = false,
1438
1441
  showAnalyze = true,
1439
- analyzeDisabled = false
1442
+ analyzeDisabled = false,
1443
+ fixDisabled = false,
1444
+ onFix
1440
1445
  } = $$props;
1441
1446
  let addStatus = "idle";
1442
1447
  onDestroy(() => {
@@ -1444,7 +1449,14 @@ function RunResultActions($$renderer, $$props) {
1444
1449
  let $$settled = true;
1445
1450
  let $$inner_renderer;
1446
1451
  function $$render_inner($$renderer3) {
1447
- $$renderer3.push(`<div class="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1"><button type="button"${attr("inert", actionsInert, true)}${attr("disabled", actionsDisabled || addTestDisabled || addStatus === "adding", true)} class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">${escape_html("Add test")}</button> `);
1452
+ $$renderer3.push(`<div class="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1">`);
1453
+ if (onFix) {
1454
+ $$renderer3.push("<!--[0-->");
1455
+ $$renderer3.push(`<button type="button"${attr("inert", actionsInert, true)}${attr("disabled", actionsDisabled || fixDisabled, true)} class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">Fix</button>`);
1456
+ } else {
1457
+ $$renderer3.push("<!--[-1-->");
1458
+ }
1459
+ $$renderer3.push(`<!--]--> <button type="button"${attr("inert", actionsInert, true)}${attr("disabled", actionsDisabled || addTestDisabled || addStatus === "adding", true)} class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">${escape_html("Add test")}</button> `);
1448
1460
  if (showAnalyze) {
1449
1461
  $$renderer3.push("<!--[0-->");
1450
1462
  $$renderer3.push(`<button type="button"${attr("disabled", analyzeDisabled, true)} class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">Analyze</button>`);
@@ -1473,6 +1485,29 @@ function RunResultActions($$renderer, $$props) {
1473
1485
  $$renderer2.subsume($$inner_renderer);
1474
1486
  });
1475
1487
  }
1488
+ function formatTestFixAssertion(label, value) {
1489
+ const normalizedLabel = label.trim() === "LLM" ? "" : label.trim();
1490
+ return [normalizedLabel, value.trim()].filter(Boolean).join(" ");
1491
+ }
1492
+ function buildTestFixRequest(input) {
1493
+ const assertion = formatTestFixAssertion(input.assertionLabel, input.assertionValue);
1494
+ return `You will be given the context, the conversation and the desired output and assertion about it. First, find why the prompt is not producing the correct result. It's usually one concrete instruction within the relevant section, or a contradiction. Then, change the prompt minimally so this will work, but keeping the prompt clean and comprehensive is more important. Try to provide as general solution as possible. Try to change just one part of the prompt, not multiple parts. Avoid adding exceptions and overrides. Avoid duplicating information that already exists in the prompt.
1495
+
1496
+ Context:
1497
+ ${input.context.trim()}
1498
+
1499
+ Conversation:
1500
+ ${input.conversation.trim()}
1501
+
1502
+ Desired outcome:
1503
+ ${input.expectedOutput.trim()}
1504
+
1505
+ Assertion about outcome:
1506
+ ${assertion}
1507
+
1508
+ Current incorrect outcome:
1509
+ ${input.currentIncorrectOutcome.trim()}`;
1510
+ }
1476
1511
  function erf(x) {
1477
1512
  const sign = x < 0 ? -1 : 1;
1478
1513
  const ax = Math.abs(x);
@@ -1538,6 +1573,70 @@ function getExpectedTrend(result, expectedRuns) {
1538
1573
  comparisonLabel
1539
1574
  };
1540
1575
  }
1576
+ const baseAssertionTypes = [
1577
+ { value: "llm-rubric", label: "LLM" },
1578
+ { value: "answer-relevance", label: "Answer Relevance (LLM)" },
1579
+ { value: "context-faithfulness", label: "Context Faithfulness (LLM)" },
1580
+ { value: "context-recall", label: "Context Recall (LLM)" },
1581
+ { value: "context-relevance", label: "Context Relevance (LLM)" },
1582
+ { value: "model-graded-closedqa", label: "Model-Graded Closed QA" },
1583
+ { value: "model-graded-factuality", label: "Model-Graded Factuality" },
1584
+ { value: "moderation", label: "Moderation" },
1585
+ { value: "classifier", label: "Classifier" },
1586
+ { value: "g-eval", label: "G-Eval" },
1587
+ { value: "factuality", label: "Factuality" },
1588
+ { value: "conversation-relevance", label: "Conversation Relevance" },
1589
+ { value: "equals", label: "Equals" },
1590
+ { value: "contains", label: "Contains" },
1591
+ { value: "icontains", label: "Contains (case-insensitive)" },
1592
+ { value: "contains-all", label: "Contains All" },
1593
+ { value: "contains-any", label: "Contains Any" },
1594
+ { value: "icontains-all", label: "Contains All (iCase)" },
1595
+ { value: "icontains-any", label: "Contains Any (iCase)" },
1596
+ { value: "starts-with", label: "Starts With" },
1597
+ { value: "regex", label: "Regex" },
1598
+ { value: "levenshtein", label: "Levenshtein Distance" },
1599
+ { value: "is-refusal", label: "Is Refusal" },
1600
+ { value: "is-html", label: "Is HTML" },
1601
+ { value: "contains-html", label: "Contains HTML" },
1602
+ { value: "is-json", label: "Is JSON" },
1603
+ { value: "contains-json", label: "Contains JSON" },
1604
+ { value: "is-xml", label: "Is XML" },
1605
+ { value: "contains-xml", label: "Contains XML" },
1606
+ { value: "is-sql", label: "Is SQL" },
1607
+ { value: "contains-sql", label: "Contains SQL" },
1608
+ { value: "similar", label: "Semantic Similarity" },
1609
+ { value: "rouge-n", label: "ROUGE-N" },
1610
+ { value: "bleu", label: "BLEU" },
1611
+ { value: "gleu", label: "GLEU" },
1612
+ { value: "meteor", label: "METEOR" },
1613
+ { value: "perplexity", label: "Perplexity" },
1614
+ { value: "perplexity-score", label: "Perplexity Score" },
1615
+ { value: "latency", label: "Latency" },
1616
+ { value: "cost", label: "Cost" },
1617
+ { value: "finish-reason", label: "Finish Reason" },
1618
+ { value: "trace-error-spans", label: "Trace Error Spans" },
1619
+ { value: "trace-span-count", label: "Trace Span Count" },
1620
+ { value: "trace-span-duration", label: "Trace Span Duration" },
1621
+ { value: "is-valid-function-call", label: "Is Valid Function Call" },
1622
+ { value: "is-valid-openai-function-call", label: "Is Valid OpenAI Function Call" },
1623
+ { value: "is-valid-openai-tools-call", label: "Is Valid OpenAI Tools Call" },
1624
+ { value: "guardrails", label: "Guardrails" },
1625
+ { value: "javascript", label: "JavaScript (custom)" },
1626
+ { value: "python", label: "Python (custom)" },
1627
+ { value: "webhook", label: "Webhook (custom)" },
1628
+ { value: "pi", label: "Pi Scorer" }
1629
+ ];
1630
+ const assertionTypes = [
1631
+ ...baseAssertionTypes,
1632
+ ...baseAssertionTypes.map((option) => ({
1633
+ value: `not-${option.value}`,
1634
+ label: `Not ${option.label}`
1635
+ }))
1636
+ ];
1637
+ function assertionLabel(value) {
1638
+ return assertionTypes.find((option) => option.value === value)?.label ?? value;
1639
+ }
1541
1640
  function _page($$renderer, $$props) {
1542
1641
  $$renderer.component(($$renderer2) => {
1543
1642
  const { state: workspace, actions } = getEditWorkspaceContext();
@@ -1569,89 +1668,18 @@ function _page($$renderer, $$props) {
1569
1668
  showViewerModal = true;
1570
1669
  }
1571
1670
  let analyzeRunning = false;
1572
- const baseAssertionTypes = [
1573
- { value: "llm-rubric", label: "LLM" },
1574
- { value: "answer-relevance", label: "Answer Relevance (LLM)" },
1575
- {
1576
- value: "context-faithfulness",
1577
- label: "Context Faithfulness (LLM)"
1578
- },
1579
- { value: "context-recall", label: "Context Recall (LLM)" },
1580
- { value: "context-relevance", label: "Context Relevance (LLM)" },
1581
- {
1582
- value: "model-graded-closedqa",
1583
- label: "Model-Graded Closed QA"
1584
- },
1585
- {
1586
- value: "model-graded-factuality",
1587
- label: "Model-Graded Factuality"
1588
- },
1589
- { value: "moderation", label: "Moderation" },
1590
- { value: "classifier", label: "Classifier" },
1591
- { value: "g-eval", label: "G-Eval" },
1592
- { value: "factuality", label: "Factuality" },
1593
- {
1594
- value: "conversation-relevance",
1595
- label: "Conversation Relevance"
1596
- },
1597
- { value: "equals", label: "Equals" },
1598
- { value: "contains", label: "Contains" },
1599
- { value: "icontains", label: "Contains (case-insensitive)" },
1600
- { value: "contains-all", label: "Contains All" },
1601
- { value: "contains-any", label: "Contains Any" },
1602
- { value: "icontains-all", label: "Contains All (iCase)" },
1603
- { value: "icontains-any", label: "Contains Any (iCase)" },
1604
- { value: "starts-with", label: "Starts With" },
1605
- { value: "regex", label: "Regex" },
1606
- { value: "levenshtein", label: "Levenshtein Distance" },
1607
- { value: "is-refusal", label: "Is Refusal" },
1608
- { value: "is-html", label: "Is HTML" },
1609
- { value: "contains-html", label: "Contains HTML" },
1610
- { value: "is-json", label: "Is JSON" },
1611
- { value: "contains-json", label: "Contains JSON" },
1612
- { value: "is-xml", label: "Is XML" },
1613
- { value: "contains-xml", label: "Contains XML" },
1614
- { value: "is-sql", label: "Is SQL" },
1615
- { value: "contains-sql", label: "Contains SQL" },
1616
- { value: "similar", label: "Semantic Similarity" },
1617
- { value: "rouge-n", label: "ROUGE-N" },
1618
- { value: "bleu", label: "BLEU" },
1619
- { value: "gleu", label: "GLEU" },
1620
- { value: "meteor", label: "METEOR" },
1621
- { value: "perplexity", label: "Perplexity" },
1622
- { value: "perplexity-score", label: "Perplexity Score" },
1623
- { value: "latency", label: "Latency" },
1624
- { value: "cost", label: "Cost" },
1625
- { value: "finish-reason", label: "Finish Reason" },
1626
- { value: "trace-error-spans", label: "Trace Error Spans" },
1627
- { value: "trace-span-count", label: "Trace Span Count" },
1628
- { value: "trace-span-duration", label: "Trace Span Duration" },
1629
- {
1630
- value: "is-valid-function-call",
1631
- label: "Is Valid Function Call"
1632
- },
1633
- {
1634
- value: "is-valid-openai-function-call",
1635
- label: "Is Valid OpenAI Function Call"
1636
- },
1637
- {
1638
- value: "is-valid-openai-tools-call",
1639
- label: "Is Valid OpenAI Tools Call"
1640
- },
1641
- { value: "guardrails", label: "Guardrails" },
1642
- { value: "javascript", label: "JavaScript (custom)" },
1643
- { value: "python", label: "Python (custom)" },
1644
- { value: "webhook", label: "Webhook (custom)" },
1645
- { value: "pi", label: "Pi Scorer" }
1646
- ];
1647
- const assertionTypes = [
1648
- ...baseAssertionTypes,
1649
- ...baseAssertionTypes.map((opt) => ({ value: `not-${opt.value}`, label: `Not ${opt.label}` }))
1650
- ];
1671
+ let tests = [];
1651
1672
  let running = false;
1652
1673
  Promise.resolve();
1653
1674
  let pendingSaveCount = 0;
1654
1675
  const isSaving = derived(() => pendingSaveCount > 0);
1676
+ let expandedTestIds = [];
1677
+ function historyEditKey(testId) {
1678
+ return `${agent()}\0${region() ?? ""}\0${testId}`;
1679
+ }
1680
+ function pendingHistoryEdit(testId) {
1681
+ return workspace.testHistoryEdits[historyEditKey(testId)] ?? null;
1682
+ }
1655
1683
  function parseHistoryTest(timestamp, row) {
1656
1684
  const test = row.test;
1657
1685
  const id = test.id;
@@ -1718,8 +1746,43 @@ function _page($$renderer, $$props) {
1718
1746
  }
1719
1747
  return { casesPassing, casesTotal, attemptsPassing, attemptsTotal };
1720
1748
  }
1721
- function assertionLabel(value) {
1722
- return assertionTypes.find((opt) => opt.value === value)?.label ?? value;
1749
+ function testAiEditTarget(row, kind, currentIncorrectOutcome) {
1750
+ const selectedMainStep = isMainStepName(row.step) && isMainStepName(workspace.currentStep?.name) ? workspace.currentStep : null;
1751
+ const exactStep = workspace.steps.find((step2) => step2.name === row.step);
1752
+ const promptStep = selectedMainStep ?? exactStep ?? workspace.steps.find((step2) => isMainStepName(row.step) ? isMainStepName(step2.name) : false);
1753
+ const step = promptStep?.name ?? row.step;
1754
+ const persistedPrompt = promptStep?.prompt ?? "";
1755
+ const promptDraft = workspace.promptDrafts[step] ?? persistedPrompt;
1756
+ const promptProposal = workspace.promptEdits[`${agent()}\0${step}`];
1757
+ return {
1758
+ kind,
1759
+ testId: row.id,
1760
+ step,
1761
+ prompt: promptProposal?.suggestedPrompt ?? promptDraft,
1762
+ basePrompt: kind === "test-fix" ? persistedPrompt : promptProposal?.originalPrompt ?? promptDraft,
1763
+ conversation: row.conversation,
1764
+ expectedOutput: row.expected_output,
1765
+ context: row.context,
1766
+ assertionLabel: row.evaluation_mode === "json-deep-equal" ? "" : assertionLabel(row.assertion_type),
1767
+ assertionValue: row.evaluation_mode === "json-deep-equal" ? "" : row.assertion_value,
1768
+ currentIncorrectOutcome
1769
+ };
1770
+ }
1771
+ function openTestFix(row, currentIncorrectOutcome) {
1772
+ showHistoryModal = false;
1773
+ const currentRow = tests.find((test) => test.id === row.id) ?? row;
1774
+ void setTestExpanded(currentRow.id, true);
1775
+ actions.openAiEdit(
1776
+ buildTestFixRequest({
1777
+ context: currentRow.context,
1778
+ conversation: currentRow.conversation,
1779
+ expectedOutput: currentRow.expected_output,
1780
+ assertionLabel: currentRow.evaluation_mode === "json-deep-equal" ? "" : assertionLabel(currentRow.assertion_type),
1781
+ assertionValue: currentRow.evaluation_mode === "json-deep-equal" ? "" : currentRow.assertion_value,
1782
+ currentIncorrectOutcome
1783
+ }),
1784
+ testAiEditTarget(currentRow, "test-fix", currentIncorrectOutcome)
1785
+ );
1723
1786
  }
1724
1787
  function formatRunDate(timestamp) {
1725
1788
  const d = new Date(timestamp);
@@ -1839,9 +1902,32 @@ ${editorExpected}
1839
1902
  }
1840
1903
  };
1841
1904
  }
1905
+ function buildExpectedOutputHighlights(row, highlight) {
1906
+ if (!highlight) return [];
1907
+ return [
1908
+ {
1909
+ startLine: highlight.startLine,
1910
+ endLine: highlight.endLine,
1911
+ className: row.evaluation_mode === "json-deep-equal" ? "test-expected-json-output" : "test-expected-output"
1912
+ }
1913
+ ];
1914
+ }
1842
1915
  function resultCountClass(result) {
1843
1916
  return result.total_runs > 0 && result.successes < result.total_runs ? "text-rc-red-600" : "text-rc-gray-200";
1844
1917
  }
1918
+ function setTestExpanded(id, expanded) {
1919
+ const agentId = (agent() ?? "").trim();
1920
+ if (!agentId) return Promise.resolve();
1921
+ const normalizedId = String(id ?? "").trim();
1922
+ if (!normalizedId) return Promise.resolve();
1923
+ const next = new Set(expandedTestIds);
1924
+ const has = next.has(normalizedId);
1925
+ if (expanded === has) return Promise.resolve();
1926
+ next.add(normalizedId);
1927
+ const nextIds = Array.from(next);
1928
+ expandedTestIds = nextIds;
1929
+ return Promise.resolve();
1930
+ }
1845
1931
  onDestroy(() => {
1846
1932
  });
1847
1933
  let $$settled = true;
@@ -1980,13 +2066,7 @@ ${editorExpected}
1980
2066
  $$renderer4.push(`<!----></div> `);
1981
2067
  MiniEditor($$renderer4, {
1982
2068
  value: t.conversation_ui,
1983
- highlights: expectedInfo.highlight ? [
1984
- {
1985
- startLine: expectedInfo.highlight.startLine,
1986
- endLine: expectedInfo.highlight.endLine,
1987
- className: t.evaluation_mode === "json-deep-equal" ? "test-expected-json-output" : "test-expected-output"
1988
- }
1989
- ] : void 0,
2069
+ highlights: buildExpectedOutputHighlights(t, expectedInfo.highlight),
1990
2070
  height: 220
1991
2071
  });
1992
2072
  $$renderer4.push(`<!----></div> <div class="rounded-b border-t border-rc-gray-700 bg-rc-gray-980 p-2">`);
@@ -2033,7 +2113,9 @@ ${editorExpected}
2033
2113
  actionsInert: isSaving(),
2034
2114
  addTestDisabled: !run.text.trim(),
2035
2115
  showAnalyze: t.evaluation_mode !== "json-deep-equal",
2036
- analyzeDisabled: analyzeRunning
2116
+ analyzeDisabled: analyzeRunning,
2117
+ fixDisabled: !!actions.getActivePromptEditId(),
2118
+ onFix: !run.success && !pendingHistoryEdit(t.id) ? () => openTestFix(t, run.text || run.errors || "—") : void 0
2037
2119
  });
2038
2120
  $$renderer4.push(`<!----></div></div>`);
2039
2121
  }
@@ -2126,4 +2208,4 @@ ${editorExpected}
2126
2208
  }
2127
2209
 
2128
2210
  export { _page as default };
2129
- //# sourceMappingURL=_page.svelte-BSVJ2d2G.js.map
2211
+ //# sourceMappingURL=_page.svelte-nQ_thh1S.js.map