@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,453 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createWorkspaceVerifyService = void 0;
4
+ const createWorkspaceVerifyService = (deps) => {
5
+ const normalizeVerifyBatchStatus = (value) => {
6
+ if (value === "running")
7
+ return "running";
8
+ if (value === "completed")
9
+ return "completed";
10
+ if (value === "error")
11
+ return "error";
12
+ return "idle";
13
+ };
14
+ const normalizeVerifyBatchRequestStatus = (value) => {
15
+ if (value === "running")
16
+ return "running";
17
+ if (value === "completed")
18
+ return "completed";
19
+ if (value === "error")
20
+ return "error";
21
+ return "queued";
22
+ };
23
+ const readWorkspaceVerifyBatchesFromState = (state) => {
24
+ const meta = state.meta && typeof state.meta === "object"
25
+ ? state.meta
26
+ : {};
27
+ if (!Array.isArray(meta.verifyBatches))
28
+ return [];
29
+ return meta.verifyBatches.flatMap((entry) => {
30
+ if (!entry || typeof entry !== "object")
31
+ return [];
32
+ const batch = entry;
33
+ if (typeof batch.graderId !== "string" || batch.graderId.trim() === "") {
34
+ return [];
35
+ }
36
+ const requests = Array.isArray(batch.requests)
37
+ ? batch.requests.flatMap((request, requestIndex) => {
38
+ if (!request || typeof request !== "object")
39
+ return [];
40
+ const requestRecord = request;
41
+ const requestId = typeof requestRecord.id === "string" &&
42
+ requestRecord.id.trim().length > 0
43
+ ? requestRecord.id
44
+ : `${String(batch.id ?? deps.randomId("vbatch"))}:${requestIndex + 1}`;
45
+ const runId = typeof requestRecord.runId === "string" &&
46
+ requestRecord.runId.trim().length > 0
47
+ ? requestRecord.runId
48
+ : undefined;
49
+ const scenarioRunId = typeof requestRecord.scenarioRunId === "string" &&
50
+ requestRecord.scenarioRunId.trim().length > 0
51
+ ? requestRecord.scenarioRunId
52
+ : undefined;
53
+ const error = typeof requestRecord.error === "string" &&
54
+ requestRecord.error.trim().length > 0
55
+ ? requestRecord.error
56
+ : undefined;
57
+ return [{
58
+ id: requestId,
59
+ status: normalizeVerifyBatchRequestStatus(requestRecord.status),
60
+ scenarioRunId,
61
+ runId,
62
+ error,
63
+ }];
64
+ })
65
+ : [];
66
+ const active = requests.filter((request) => request.status === "running")
67
+ .length;
68
+ const completed = requests.filter((request) => request.status === "completed").length;
69
+ const failed = requests.filter((request) => request.status === "error")
70
+ .length;
71
+ const requested = Math.max(requests.length, typeof batch.requested === "number" && Number.isFinite(batch.requested)
72
+ ? Math.max(0, Math.round(batch.requested))
73
+ : 0);
74
+ return [{
75
+ id: typeof batch.id === "string" && batch.id.trim().length > 0
76
+ ? batch.id
77
+ : deps.randomId("vbatch"),
78
+ workspaceId: typeof batch.workspaceId === "string" && batch.workspaceId.trim()
79
+ ? batch.workspaceId
80
+ : "",
81
+ scenarioDeckId: typeof batch.scenarioDeckId === "string" &&
82
+ batch.scenarioDeckId.trim().length > 0
83
+ ? batch.scenarioDeckId
84
+ : undefined,
85
+ graderId: batch.graderId,
86
+ scenarioRuns: typeof batch.scenarioRuns === "number" &&
87
+ Number.isFinite(batch.scenarioRuns)
88
+ ? Math.max(0, Math.round(batch.scenarioRuns))
89
+ : 0,
90
+ graderRepeatsPerScenario: typeof batch.graderRepeatsPerScenario === "number" &&
91
+ Number.isFinite(batch.graderRepeatsPerScenario)
92
+ ? Math.max(0, Math.round(batch.graderRepeatsPerScenario))
93
+ : 0,
94
+ status: normalizeVerifyBatchStatus(batch.status),
95
+ startedAt: typeof batch.startedAt === "string" && batch.startedAt.trim().length >
96
+ 0
97
+ ? batch.startedAt
98
+ : undefined,
99
+ finishedAt: typeof batch.finishedAt === "string" &&
100
+ batch.finishedAt.trim().length > 0
101
+ ? batch.finishedAt
102
+ : undefined,
103
+ requested,
104
+ active,
105
+ completed,
106
+ failed,
107
+ scenarioRunsCompleted: typeof batch.scenarioRunsCompleted === "number" &&
108
+ Number.isFinite(batch.scenarioRunsCompleted)
109
+ ? Math.max(0, Math.round(batch.scenarioRunsCompleted))
110
+ : 0,
111
+ scenarioRunsFailed: typeof batch.scenarioRunsFailed === "number" &&
112
+ Number.isFinite(batch.scenarioRunsFailed)
113
+ ? Math.max(0, Math.round(batch.scenarioRunsFailed))
114
+ : 0,
115
+ requests,
116
+ }];
117
+ });
118
+ };
119
+ const writeWorkspaceVerifyBatchesToState = (state, batches) => {
120
+ const currentMeta = state.meta && typeof state.meta === "object"
121
+ ? state.meta
122
+ : {};
123
+ return {
124
+ ...state,
125
+ meta: {
126
+ ...currentMeta,
127
+ verifyBatches: batches,
128
+ },
129
+ };
130
+ };
131
+ const upsertWorkspaceVerifyBatchInState = (state, nextBatch) => {
132
+ const existing = readWorkspaceVerifyBatchesFromState(state);
133
+ const nextBatches = [...existing];
134
+ const existingIndex = nextBatches.findIndex((entry) => entry.id === nextBatch.id);
135
+ if (existingIndex >= 0) {
136
+ nextBatches[existingIndex] = nextBatch;
137
+ }
138
+ else {
139
+ nextBatches.unshift(nextBatch);
140
+ }
141
+ return writeWorkspaceVerifyBatchesToState(state, nextBatches.slice(0, 50));
142
+ };
143
+ const emitVerifyWorkspaceEvent = (workspaceId, payload) => {
144
+ deps.appendDurableStreamEvent(deps.workspaceStreamId, {
145
+ ...payload,
146
+ workspaceId,
147
+ });
148
+ };
149
+ const readWorkspaceVerifyBatchesForGraphql = (workspaceId) => {
150
+ const state = deps.readSessionState(workspaceId);
151
+ if (!state)
152
+ return [];
153
+ return readWorkspaceVerifyBatchesFromState(state).map((batch) => ({
154
+ ...batch,
155
+ workspaceId,
156
+ }));
157
+ };
158
+ const createWorkspaceVerifyBatchRunForGraphql = async (args) => {
159
+ await deps.activateWorkspaceDeck(args.workspaceId, {
160
+ source: "graphql:createWorkspaceVerifyBatchRun",
161
+ });
162
+ const deckState = deps.readWorkspaceDeckStateStrict(args.workspaceId);
163
+ const grader = deps.resolveGraderDeckFromState(deckState, args.graderId);
164
+ if (!grader) {
165
+ throw new Error(`Unknown grader deck: ${args.graderId}`);
166
+ }
167
+ const state = deps.readSessionStateStrict(args.workspaceId, {
168
+ withTraces: true,
169
+ });
170
+ if (!state) {
171
+ throw new Error(`Workspace ${args.workspaceId} not found`);
172
+ }
173
+ const selectedScenarioDeckId = typeof args.scenarioDeckId === "string" &&
174
+ args.scenarioDeckId.trim().length > 0
175
+ ? args.scenarioDeckId.trim()
176
+ : undefined;
177
+ const normalizedScenarioRuns = Math.max(1, Math.min(deps.verifyScenarioRunsMax, Number.isFinite(args.scenarioRuns)
178
+ ? Math.round(args.scenarioRuns)
179
+ : deps.defaultVerifyScenarioRuns));
180
+ const normalizedRepeats = Math.max(1, Math.min(deps.verifyGraderRepeatsMax, Number.isFinite(args.graderRepeatsPerScenario)
181
+ ? Math.round(args.graderRepeatsPerScenario)
182
+ : deps.defaultVerifyGraderRepeats));
183
+ const requestedSamples = normalizedScenarioRuns * normalizedRepeats;
184
+ const normalizedConcurrency = Math.max(1, Math.min(deps.verifyBatchConcurrencyMax, requestedSamples, Number.isFinite(args.concurrency)
185
+ ? Math.round(args.concurrency)
186
+ : deps.defaultVerifyConcurrency));
187
+ const now = new Date().toISOString();
188
+ const batchId = deps.randomId("vbatch");
189
+ let batch = {
190
+ id: batchId,
191
+ workspaceId: args.workspaceId,
192
+ scenarioDeckId: selectedScenarioDeckId,
193
+ graderId: grader.id,
194
+ scenarioRuns: normalizedScenarioRuns,
195
+ graderRepeatsPerScenario: normalizedRepeats,
196
+ status: "running",
197
+ startedAt: now,
198
+ finishedAt: undefined,
199
+ requested: requestedSamples,
200
+ active: 0,
201
+ completed: 0,
202
+ failed: 0,
203
+ scenarioRunsCompleted: 0,
204
+ scenarioRunsFailed: 0,
205
+ requests: Array.from({ length: normalizedScenarioRuns }, (_value, scenarioIndex) => Array.from({ length: normalizedRepeats }, (_repeat, repeatIndex) => ({
206
+ id: `${batchId}:s${scenarioIndex + 1}:r${repeatIndex + 1}`,
207
+ status: "queued",
208
+ }))).flat(),
209
+ };
210
+ const recomputeBatchState = (baseBatch, nextRequests, options) => {
211
+ const active = nextRequests.filter((request) => request.status === "running").length;
212
+ const completed = nextRequests.filter((request) => request.status === "completed").length;
213
+ const failed = nextRequests.filter((request) => request.status === "error")
214
+ .length;
215
+ const terminal = completed + failed === requestedSamples && active === 0;
216
+ return {
217
+ ...baseBatch,
218
+ requests: nextRequests,
219
+ active,
220
+ completed,
221
+ failed,
222
+ scenarioRunsCompleted: options?.scenarioRunsCompleted ??
223
+ baseBatch.scenarioRunsCompleted,
224
+ scenarioRunsFailed: options?.scenarioRunsFailed ??
225
+ baseBatch.scenarioRunsFailed,
226
+ status: terminal ? (failed > 0 ? "error" : "completed") : "running",
227
+ finishedAt: terminal ? new Date().toISOString() : undefined,
228
+ };
229
+ };
230
+ const awaitScenarioRunTerminal = async (run) => {
231
+ if (run.status !== "running" && run.status !== "idle") {
232
+ return run;
233
+ }
234
+ const active = deps.getLiveTestRunEntry(run.id);
235
+ if (active?.promise) {
236
+ try {
237
+ await active.promise;
238
+ }
239
+ catch {
240
+ // Run status/error is projected on the run record.
241
+ }
242
+ }
243
+ const latest = deps.readWorkspaceScenarioRunsForGraphql(args.workspaceId)
244
+ .find((entry) => entry.id === run.id);
245
+ return latest ?? run;
246
+ };
247
+ let persistedState = deps.persistSessionState(upsertWorkspaceVerifyBatchInState(state, batch));
248
+ const persistAndBroadcastBatch = (reason) => {
249
+ const latest = deps.readSessionStateStrict(args.workspaceId, {
250
+ withTraces: true,
251
+ }) ?? persistedState;
252
+ persistedState = deps.persistSessionState(upsertWorkspaceVerifyBatchInState(latest, batch));
253
+ deps.appendGradingLog(persistedState, {
254
+ type: "gambit.verify.batch",
255
+ workspaceId: args.workspaceId,
256
+ reason,
257
+ batch,
258
+ });
259
+ emitVerifyWorkspaceEvent(args.workspaceId, {
260
+ type: "gambit.verify.batch",
261
+ reason,
262
+ batch,
263
+ });
264
+ };
265
+ persistAndBroadcastBatch("created");
266
+ let updateQueue = Promise.resolve();
267
+ const queueBatchUpdate = async (reason, updater) => {
268
+ updateQueue = updateQueue.then(() => {
269
+ batch = updater(batch);
270
+ persistAndBroadcastBatch(reason);
271
+ });
272
+ await updateQueue;
273
+ };
274
+ const updateBatchRequest = async (requestIndex, patch) => {
275
+ await queueBatchUpdate("request-update", (current) => {
276
+ if (requestIndex < 0 || requestIndex >= current.requests.length) {
277
+ return current;
278
+ }
279
+ const nextRequests = current.requests.map((request, index) => index === requestIndex ? { ...request, ...patch } : request);
280
+ const active = nextRequests.filter((request) => request.status === "running").length;
281
+ const completed = nextRequests.filter((request) => request.status === "completed")
282
+ .length;
283
+ const failed = nextRequests.filter((request) => request.status === "error").length;
284
+ const terminal = completed + failed === current.requested &&
285
+ active === 0;
286
+ return {
287
+ ...current,
288
+ requests: nextRequests,
289
+ active,
290
+ completed,
291
+ failed,
292
+ status: terminal ? (failed > 0 ? "error" : "completed") : "running",
293
+ finishedAt: terminal ? new Date().toISOString() : undefined,
294
+ };
295
+ });
296
+ };
297
+ const queuedGradeRequestIndexes = [];
298
+ let gradeQueueClosed = false;
299
+ const gradeQueueWaiters = [];
300
+ const wakeGradeWorkers = (count) => {
301
+ let remaining = Math.max(0, count);
302
+ while (remaining > 0 && gradeQueueWaiters.length > 0) {
303
+ const notify = gradeQueueWaiters.shift();
304
+ if (notify)
305
+ notify();
306
+ remaining -= 1;
307
+ }
308
+ };
309
+ const enqueueGradeRequestIndexes = (requestIndexes) => {
310
+ if (requestIndexes.length === 0)
311
+ return;
312
+ queuedGradeRequestIndexes.push(...requestIndexes);
313
+ wakeGradeWorkers(requestIndexes.length);
314
+ };
315
+ const closeGradeQueue = () => {
316
+ gradeQueueClosed = true;
317
+ while (gradeQueueWaiters.length > 0) {
318
+ const notify = gradeQueueWaiters.shift();
319
+ if (notify)
320
+ notify();
321
+ }
322
+ };
323
+ const nextQueuedGradeRequestIndex = async () => {
324
+ while (queuedGradeRequestIndexes.length === 0) {
325
+ if (gradeQueueClosed)
326
+ return undefined;
327
+ await new Promise((resolve) => {
328
+ gradeQueueWaiters.push(resolve);
329
+ });
330
+ }
331
+ return queuedGradeRequestIndexes.shift();
332
+ };
333
+ const gradeWorkers = Array.from({ length: normalizedConcurrency }, () => (async () => {
334
+ while (true) {
335
+ const requestIndex = await nextQueuedGradeRequestIndex();
336
+ if (requestIndex === undefined)
337
+ return;
338
+ const scenarioRunId = batch.requests[requestIndex]?.scenarioRunId;
339
+ if (!scenarioRunId)
340
+ continue;
341
+ await updateBatchRequest(requestIndex, { status: "running" });
342
+ try {
343
+ const run = await deps.createWorkspaceGradeRunForGraphql({
344
+ workspaceId: args.workspaceId,
345
+ graderId: grader.id,
346
+ scenarioRunId,
347
+ });
348
+ if (run.status === "completed") {
349
+ await updateBatchRequest(requestIndex, {
350
+ status: "completed",
351
+ scenarioRunId,
352
+ runId: run.id,
353
+ error: undefined,
354
+ });
355
+ }
356
+ else {
357
+ await updateBatchRequest(requestIndex, {
358
+ status: "error",
359
+ scenarioRunId,
360
+ runId: run.id,
361
+ error: run.error ??
362
+ `Grade run ended with status ${run.status}`,
363
+ });
364
+ }
365
+ }
366
+ catch (error) {
367
+ await updateBatchRequest(requestIndex, {
368
+ status: "error",
369
+ scenarioRunId,
370
+ error: error instanceof Error ? error.message : String(error),
371
+ });
372
+ }
373
+ }
374
+ })());
375
+ let scenarioCursor = 0;
376
+ const nextScenarioIndex = () => {
377
+ if (scenarioCursor >= normalizedScenarioRuns)
378
+ return undefined;
379
+ const current = scenarioCursor;
380
+ scenarioCursor += 1;
381
+ return current;
382
+ };
383
+ const scenarioWorkerCount = Math.max(1, Math.min(normalizedScenarioRuns, normalizedConcurrency));
384
+ const scenarioWorkers = Array.from({ length: scenarioWorkerCount }, () => (async () => {
385
+ while (true) {
386
+ const scenarioIndex = nextScenarioIndex();
387
+ if (scenarioIndex === undefined)
388
+ return;
389
+ const requestStart = scenarioIndex * normalizedRepeats;
390
+ const requestEndExclusive = requestStart + normalizedRepeats;
391
+ try {
392
+ const startedRun = await deps.startWorkspaceScenarioRunForGraphql({
393
+ workspaceId: args.workspaceId,
394
+ scenarioDeckId: selectedScenarioDeckId,
395
+ });
396
+ const run = await awaitScenarioRunTerminal(startedRun);
397
+ if (run.status !== "completed") {
398
+ const scenarioError = run.error ??
399
+ `Scenario run ended with status ${run.status}`;
400
+ await queueBatchUpdate("scenario-run-failed", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
401
+ requestIndex < requestEndExclusive
402
+ ? {
403
+ ...request,
404
+ scenarioRunId: run.id,
405
+ status: "error",
406
+ error: scenarioError,
407
+ }
408
+ : request), {
409
+ scenarioRunsFailed: current.scenarioRunsFailed + 1,
410
+ }));
411
+ continue;
412
+ }
413
+ await queueBatchUpdate("scenario-run-completed", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
414
+ requestIndex < requestEndExclusive
415
+ ? {
416
+ ...request,
417
+ scenarioRunId: run.id,
418
+ }
419
+ : request), {
420
+ scenarioRunsCompleted: current.scenarioRunsCompleted + 1,
421
+ }));
422
+ const requestIndexes = Array.from({ length: normalizedRepeats }, (_value, repeatIndex) => requestStart + repeatIndex);
423
+ enqueueGradeRequestIndexes(requestIndexes);
424
+ }
425
+ catch (error) {
426
+ const scenarioError = error instanceof Error
427
+ ? error.message
428
+ : String(error);
429
+ await queueBatchUpdate("scenario-run-error", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
430
+ requestIndex < requestEndExclusive
431
+ ? {
432
+ ...request,
433
+ status: "error",
434
+ error: scenarioError,
435
+ }
436
+ : request), {
437
+ scenarioRunsFailed: current.scenarioRunsFailed + 1,
438
+ }));
439
+ }
440
+ }
441
+ })());
442
+ await Promise.all(scenarioWorkers);
443
+ closeGradeQueue();
444
+ await Promise.all(gradeWorkers);
445
+ await updateQueue;
446
+ return batch;
447
+ };
448
+ return {
449
+ readWorkspaceVerifyBatchesForGraphql,
450
+ createWorkspaceVerifyBatchRunForGraphql,
451
+ };
452
+ };
453
+ exports.createWorkspaceVerifyService = createWorkspaceVerifyService;
@@ -1,8 +1,5 @@
1
1
  import * as dntShim from "../_dnt.shims.js";
2
2
  import type { ModelProvider } from "@bolt-foundry/gambit-core";
3
- /**
4
- * Start the WebSocket simulator server used by the Gambit debug UI.
5
- */
6
3
  export declare function startWebSocketSimulator(opts: {
7
4
  deckPath: string;
8
5
  modelProvider: ModelProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AA6E5C,OAAO,KAAK,EAMV,aAAa,EAOd,MAAM,2BAA2B,CAAC;AAipCnC;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAosNxC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAM5C,OAAO,KAAK,EAEV,aAAa,EAEd,MAAM,2BAA2B,CAAC;AAuGnC,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAwsBxC"}