@bolt-foundry/gambit 0.8.6-rc.5 → 0.8.6-rc.7

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 (262) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/esm/gambit/simulator-ui/dist/bundle.js +14226 -23324
  3. package/esm/gambit/simulator-ui/dist/bundle.js.map +4 -4
  4. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/normalization_ast.d.ts.map +1 -1
  5. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/normalization_ast.js +5 -0
  6. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.d.ts +1 -1
  7. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.d.ts.map +1 -1
  8. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.js +1 -0
  9. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts +1 -0
  10. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts.map +1 -1
  11. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.d.ts.map +1 -1
  12. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.js +5 -0
  13. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts +1 -1
  14. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts.map +1 -1
  15. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.js +1 -0
  16. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +1 -0
  17. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  18. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.d.ts.map +1 -1
  19. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.js +5 -0
  20. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts +1 -1
  21. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts.map +1 -1
  22. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.js +1 -0
  23. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts +1 -0
  24. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts.map +1 -1
  25. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/normalization_ast.d.ts.map +1 -1
  26. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/normalization_ast.js +5 -0
  27. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.d.ts +1 -1
  28. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.d.ts.map +1 -1
  29. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.js +1 -0
  30. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts +1 -0
  31. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts.map +1 -1
  32. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts +65 -0
  33. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts.map +1 -1
  34. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/resolver_reader.d.ts.map +1 -1
  35. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/resolver_reader.js +8 -1
  36. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +82 -0
  37. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  38. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.d.ts.map +1 -1
  39. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.js +8 -1
  40. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts +106 -0
  41. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts.map +1 -1
  42. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.d.ts.map +1 -1
  43. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.js +8 -1
  44. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts +32 -0
  45. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts.map +1 -1
  46. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/resolver_reader.d.ts.map +1 -1
  47. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/resolver_reader.js +8 -1
  48. package/esm/simulator-ui/isograph/components/Query/SimulatorBuildPage.d.ts.map +1 -1
  49. package/esm/simulator-ui/isograph/components/Query/SimulatorBuildPage.js +4 -11
  50. package/esm/simulator-ui/isograph/components/Query/SimulatorGradePage.d.ts.map +1 -1
  51. package/esm/simulator-ui/isograph/components/Query/SimulatorGradePage.js +79 -20
  52. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  53. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.js +88 -27
  54. package/esm/simulator-ui/isograph/components/Query/SimulatorVerifyPage.d.ts.map +1 -1
  55. package/esm/simulator-ui/isograph/components/Query/SimulatorVerifyPage.js +31 -17
  56. package/esm/simulator-ui/isograph/components/Query/SimulatorWorkspacesPage.d.ts.map +1 -1
  57. package/esm/simulator-ui/isograph/components/Query/SimulatorWorkspacesPage.js +2 -6
  58. package/esm/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.d.ts.map +1 -1
  59. package/esm/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.js +27 -23
  60. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts +3 -0
  61. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts.map +1 -1
  62. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.js +76 -50
  63. package/esm/simulator-ui/isograph/components/grade/GradeTabView.d.ts +14 -0
  64. package/esm/simulator-ui/isograph/components/grade/GradeTabView.d.ts.map +1 -1
  65. package/esm/simulator-ui/isograph/components/grade/GradeTabView.js +1 -1
  66. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorRedirect.d.ts.map +1 -1
  67. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorRedirect.js +3 -16
  68. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.d.ts.map +1 -1
  69. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.js +1 -9
  70. package/esm/simulator-ui/src/AppShell.d.ts.map +1 -1
  71. package/esm/simulator-ui/src/AppShell.js +21 -31
  72. package/esm/simulator-ui/src/Chat.d.ts +6 -30
  73. package/esm/simulator-ui/src/Chat.d.ts.map +1 -1
  74. package/esm/simulator-ui/src/Chat.js +14 -109
  75. package/esm/simulator-ui/src/MinimalRouterRoot.d.ts.map +1 -1
  76. package/esm/simulator-ui/src/MinimalRouterRoot.js +1 -16
  77. package/esm/simulator-ui/src/TestBotChatPanel.d.ts +2 -0
  78. package/esm/simulator-ui/src/TestBotChatPanel.d.ts.map +1 -1
  79. package/esm/simulator-ui/src/TestBotChatPanel.js +2 -2
  80. package/esm/simulator-ui/src/WorkbenchChatIntro.d.ts +10 -0
  81. package/esm/simulator-ui/src/WorkbenchChatIntro.d.ts.map +1 -0
  82. package/esm/simulator-ui/src/WorkbenchChatIntro.js +24 -0
  83. package/esm/simulator-ui/src/WorkbenchDrawerIso.d.ts +1 -0
  84. package/esm/simulator-ui/src/WorkbenchDrawerIso.d.ts.map +1 -1
  85. package/esm/simulator-ui/src/WorkbenchDrawerIso.js +3 -15
  86. package/esm/simulator-ui/src/gds/WorkbenchComposerChip.d.ts +2 -17
  87. package/esm/simulator-ui/src/gds/WorkbenchComposerChip.d.ts.map +1 -1
  88. package/esm/simulator-ui/src/grade/GradeResultsPanel.d.ts +10 -0
  89. package/esm/simulator-ui/src/grade/GradeResultsPanel.d.ts.map +1 -1
  90. package/esm/simulator-ui/src/grade/GradeResultsPanel.js +16 -1
  91. package/esm/simulator-ui/src/routing.d.ts.map +1 -1
  92. package/esm/simulator-ui/src/routing.js +0 -31
  93. package/esm/simulator-ui/src/shared.d.ts +1 -0
  94. package/esm/simulator-ui/src/shared.d.ts.map +1 -1
  95. package/esm/simulator-ui/src/shared.js +4 -2
  96. package/esm/simulator-ui/src/styles.d.ts +1 -1
  97. package/esm/simulator-ui/src/styles.d.ts.map +1 -1
  98. package/esm/simulator-ui/src/styles.js +65 -0
  99. package/esm/simulator-ui/src/utils.d.ts +1 -0
  100. package/esm/simulator-ui/src/utils.d.ts.map +1 -1
  101. package/esm/simulator-ui/src/utils.js +2 -0
  102. package/esm/simulator-ui/src/workbenchChipStore.d.ts +12 -0
  103. package/esm/simulator-ui/src/workbenchChipStore.d.ts.map +1 -0
  104. package/esm/simulator-ui/src/workbenchChipStore.js +69 -0
  105. package/esm/simulator-ui/src/workbenchContext.d.ts +50 -0
  106. package/esm/simulator-ui/src/workbenchContext.d.ts.map +1 -0
  107. package/esm/simulator-ui/src/workbenchContext.js +159 -0
  108. package/esm/src/server/request_handler.d.ts.map +1 -1
  109. package/esm/src/server/request_handler.js +0 -40
  110. package/esm/src/server.js +1 -1
  111. package/esm/src/server_legacy_api_routes.d.ts +2 -122
  112. package/esm/src/server_legacy_api_routes.d.ts.map +1 -1
  113. package/esm/src/server_legacy_api_routes.js +0 -591
  114. package/esm/src/server_simulator_ui.d.ts.map +1 -1
  115. package/esm/src/server_simulator_ui.js +34 -0
  116. package/esm/src/server_ui_routes.d.ts.map +1 -1
  117. package/esm/src/server_ui_routes.js +0 -2
  118. package/esm/src/server_workspace_graphql.d.ts +1 -1
  119. package/esm/src/server_workspace_graphql.d.ts.map +1 -1
  120. package/esm/src/server_workspace_graphql.js +66 -46
  121. package/esm/src/simulator_graphql.d.ts.map +1 -1
  122. package/esm/src/simulator_graphql.js +5 -0
  123. package/package.json +1 -1
  124. package/script/gambit/simulator-ui/dist/bundle.js +14226 -23324
  125. package/script/gambit/simulator-ui/dist/bundle.js.map +4 -4
  126. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/normalization_ast.d.ts.map +1 -1
  127. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/normalization_ast.js +5 -0
  128. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.d.ts +1 -1
  129. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.d.ts.map +1 -1
  130. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/query_text.js +1 -0
  131. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts +1 -0
  132. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts.map +1 -1
  133. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.d.ts.map +1 -1
  134. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.js +5 -0
  135. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts +1 -1
  136. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts.map +1 -1
  137. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.js +1 -0
  138. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +1 -0
  139. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  140. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.d.ts.map +1 -1
  141. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.js +5 -0
  142. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts +1 -1
  143. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts.map +1 -1
  144. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.js +1 -0
  145. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts +1 -0
  146. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts.map +1 -1
  147. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/normalization_ast.d.ts.map +1 -1
  148. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/normalization_ast.js +5 -0
  149. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.d.ts +1 -1
  150. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.d.ts.map +1 -1
  151. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/query_text.js +1 -0
  152. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts +1 -0
  153. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts.map +1 -1
  154. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts +65 -0
  155. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts.map +1 -1
  156. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/resolver_reader.d.ts.map +1 -1
  157. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/resolver_reader.js +8 -1
  158. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +82 -0
  159. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  160. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.d.ts.map +1 -1
  161. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.js +8 -1
  162. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts +106 -0
  163. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts.map +1 -1
  164. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.d.ts.map +1 -1
  165. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.js +8 -1
  166. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts +32 -0
  167. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts.map +1 -1
  168. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/resolver_reader.d.ts.map +1 -1
  169. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/resolver_reader.js +8 -1
  170. package/script/simulator-ui/isograph/components/Query/SimulatorBuildPage.d.ts.map +1 -1
  171. package/script/simulator-ui/isograph/components/Query/SimulatorBuildPage.js +4 -11
  172. package/script/simulator-ui/isograph/components/Query/SimulatorGradePage.d.ts.map +1 -1
  173. package/script/simulator-ui/isograph/components/Query/SimulatorGradePage.js +112 -20
  174. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  175. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.js +121 -27
  176. package/script/simulator-ui/isograph/components/Query/SimulatorVerifyPage.d.ts.map +1 -1
  177. package/script/simulator-ui/isograph/components/Query/SimulatorVerifyPage.js +31 -17
  178. package/script/simulator-ui/isograph/components/Query/SimulatorWorkspacesPage.d.ts.map +1 -1
  179. package/script/simulator-ui/isograph/components/Query/SimulatorWorkspacesPage.js +2 -6
  180. package/script/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.d.ts.map +1 -1
  181. package/script/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.js +26 -22
  182. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts +3 -0
  183. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts.map +1 -1
  184. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.js +75 -49
  185. package/script/simulator-ui/isograph/components/grade/GradeTabView.d.ts +14 -0
  186. package/script/simulator-ui/isograph/components/grade/GradeTabView.d.ts.map +1 -1
  187. package/script/simulator-ui/isograph/components/grade/GradeTabView.js +1 -1
  188. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorRedirect.d.ts.map +1 -1
  189. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorRedirect.js +3 -16
  190. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.d.ts.map +1 -1
  191. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.js +1 -9
  192. package/script/simulator-ui/src/AppShell.d.ts.map +1 -1
  193. package/script/simulator-ui/src/AppShell.js +21 -31
  194. package/script/simulator-ui/src/Chat.d.ts +6 -30
  195. package/script/simulator-ui/src/Chat.d.ts.map +1 -1
  196. package/script/simulator-ui/src/Chat.js +14 -109
  197. package/script/simulator-ui/src/MinimalRouterRoot.d.ts.map +1 -1
  198. package/script/simulator-ui/src/MinimalRouterRoot.js +1 -16
  199. package/script/simulator-ui/src/TestBotChatPanel.d.ts +2 -0
  200. package/script/simulator-ui/src/TestBotChatPanel.d.ts.map +1 -1
  201. package/script/simulator-ui/src/TestBotChatPanel.js +2 -2
  202. package/script/simulator-ui/src/WorkbenchChatIntro.d.ts +10 -0
  203. package/script/simulator-ui/src/WorkbenchChatIntro.d.ts.map +1 -0
  204. package/script/simulator-ui/src/WorkbenchChatIntro.js +30 -0
  205. package/script/simulator-ui/src/WorkbenchDrawerIso.d.ts +1 -0
  206. package/script/simulator-ui/src/WorkbenchDrawerIso.d.ts.map +1 -1
  207. package/script/simulator-ui/src/WorkbenchDrawerIso.js +3 -15
  208. package/script/simulator-ui/src/gds/WorkbenchComposerChip.d.ts +2 -17
  209. package/script/simulator-ui/src/gds/WorkbenchComposerChip.d.ts.map +1 -1
  210. package/script/simulator-ui/src/grade/GradeResultsPanel.d.ts +10 -0
  211. package/script/simulator-ui/src/grade/GradeResultsPanel.d.ts.map +1 -1
  212. package/script/simulator-ui/src/grade/GradeResultsPanel.js +16 -1
  213. package/script/simulator-ui/src/routing.d.ts.map +1 -1
  214. package/script/simulator-ui/src/routing.js +0 -31
  215. package/script/simulator-ui/src/shared.d.ts +1 -0
  216. package/script/simulator-ui/src/shared.d.ts.map +1 -1
  217. package/script/simulator-ui/src/shared.js +4 -2
  218. package/script/simulator-ui/src/styles.d.ts +1 -1
  219. package/script/simulator-ui/src/styles.d.ts.map +1 -1
  220. package/script/simulator-ui/src/styles.js +65 -0
  221. package/script/simulator-ui/src/utils.d.ts +1 -0
  222. package/script/simulator-ui/src/utils.d.ts.map +1 -1
  223. package/script/simulator-ui/src/utils.js +3 -1
  224. package/script/simulator-ui/src/workbenchChipStore.d.ts +12 -0
  225. package/script/simulator-ui/src/workbenchChipStore.d.ts.map +1 -0
  226. package/script/simulator-ui/src/workbenchChipStore.js +108 -0
  227. package/script/simulator-ui/src/workbenchContext.d.ts +50 -0
  228. package/script/simulator-ui/src/workbenchContext.d.ts.map +1 -0
  229. package/script/simulator-ui/src/workbenchContext.js +165 -0
  230. package/script/src/server/request_handler.d.ts.map +1 -1
  231. package/script/src/server/request_handler.js +0 -40
  232. package/script/src/server.js +1 -1
  233. package/script/src/server_legacy_api_routes.d.ts +2 -122
  234. package/script/src/server_legacy_api_routes.d.ts.map +1 -1
  235. package/script/src/server_legacy_api_routes.js +0 -624
  236. package/script/src/server_simulator_ui.d.ts.map +1 -1
  237. package/script/src/server_simulator_ui.js +34 -0
  238. package/script/src/server_ui_routes.d.ts.map +1 -1
  239. package/script/src/server_ui_routes.js +0 -2
  240. package/script/src/server_workspace_graphql.d.ts +1 -1
  241. package/script/src/server_workspace_graphql.d.ts.map +1 -1
  242. package/script/src/server_workspace_graphql.js +66 -46
  243. package/script/src/simulator_graphql.d.ts.map +1 -1
  244. package/script/src/simulator_graphql.js +5 -0
  245. package/esm/simulator-ui/src/ProviderLoginPanel.d.ts +0 -8
  246. package/esm/simulator-ui/src/ProviderLoginPanel.d.ts.map +0 -1
  247. package/esm/simulator-ui/src/ProviderLoginPanel.js +0 -156
  248. package/esm/simulator-ui/src/WorkbenchDrawer.d.ts +0 -38
  249. package/esm/simulator-ui/src/WorkbenchDrawer.d.ts.map +0 -1
  250. package/esm/simulator-ui/src/WorkbenchDrawer.js +0 -716
  251. package/esm/simulator-ui/src/gds/Accordion.d.ts +0 -19
  252. package/esm/simulator-ui/src/gds/Accordion.d.ts.map +0 -1
  253. package/esm/simulator-ui/src/gds/Accordion.js +0 -47
  254. package/script/simulator-ui/src/ProviderLoginPanel.d.ts +0 -8
  255. package/script/simulator-ui/src/ProviderLoginPanel.d.ts.map +0 -1
  256. package/script/simulator-ui/src/ProviderLoginPanel.js +0 -162
  257. package/script/simulator-ui/src/WorkbenchDrawer.d.ts +0 -38
  258. package/script/simulator-ui/src/WorkbenchDrawer.d.ts.map +0 -1
  259. package/script/simulator-ui/src/WorkbenchDrawer.js +0 -722
  260. package/script/simulator-ui/src/gds/Accordion.d.ts +0 -19
  261. package/script/simulator-ui/src/gds/Accordion.d.ts.map +0 -1
  262. package/script/simulator-ui/src/gds/Accordion.js +0 -86
@@ -6,78 +6,12 @@ import Callout from "./gds/Callout.js";
6
6
  import WorkbenchComposerChip from "./gds/WorkbenchComposerChip.js";
7
7
  import { ActivityTranscriptRows, bucketBuildChatDisplay, } from "./ActivityTranscriptRows.js";
8
8
  import { useBuildChat } from "./BuildChatContext.js";
9
+ import { parseWorkbenchMessageContext, toWorkbenchMessageContext, } from "./workbenchContext.js";
9
10
  export { bucketBuildChatDisplay };
10
11
  const ERROR_CONTEXT_START_MARKER = "[gambit:error-context/v1]";
11
12
  const ERROR_CONTEXT_END_MARKER = "[/gambit:error-context/v1]";
12
13
  const WORKBENCH_CONTEXT_START_MARKER = "[gambit:workbench-context/v2]";
13
14
  const WORKBENCH_CONTEXT_END_MARKER = "[/gambit:workbench-context/v2]";
14
- function parseWorkbenchContext(value) {
15
- if (!value || typeof value !== "object" || Array.isArray(value)) {
16
- return null;
17
- }
18
- const record = value;
19
- if (typeof record.capturedAt !== "string" ||
20
- record.capturedAt.trim().length === 0) {
21
- return null;
22
- }
23
- const workspaceId = typeof record.workspaceId === "string"
24
- ? record.workspaceId
25
- : undefined;
26
- const runId = typeof record.runId === "string" ? record.runId : undefined;
27
- if (record.source === "scenario_run_error") {
28
- if (typeof record.error !== "string" || record.error.trim().length === 0) {
29
- return null;
30
- }
31
- return {
32
- source: "scenario_run_error",
33
- workspaceId,
34
- runId,
35
- capturedAt: record.capturedAt,
36
- error: record.error,
37
- };
38
- }
39
- if (record.source === "message_rating") {
40
- if (typeof record.score !== "number" || !Number.isFinite(record.score) ||
41
- typeof record.messageRefId !== "string" ||
42
- record.messageRefId.trim().length === 0) {
43
- return null;
44
- }
45
- return {
46
- source: "message_rating",
47
- workspaceId,
48
- runId,
49
- capturedAt: record.capturedAt,
50
- messageRefId: record.messageRefId,
51
- statePath: typeof record.statePath === "string"
52
- ? record.statePath
53
- : undefined,
54
- statePointer: typeof record.statePointer === "string"
55
- ? record.statePointer
56
- : undefined,
57
- score: record.score,
58
- reason: typeof record.reason === "string" ? record.reason : undefined,
59
- };
60
- }
61
- if (record.source === "grading_flag") {
62
- if (typeof record.refId !== "string" || record.refId.trim().length === 0 ||
63
- typeof record.message !== "string" || record.message.trim().length === 0) {
64
- return null;
65
- }
66
- return {
67
- source: "grading_flag",
68
- workspaceId,
69
- runId,
70
- capturedAt: record.capturedAt,
71
- flagId: typeof record.flagId === "string" ? record.flagId : undefined,
72
- refId: record.refId,
73
- score: typeof record.score === "number" && Number.isFinite(record.score)
74
- ? record.score
75
- : undefined,
76
- message: record.message,
77
- };
78
- }
79
- return null;
80
- }
81
15
  function decodeLegacyWorkbenchErrorContext(content) {
82
16
  if (typeof content !== "string")
83
17
  return null;
@@ -97,7 +31,7 @@ function decodeLegacyWorkbenchErrorContext(content) {
97
31
  catch {
98
32
  return null;
99
33
  }
100
- const context = parseWorkbenchContext(parsed);
34
+ const context = parseWorkbenchMessageContext(parsed);
101
35
  if (!context || context.source !== "scenario_run_error") {
102
36
  return null;
103
37
  }
@@ -106,7 +40,7 @@ function decodeLegacyWorkbenchErrorContext(content) {
106
40
  const remainder = content.slice(markerEndIndex);
107
41
  const body = remainder.startsWith("\n") ? remainder.slice(1) : remainder;
108
42
  return {
109
- context,
43
+ context: context,
110
44
  body,
111
45
  };
112
46
  }
@@ -115,7 +49,7 @@ export function encodeWorkbenchMessageWithErrorContext(message, context) {
115
49
  }
116
50
  export function encodeWorkbenchMessageWithContext(message, contexts) {
117
51
  const body = message.trim();
118
- const encodedContexts = contexts.filter((context) => parseWorkbenchContext(context));
52
+ const encodedContexts = contexts.filter((context) => parseWorkbenchMessageContext(context));
119
53
  if (encodedContexts.length === 0)
120
54
  return body;
121
55
  return `${WORKBENCH_CONTEXT_START_MARKER}\n${JSON.stringify(encodedContexts)}\n${WORKBENCH_CONTEXT_END_MARKER}${body ? `\n${body}` : ""}`;
@@ -126,7 +60,10 @@ export function decodeWorkbenchMessageWithErrorContext(content) {
126
60
  const errorContext = decoded.contexts.find((context) => context.source === "scenario_run_error");
127
61
  if (!errorContext)
128
62
  return null;
129
- return { context: errorContext, body: decoded.body };
63
+ return {
64
+ context: errorContext,
65
+ body: decoded.body,
66
+ };
130
67
  }
131
68
  return decodeLegacyWorkbenchErrorContext(content);
132
69
  }
@@ -154,7 +91,7 @@ export function decodeWorkbenchMessageWithContext(content) {
154
91
  return null;
155
92
  }
156
93
  const records = Array.isArray(parsed) ? parsed : [parsed];
157
- const contexts = records.map((record) => parseWorkbenchContext(record))
94
+ const contexts = records.map((record) => parseWorkbenchMessageContext(record))
158
95
  .filter((context) => Boolean(context));
159
96
  if (contexts.length === 0)
160
97
  return null;
@@ -290,10 +227,12 @@ export function ChatView(props) {
290
227
  run.messages.length === 0;
291
228
  const resolvedComposerChips = composerChips ??
292
229
  (scenarioErrorChip
293
- ? [{
230
+ ? [
231
+ {
294
232
  ...scenarioErrorChip,
295
233
  chipId: "scenario_run_error",
296
- }]
234
+ },
235
+ ]
297
236
  : []);
298
237
  const updateComposerChips = useCallback((next) => {
299
238
  if (onComposerChipsChange) {
@@ -326,41 +265,7 @@ export function ChatView(props) {
326
265
  const message = chatDraft.trim();
327
266
  const activeChips = resolvedComposerChips.filter((chip) => chip.enabled);
328
267
  const activeChipIds = new Set(activeChips.map((chip) => chip.chipId));
329
- const activeContexts = activeChips
330
- .map((chip) => {
331
- if (chip.source === "scenario_run_error") {
332
- return {
333
- source: "scenario_run_error",
334
- workspaceId: chip.workspaceId,
335
- runId: chip.runId,
336
- capturedAt: chip.capturedAt,
337
- error: chip.error,
338
- };
339
- }
340
- if (chip.source === "message_rating") {
341
- return {
342
- source: "message_rating",
343
- workspaceId: chip.workspaceId,
344
- runId: chip.runId,
345
- capturedAt: chip.capturedAt,
346
- messageRefId: chip.messageRefId,
347
- statePath: chip.statePath,
348
- statePointer: chip.statePointer,
349
- score: chip.score,
350
- reason: chip.reason,
351
- };
352
- }
353
- return {
354
- source: "grading_flag",
355
- workspaceId: chip.workspaceId,
356
- runId: chip.runId,
357
- capturedAt: chip.capturedAt,
358
- flagId: chip.flagId,
359
- refId: chip.refId,
360
- score: chip.score,
361
- message: chip.message,
362
- };
363
- });
268
+ const activeContexts = activeChips.map((chip) => toWorkbenchMessageContext(chip));
364
269
  if (!message && activeContexts.length === 0)
365
270
  return;
366
271
  const outboundMessage = activeContexts.length > 0
@@ -1 +1 @@
1
- {"version":3,"file":"MinimalRouterRoot.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/MinimalRouterRoot.tsx"],"names":[],"mappings":"AAKA,wBAAgB,iBAAiB,gCA+ChC"}
1
+ {"version":3,"file":"MinimalRouterRoot.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/MinimalRouterRoot.tsx"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,gCAmChC"}
@@ -1,30 +1,15 @@
1
- import { useEffect } from "react";
2
1
  import { AppIsoMinimal } from "./AppIsoMinimal.js";
3
2
  import { isographAppRoutes, matchRouteWithParams } from "./routing.js";
4
3
  import { useRouter } from "./RouterContext.js";
5
4
  export function MinimalRouterRoot() {
6
5
  const { currentPath, queryParams, navigate } = useRouter();
7
6
  const isoMatch = Array.from(isographAppRoutes).find(([pattern]) => matchRouteWithParams(currentPath, pattern).match);
8
- useEffect(() => {
9
- if (!currentPath.startsWith("/isograph"))
10
- return;
11
- if (!isoMatch)
12
- return;
13
- const [pattern] = isoMatch;
14
- // deno-lint-ignore no-console
15
- console.log("[gambit:isograph] route matched", {
16
- currentPath,
17
- pattern,
18
- });
19
- }, [currentPath, isoMatch]);
20
7
  if (isoMatch) {
21
8
  const [pattern, entrypoint] = isoMatch;
22
9
  const match = matchRouteWithParams(currentPath, pattern);
23
10
  const rawParams = { ...match.params, ...queryParams };
24
11
  const isWorkspaceShellRoute = pattern.startsWith("/workspaces/:workspaceId/build") ||
25
- pattern.startsWith("/workspaces/:workspaceId/test") ||
26
- pattern.startsWith("/isograph/workspaces/:workspaceId/build") ||
27
- pattern.startsWith("/isograph/workspaces/:workspaceId/test");
12
+ pattern.startsWith("/workspaces/:workspaceId/test");
28
13
  const params = isWorkspaceShellRoute &&
29
14
  typeof rawParams.workspaceId === "string" &&
30
15
  rawParams.workspaceId.length > 0
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  import { type BuildDisplayMessage, type TestBotRun } from "./utils.js";
3
+ import type { FeedbackEntry } from "./utils.js";
3
4
  type Props = {
4
5
  run: TestBotRun;
5
6
  runWorkspaceId?: string;
@@ -52,6 +53,7 @@ type Props = {
52
53
  runId?: string;
53
54
  error: string;
54
55
  }) => void;
56
+ onAddFeedbackToWorkbench?: (feedback: FeedbackEntry) => void;
55
57
  };
56
58
  export default function TestBotChatPanel(props: Props): React.JSX.Element;
57
59
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"TestBotChatPanel.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/TestBotChatPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EACL,KAAK,mBAAmB,EAIxB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AASpB,KAAK,KAAK,GAAG;IACX,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC5C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC5C,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,aAAa,EAAE;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,GAAG,IAAI,CAAC;IACT,kBAAkB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACzE,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,EAAE,CACP,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,MAAM,CAAC,EAAE,MAAM,KACZ,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,cAAc,EAAE,CACd,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,KACX,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,qBAAqB,CAAC,EAAE,CACtB,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,oBAAoB,GAAG,kBAAkB,CAAC;QACnD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KACE,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAAK,EAAE,KAAK,qBAmZpD"}
1
+ {"version":3,"file":"TestBotChatPanel.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/TestBotChatPanel.tsx"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import Button from "./gds/Button.js";
9
9
  import Badge from "./gds/Badge.js";
10
10
  import Callout from "./gds/Callout.js";
11
11
  export default function TestBotChatPanel(props) {
12
- const { run, runWorkspaceId, runStatusLabel, testChatDisplay, transcriptMessageCount, transcriptUserMessageCount, activeWorkspaceId, requestedRunNotFound, canStart, canRunPersona, hasPersonaSelection, botJsonErrorCount, deckJsonErrorCount, missingBotInput, missingDeckInit, lastInitFill, isUserStart, showStartOverlay, canStartAssistant, canSendChat, chatDraft, setChatDraft, chatError, optimisticUser, streamingUser, streamingAssistant, startRun, stopRun, handleNewChat, handleSendChat, handleStartAssistant, onScore, onReasonChange, onAddErrorToWorkbench, } = props;
12
+ const { run, runWorkspaceId, runStatusLabel, testChatDisplay, transcriptMessageCount, transcriptUserMessageCount, activeWorkspaceId, requestedRunNotFound, canStart, canRunPersona, hasPersonaSelection, botJsonErrorCount, deckJsonErrorCount, missingBotInput, missingDeckInit, lastInitFill, isUserStart, showStartOverlay, canStartAssistant, canSendChat, chatDraft, setChatDraft, chatError, optimisticUser, streamingUser, streamingAssistant, startRun, stopRun, handleNewChat, handleSendChat, handleStartAssistant, onScore, onReasonChange, onAddErrorToWorkbench, onAddFeedbackToWorkbench, } = props;
13
13
  const resolvedMessageCount = transcriptMessageCount ?? run.messages.length;
14
14
  const resolvedUserMessageCount = transcriptUserMessageCount ??
15
15
  countUserMessages(run.messages);
@@ -131,7 +131,7 @@ export default function TestBotChatPanel(props) {
131
131
  React.createElement("summary", null, "Meta"),
132
132
  React.createElement("pre", { className: "bubble-json" }, formatJson(message.respondMeta))))))
133
133
  : message.content,
134
- message.messageRefId && runWorkspaceId && (React.createElement(FeedbackControls, { messageRefId: message.messageRefId, feedback: message.feedback, disabled: !message.feedbackEligible, onScore: onScore, onReasonChange: onReasonChange })))));
134
+ message.messageRefId && runWorkspaceId && (React.createElement(FeedbackControls, { messageRefId: message.messageRefId, feedback: message.feedback, disabled: !message.feedbackEligible, onScore: onScore, onReasonChange: onReasonChange, onAddToWorkbench: onAddFeedbackToWorkbench })))));
135
135
  } }),
136
136
  streamingUser?.text && streamingUser.runId === run.id &&
137
137
  (streamingUser.expectedUserCount === undefined ||
@@ -0,0 +1,10 @@
1
+ import type { ReactNode } from "react";
2
+ export default function WorkbenchChatIntro(props: {
3
+ disabled?: boolean;
4
+ leadingContent?: ReactNode;
5
+ pending?: boolean;
6
+ title?: string;
7
+ startLabel?: string;
8
+ onStart?: () => void;
9
+ }): import("react").JSX.Element;
10
+ //# sourceMappingURL=WorkbenchChatIntro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkbenchChatIntro.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/WorkbenchChatIntro.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,KAAK,EAAE;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,+BAgDA"}
@@ -0,0 +1,24 @@
1
+ import Button from "./gds/Button.js";
2
+ import Callout from "./gds/Callout.js";
3
+ export default function WorkbenchChatIntro(props) {
4
+ const title = props.title?.trim().length
5
+ ? props.title.trim()
6
+ : "What do you want to build?";
7
+ return (React.createElement("div", { className: "workbench-chat-start-overlay" },
8
+ React.createElement(Callout, null,
9
+ React.createElement("div", { className: "workbench-chat-start-copy-group" },
10
+ React.createElement("div", { className: "workbench-chat-start-title-block" },
11
+ React.createElement("span", { className: "workbench-chat-start-eyebrow" }, "Workbench chat"),
12
+ React.createElement("span", { className: "workbench-chat-start-title" }, title)),
13
+ React.createElement("p", { className: "workbench-chat-start-copy" }, "Describe what you want and the build assistant will scaffold a first version and then iterate on it with you."),
14
+ React.createElement("p", { className: "workbench-chat-start-copy" }, "Example chat: \"I want to build an assistant that...\""),
15
+ props.leadingContent
16
+ ? (React.createElement("div", { className: "workbench-chat-start-leading" }, props.leadingContent))
17
+ : null,
18
+ props.onStart
19
+ ? (React.createElement("div", { className: "workbench-chat-start-actions" },
20
+ React.createElement(Button, { variant: "primary", size: "medium", disabled: props.disabled, "data-testid": "build-start", onClick: props.onStart }, props.pending
21
+ ? "Starting..."
22
+ : (props.startLabel ?? "Start"))))
23
+ : null))));
24
+ }
@@ -10,6 +10,7 @@ type WorkbenchDrawerIsoProps = {
10
10
  runStatus?: WorkbenchChatRunStatus;
11
11
  chatBody?: React.ReactNode;
12
12
  chatHeaderActions?: React.ReactNode;
13
+ showChatHistoryToggle?: boolean;
13
14
  chatHistoryOpen?: boolean;
14
15
  chatHistoryContent?: React.ReactNode;
15
16
  onToggleChatHistory?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"WorkbenchDrawerIso.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/WorkbenchDrawerIso.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC,CAAC;AAgCF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,4BAgFxE"}
1
+ {"version":3,"file":"WorkbenchDrawerIso.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/WorkbenchDrawerIso.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC,CAAC;AAgCF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,4BA4DxE"}
@@ -29,7 +29,9 @@ function toBadgeLabel(status) {
29
29
  }
30
30
  }
31
31
  export default function WorkbenchDrawerIso(props) {
32
- const { open = true, runStatus = "IDLE", chatBody = null, chatHeaderActions = null, chatHistoryOpen = false, chatHistoryContent = null, onToggleChatHistory, } = props;
32
+ const { open = true, runStatus = "IDLE", chatBody = null, chatHeaderActions = null, showChatHistoryToggle = true, chatHistoryOpen = false, chatHistoryContent = null, onToggleChatHistory, } = props;
33
+ void showChatHistoryToggle;
34
+ void onToggleChatHistory;
33
35
  const hasChatHistory = chatHistoryContent !== null;
34
36
  if (!open)
35
37
  return null;
@@ -39,20 +41,6 @@ export default function WorkbenchDrawerIso(props) {
39
41
  React.createElement("header", { className: "gds-accordion-header" },
40
42
  React.createElement("div", { className: "gds-accordion-title" },
41
43
  React.createElement("div", { className: "workbench-accordion-title" },
42
- hasChatHistory && (React.createElement("span", { role: "button", tabIndex: 0, className: "workbench-chat-history-toggle", onClick: (event) => {
43
- event.preventDefault();
44
- event.stopPropagation();
45
- onToggleChatHistory?.();
46
- }, onKeyDown: (event) => {
47
- if (event.key !== "Enter" && event.key !== " ")
48
- return;
49
- event.preventDefault();
50
- event.stopPropagation();
51
- onToggleChatHistory?.();
52
- }, "aria-label": chatHistoryOpen
53
- ? "Hide chat history"
54
- : "Show chat history" },
55
- React.createElement("span", { className: "workbench-chat-history-arrow" }, "\u25B6"))),
56
44
  React.createElement("span", null, "Chat"),
57
45
  React.createElement(Badge, { status: toBadgeStatus(runStatus) }, toBadgeLabel(runStatus)))),
58
46
  chatHeaderActions && (React.createElement("div", { className: "workbench-chat-header-actions gds-accordion-open-only" }, chatHeaderActions))),
@@ -1,21 +1,6 @@
1
1
  import React from "react";
2
- type WorkbenchComposerChipContext = {
3
- source: "scenario_run_error" | "grader_run_error";
4
- error: string;
5
- } | {
6
- source: "message_rating";
7
- score: number;
8
- reason?: string;
9
- } | {
10
- source: "grading_flag";
11
- message: string;
12
- score?: number;
13
- } | {
14
- source: "verify_outlier";
15
- message: string;
16
- instability?: boolean;
17
- score?: number;
18
- };
2
+ import type { WorkbenchMessageContext } from "../workbenchContext.js";
3
+ type WorkbenchComposerChipContext = WorkbenchMessageContext;
19
4
  export default function WorkbenchComposerChip(props: Omit<React.HTMLAttributes<HTMLDivElement>, "children"> & ({
20
5
  context: WorkbenchComposerChipContext;
21
6
  enabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"WorkbenchComposerChip.d.ts","sourceRoot":"","sources":["../../../../src/simulator-ui/src/gds/WorkbenchComposerChip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,KAAK,4BAA4B,GAC7B;IACA,MAAM,EAAE,oBAAoB,GAAG,kBAAkB,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;CACf,GACC;IACA,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACC;IACA,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACC;IACA,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA0CJ,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,KAAK,EACD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,GACtD,CACA;IACE,OAAO,EAAE,4BAA4B,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG;IACF,OAAO,EAAE,4BAA4B,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CACF,qBA0FJ"}
1
+ {"version":3,"file":"WorkbenchComposerChip.d.ts","sourceRoot":"","sources":["../../../../src/simulator-ui/src/gds/WorkbenchComposerChip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,KAAK,4BAA4B,GAAG,uBAAuB,CAAC;AA0C5D,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,KAAK,EACD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,GACtD,CACA;IACE,OAAO,EAAE,4BAA4B,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG;IACF,OAAO,EAAE,4BAA4B,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CACF,qBA0FJ"}
@@ -24,6 +24,16 @@ export declare function GradeResultsPanel(props: {
24
24
  }) => void;
25
25
  onFlagReasonChange: (refId: string, reason: string) => void;
26
26
  onFlagReasonBlur: (refId: string, reason: string) => void;
27
+ onAddFlagToWorkbench?: (args: {
28
+ refId: string;
29
+ runId: string;
30
+ turnIndex?: number;
31
+ score?: number;
32
+ graderReason?: string;
33
+ flagReason?: string;
34
+ priorUser?: string;
35
+ gradedAssistant?: string;
36
+ }) => void;
27
37
  onAddErrorToWorkbench?: (args: {
28
38
  runId?: string;
29
39
  error: string;
@@ -1 +1 @@
1
- {"version":3,"file":"GradeResultsPanel.d.ts","sourceRoot":"","sources":["../../../../src/simulator-ui/src/grade/GradeResultsPanel.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,YAAY,EAAE,CACZ,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KACvD,IAAI,CAAC;IACV,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,+BAmaA;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GradeResultsPanel.d.ts","sourceRoot":"","sources":["../../../../src/simulator-ui/src/grade/GradeResultsPanel.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,YAAY,EAAE,CACZ,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KACvD,IAAI,CAAC;IACV,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,oBAAoB,CAAC,EAAE,CACrB,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,KACE,IAAI,CAAC;IACV,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,+BA8bA;AAED,eAAe,iBAAiB,CAAC"}
@@ -144,7 +144,22 @@ export function GradeResultsPanel(props) {
144
144
  ? "Hide raw input"
145
145
  : "Show raw input", onClick: () => props.onToggleExpandedResult(item.key) },
146
146
  React.createElement(Icon, { name: "circleInfo", size: 16 }),
147
- isOpen ? "Hide raw input" : "Show raw input")))),
147
+ isOpen ? "Hide raw input" : "Show raw input"),
148
+ React.createElement(Button, { variant: "ghost", className: "flex-1 calibrate-toggle", disabled: !props.onAddFlagToWorkbench, "data-testid": "grade-flag-add-to-chat", onClick: () => props.onAddFlagToWorkbench?.({
149
+ refId: item.refId,
150
+ runId: item.runId,
151
+ turnIndex: item.turnIndex,
152
+ score: displayScore,
153
+ graderReason: displayReason ?? undefined,
154
+ flagReason: props.flagReasonDrafts[item.refId] ??
155
+ props.flagReasonByRefId.get(item.refId)
156
+ ?.reason ??
157
+ undefined,
158
+ priorUser: turnContext.priorUser,
159
+ gradedAssistant: turnContext.gradedAssistant,
160
+ }) },
161
+ React.createElement(Icon, { name: "chat", size: 16 }),
162
+ "Add to chat")))),
148
163
  isFlagged && !isPending && (React.createElement("div", { className: "calibrate-flag-reason" },
149
164
  React.createElement("label", null,
150
165
  "Reason",
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/routing.ts"],"names":[],"mappings":"AAMA,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC,CAAC;AAIF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED,wBAAgB,oBAAoB,CAClC,OAAO,SAAK,EACZ,YAAY,CAAC,EAAE,MAAM,GACpB,YAAY,CAwCd;AAED,eAAO,MAAM,iBAAiB,sBAmD5B,CAAC"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/routing.ts"],"names":[],"mappings":"AAMA,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC,CAAC;AAIF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED,wBAAgB,oBAAoB,CAClC,OAAO,SAAK,EACZ,YAAY,CAAC,EAAE,MAAM,GACpB,YAAY,CAwCd;AAED,eAAO,MAAM,iBAAiB,sBAoB5B,CAAC"}
@@ -55,9 +55,6 @@ export const isographAppRoutes = new Map([
55
55
  ["/", entrypointSimulatorRedirect],
56
56
  ["/build", entrypointSimulatorRedirect],
57
57
  ["/docs", entrypointSimulatorWorkspaces],
58
- ["/isograph", entrypointSimulatorRedirect],
59
- ["/isograph/build", entrypointSimulatorRedirect],
60
- ["/isograph/docs", entrypointSimulatorWorkspaces],
61
58
  ["/workspaces", entrypointSimulatorWorkspaces],
62
59
  ["/workspaces/new", entrypointSimulatorWorkspaces],
63
60
  ["/workspaces/:workspaceId", entrypointSimulatorRedirect],
@@ -74,32 +71,4 @@ export const isographAppRoutes = new Map([
74
71
  ],
75
72
  ["/workspaces/:workspaceId/grade", entrypointSimulatorWorkspaceShell],
76
73
  ["/workspaces/:workspaceId/verify", entrypointSimulatorWorkspaceShell],
77
- ["/isograph/workspaces", entrypointSimulatorWorkspaces],
78
- ["/isograph/workspaces/new", entrypointSimulatorWorkspaces],
79
- ["/isograph/workspaces/:workspaceId", entrypointSimulatorRedirect],
80
- [
81
- "/isograph/workspaces/:workspaceId/build/:path*",
82
- entrypointSimulatorWorkspaceShell,
83
- ],
84
- [
85
- "/isograph/workspaces/:workspaceId/build",
86
- entrypointSimulatorWorkspaceShell,
87
- ],
88
- [
89
- "/isograph/workspaces/:workspaceId/test/:testRunId",
90
- entrypointSimulatorWorkspaceShell,
91
- ],
92
- ["/isograph/workspaces/:workspaceId/test", entrypointSimulatorWorkspaceShell],
93
- [
94
- "/isograph/workspaces/:workspaceId/grade/:gradeRunId",
95
- entrypointSimulatorWorkspaceShell,
96
- ],
97
- [
98
- "/isograph/workspaces/:workspaceId/grade",
99
- entrypointSimulatorWorkspaceShell,
100
- ],
101
- [
102
- "/isograph/workspaces/:workspaceId/verify",
103
- entrypointSimulatorWorkspaceShell,
104
- ],
105
74
  ]);
@@ -36,6 +36,7 @@ export declare function FeedbackControls(props: {
36
36
  disabled?: boolean;
37
37
  onScore: (messageRefId: string, score: number | null, reason?: string) => void | Promise<void>;
38
38
  onReasonChange: (messageRefId: string, score: number, reason: string) => void | Promise<void>;
39
+ onAddToWorkbench?: (feedback: FeedbackEntry) => void;
39
40
  }): import("react").JSX.Element;
40
41
  export declare function TraceList(props: {
41
42
  traces: Array<TraceEvent>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/shared.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/simulator-ui/src/shared.tsx"],"names":[],"mappings":"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"}
@@ -106,7 +106,7 @@ export function ReasoningBubble(props) {
106
106
  React.createElement("pre", { className: "bubble-json" }, formatJson(detail.event)))));
107
107
  }
108
108
  export function FeedbackControls(props) {
109
- const { messageRefId, feedback, disabled = false, onScore, onReasonChange } = props;
109
+ const { messageRefId, feedback, disabled = false, onScore, onReasonChange, onAddToWorkbench, } = props;
110
110
  const [reason, setReason] = useState(feedback?.reason ?? "");
111
111
  const [opened, setOpened] = useState(false);
112
112
  const [localScore, setLocalScore] = useState(null);
@@ -225,7 +225,9 @@ export function FeedbackControls(props) {
225
225
  }
226
226
  persistScore(null);
227
227
  } }, "Retry")))),
228
- status === "error" && errorMessage && (React.createElement("div", { className: "error" }, errorMessage))))));
228
+ status === "error" && errorMessage && (React.createElement("div", { className: "error" }, errorMessage)),
229
+ feedback && typeof feedback.score === "number" && onAddToWorkbench &&
230
+ (React.createElement("button", { type: "button", className: "link-button", "data-testid": "feedback-add-to-chat", disabled: disabled, onClick: () => onAddToWorkbench(feedback) }, "Add to chat"))))));
229
231
  }
230
232
  export function TraceList(props) {
231
233
  const { traces } = props;