@bolt-foundry/gambit 0.8.6-rc.3 → 0.8.6-rc.4

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 (338) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/esm/gambit/simulator-ui/dist/bundle.js +2435 -620
  3. package/esm/gambit/simulator-ui/dist/bundle.js.map +4 -4
  4. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.d.ts +7 -0
  5. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.d.ts.map +1 -0
  6. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.js +22 -0
  7. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.d.ts +4 -0
  8. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.d.ts.map +1 -0
  9. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.js +456 -0
  10. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.d.ts +3 -0
  11. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.d.ts.map +1 -0
  12. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.js +1 -0
  13. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.d.ts +110 -0
  14. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.d.ts.map +1 -0
  15. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.js +1 -0
  16. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.d.ts +10 -0
  17. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.d.ts.map +1 -0
  18. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.js +1 -0
  19. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.d.ts +3 -0
  20. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.d.ts.map +1 -0
  21. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.js +96 -0
  22. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.d.ts +91 -0
  23. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.d.ts.map +1 -0
  24. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.js +1 -0
  25. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.d.ts +6 -0
  26. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.d.ts.map +1 -0
  27. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.js +610 -0
  28. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/normalization_ast.d.ts.map +1 -1
  29. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/normalization_ast.js +86 -0
  30. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts +18 -0
  31. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts.map +1 -1
  32. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.d.ts +1 -1
  33. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.d.ts.map +1 -1
  34. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.js +18 -0
  35. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts +18 -0
  36. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts.map +1 -1
  37. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/resolver_reader.d.ts.map +1 -1
  38. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/resolver_reader.js +120 -0
  39. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/normalization_ast.d.ts.map +1 -1
  40. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/normalization_ast.js +43 -0
  41. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts +9 -0
  42. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts.map +1 -1
  43. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.d.ts +1 -1
  44. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.d.ts.map +1 -1
  45. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.js +9 -0
  46. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts +9 -0
  47. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts.map +1 -1
  48. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/resolver_reader.d.ts.map +1 -1
  49. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/resolver_reader.js +60 -0
  50. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.d.ts.map +1 -1
  51. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.js +43 -0
  52. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts +1 -1
  53. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts.map +1 -1
  54. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.js +9 -0
  55. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +9 -0
  56. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  57. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +9 -0
  58. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  59. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.d.ts.map +1 -1
  60. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.js +60 -0
  61. package/esm/simulator-ui/__generated__/__isograph/iso.d.ts +4 -0
  62. package/esm/simulator-ui/__generated__/__isograph/iso.d.ts.map +1 -1
  63. package/esm/simulator-ui/__generated__/__isograph/iso.js +3 -0
  64. package/esm/simulator-ui/__generated__/builtRoutes.d.ts +2 -0
  65. package/esm/simulator-ui/__generated__/builtRoutes.d.ts.map +1 -1
  66. package/esm/simulator-ui/__generated__/builtRoutes.js +3 -0
  67. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  68. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.js +141 -4
  69. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.d.ts.map +1 -1
  70. package/esm/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.js +3 -1
  71. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSave.d.ts +93 -0
  72. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSave.d.ts.map +1 -0
  73. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSave.js +101 -0
  74. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.d.ts +93 -0
  75. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.d.ts.map +1 -0
  76. package/esm/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.js +7 -0
  77. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts +18 -0
  78. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts.map +1 -1
  79. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.js +18 -0
  80. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts +18 -0
  81. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts.map +1 -1
  82. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts +9 -0
  83. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts.map +1 -1
  84. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.js +9 -0
  85. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts +9 -0
  86. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts.map +1 -1
  87. package/esm/simulator-ui/src/AppIsoMinimal.d.ts +3 -0
  88. package/esm/simulator-ui/src/AppIsoMinimal.d.ts.map +1 -1
  89. package/esm/simulator-ui/src/AppIsoMinimal.js +7 -4
  90. package/esm/simulator-ui/src/AppShell.d.ts.map +1 -1
  91. package/esm/simulator-ui/src/AppShell.js +2 -2
  92. package/esm/simulator-ui/src/MinimalRouterRoot.js +4 -2
  93. package/esm/simulator-ui/src/RouterContext.d.ts.map +1 -1
  94. package/esm/simulator-ui/src/RouterContext.js +7 -3
  95. package/esm/simulator-ui/src/shared.d.ts.map +1 -1
  96. package/esm/simulator-ui/src/shared.js +3 -3
  97. package/esm/src/server/request_handler.d.ts +210 -0
  98. package/esm/src/server/request_handler.d.ts.map +1 -0
  99. package/esm/src/server/request_handler.js +416 -0
  100. package/esm/src/server/workspace/build.d.ts +57 -0
  101. package/esm/src/server/workspace/build.d.ts.map +1 -0
  102. package/esm/src/server/workspace/build.js +377 -0
  103. package/esm/src/server/workspace/conversation_sessions.d.ts +83 -0
  104. package/esm/src/server/workspace/conversation_sessions.d.ts.map +1 -0
  105. package/esm/src/server/workspace/conversation_sessions.js +163 -0
  106. package/esm/src/server/workspace/grading.d.ts +52 -0
  107. package/esm/src/server/workspace/grading.d.ts.map +1 -0
  108. package/esm/src/server/workspace/grading.js +488 -0
  109. package/esm/src/server/workspace/helpers.d.ts +46 -0
  110. package/esm/src/server/workspace/helpers.d.ts.map +1 -0
  111. package/esm/src/server/workspace/helpers.js +340 -0
  112. package/esm/src/server/workspace/read_model.d.ts +35 -0
  113. package/esm/src/server/workspace/read_model.d.ts.map +1 -0
  114. package/esm/src/server/workspace/read_model.js +121 -0
  115. package/esm/src/server/workspace/response_events.d.ts +28 -0
  116. package/esm/src/server/workspace/response_events.d.ts.map +1 -0
  117. package/esm/src/server/workspace/response_events.js +178 -0
  118. package/esm/src/server/workspace/run_deck.d.ts +23 -0
  119. package/esm/src/server/workspace/run_deck.d.ts.map +1 -0
  120. package/esm/src/server/workspace/run_deck.js +79 -0
  121. package/esm/src/server/workspace/scenario_history.d.ts +8 -0
  122. package/esm/src/server/workspace/scenario_history.d.ts.map +1 -0
  123. package/esm/src/server/workspace/scenario_history.js +269 -0
  124. package/esm/src/server/workspace/scenarios.d.ts +93 -0
  125. package/esm/src/server/workspace/scenarios.d.ts.map +1 -0
  126. package/esm/src/server/workspace/scenarios.js +1052 -0
  127. package/esm/src/server/workspace/schema.d.ts +35 -0
  128. package/esm/src/server/workspace/schema.d.ts.map +1 -0
  129. package/esm/src/server/workspace/schema.js +427 -0
  130. package/esm/src/server/workspace/sessions.d.ts +38 -0
  131. package/esm/src/server/workspace/sessions.d.ts.map +1 -0
  132. package/esm/src/server/workspace/sessions.js +232 -0
  133. package/esm/src/server/workspace/types.d.ts +128 -0
  134. package/esm/src/server/workspace/types.d.ts.map +1 -0
  135. package/esm/src/server/workspace/types.js +1 -0
  136. package/esm/src/server/workspace/verify.d.ts +52 -0
  137. package/esm/src/server/workspace/verify.d.ts.map +1 -0
  138. package/esm/src/server/workspace/verify.js +449 -0
  139. package/esm/src/server.d.ts +0 -3
  140. package/esm/src/server.d.ts.map +1 -1
  141. package/esm/src/server.js +324 -6732
  142. package/esm/src/server_isograph_environment.d.ts +12 -1
  143. package/esm/src/server_isograph_environment.d.ts.map +1 -1
  144. package/esm/src/server_legacy_api_routes.d.ts +137 -0
  145. package/esm/src/server_legacy_api_routes.d.ts.map +1 -0
  146. package/esm/src/server_legacy_api_routes.js +629 -0
  147. package/esm/src/server_openresponses.d.ts +6 -0
  148. package/esm/src/server_openresponses.d.ts.map +1 -0
  149. package/esm/src/server_openresponses.js +687 -0
  150. package/esm/src/server_session_store.d.ts +4 -0
  151. package/esm/src/server_session_store.d.ts.map +1 -1
  152. package/esm/src/server_session_store.js +196 -1
  153. package/esm/src/server_simulator_ui.d.ts +27 -0
  154. package/esm/src/server_simulator_ui.d.ts.map +1 -0
  155. package/esm/src/server_simulator_ui.js +501 -0
  156. package/esm/src/server_types.d.ts +22 -0
  157. package/esm/src/server_types.d.ts.map +1 -1
  158. package/esm/src/server_workspace_decks.d.ts +31 -0
  159. package/esm/src/server_workspace_decks.d.ts.map +1 -0
  160. package/esm/src/server_workspace_decks.js +98 -0
  161. package/esm/src/server_workspace_graphql.d.ts +17 -0
  162. package/esm/src/server_workspace_graphql.d.ts.map +1 -0
  163. package/esm/src/server_workspace_graphql.js +52 -0
  164. package/esm/src/server_workspace_runtime.d.ts +55 -0
  165. package/esm/src/server_workspace_runtime.d.ts.map +1 -0
  166. package/esm/src/server_workspace_runtime.js +358 -0
  167. package/esm/src/simulator_graphql.d.ts +14 -1
  168. package/esm/src/simulator_graphql.d.ts.map +1 -1
  169. package/esm/src/simulator_graphql.js +77 -0
  170. package/package.json +1 -1
  171. package/script/gambit/simulator-ui/dist/bundle.js +2435 -620
  172. package/script/gambit/simulator-ui/dist/bundle.js.map +4 -4
  173. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.d.ts +7 -0
  174. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.d.ts.map +1 -0
  175. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/entrypoint.js +27 -0
  176. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.d.ts +4 -0
  177. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.d.ts.map +1 -0
  178. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/normalization_ast.js +458 -0
  179. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.d.ts +3 -0
  180. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.d.ts.map +1 -0
  181. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/output_type.js +2 -0
  182. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.d.ts +110 -0
  183. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.d.ts.map +1 -0
  184. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/param_type.js +2 -0
  185. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.d.ts +10 -0
  186. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.d.ts.map +1 -0
  187. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/parameters_type.js +2 -0
  188. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.d.ts +3 -0
  189. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.d.ts.map +1 -0
  190. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/query_text.js +98 -0
  191. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.d.ts +91 -0
  192. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.d.ts.map +1 -0
  193. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/raw_response_type.js +2 -0
  194. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.d.ts +6 -0
  195. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.d.ts.map +1 -0
  196. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceFeedbackSave/resolver_reader.js +615 -0
  197. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/normalization_ast.d.ts.map +1 -1
  198. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/normalization_ast.js +86 -0
  199. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts +18 -0
  200. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts.map +1 -1
  201. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.d.ts +1 -1
  202. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.d.ts.map +1 -1
  203. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/query_text.js +18 -0
  204. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts +18 -0
  205. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts.map +1 -1
  206. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/resolver_reader.d.ts.map +1 -1
  207. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/resolver_reader.js +120 -0
  208. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/normalization_ast.d.ts.map +1 -1
  209. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/normalization_ast.js +43 -0
  210. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts +9 -0
  211. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts.map +1 -1
  212. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.d.ts +1 -1
  213. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.d.ts.map +1 -1
  214. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/query_text.js +9 -0
  215. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts +9 -0
  216. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts.map +1 -1
  217. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/resolver_reader.d.ts.map +1 -1
  218. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/resolver_reader.js +60 -0
  219. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.d.ts.map +1 -1
  220. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/normalization_ast.js +43 -0
  221. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts +1 -1
  222. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.d.ts.map +1 -1
  223. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/query_text.js +9 -0
  224. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +9 -0
  225. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  226. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +9 -0
  227. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  228. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.d.ts.map +1 -1
  229. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/resolver_reader.js +60 -0
  230. package/script/simulator-ui/__generated__/__isograph/iso.d.ts +4 -0
  231. package/script/simulator-ui/__generated__/__isograph/iso.d.ts.map +1 -1
  232. package/script/simulator-ui/__generated__/__isograph/iso.js +45 -42
  233. package/script/simulator-ui/__generated__/builtRoutes.d.ts +2 -0
  234. package/script/simulator-ui/__generated__/builtRoutes.d.ts.map +1 -1
  235. package/script/simulator-ui/__generated__/builtRoutes.js +18 -15
  236. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  237. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.js +141 -4
  238. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.d.ts.map +1 -1
  239. package/script/simulator-ui/isograph/entrypoints/EntrypointSimulatorWorkspaceShell.js +3 -1
  240. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSave.d.ts +93 -0
  241. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSave.d.ts.map +1 -0
  242. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSave.js +104 -0
  243. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.d.ts +93 -0
  244. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.d.ts.map +1 -0
  245. package/script/simulator-ui/mutations/GambitWorkspaceFeedbackSaveMutation.js +13 -0
  246. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts +18 -0
  247. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts.map +1 -1
  248. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.js +18 -0
  249. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts +18 -0
  250. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts.map +1 -1
  251. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts +9 -0
  252. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts.map +1 -1
  253. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.js +9 -0
  254. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts +9 -0
  255. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts.map +1 -1
  256. package/script/simulator-ui/src/AppIsoMinimal.d.ts +3 -0
  257. package/script/simulator-ui/src/AppIsoMinimal.d.ts.map +1 -1
  258. package/script/simulator-ui/src/AppIsoMinimal.js +7 -4
  259. package/script/simulator-ui/src/AppShell.d.ts.map +1 -1
  260. package/script/simulator-ui/src/AppShell.js +1 -1
  261. package/script/simulator-ui/src/MinimalRouterRoot.js +4 -2
  262. package/script/simulator-ui/src/RouterContext.d.ts.map +1 -1
  263. package/script/simulator-ui/src/RouterContext.js +6 -2
  264. package/script/simulator-ui/src/shared.d.ts.map +1 -1
  265. package/script/simulator-ui/src/shared.js +3 -3
  266. package/script/src/server/request_handler.d.ts +210 -0
  267. package/script/src/server/request_handler.d.ts.map +1 -0
  268. package/script/src/server/request_handler.js +453 -0
  269. package/script/src/server/workspace/build.d.ts +57 -0
  270. package/script/src/server/workspace/build.d.ts.map +1 -0
  271. package/script/src/server/workspace/build.js +381 -0
  272. package/script/src/server/workspace/conversation_sessions.d.ts +83 -0
  273. package/script/src/server/workspace/conversation_sessions.d.ts.map +1 -0
  274. package/script/src/server/workspace/conversation_sessions.js +167 -0
  275. package/script/src/server/workspace/grading.d.ts +52 -0
  276. package/script/src/server/workspace/grading.d.ts.map +1 -0
  277. package/script/src/server/workspace/grading.js +492 -0
  278. package/script/src/server/workspace/helpers.d.ts +46 -0
  279. package/script/src/server/workspace/helpers.d.ts.map +1 -0
  280. package/script/src/server/workspace/helpers.js +353 -0
  281. package/script/src/server/workspace/read_model.d.ts +35 -0
  282. package/script/src/server/workspace/read_model.d.ts.map +1 -0
  283. package/script/src/server/workspace/read_model.js +125 -0
  284. package/script/src/server/workspace/response_events.d.ts +28 -0
  285. package/script/src/server/workspace/response_events.d.ts.map +1 -0
  286. package/script/src/server/workspace/response_events.js +182 -0
  287. package/script/src/server/workspace/run_deck.d.ts +23 -0
  288. package/script/src/server/workspace/run_deck.d.ts.map +1 -0
  289. package/script/src/server/workspace/run_deck.js +84 -0
  290. package/script/src/server/workspace/scenario_history.d.ts +8 -0
  291. package/script/src/server/workspace/scenario_history.d.ts.map +1 -0
  292. package/script/src/server/workspace/scenario_history.js +310 -0
  293. package/script/src/server/workspace/scenarios.d.ts +93 -0
  294. package/script/src/server/workspace/scenarios.d.ts.map +1 -0
  295. package/script/src/server/workspace/scenarios.js +1089 -0
  296. package/script/src/server/workspace/schema.d.ts +35 -0
  297. package/script/src/server/workspace/schema.d.ts.map +1 -0
  298. package/script/src/server/workspace/schema.js +478 -0
  299. package/script/src/server/workspace/sessions.d.ts +38 -0
  300. package/script/src/server/workspace/sessions.d.ts.map +1 -0
  301. package/script/src/server/workspace/sessions.js +269 -0
  302. package/script/src/server/workspace/types.d.ts +128 -0
  303. package/script/src/server/workspace/types.d.ts.map +1 -0
  304. package/script/src/server/workspace/types.js +2 -0
  305. package/script/src/server/workspace/verify.d.ts +52 -0
  306. package/script/src/server/workspace/verify.d.ts.map +1 -0
  307. package/script/src/server/workspace/verify.js +453 -0
  308. package/script/src/server.d.ts +0 -3
  309. package/script/src/server.d.ts.map +1 -1
  310. package/script/src/server.js +391 -6799
  311. package/script/src/server_isograph_environment.d.ts +12 -1
  312. package/script/src/server_isograph_environment.d.ts.map +1 -1
  313. package/script/src/server_legacy_api_routes.d.ts +137 -0
  314. package/script/src/server_legacy_api_routes.d.ts.map +1 -0
  315. package/script/src/server_legacy_api_routes.js +666 -0
  316. package/script/src/server_openresponses.d.ts +6 -0
  317. package/script/src/server_openresponses.d.ts.map +1 -0
  318. package/script/src/server_openresponses.js +690 -0
  319. package/script/src/server_session_store.d.ts +4 -0
  320. package/script/src/server_session_store.d.ts.map +1 -1
  321. package/script/src/server_session_store.js +196 -1
  322. package/script/src/server_simulator_ui.d.ts +27 -0
  323. package/script/src/server_simulator_ui.d.ts.map +1 -0
  324. package/script/src/server_simulator_ui.js +544 -0
  325. package/script/src/server_types.d.ts +22 -0
  326. package/script/src/server_types.d.ts.map +1 -1
  327. package/script/src/server_workspace_decks.d.ts +31 -0
  328. package/script/src/server_workspace_decks.d.ts.map +1 -0
  329. package/script/src/server_workspace_decks.js +142 -0
  330. package/script/src/server_workspace_graphql.d.ts +17 -0
  331. package/script/src/server_workspace_graphql.d.ts.map +1 -0
  332. package/script/src/server_workspace_graphql.js +56 -0
  333. package/script/src/server_workspace_runtime.d.ts +55 -0
  334. package/script/src/server_workspace_runtime.d.ts.map +1 -0
  335. package/script/src/server_workspace_runtime.js +395 -0
  336. package/script/src/simulator_graphql.d.ts +14 -1
  337. package/script/src/simulator_graphql.d.ts.map +1 -1
  338. package/script/src/simulator_graphql.js +77 -0
@@ -0,0 +1,353 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.syncTestBotRunFromState = exports.applyUserMessageRefSource = exports.gradeSchemaHasField = exports.buildScenarioConversationArtifactsFromRun = exports.buildScenarioConversationArtifacts = exports.buildTestBotSnapshot = exports.deriveToolInsertsFromTraces = exports.summarizeRespondCall = exports.safeParseJson = exports.stringifyContent = exports.GAMBIT_TOOL_RESPOND = void 0;
4
+ exports.GAMBIT_TOOL_RESPOND = "gambit_respond";
5
+ const stringifyContent = (value) => {
6
+ if (value === null || value === undefined)
7
+ return "";
8
+ if (typeof value === "string")
9
+ return value;
10
+ try {
11
+ return JSON.stringify(value);
12
+ }
13
+ catch {
14
+ return String(value);
15
+ }
16
+ };
17
+ exports.stringifyContent = stringifyContent;
18
+ const safeParseJson = (text) => {
19
+ if (typeof text !== "string" || text.trim().length === 0)
20
+ return undefined;
21
+ try {
22
+ return JSON.parse(text);
23
+ }
24
+ catch {
25
+ return undefined;
26
+ }
27
+ };
28
+ exports.safeParseJson = safeParseJson;
29
+ const summarizeRespondCall = (message) => {
30
+ if (!message || message.role !== "tool")
31
+ return null;
32
+ const name = typeof message.name === "string" ? message.name : undefined;
33
+ if (name !== exports.GAMBIT_TOOL_RESPOND)
34
+ return null;
35
+ const parsed = (0, exports.safeParseJson)(typeof message.content === "string" ? message.content : "");
36
+ const payload = parsed && typeof parsed === "object"
37
+ ? ("payload" in parsed ? parsed.payload : parsed)
38
+ : undefined;
39
+ const status = typeof parsed?.status === "number"
40
+ ? parsed.status
41
+ : undefined;
42
+ const code = typeof parsed?.code === "string"
43
+ ? parsed.code
44
+ : undefined;
45
+ const respondMessage = typeof parsed?.message === "string"
46
+ ? parsed.message
47
+ : undefined;
48
+ const meta = parsed && typeof parsed.meta === "object"
49
+ ? parsed.meta
50
+ : undefined;
51
+ const summary = {};
52
+ if (status !== undefined)
53
+ summary.status = status;
54
+ if (code !== undefined)
55
+ summary.code = code;
56
+ if (respondMessage !== undefined)
57
+ summary.message = respondMessage;
58
+ if (meta !== undefined)
59
+ summary.meta = meta;
60
+ summary.payload = payload ?? null;
61
+ return {
62
+ status,
63
+ code,
64
+ message: respondMessage,
65
+ meta,
66
+ payload,
67
+ displayText: JSON.stringify(summary, null, 2),
68
+ };
69
+ };
70
+ exports.summarizeRespondCall = summarizeRespondCall;
71
+ const deriveToolInsertsFromTraces = (state, messageCount) => {
72
+ const traces = Array.isArray(state.traces) ? state.traces : [];
73
+ if (!traces.length)
74
+ return [];
75
+ const inserts = [];
76
+ let messageIndex = 0;
77
+ for (const trace of traces) {
78
+ if (!trace || typeof trace !== "object")
79
+ continue;
80
+ const traceRecord = trace;
81
+ const type = typeof traceRecord.type === "string" ? traceRecord.type : "";
82
+ if (type === "message.user" || type === "model.result") {
83
+ messageIndex++;
84
+ continue;
85
+ }
86
+ if (type === "tool.call") {
87
+ const actionCallId = typeof traceRecord.actionCallId === "string"
88
+ ? traceRecord.actionCallId
89
+ : undefined;
90
+ const parentActionCallId = typeof traceRecord.parentActionCallId === "string"
91
+ ? traceRecord.parentActionCallId
92
+ : undefined;
93
+ const name = typeof traceRecord.name === "string"
94
+ ? traceRecord.name
95
+ : undefined;
96
+ inserts.push({
97
+ actionCallId,
98
+ parentActionCallId,
99
+ name,
100
+ index: Math.min(messageIndex, messageCount),
101
+ });
102
+ }
103
+ }
104
+ return inserts;
105
+ };
106
+ exports.deriveToolInsertsFromTraces = deriveToolInsertsFromTraces;
107
+ const buildTestBotSnapshot = (state) => {
108
+ const rawMessages = state.messages ?? [];
109
+ const refs = state.messageRefs ?? [];
110
+ const feedbackByRef = new Map(state.feedback?.map((entry) => [entry.messageRefId, entry]) ?? []);
111
+ const messages = [];
112
+ const fallbackToolInserts = [];
113
+ const meta = state.meta && typeof state.meta === "object"
114
+ ? state.meta
115
+ : {};
116
+ const scope = typeof meta.scenarioRunMode === "string"
117
+ ? meta.scenarioRunMode
118
+ : undefined;
119
+ let effectiveStartIndex = 0;
120
+ if (scope === "scenario" && rawMessages.length > 0) {
121
+ const firstScenarioUserIndex = refs.findIndex((ref) => ref?.source === "scenario");
122
+ if (firstScenarioUserIndex > 0) {
123
+ effectiveStartIndex = firstScenarioUserIndex;
124
+ while (effectiveStartIndex > 0) {
125
+ const priorIndex = effectiveStartIndex - 1;
126
+ const priorMessage = rawMessages[priorIndex];
127
+ const priorSource = refs[priorIndex]?.source;
128
+ if (priorMessage?.role === "assistant" &&
129
+ (priorSource === "scenario" || priorSource === "manual")) {
130
+ effectiveStartIndex = priorIndex;
131
+ continue;
132
+ }
133
+ break;
134
+ }
135
+ }
136
+ }
137
+ for (let i = effectiveStartIndex; i < rawMessages.length; i++) {
138
+ const msg = rawMessages[i];
139
+ const refId = refs[i]?.id;
140
+ if (msg?.role === "assistant" || msg?.role === "user") {
141
+ const content = (0, exports.stringifyContent)(msg.content).trim();
142
+ if (!content)
143
+ continue;
144
+ messages.push({
145
+ role: msg.role,
146
+ content,
147
+ messageRefId: refId,
148
+ messageSource: refs[i]?.source === "scenario" ||
149
+ refs[i]?.source === "manual" ||
150
+ refs[i]?.source === "artifact"
151
+ ? refs[i].source
152
+ : undefined,
153
+ feedback: refId ? feedbackByRef.get(refId) : undefined,
154
+ });
155
+ continue;
156
+ }
157
+ const respondSummary = (0, exports.summarizeRespondCall)(msg);
158
+ if (respondSummary) {
159
+ messages.push({
160
+ role: "assistant",
161
+ content: respondSummary.displayText,
162
+ messageRefId: refId,
163
+ messageSource: refs[i]?.source === "scenario" ||
164
+ refs[i]?.source === "manual" ||
165
+ refs[i]?.source === "artifact"
166
+ ? refs[i].source
167
+ : undefined,
168
+ feedback: refId ? feedbackByRef.get(refId) : undefined,
169
+ respondStatus: respondSummary.status,
170
+ respondCode: respondSummary.code,
171
+ respondMessage: respondSummary.message,
172
+ respondPayload: respondSummary.payload,
173
+ respondMeta: respondSummary.meta,
174
+ });
175
+ continue;
176
+ }
177
+ if (msg?.role === "tool") {
178
+ const actionCallId = typeof msg.tool_call_id === "string"
179
+ ? msg.tool_call_id
180
+ : undefined;
181
+ const name = typeof msg.name === "string" ? msg.name : undefined;
182
+ fallbackToolInserts.push({
183
+ actionCallId,
184
+ name,
185
+ index: messages.length,
186
+ });
187
+ }
188
+ }
189
+ const traceToolInserts = (0, exports.deriveToolInsertsFromTraces)(state, messages.length);
190
+ return {
191
+ messages,
192
+ toolInserts: traceToolInserts.length > 0
193
+ ? traceToolInserts
194
+ : fallbackToolInserts,
195
+ };
196
+ };
197
+ exports.buildTestBotSnapshot = buildTestBotSnapshot;
198
+ const buildScenarioConversationArtifacts = (state) => {
199
+ const rawMessages = state.messages ?? [];
200
+ const refs = state.messageRefs ?? [];
201
+ const conversation = [];
202
+ const assistantTurns = [];
203
+ for (let i = 0; i < rawMessages.length; i++) {
204
+ const msg = rawMessages[i];
205
+ const messageRefId = typeof refs[i]?.id === "string"
206
+ ? refs[i].id
207
+ : undefined;
208
+ if (msg?.role === "assistant" || msg?.role === "user") {
209
+ const content = (0, exports.stringifyContent)(msg.content).trim();
210
+ if (!content)
211
+ continue;
212
+ const nextMessage = {
213
+ role: msg.role,
214
+ content,
215
+ name: msg.name,
216
+ tool_calls: msg.tool_calls,
217
+ };
218
+ const conversationIndex = conversation.length;
219
+ conversation.push(nextMessage);
220
+ if (nextMessage.role === "assistant") {
221
+ assistantTurns.push({
222
+ conversationIndex,
223
+ message: nextMessage,
224
+ messageRefId,
225
+ });
226
+ }
227
+ continue;
228
+ }
229
+ const respondSummary = (0, exports.summarizeRespondCall)(msg);
230
+ if (respondSummary) {
231
+ const nextMessage = {
232
+ role: "assistant",
233
+ content: respondSummary.displayText,
234
+ name: exports.GAMBIT_TOOL_RESPOND,
235
+ };
236
+ const conversationIndex = conversation.length;
237
+ conversation.push(nextMessage);
238
+ assistantTurns.push({
239
+ conversationIndex,
240
+ message: nextMessage,
241
+ messageRefId,
242
+ });
243
+ }
244
+ }
245
+ return { messages: conversation, assistantTurns };
246
+ };
247
+ exports.buildScenarioConversationArtifacts = buildScenarioConversationArtifacts;
248
+ const buildScenarioConversationArtifactsFromRun = (run) => {
249
+ const conversation = [];
250
+ const assistantTurns = [];
251
+ const runMessages = Array.isArray(run.messages) ? run.messages : [];
252
+ for (const msg of runMessages) {
253
+ if (msg?.role !== "assistant" && msg?.role !== "user")
254
+ continue;
255
+ const content = typeof msg.content === "string" ? msg.content.trim() : "";
256
+ if (!content)
257
+ continue;
258
+ const nextMessage = {
259
+ role: msg.role,
260
+ content,
261
+ };
262
+ const conversationIndex = conversation.length;
263
+ conversation.push(nextMessage);
264
+ if (nextMessage.role === "assistant") {
265
+ assistantTurns.push({
266
+ conversationIndex,
267
+ message: nextMessage,
268
+ messageRefId: msg.messageRefId,
269
+ });
270
+ }
271
+ }
272
+ return { messages: conversation, assistantTurns };
273
+ };
274
+ exports.buildScenarioConversationArtifactsFromRun = buildScenarioConversationArtifactsFromRun;
275
+ const gradeSchemaHasField = (schema, field) => {
276
+ if (!schema)
277
+ return false;
278
+ let current = schema;
279
+ while (current && typeof current === "object") {
280
+ const def = current._def;
281
+ const typeName = def?.typeName;
282
+ if (typeName === "ZodOptional" || typeName === "ZodNullable" ||
283
+ typeName === "ZodDefault") {
284
+ current = def.innerType;
285
+ continue;
286
+ }
287
+ if (typeName === "ZodEffects") {
288
+ current = def.schema;
289
+ continue;
290
+ }
291
+ if (typeName === "ZodCatch") {
292
+ current = def.innerType;
293
+ continue;
294
+ }
295
+ if (typeName === "ZodBranded") {
296
+ current = def.type;
297
+ continue;
298
+ }
299
+ break;
300
+ }
301
+ const def = current
302
+ ._def;
303
+ if (def?.typeName !== "ZodObject")
304
+ return false;
305
+ const shape = typeof def.shape === "function" ? def.shape() : def.shape;
306
+ return Boolean(shape && typeof shape === "object" && field in shape);
307
+ };
308
+ exports.gradeSchemaHasField = gradeSchemaHasField;
309
+ const applyUserMessageRefSource = (previousState, nextState, source) => {
310
+ if (!Array.isArray(nextState.messages) ||
311
+ !Array.isArray(nextState.messageRefs)) {
312
+ return nextState;
313
+ }
314
+ const startIndex = Math.max(0, previousState?.messages?.length ?? 0);
315
+ const nextRefs = [...nextState.messageRefs];
316
+ let changed = false;
317
+ for (let idx = startIndex; idx < nextState.messages.length; idx++) {
318
+ const msg = nextState.messages[idx];
319
+ if (!msg || msg.role !== "user")
320
+ continue;
321
+ const ref = nextRefs[idx];
322
+ if (!ref || typeof ref.id !== "string")
323
+ continue;
324
+ if (ref.source === source)
325
+ continue;
326
+ nextRefs[idx] = { ...ref, source };
327
+ changed = true;
328
+ }
329
+ if (!changed)
330
+ return nextState;
331
+ return { ...nextState, messageRefs: nextRefs };
332
+ };
333
+ exports.applyUserMessageRefSource = applyUserMessageRefSource;
334
+ const syncTestBotRunFromState = (run, state) => {
335
+ const snapshot = (0, exports.buildTestBotSnapshot)(state);
336
+ run.messages = snapshot.messages;
337
+ run.toolInserts = snapshot.toolInserts;
338
+ const workspaceId = typeof state.meta?.workspaceId === "string"
339
+ ? state.meta.workspaceId
340
+ : typeof state.meta?.sessionId === "string"
341
+ ? state.meta.sessionId
342
+ : undefined;
343
+ if (workspaceId) {
344
+ run.workspaceId = workspaceId;
345
+ run.sessionId = workspaceId;
346
+ }
347
+ const initFill = state.meta
348
+ ?.testBotInitFill;
349
+ if (initFill)
350
+ run.initFill = initFill;
351
+ run.traces = Array.isArray(state.traces) ? [...state.traces] : undefined;
352
+ };
353
+ exports.syncTestBotRunFromState = syncTestBotRunFromState;
@@ -0,0 +1,35 @@
1
+ import type { SavedState } from "@bolt-foundry/gambit-core";
2
+ import type { SessionMeta, WorkspaceDeckState } from "../../server_types.js";
3
+ import type { BuildBotRunStatus, TestBotRunEntry, TestBotRunStatus } from "./types.js";
4
+ type BuildWorkspaceReadModel = (workspaceId: string, options?: {
5
+ requestedTestDeckPath?: string | null;
6
+ requestedTestRunId?: string | null;
7
+ requestedGradeRunId?: string | null;
8
+ }) => Promise<unknown>;
9
+ type WorkspaceReadModelService = {
10
+ buildWorkspaceReadModel: BuildWorkspaceReadModel;
11
+ };
12
+ export declare const createWorkspaceReadModelService: (deps: {
13
+ readSessionState: (workspaceId: string) => SavedState | undefined;
14
+ readSessionStateStrict: (workspaceId: string, options?: {
15
+ withTraces?: boolean;
16
+ }) => SavedState | undefined;
17
+ readWorkspaceBuildRunForGraphql: (workspaceId: string) => BuildBotRunStatus;
18
+ getLiveTestRunEntry: (runId: string) => TestBotRunEntry | undefined;
19
+ getLiveTestRunEntryByWorkspaceId: (workspaceId: string) => TestBotRunEntry | undefined;
20
+ readPersistedTestRunStatusById: (sessionState: SavedState, workspaceId: string, requestedRunId: string) => TestBotRunStatus | null;
21
+ syncTestBotRunFromState: (run: TestBotRunStatus, state: SavedState) => void;
22
+ selectCanonicalScenarioRunSummary: (meta: Record<string, unknown>) => {
23
+ scenarioRunId: string;
24
+ } | null;
25
+ activateWorkspaceDeck: (workspaceId?: string | null, options?: {
26
+ forceReload?: boolean;
27
+ source?: string;
28
+ reloadAttemptId?: string;
29
+ }) => Promise<void>;
30
+ readWorkspaceDeckState: (workspaceId: string) => WorkspaceDeckState | null;
31
+ resolveScenarioDeckFromState: (deckState: WorkspaceDeckState, identifier: string) => WorkspaceDeckState["scenarioDecks"][number] | undefined;
32
+ listSessions: () => Array<SessionMeta>;
33
+ }) => WorkspaceReadModelService;
34
+ export {};
35
+ //# sourceMappingURL=read_model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read_model.d.ts","sourceRoot":"","sources":["../../../../src/src/server/workspace/read_model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,KAAK,uBAAuB,GAAG,CAC7B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,KACE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,KAAK,yBAAyB,GAAG;IAC/B,uBAAuB,EAAE,uBAAuB,CAAC;CAClD,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAAI,MAAM;IACpD,gBAAgB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,UAAU,GAAG,SAAS,CAAC;IAClE,sBAAsB,EAAE,CACtB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAC/B,UAAU,GAAG,SAAS,CAAC;IAC5B,+BAA+B,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,iBAAiB,CAAC;IAC5E,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;IACpE,gCAAgC,EAAE,CAChC,WAAW,EAAE,MAAM,KAChB,eAAe,GAAG,SAAS,CAAC;IACjC,8BAA8B,EAAE,CAC9B,YAAY,EAAE,UAAU,EACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,KACnB,gBAAgB,GAAG,IAAI,CAAC;IAC7B,uBAAuB,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5E,iCAAiC,EAAE,CACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACtC,qBAAqB,EAAE,CACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,KACE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,sBAAsB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,kBAAkB,GAAG,IAAI,CAAC;IAC3E,4BAA4B,EAAE,CAC5B,SAAS,EAAE,kBAAkB,EAC7B,UAAU,EAAE,MAAM,KACf,kBAAkB,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC7D,YAAY,EAAE,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;CACxC,KAAG,yBAyIH,CAAC"}
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createWorkspaceReadModelService = void 0;
4
+ const createWorkspaceReadModelService = (deps) => {
5
+ const buildWorkspaceReadModel = async (workspaceId, options) => {
6
+ let state;
7
+ try {
8
+ state = deps.readSessionStateStrict(workspaceId, { withTraces: true });
9
+ }
10
+ catch (err) {
11
+ return {
12
+ error: err instanceof Error ? err.message : String(err),
13
+ status: 400,
14
+ };
15
+ }
16
+ if (!state) {
17
+ return {
18
+ error: "Workspace not found",
19
+ status: 404,
20
+ };
21
+ }
22
+ const buildRun = deps.readWorkspaceBuildRunForGraphql(workspaceId);
23
+ const requestedTestRunId = typeof options?.requestedTestRunId === "string" &&
24
+ options.requestedTestRunId.trim().length > 0
25
+ ? options.requestedTestRunId
26
+ : null;
27
+ const requestedTestEntry = requestedTestRunId
28
+ ? deps.getLiveTestRunEntry(requestedTestRunId)
29
+ : undefined;
30
+ const requestedLiveRun = requestedTestEntry?.run &&
31
+ (requestedTestEntry.run.workspaceId === workspaceId ||
32
+ requestedTestEntry.run.sessionId === workspaceId)
33
+ ? requestedTestEntry.run
34
+ : undefined;
35
+ const persistedRequestedRun = requestedTestRunId
36
+ ? deps.readPersistedTestRunStatusById(state, workspaceId, requestedTestRunId)
37
+ : null;
38
+ const testEntry = requestedLiveRun
39
+ ? undefined
40
+ : deps.getLiveTestRunEntryByWorkspaceId(workspaceId);
41
+ const testRun = requestedLiveRun ?? persistedRequestedRun ??
42
+ testEntry?.run ?? {
43
+ id: "",
44
+ status: "idle",
45
+ messages: [],
46
+ traces: [],
47
+ toolInserts: [],
48
+ workspaceId,
49
+ sessionId: workspaceId,
50
+ };
51
+ if (!requestedLiveRun && !persistedRequestedRun && !testEntry) {
52
+ deps.syncTestBotRunFromState(testRun, state);
53
+ const meta = state.meta && typeof state.meta === "object"
54
+ ? state.meta
55
+ : null;
56
+ if (meta) {
57
+ const selectedScenarioSummary = deps.selectCanonicalScenarioRunSummary(meta);
58
+ if (selectedScenarioSummary) {
59
+ testRun.id = selectedScenarioSummary.scenarioRunId;
60
+ if (testRun.status === "idle") {
61
+ testRun.status = "completed";
62
+ }
63
+ }
64
+ }
65
+ }
66
+ const feedbackByRef = new Map((state.feedback ?? []).map((entry) => [entry.messageRefId, entry]));
67
+ if (Array.isArray(testRun.messages) && testRun.messages.length > 0) {
68
+ testRun.messages = testRun.messages.map((message) => {
69
+ const refId = typeof message.messageRefId === "string"
70
+ ? message.messageRefId
71
+ : undefined;
72
+ if (!refId)
73
+ return message;
74
+ const feedback = feedbackByRef.get(refId);
75
+ if (!feedback && !message.feedback)
76
+ return message;
77
+ if (!feedback) {
78
+ return { ...message, feedback: undefined };
79
+ }
80
+ return { ...message, feedback };
81
+ });
82
+ }
83
+ await deps.activateWorkspaceDeck(workspaceId);
84
+ const deckState = deps.readWorkspaceDeckState(workspaceId);
85
+ const requestedDeck = options?.requestedTestDeckPath ?? null;
86
+ const testSelection = requestedDeck
87
+ ? deckState
88
+ ? deps.resolveScenarioDeckFromState(deckState, requestedDeck)
89
+ : undefined
90
+ : deckState?.scenarioDecks[0];
91
+ const session = {
92
+ workspaceId,
93
+ messages: state.messages,
94
+ messageRefs: state.messageRefs,
95
+ feedback: state.feedback,
96
+ traces: state.traces,
97
+ notes: state.notes,
98
+ meta: state.meta,
99
+ };
100
+ return {
101
+ workspaceId,
102
+ build: { run: buildRun },
103
+ test: {
104
+ run: testRun,
105
+ botPath: testSelection?.path ?? null,
106
+ botLabel: testSelection?.label ?? null,
107
+ botDescription: testSelection?.description ?? null,
108
+ selectedDeckId: testSelection?.id ?? null,
109
+ inputSchema: testSelection?.inputSchema ?? null,
110
+ inputSchemaError: testSelection?.inputSchemaError ?? null,
111
+ defaults: { input: testSelection?.defaults },
112
+ testDecks: deckState?.scenarioDecks ?? [],
113
+ },
114
+ grade: {
115
+ graderDecks: deckState?.graderDecks ?? [],
116
+ sessions: deps.listSessions(),
117
+ },
118
+ session,
119
+ };
120
+ };
121
+ return {
122
+ buildWorkspaceReadModel,
123
+ };
124
+ };
125
+ exports.createWorkspaceReadModelService = createWorkspaceReadModelService;
@@ -0,0 +1,28 @@
1
+ import type { SavedState, TraceEvent } from "@bolt-foundry/gambit-core";
2
+ export declare const createOpenResponsesEventPersistence: (deps: {
3
+ sanitizeJsonRecord: (value: Record<string, unknown>) => Record<string, unknown>;
4
+ appendOpenResponsesRunEvent: (state: SavedState, event: {
5
+ workspace_id: string;
6
+ run_id: string;
7
+ event_type: string;
8
+ payload: Record<string, unknown>;
9
+ idempotency_key: string;
10
+ created_at: string;
11
+ }) => Promise<unknown> | unknown;
12
+ }) => {
13
+ persistOpenResponsesTraceEvent: (state: SavedState | null | undefined, trace: TraceEvent, fallbackRunId?: string) => void;
14
+ persistCanonicalUserInputEvent: (args: {
15
+ state: SavedState | null | undefined;
16
+ runId: string;
17
+ message: string;
18
+ source: "build" | "scenario";
19
+ }) => void;
20
+ persistCanonicalStateMessages: (args: {
21
+ state: SavedState | null | undefined;
22
+ runId: string;
23
+ startIndex?: number;
24
+ source: "build" | "scenario" | "manual" | "artifact";
25
+ }) => void;
26
+ persistOpenResponsesTracesFromState: (state: SavedState | null | undefined, fallbackRunId?: string) => void;
27
+ };
28
+ //# sourceMappingURL=response_events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response_events.d.ts","sourceRoot":"","sources":["../../../../src/src/server/workspace/response_events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAyDxE,eAAO,MAAM,mCAAmC,GAAI,MAAM;IACxD,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,2BAA2B,EAAE,CAC3B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;KACpB,KACE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACjC;4CAEU,UAAU,GAAG,IAAI,GAAG,SAAS,SAC7B,UAAU,kBACD,MAAM;2CAuCsB;QAC5C,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;QACrC,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,OAAO,GAAG,UAAU,CAAC;KAC9B;0CAsB4C;QAC3C,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;QACrC,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;KACtD;iDAmEQ,UAAU,GAAG,IAAI,GAAG,SAAS,kBACpB,MAAM;CAczB,CAAC"}