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

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 (645) hide show
  1. package/CHANGELOG.md +102 -1
  2. package/README.md +1 -1
  3. package/esm/gambit/simulator-ui/dist/bundle.js +4140 -1738
  4. package/esm/gambit/simulator-ui/dist/bundle.js.map +4 -4
  5. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.d.ts +7 -0
  6. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.d.ts.map +1 -0
  7. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.js +22 -0
  8. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.d.ts +4 -0
  9. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.d.ts.map +1 -0
  10. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.js +275 -0
  11. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.d.ts +3 -0
  12. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.d.ts.map +1 -0
  13. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.js +1 -0
  14. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.d.ts +72 -0
  15. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.d.ts.map +1 -0
  16. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.js +1 -0
  17. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.d.ts +6 -0
  18. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.d.ts.map +1 -0
  19. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.js +1 -0
  20. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.d.ts +3 -0
  21. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.d.ts.map +1 -0
  22. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.js +59 -0
  23. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.d.ts +55 -0
  24. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.d.ts.map +1 -0
  25. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.js +1 -0
  26. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.d.ts +6 -0
  27. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.d.ts.map +1 -0
  28. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.js +360 -0
  29. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/param_type.d.ts +63 -63
  30. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/param_type.d.ts.map +1 -1
  31. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/raw_response_type.d.ts +63 -63
  32. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/raw_response_type.d.ts.map +1 -1
  33. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/param_type.d.ts +63 -63
  34. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/param_type.d.ts.map +1 -1
  35. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/raw_response_type.d.ts +63 -63
  36. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/raw_response_type.d.ts.map +1 -1
  37. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/param_type.d.ts +61 -61
  38. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/param_type.d.ts.map +1 -1
  39. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/raw_response_type.d.ts +65 -65
  40. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/raw_response_type.d.ts.map +1 -1
  41. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/param_type.d.ts +21 -21
  42. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/param_type.d.ts.map +1 -1
  43. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/parameters_type.d.ts +2 -1
  44. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/parameters_type.d.ts.map +1 -1
  45. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/raw_response_type.d.ts +31 -31
  46. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/raw_response_type.d.ts.map +1 -1
  47. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/param_type.d.ts +61 -61
  48. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/param_type.d.ts.map +1 -1
  49. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/raw_response_type.d.ts +65 -65
  50. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/raw_response_type.d.ts.map +1 -1
  51. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/param_type.d.ts +12 -12
  52. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/param_type.d.ts.map +1 -1
  53. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/raw_response_type.d.ts +12 -12
  54. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/raw_response_type.d.ts.map +1 -1
  55. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.d.ts +7 -0
  56. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.d.ts.map +1 -0
  57. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.js +22 -0
  58. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.d.ts +4 -0
  59. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.d.ts.map +1 -0
  60. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.js +29 -0
  61. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.d.ts +3 -0
  62. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.d.ts.map +1 -0
  63. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.js +1 -0
  64. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.d.ts +11 -0
  65. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.d.ts.map +1 -0
  66. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.js +1 -0
  67. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.d.ts +4 -0
  68. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.d.ts.map +1 -0
  69. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.js +1 -0
  70. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.d.ts +3 -0
  71. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.d.ts.map +1 -0
  72. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.js +6 -0
  73. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.d.ts +7 -0
  74. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.d.ts.map +1 -0
  75. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.js +1 -0
  76. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.d.ts +6 -0
  77. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.d.ts.map +1 -0
  78. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.js +41 -0
  79. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/param_type.d.ts +17 -17
  80. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/param_type.d.ts.map +1 -1
  81. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/raw_response_type.d.ts +17 -17
  82. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/raw_response_type.d.ts.map +1 -1
  83. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/param_type.d.ts +17 -17
  84. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/param_type.d.ts.map +1 -1
  85. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/raw_response_type.d.ts +17 -17
  86. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/raw_response_type.d.ts.map +1 -1
  87. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/param_type.d.ts +45 -45
  88. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/param_type.d.ts.map +1 -1
  89. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/raw_response_type.d.ts +45 -45
  90. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/raw_response_type.d.ts.map +1 -1
  91. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts +58 -58
  92. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts.map +1 -1
  93. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts +58 -58
  94. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts.map +1 -1
  95. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts +35 -35
  96. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts.map +1 -1
  97. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts +35 -35
  98. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts.map +1 -1
  99. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/param_type.d.ts +58 -58
  100. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/param_type.d.ts.map +1 -1
  101. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/raw_response_type.d.ts +58 -58
  102. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/raw_response_type.d.ts.map +1 -1
  103. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/normalization_ast.d.ts.map +1 -1
  104. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/normalization_ast.js +288 -101
  105. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/param_type.d.ts +152 -113
  106. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/param_type.d.ts.map +1 -1
  107. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/parameters_type.d.ts +3 -2
  108. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/parameters_type.d.ts.map +1 -1
  109. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.d.ts +1 -1
  110. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.d.ts.map +1 -1
  111. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.js +85 -47
  112. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/raw_response_type.d.ts +152 -114
  113. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/raw_response_type.d.ts.map +1 -1
  114. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/resolver_reader.d.ts.map +1 -1
  115. package/esm/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/resolver_reader.js +363 -97
  116. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/param_type.d.ts +3 -3
  117. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/param_type.d.ts.map +1 -1
  118. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/raw_response_type.d.ts +3 -3
  119. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/raw_response_type.d.ts.map +1 -1
  120. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/param_type.d.ts +2 -2
  121. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/param_type.d.ts.map +1 -1
  122. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/raw_response_type.d.ts +11 -11
  123. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/raw_response_type.d.ts.map +1 -1
  124. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/param_type.d.ts +2 -2
  125. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/param_type.d.ts.map +1 -1
  126. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts +37 -37
  127. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts.map +1 -1
  128. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/param_type.d.ts +2 -2
  129. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/param_type.d.ts.map +1 -1
  130. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +33 -33
  131. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  132. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.d.ts.map +1 -1
  133. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.js +154 -76
  134. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/param_type.d.ts +2 -2
  135. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/param_type.d.ts.map +1 -1
  136. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts +1 -1
  137. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts.map +1 -1
  138. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.js +45 -29
  139. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts +87 -71
  140. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts.map +1 -1
  141. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/param_type.d.ts +3 -3
  142. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/param_type.d.ts.map +1 -1
  143. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts +53 -53
  144. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts.map +1 -1
  145. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaces/raw_response_type.d.ts +7 -7
  146. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaces/raw_response_type.d.ts.map +1 -1
  147. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/param_type.d.ts +78 -78
  148. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/param_type.d.ts.map +1 -1
  149. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/raw_response_type.d.ts +78 -78
  150. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/raw_response_type.d.ts.map +1 -1
  151. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/param_type.d.ts +11 -11
  152. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/param_type.d.ts.map +1 -1
  153. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/raw_response_type.d.ts +11 -11
  154. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/raw_response_type.d.ts.map +1 -1
  155. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/param_type.d.ts +37 -37
  156. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/param_type.d.ts.map +1 -1
  157. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/raw_response_type.d.ts +37 -37
  158. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/raw_response_type.d.ts.map +1 -1
  159. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/normalization_ast.d.ts.map +1 -1
  160. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/normalization_ast.js +154 -76
  161. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/param_type.d.ts +87 -70
  162. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/param_type.d.ts.map +1 -1
  163. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.d.ts +1 -1
  164. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.d.ts.map +1 -1
  165. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.js +45 -29
  166. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/raw_response_type.d.ts +87 -71
  167. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/raw_response_type.d.ts.map +1 -1
  168. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/resolver_reader.d.ts.map +1 -1
  169. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/resolver_reader.js +194 -78
  170. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/param_type.d.ts +21 -21
  171. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/param_type.d.ts.map +1 -1
  172. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/raw_response_type.d.ts +46 -46
  173. package/esm/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/raw_response_type.d.ts.map +1 -1
  174. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorAppDrawer/param_type.d.ts +7 -7
  175. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorAppDrawer/param_type.d.ts.map +1 -1
  176. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorBuildContentShell/param_type.d.ts +2 -2
  177. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorBuildContentShell/param_type.d.ts.map +1 -1
  178. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorWorkspacesPage/param_type.d.ts +7 -7
  179. package/esm/simulator-ui/__generated__/__isograph/Query/SimulatorWorkspacesPage/param_type.d.ts.map +1 -1
  180. package/esm/simulator-ui/__generated__/__isograph/Workspace/BuildTab/param_type.d.ts +8 -8
  181. package/esm/simulator-ui/__generated__/__isograph/Workspace/BuildTab/param_type.d.ts.map +1 -1
  182. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts +35 -35
  183. package/esm/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts.map +1 -1
  184. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +31 -31
  185. package/esm/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  186. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts +85 -68
  187. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts.map +1 -1
  188. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.d.ts.map +1 -1
  189. package/esm/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.js +194 -78
  190. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts +19 -19
  191. package/esm/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts.map +1 -1
  192. package/esm/simulator-ui/__generated__/__isograph/WorkspaceConversationRun/WorkbenchConversationRunChat/param_type.d.ts +26 -26
  193. package/esm/simulator-ui/__generated__/__isograph/WorkspaceConversationRun/WorkbenchConversationRunChat/param_type.d.ts.map +1 -1
  194. package/esm/simulator-ui/__generated__/__isograph/WorkspaceFile/PreviewFile/param_type.d.ts +2 -2
  195. package/esm/simulator-ui/__generated__/__isograph/WorkspaceFile/PreviewFile/param_type.d.ts.map +1 -1
  196. package/esm/simulator-ui/__generated__/__isograph/iso.d.ts +8 -0
  197. package/esm/simulator-ui/__generated__/__isograph/iso.d.ts.map +1 -1
  198. package/esm/simulator-ui/__generated__/__isograph/iso.js +6 -0
  199. package/esm/simulator-ui/__generated__/builtRoutes.d.ts +4 -0
  200. package/esm/simulator-ui/__generated__/builtRoutes.d.ts.map +1 -1
  201. package/esm/simulator-ui/__generated__/builtRoutes.js +6 -0
  202. package/esm/simulator-ui/isograph/components/Query/SimulatorAppDrawer.d.ts +6 -0
  203. package/esm/simulator-ui/isograph/components/Query/SimulatorAppDrawer.d.ts.map +1 -1
  204. package/esm/simulator-ui/isograph/components/Query/SimulatorAppDrawer.js +61 -14
  205. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  206. package/esm/simulator-ui/isograph/components/Query/SimulatorTestPage.js +10 -8
  207. package/esm/simulator-ui/isograph/components/Query/SimulatorVerifyPage.d.ts.map +1 -1
  208. package/esm/simulator-ui/isograph/components/Query/SimulatorVerifyPage.js +257 -203
  209. package/esm/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.d.ts.map +1 -1
  210. package/esm/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.js +148 -3
  211. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts +5 -0
  212. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts.map +1 -1
  213. package/esm/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.js +9 -4
  214. package/esm/simulator-ui/isograph/components/grade/GradeTabView.d.ts.map +1 -1
  215. package/esm/simulator-ui/isograph/components/grade/GradeTabView.js +3 -1
  216. package/esm/simulator-ui/isograph/entrypoints/EntrypointWorkspaceVerifyLiveWrite.d.ts.map +1 -1
  217. package/esm/simulator-ui/isograph/entrypoints/EntrypointWorkspaceVerifyLiveWrite.js +45 -28
  218. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspace.d.ts +55 -0
  219. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspace.d.ts.map +1 -0
  220. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspace.js +63 -0
  221. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.d.ts +55 -0
  222. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.d.ts.map +1 -0
  223. package/esm/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.js +7 -0
  224. package/esm/simulator-ui/mutations/GambitSimulatorStopRun.d.ts +62 -62
  225. package/esm/simulator-ui/mutations/GambitSimulatorStopRun.d.ts.map +1 -1
  226. package/esm/simulator-ui/mutations/GambitSimulatorStopRunMutation.d.ts +62 -62
  227. package/esm/simulator-ui/mutations/GambitSimulatorStopRunMutation.d.ts.map +1 -1
  228. package/esm/simulator-ui/mutations/GambitWorkspaceBuildRunCreate.d.ts +62 -62
  229. package/esm/simulator-ui/mutations/GambitWorkspaceBuildRunCreate.d.ts.map +1 -1
  230. package/esm/simulator-ui/mutations/GambitWorkspaceBuildRunCreateMutation.d.ts +62 -62
  231. package/esm/simulator-ui/mutations/GambitWorkspaceBuildRunCreateMutation.d.ts.map +1 -1
  232. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionSend.d.ts +60 -60
  233. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionSend.d.ts.map +1 -1
  234. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionStart.d.ts +20 -20
  235. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionStart.d.ts.map +1 -1
  236. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionStop.d.ts +60 -60
  237. package/esm/simulator-ui/mutations/GambitWorkspaceConversationSessionStop.d.ts.map +1 -1
  238. package/esm/simulator-ui/mutations/GambitWorkspaceCreate.d.ts +11 -11
  239. package/esm/simulator-ui/mutations/GambitWorkspaceCreate.d.ts.map +1 -1
  240. package/esm/simulator-ui/mutations/GambitWorkspaceCreateMutation.d.ts +11 -11
  241. package/esm/simulator-ui/mutations/GambitWorkspaceCreateMutation.d.ts.map +1 -1
  242. package/esm/simulator-ui/mutations/GambitWorkspaceDelete.d.ts +6 -0
  243. package/esm/simulator-ui/mutations/GambitWorkspaceDelete.d.ts.map +1 -0
  244. package/esm/simulator-ui/mutations/GambitWorkspaceDelete.js +12 -0
  245. package/esm/simulator-ui/mutations/GambitWorkspaceDeleteMutation.d.ts +6 -0
  246. package/esm/simulator-ui/mutations/GambitWorkspaceDeleteMutation.d.ts.map +1 -0
  247. package/esm/simulator-ui/mutations/GambitWorkspaceDeleteMutation.js +7 -0
  248. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdate.d.ts +16 -16
  249. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdate.d.ts.map +1 -1
  250. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdateMutation.d.ts +16 -16
  251. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdateMutation.d.ts.map +1 -1
  252. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagToggle.d.ts +16 -16
  253. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagToggle.d.ts.map +1 -1
  254. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagToggleMutation.d.ts +16 -16
  255. package/esm/simulator-ui/mutations/GambitWorkspaceGradeFlagToggleMutation.d.ts.map +1 -1
  256. package/esm/simulator-ui/mutations/GambitWorkspaceGradeRunCreate.d.ts +44 -44
  257. package/esm/simulator-ui/mutations/GambitWorkspaceGradeRunCreate.d.ts.map +1 -1
  258. package/esm/simulator-ui/mutations/GambitWorkspaceGradeRunCreateMutation.d.ts +44 -44
  259. package/esm/simulator-ui/mutations/GambitWorkspaceGradeRunCreateMutation.d.ts.map +1 -1
  260. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts +57 -57
  261. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts.map +1 -1
  262. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts +57 -57
  263. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts.map +1 -1
  264. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts +34 -34
  265. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts.map +1 -1
  266. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts +34 -34
  267. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts.map +1 -1
  268. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStop.d.ts +57 -57
  269. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStop.d.ts.map +1 -1
  270. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStopMutation.d.ts +57 -57
  271. package/esm/simulator-ui/mutations/GambitWorkspaceScenarioRunStopMutation.d.ts.map +1 -1
  272. package/esm/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.d.ts +151 -112
  273. package/esm/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.d.ts.map +1 -1
  274. package/esm/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.js +85 -46
  275. package/esm/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreateMutation.d.ts +151 -112
  276. package/esm/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreateMutation.d.ts.map +1 -1
  277. package/esm/simulator-ui/src/AppRoot.d.ts.map +1 -1
  278. package/esm/simulator-ui/src/AppRoot.js +10 -2
  279. package/esm/simulator-ui/src/AppShell.d.ts +6 -0
  280. package/esm/simulator-ui/src/AppShell.d.ts.map +1 -1
  281. package/esm/simulator-ui/src/AppShell.js +104 -32
  282. package/esm/simulator-ui/src/DocsPage.d.ts +2 -0
  283. package/esm/simulator-ui/src/DocsPage.d.ts.map +1 -0
  284. package/esm/simulator-ui/src/DocsPage.js +80 -0
  285. package/esm/simulator-ui/src/WorkbenchDrawerIso.d.ts +4 -0
  286. package/esm/simulator-ui/src/WorkbenchDrawerIso.d.ts.map +1 -1
  287. package/esm/simulator-ui/src/WorkbenchDrawerIso.js +20 -3
  288. package/esm/simulator-ui/src/WorkspaceContext.d.ts.map +1 -1
  289. package/esm/simulator-ui/src/WorkspaceContext.js +42 -10
  290. package/esm/simulator-ui/src/grade/GradeResultsPanel.d.ts.map +1 -1
  291. package/esm/simulator-ui/src/grade/GradeResultsPanel.js +3 -1
  292. package/esm/simulator-ui/src/routing.d.ts.map +1 -1
  293. package/esm/simulator-ui/src/routing.js +2 -0
  294. package/esm/simulator-ui/src/test_tab_start_gate.d.ts +8 -0
  295. package/esm/simulator-ui/src/test_tab_start_gate.d.ts.map +1 -0
  296. package/esm/simulator-ui/src/test_tab_start_gate.js +8 -0
  297. package/esm/simulator-ui/src/verify_unified.d.ts +17 -0
  298. package/esm/simulator-ui/src/verify_unified.d.ts.map +1 -0
  299. package/esm/simulator-ui/src/verify_unified.js +25 -0
  300. package/esm/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.d.ts +1 -1
  301. package/esm/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.d.ts.map +1 -1
  302. package/esm/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.js +1 -1
  303. package/esm/src/providers/claude_code.d.ts.map +1 -1
  304. package/esm/src/providers/claude_code.js +65 -6
  305. package/esm/src/providers/codex.d.ts.map +1 -1
  306. package/esm/src/providers/codex.js +64 -1
  307. package/esm/src/server.d.ts.map +1 -1
  308. package/esm/src/server.js +499 -172
  309. package/esm/src/server_build_chat_provider.d.ts +26 -0
  310. package/esm/src/server_build_chat_provider.d.ts.map +1 -0
  311. package/esm/src/server_build_chat_provider.js +127 -0
  312. package/esm/src/server_isograph_environment.d.ts +28 -4
  313. package/esm/src/server_isograph_environment.d.ts.map +1 -1
  314. package/esm/src/server_isograph_environment.js +11 -0
  315. package/esm/src/server_session_store.d.ts +41 -1
  316. package/esm/src/server_session_store.d.ts.map +1 -1
  317. package/esm/src/server_session_store.js +1010 -0
  318. package/esm/src/simulator_graphql.d.ts +51 -4
  319. package/esm/src/simulator_graphql.d.ts.map +1 -1
  320. package/esm/src/simulator_graphql.js +419 -303
  321. package/package.json +2 -2
  322. package/script/gambit/simulator-ui/dist/bundle.js +4140 -1738
  323. package/script/gambit/simulator-ui/dist/bundle.js.map +4 -4
  324. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.d.ts +7 -0
  325. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.d.ts.map +1 -0
  326. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/entrypoint.js +27 -0
  327. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.d.ts +4 -0
  328. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.d.ts.map +1 -0
  329. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/normalization_ast.js +277 -0
  330. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.d.ts +3 -0
  331. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.d.ts.map +1 -0
  332. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/output_type.js +2 -0
  333. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.d.ts +72 -0
  334. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.d.ts.map +1 -0
  335. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/param_type.js +2 -0
  336. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.d.ts +6 -0
  337. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.d.ts.map +1 -0
  338. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/parameters_type.js +2 -0
  339. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.d.ts +3 -0
  340. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.d.ts.map +1 -0
  341. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/query_text.js +61 -0
  342. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.d.ts +55 -0
  343. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.d.ts.map +1 -0
  344. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/raw_response_type.js +2 -0
  345. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.d.ts +6 -0
  346. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.d.ts.map +1 -0
  347. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorResetWorkspace/resolver_reader.js +365 -0
  348. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/param_type.d.ts +63 -63
  349. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/param_type.d.ts.map +1 -1
  350. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/raw_response_type.d.ts +63 -63
  351. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitSimulatorStopRun/raw_response_type.d.ts.map +1 -1
  352. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/param_type.d.ts +63 -63
  353. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/param_type.d.ts.map +1 -1
  354. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/raw_response_type.d.ts +63 -63
  355. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceBuildRunCreate/raw_response_type.d.ts.map +1 -1
  356. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/param_type.d.ts +61 -61
  357. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/param_type.d.ts.map +1 -1
  358. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/raw_response_type.d.ts +65 -65
  359. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionSend/raw_response_type.d.ts.map +1 -1
  360. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/param_type.d.ts +21 -21
  361. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/param_type.d.ts.map +1 -1
  362. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/parameters_type.d.ts +2 -1
  363. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/parameters_type.d.ts.map +1 -1
  364. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/raw_response_type.d.ts +31 -31
  365. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStart/raw_response_type.d.ts.map +1 -1
  366. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/param_type.d.ts +61 -61
  367. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/param_type.d.ts.map +1 -1
  368. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/raw_response_type.d.ts +65 -65
  369. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceConversationSessionStop/raw_response_type.d.ts.map +1 -1
  370. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/param_type.d.ts +12 -12
  371. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/param_type.d.ts.map +1 -1
  372. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/raw_response_type.d.ts +12 -12
  373. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceCreate/raw_response_type.d.ts.map +1 -1
  374. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.d.ts +7 -0
  375. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.d.ts.map +1 -0
  376. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/entrypoint.js +27 -0
  377. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.d.ts +4 -0
  378. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.d.ts.map +1 -0
  379. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/normalization_ast.js +31 -0
  380. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.d.ts +3 -0
  381. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.d.ts.map +1 -0
  382. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/output_type.js +2 -0
  383. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.d.ts +11 -0
  384. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.d.ts.map +1 -0
  385. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/param_type.js +2 -0
  386. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.d.ts +4 -0
  387. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.d.ts.map +1 -0
  388. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/parameters_type.js +2 -0
  389. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.d.ts +3 -0
  390. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.d.ts.map +1 -0
  391. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/query_text.js +8 -0
  392. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.d.ts +7 -0
  393. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.d.ts.map +1 -0
  394. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/raw_response_type.js +2 -0
  395. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.d.ts +6 -0
  396. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.d.ts.map +1 -0
  397. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceDelete/resolver_reader.js +43 -0
  398. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/param_type.d.ts +17 -17
  399. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/param_type.d.ts.map +1 -1
  400. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/raw_response_type.d.ts +17 -17
  401. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagReasonUpdate/raw_response_type.d.ts.map +1 -1
  402. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/param_type.d.ts +17 -17
  403. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/param_type.d.ts.map +1 -1
  404. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/raw_response_type.d.ts +17 -17
  405. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeFlagToggle/raw_response_type.d.ts.map +1 -1
  406. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/param_type.d.ts +45 -45
  407. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/param_type.d.ts.map +1 -1
  408. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/raw_response_type.d.ts +45 -45
  409. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceGradeRunCreate/raw_response_type.d.ts.map +1 -1
  410. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts +58 -58
  411. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/param_type.d.ts.map +1 -1
  412. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts +58 -58
  413. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunSend/raw_response_type.d.ts.map +1 -1
  414. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts +35 -35
  415. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/param_type.d.ts.map +1 -1
  416. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts +35 -35
  417. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStart/raw_response_type.d.ts.map +1 -1
  418. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/param_type.d.ts +58 -58
  419. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/param_type.d.ts.map +1 -1
  420. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/raw_response_type.d.ts +58 -58
  421. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceScenarioRunStop/raw_response_type.d.ts.map +1 -1
  422. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/normalization_ast.d.ts.map +1 -1
  423. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/normalization_ast.js +288 -101
  424. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/param_type.d.ts +152 -113
  425. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/param_type.d.ts.map +1 -1
  426. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/parameters_type.d.ts +3 -2
  427. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/parameters_type.d.ts.map +1 -1
  428. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.d.ts +1 -1
  429. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.d.ts.map +1 -1
  430. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/query_text.js +85 -47
  431. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/raw_response_type.d.ts +152 -114
  432. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/raw_response_type.d.ts.map +1 -1
  433. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/resolver_reader.d.ts.map +1 -1
  434. package/script/simulator-ui/__generated__/__isograph/Mutation/GambitWorkspaceVerifyBatchRunCreate/resolver_reader.js +363 -97
  435. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/param_type.d.ts +3 -3
  436. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/param_type.d.ts.map +1 -1
  437. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/raw_response_type.d.ts +3 -3
  438. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointChatOptimisticPlaceholder/raw_response_type.d.ts.map +1 -1
  439. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/param_type.d.ts +2 -2
  440. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/param_type.d.ts.map +1 -1
  441. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/raw_response_type.d.ts +11 -11
  442. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorBuildPage/raw_response_type.d.ts.map +1 -1
  443. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/param_type.d.ts +2 -2
  444. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/param_type.d.ts.map +1 -1
  445. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts +37 -37
  446. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorGradePage/raw_response_type.d.ts.map +1 -1
  447. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/param_type.d.ts +2 -2
  448. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/param_type.d.ts.map +1 -1
  449. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts +33 -33
  450. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorTestPage/raw_response_type.d.ts.map +1 -1
  451. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.d.ts.map +1 -1
  452. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/normalization_ast.js +154 -76
  453. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/param_type.d.ts +2 -2
  454. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/param_type.d.ts.map +1 -1
  455. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts +1 -1
  456. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.d.ts.map +1 -1
  457. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/query_text.js +45 -29
  458. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts +87 -71
  459. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorVerifyPage/raw_response_type.d.ts.map +1 -1
  460. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/param_type.d.ts +3 -3
  461. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/param_type.d.ts.map +1 -1
  462. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts +53 -53
  463. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaceShell/raw_response_type.d.ts.map +1 -1
  464. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaces/raw_response_type.d.ts +7 -7
  465. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointSimulatorWorkspaces/raw_response_type.d.ts.map +1 -1
  466. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/param_type.d.ts +78 -78
  467. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/param_type.d.ts.map +1 -1
  468. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/raw_response_type.d.ts +78 -78
  469. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildLiveWrite/raw_response_type.d.ts.map +1 -1
  470. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/param_type.d.ts +11 -11
  471. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/param_type.d.ts.map +1 -1
  472. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/raw_response_type.d.ts +11 -11
  473. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceBuildTabLiveWrite/raw_response_type.d.ts.map +1 -1
  474. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/param_type.d.ts +37 -37
  475. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/param_type.d.ts.map +1 -1
  476. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/raw_response_type.d.ts +37 -37
  477. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceGradeLiveWrite/raw_response_type.d.ts.map +1 -1
  478. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/normalization_ast.d.ts.map +1 -1
  479. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/normalization_ast.js +154 -76
  480. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/param_type.d.ts +87 -70
  481. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/param_type.d.ts.map +1 -1
  482. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.d.ts +1 -1
  483. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.d.ts.map +1 -1
  484. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/query_text.js +45 -29
  485. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/raw_response_type.d.ts +87 -71
  486. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/raw_response_type.d.ts.map +1 -1
  487. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/resolver_reader.d.ts.map +1 -1
  488. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceVerifyLiveWrite/resolver_reader.js +194 -78
  489. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/param_type.d.ts +21 -21
  490. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/param_type.d.ts.map +1 -1
  491. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/raw_response_type.d.ts +46 -46
  492. package/script/simulator-ui/__generated__/__isograph/Query/EntrypointWorkspaceWorkbenchLiveWrite/raw_response_type.d.ts.map +1 -1
  493. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorAppDrawer/param_type.d.ts +7 -7
  494. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorAppDrawer/param_type.d.ts.map +1 -1
  495. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorBuildContentShell/param_type.d.ts +2 -2
  496. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorBuildContentShell/param_type.d.ts.map +1 -1
  497. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorWorkspacesPage/param_type.d.ts +7 -7
  498. package/script/simulator-ui/__generated__/__isograph/Query/SimulatorWorkspacesPage/param_type.d.ts.map +1 -1
  499. package/script/simulator-ui/__generated__/__isograph/Workspace/BuildTab/param_type.d.ts +8 -8
  500. package/script/simulator-ui/__generated__/__isograph/Workspace/BuildTab/param_type.d.ts.map +1 -1
  501. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts +35 -35
  502. package/script/simulator-ui/__generated__/__isograph/Workspace/GradeTab/param_type.d.ts.map +1 -1
  503. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts +31 -31
  504. package/script/simulator-ui/__generated__/__isograph/Workspace/TestTab/param_type.d.ts.map +1 -1
  505. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts +85 -68
  506. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/param_type.d.ts.map +1 -1
  507. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.d.ts.map +1 -1
  508. package/script/simulator-ui/__generated__/__isograph/Workspace/VerifyTab/resolver_reader.js +194 -78
  509. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts +19 -19
  510. package/script/simulator-ui/__generated__/__isograph/Workspace/WorkbenchChatDrawer/param_type.d.ts.map +1 -1
  511. package/script/simulator-ui/__generated__/__isograph/WorkspaceConversationRun/WorkbenchConversationRunChat/param_type.d.ts +26 -26
  512. package/script/simulator-ui/__generated__/__isograph/WorkspaceConversationRun/WorkbenchConversationRunChat/param_type.d.ts.map +1 -1
  513. package/script/simulator-ui/__generated__/__isograph/WorkspaceFile/PreviewFile/param_type.d.ts +2 -2
  514. package/script/simulator-ui/__generated__/__isograph/WorkspaceFile/PreviewFile/param_type.d.ts.map +1 -1
  515. package/script/simulator-ui/__generated__/__isograph/iso.d.ts +8 -0
  516. package/script/simulator-ui/__generated__/__isograph/iso.d.ts.map +1 -1
  517. package/script/simulator-ui/__generated__/__isograph/iso.js +60 -54
  518. package/script/simulator-ui/__generated__/builtRoutes.d.ts +4 -0
  519. package/script/simulator-ui/__generated__/builtRoutes.d.ts.map +1 -1
  520. package/script/simulator-ui/__generated__/builtRoutes.js +33 -27
  521. package/script/simulator-ui/isograph/components/Query/SimulatorAppDrawer.d.ts +6 -0
  522. package/script/simulator-ui/isograph/components/Query/SimulatorAppDrawer.d.ts.map +1 -1
  523. package/script/simulator-ui/isograph/components/Query/SimulatorAppDrawer.js +60 -13
  524. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.d.ts.map +1 -1
  525. package/script/simulator-ui/isograph/components/Query/SimulatorTestPage.js +10 -8
  526. package/script/simulator-ui/isograph/components/Query/SimulatorVerifyPage.d.ts.map +1 -1
  527. package/script/simulator-ui/isograph/components/Query/SimulatorVerifyPage.js +256 -202
  528. package/script/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.d.ts.map +1 -1
  529. package/script/simulator-ui/isograph/components/Workspace/WorkbenchChatDrawer.js +180 -2
  530. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts +5 -0
  531. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.d.ts.map +1 -1
  532. package/script/simulator-ui/isograph/components/WorkspaceConversationRun/WorkbenchConversationRunChat.js +9 -4
  533. package/script/simulator-ui/isograph/components/grade/GradeTabView.d.ts.map +1 -1
  534. package/script/simulator-ui/isograph/components/grade/GradeTabView.js +3 -1
  535. package/script/simulator-ui/isograph/entrypoints/EntrypointWorkspaceVerifyLiveWrite.d.ts.map +1 -1
  536. package/script/simulator-ui/isograph/entrypoints/EntrypointWorkspaceVerifyLiveWrite.js +45 -28
  537. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspace.d.ts +55 -0
  538. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspace.d.ts.map +1 -0
  539. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspace.js +66 -0
  540. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.d.ts +55 -0
  541. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.d.ts.map +1 -0
  542. package/script/simulator-ui/mutations/GambitSimulatorResetWorkspaceMutation.js +13 -0
  543. package/script/simulator-ui/mutations/GambitSimulatorStopRun.d.ts +62 -62
  544. package/script/simulator-ui/mutations/GambitSimulatorStopRun.d.ts.map +1 -1
  545. package/script/simulator-ui/mutations/GambitSimulatorStopRunMutation.d.ts +62 -62
  546. package/script/simulator-ui/mutations/GambitSimulatorStopRunMutation.d.ts.map +1 -1
  547. package/script/simulator-ui/mutations/GambitWorkspaceBuildRunCreate.d.ts +62 -62
  548. package/script/simulator-ui/mutations/GambitWorkspaceBuildRunCreate.d.ts.map +1 -1
  549. package/script/simulator-ui/mutations/GambitWorkspaceBuildRunCreateMutation.d.ts +62 -62
  550. package/script/simulator-ui/mutations/GambitWorkspaceBuildRunCreateMutation.d.ts.map +1 -1
  551. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionSend.d.ts +60 -60
  552. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionSend.d.ts.map +1 -1
  553. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionStart.d.ts +20 -20
  554. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionStart.d.ts.map +1 -1
  555. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionStop.d.ts +60 -60
  556. package/script/simulator-ui/mutations/GambitWorkspaceConversationSessionStop.d.ts.map +1 -1
  557. package/script/simulator-ui/mutations/GambitWorkspaceCreate.d.ts +11 -11
  558. package/script/simulator-ui/mutations/GambitWorkspaceCreate.d.ts.map +1 -1
  559. package/script/simulator-ui/mutations/GambitWorkspaceCreateMutation.d.ts +11 -11
  560. package/script/simulator-ui/mutations/GambitWorkspaceCreateMutation.d.ts.map +1 -1
  561. package/script/simulator-ui/mutations/GambitWorkspaceDelete.d.ts +6 -0
  562. package/script/simulator-ui/mutations/GambitWorkspaceDelete.d.ts.map +1 -0
  563. package/script/simulator-ui/mutations/GambitWorkspaceDelete.js +15 -0
  564. package/script/simulator-ui/mutations/GambitWorkspaceDeleteMutation.d.ts +6 -0
  565. package/script/simulator-ui/mutations/GambitWorkspaceDeleteMutation.d.ts.map +1 -0
  566. package/script/simulator-ui/mutations/GambitWorkspaceDeleteMutation.js +13 -0
  567. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdate.d.ts +16 -16
  568. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdate.d.ts.map +1 -1
  569. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdateMutation.d.ts +16 -16
  570. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagReasonUpdateMutation.d.ts.map +1 -1
  571. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagToggle.d.ts +16 -16
  572. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagToggle.d.ts.map +1 -1
  573. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagToggleMutation.d.ts +16 -16
  574. package/script/simulator-ui/mutations/GambitWorkspaceGradeFlagToggleMutation.d.ts.map +1 -1
  575. package/script/simulator-ui/mutations/GambitWorkspaceGradeRunCreate.d.ts +44 -44
  576. package/script/simulator-ui/mutations/GambitWorkspaceGradeRunCreate.d.ts.map +1 -1
  577. package/script/simulator-ui/mutations/GambitWorkspaceGradeRunCreateMutation.d.ts +44 -44
  578. package/script/simulator-ui/mutations/GambitWorkspaceGradeRunCreateMutation.d.ts.map +1 -1
  579. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts +57 -57
  580. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSend.d.ts.map +1 -1
  581. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts +57 -57
  582. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunSendMutation.d.ts.map +1 -1
  583. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts +34 -34
  584. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStart.d.ts.map +1 -1
  585. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts +34 -34
  586. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStartMutation.d.ts.map +1 -1
  587. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStop.d.ts +57 -57
  588. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStop.d.ts.map +1 -1
  589. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStopMutation.d.ts +57 -57
  590. package/script/simulator-ui/mutations/GambitWorkspaceScenarioRunStopMutation.d.ts.map +1 -1
  591. package/script/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.d.ts +151 -112
  592. package/script/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.d.ts.map +1 -1
  593. package/script/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreate.js +85 -46
  594. package/script/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreateMutation.d.ts +151 -112
  595. package/script/simulator-ui/mutations/GambitWorkspaceVerifyBatchRunCreateMutation.d.ts.map +1 -1
  596. package/script/simulator-ui/src/AppRoot.d.ts.map +1 -1
  597. package/script/simulator-ui/src/AppRoot.js +9 -1
  598. package/script/simulator-ui/src/AppShell.d.ts +6 -0
  599. package/script/simulator-ui/src/AppShell.d.ts.map +1 -1
  600. package/script/simulator-ui/src/AppShell.js +103 -31
  601. package/script/simulator-ui/src/DocsPage.d.ts +2 -0
  602. package/script/simulator-ui/src/DocsPage.d.ts.map +1 -0
  603. package/script/simulator-ui/src/DocsPage.js +86 -0
  604. package/script/simulator-ui/src/WorkbenchDrawerIso.d.ts +4 -0
  605. package/script/simulator-ui/src/WorkbenchDrawerIso.d.ts.map +1 -1
  606. package/script/simulator-ui/src/WorkbenchDrawerIso.js +20 -3
  607. package/script/simulator-ui/src/WorkspaceContext.d.ts.map +1 -1
  608. package/script/simulator-ui/src/WorkspaceContext.js +42 -10
  609. package/script/simulator-ui/src/grade/GradeResultsPanel.d.ts.map +1 -1
  610. package/script/simulator-ui/src/grade/GradeResultsPanel.js +3 -1
  611. package/script/simulator-ui/src/routing.d.ts.map +1 -1
  612. package/script/simulator-ui/src/routing.js +2 -0
  613. package/script/simulator-ui/src/test_tab_start_gate.d.ts +8 -0
  614. package/script/simulator-ui/src/test_tab_start_gate.d.ts.map +1 -0
  615. package/script/simulator-ui/src/test_tab_start_gate.js +11 -0
  616. package/script/simulator-ui/src/verify_unified.d.ts +17 -0
  617. package/script/simulator-ui/src/verify_unified.d.ts.map +1 -0
  618. package/script/simulator-ui/src/verify_unified.js +29 -0
  619. package/script/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.d.ts +1 -1
  620. package/script/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.d.ts.map +1 -1
  621. package/script/simulator-ui/subscriptions/__generated__/workspaceVerifyLiveSubscriptionQuery.js +1 -1
  622. package/script/src/providers/claude_code.d.ts.map +1 -1
  623. package/script/src/providers/claude_code.js +65 -6
  624. package/script/src/providers/codex.d.ts.map +1 -1
  625. package/script/src/providers/codex.js +64 -1
  626. package/script/src/server.d.ts.map +1 -1
  627. package/script/src/server.js +499 -172
  628. package/script/src/server_build_chat_provider.d.ts +26 -0
  629. package/script/src/server_build_chat_provider.d.ts.map +1 -0
  630. package/script/src/server_build_chat_provider.js +166 -0
  631. package/script/src/server_isograph_environment.d.ts +28 -4
  632. package/script/src/server_isograph_environment.d.ts.map +1 -1
  633. package/script/src/server_isograph_environment.js +11 -0
  634. package/script/src/server_session_store.d.ts +41 -1
  635. package/script/src/server_session_store.d.ts.map +1 -1
  636. package/script/src/server_session_store.js +1010 -0
  637. package/script/src/simulator_graphql.d.ts +51 -4
  638. package/script/src/simulator_graphql.d.ts.map +1 -1
  639. package/script/src/simulator_graphql.js +419 -303
  640. package/esm/simulator-ui/src/verify_metrics.d.ts +0 -50
  641. package/esm/simulator-ui/src/verify_metrics.d.ts.map +0 -1
  642. package/esm/simulator-ui/src/verify_metrics.js +0 -260
  643. package/script/simulator-ui/src/verify_metrics.d.ts +0 -50
  644. package/script/simulator-ui/src/verify_metrics.d.ts.map +0 -1
  645. package/script/simulator-ui/src/verify_metrics.js +0 -264
package/esm/src/server.js CHANGED
@@ -15,8 +15,7 @@ import { createSessionStore } from "./server_session_store.js";
15
15
  import { handleUiRoutes } from "./server_ui_routes.js";
16
16
  import { resolveWorkspaceIdFromRecord, resolveWorkspaceIdFromSearchParams, WORKSPACE_ROUTE_BASE, WORKSPACE_STATE_SCHEMA_VERSION, workspaceSchemaError, } from "./workspace_routes.js";
17
17
  import { appendDurableStreamEvent, GRAPHQL_STREAMS_PREFIX, handleDurableStreamRequest, } from "./durable_streams.js";
18
- import { handleCheckCommand } from "./commands/check.js";
19
- import { readCodexLoginStatus } from "./codex_preflight.js";
18
+ import { createReadCodexWorkspaceStatus, handleBuildProviderStatusRequest, normalizeBuildChatProvider, persistBuildChatProviderMeta, } from "./server_build_chat_provider.js";
20
19
  import { handleGraphqlStreamMultiplexRequest } from "./graphql_stream_multiplex.js";
21
20
  import { handleGraphqlSubscriptionStreamRequest } from "./graphql_subscription_stream.js";
22
21
  import { asGambitID } from "./gambit_id.js";
@@ -108,8 +107,12 @@ const _GRADE_STREAM_ID = "gambit-grade";
108
107
  const TEST_STREAM_ID = "gambit-test";
109
108
  const WORKSPACE_API_BASE = "/api/workspace";
110
109
  const WORKSPACES_API_BASE = "/api/workspaces";
111
- const VERIFY_BATCH_SIZE_MAX = 24;
110
+ const VERIFY_SCENARIO_RUNS_MAX = 24;
111
+ const VERIFY_GRADER_REPEATS_MAX = 24;
112
112
  const VERIFY_BATCH_CONCURRENCY_MAX = 6;
113
+ const DEFAULT_VERIFY_SCENARIO_RUNS = 10;
114
+ const DEFAULT_VERIFY_GRADER_REPEATS = 10;
115
+ const DEFAULT_VERIFY_CONCURRENCY = 4;
113
116
  const WORKSPACE_REFRESH_DEBUG = (() => {
114
117
  const value = (dntShim.Deno.env.get("GAMBIT_WORKSPACE_REFRESH_DEBUG") ?? "")
115
118
  .toLowerCase()
@@ -151,6 +154,13 @@ const _safeJsonStringify = (value) => {
151
154
  return candidate;
152
155
  });
153
156
  };
157
+ const sanitizeJsonRecord = (value) => {
158
+ const parsed = JSON.parse(_safeJsonStringify(value));
159
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
160
+ return {};
161
+ }
162
+ return parsed;
163
+ };
154
164
  const GAMBIT_BOT_SOURCE_DECK_URL = new URL("./decks/gambit-bot/PROMPT.md", globalThis[Symbol.for("import-meta-ponyfill-esmodule")](import.meta).url);
155
165
  const GAMBIT_BOT_SOURCE_DECK_PATH = GAMBIT_BOT_SOURCE_DECK_URL.protocol === "file:"
156
166
  ? path.fromFileUrl(GAMBIT_BOT_SOURCE_DECK_URL)
@@ -1362,30 +1372,13 @@ export function startWebSocketSimulator(opts) {
1362
1372
  buildBotRootCache.set(cacheKey, root);
1363
1373
  return root;
1364
1374
  };
1365
- const readCodexWorkspaceStatus = async (workspaceId, online) => {
1366
- const trustedPath = await resolveBuildBotRoot(workspaceId);
1367
- const record = resolveWorkspaceRecord(workspaceId);
1368
- const deckPath = record?.rootDeckPath ?? resolvedDeckPath;
1369
- const login = await readCodexLoginStatus();
1370
- let check;
1371
- try {
1372
- check = await handleCheckCommand({
1373
- deckPath,
1374
- checkOnline: Boolean(online),
1375
- openRouterApiKey: dntShim.Deno.env.get("OPENROUTER_API_KEY")?.trim() ||
1376
- undefined,
1377
- googleApiKey: (dntShim.Deno.env.get("GOOGLE_API_KEY") ??
1378
- dntShim.Deno.env.get("GEMINI_API_KEY"))?.trim() || undefined,
1379
- ollamaBaseURL: dntShim.Deno.env.get("OLLAMA_BASE_URL") ?? undefined,
1380
- json: true,
1381
- });
1382
- }
1383
- catch {
1384
- // Keep status endpoint resilient even if check cannot run.
1385
- check = undefined;
1386
- }
1387
- return { trustedPath, writeEnabled: true, ...login, check };
1388
- };
1375
+ const readCodexWorkspaceStatus = createReadCodexWorkspaceStatus({
1376
+ resolveBuildBotRoot,
1377
+ resolveWorkspaceDeckPath: (workspaceId) => {
1378
+ const record = resolveWorkspaceRecord(workspaceId);
1379
+ return record?.rootDeckPath ?? resolvedDeckPath;
1380
+ },
1381
+ });
1389
1382
  const logWorkspaceBotRoot = async (endpoint, workspaceId) => {
1390
1383
  try {
1391
1384
  const root = await resolveBuildBotRoot(workspaceId);
@@ -1489,7 +1482,7 @@ export function startWebSocketSimulator(opts) {
1489
1482
  : undefined;
1490
1483
  return { state: { ...state, meta }, dir };
1491
1484
  };
1492
- const { selectCanonicalScenarioRunSummary, appendWorkspaceEnvelope, appendSessionEvent, appendGradingLog, persistSessionState, readSessionStateStrict, readSessionState, readBuildState, } = createSessionStore({
1485
+ const { selectCanonicalScenarioRunSummary, appendWorkspaceEnvelope, appendOpenResponsesRunEvent, appendSessionEvent, appendGradingLog, persistSessionState, readSessionStateStrict, readSessionState, readBuildState, listOpenResponsesRunEvents, listOpenResponsesOutputItems, subscribeOpenResponsesRunEvents, } = createSessionStore({
1493
1486
  sessionsRoot,
1494
1487
  randomId,
1495
1488
  logger,
@@ -1520,6 +1513,83 @@ export function startWebSocketSimulator(opts) {
1520
1513
  return "trace";
1521
1514
  }
1522
1515
  };
1516
+ const hashStringFNV1a = (value) => {
1517
+ let hash = 0x811c9dc5;
1518
+ for (let i = 0; i < value.length; i += 1) {
1519
+ hash ^= value.charCodeAt(i);
1520
+ hash = Math.imul(hash, 0x01000193) >>> 0;
1521
+ }
1522
+ return hash.toString(16).padStart(8, "0");
1523
+ };
1524
+ const tracePayloadFingerprint = (payload) => hashStringFNV1a(JSON.stringify(asJsonValue(payload)));
1525
+ const persistOpenResponsesTraceEvent = (state, trace, fallbackRunId) => {
1526
+ if (!state)
1527
+ return;
1528
+ // TraceEvent is a broad union; we persist by reading dynamic keys at runtime.
1529
+ const rawPayload = trace;
1530
+ const eventType = typeof rawPayload.type === "string"
1531
+ ? rawPayload.type
1532
+ : "";
1533
+ if (!eventType.startsWith("response."))
1534
+ return;
1535
+ const runId = typeof rawPayload.runId === "string" &&
1536
+ rawPayload.runId.length > 0
1537
+ ? rawPayload.runId
1538
+ : fallbackRunId;
1539
+ if (!runId)
1540
+ return;
1541
+ const eventTs = typeof rawPayload.ts === "number" &&
1542
+ Number.isFinite(rawPayload.ts)
1543
+ ? rawPayload.ts
1544
+ : Date.now();
1545
+ const eventScope = typeof rawPayload.item_id === "string"
1546
+ ? rawPayload.item_id
1547
+ : typeof rawPayload.actionCallId === "string"
1548
+ ? rawPayload.actionCallId
1549
+ : typeof rawPayload.output_index === "number"
1550
+ ? String(rawPayload.output_index)
1551
+ : typeof rawPayload.sequence_number === "number"
1552
+ ? String(rawPayload.sequence_number)
1553
+ : "event";
1554
+ const payload = sanitizeJsonRecord(rawPayload);
1555
+ const payloadFingerprint = tracePayloadFingerprint(payload);
1556
+ void appendOpenResponsesRunEvent(state, {
1557
+ workspace_id: "",
1558
+ run_id: runId,
1559
+ event_type: eventType,
1560
+ payload: payload,
1561
+ idempotency_key: `${runId}:${eventType}:${eventTs}:${eventScope}:${payloadFingerprint}`,
1562
+ created_at: new Date(eventTs).toISOString(),
1563
+ });
1564
+ };
1565
+ const persistCanonicalUserInputEvent = (args) => {
1566
+ if (!args.state)
1567
+ return;
1568
+ const content = args.message.trim();
1569
+ if (!content)
1570
+ return;
1571
+ const eventTs = Date.now();
1572
+ void appendOpenResponsesRunEvent(args.state, {
1573
+ workspace_id: "",
1574
+ run_id: args.runId,
1575
+ event_type: "input.item",
1576
+ payload: {
1577
+ type: "input.item",
1578
+ role: "user",
1579
+ content: [{ type: "input_text", text: content }],
1580
+ source: args.source,
1581
+ },
1582
+ idempotency_key: `${args.runId}:input.item:${args.source}:${eventTs}:${content.slice(0, 64)}`,
1583
+ created_at: new Date(eventTs).toISOString(),
1584
+ });
1585
+ };
1586
+ const persistOpenResponsesTracesFromState = (state, fallbackRunId) => {
1587
+ if (!state || !Array.isArray(state.traces))
1588
+ return;
1589
+ for (const trace of state.traces) {
1590
+ persistOpenResponsesTraceEvent(state, trace, fallbackRunId);
1591
+ }
1592
+ };
1523
1593
  const buildWorkspaceMeta = (record, base) => {
1524
1594
  const createdAt = typeof base?.sessionCreatedAt ===
1525
1595
  "string"
@@ -2280,6 +2350,10 @@ export function startWebSocketSimulator(opts) {
2280
2350
  requestRecord.runId.trim().length > 0
2281
2351
  ? requestRecord.runId
2282
2352
  : undefined;
2353
+ const scenarioRunId = typeof requestRecord.scenarioRunId === "string" &&
2354
+ requestRecord.scenarioRunId.trim().length > 0
2355
+ ? requestRecord.scenarioRunId
2356
+ : undefined;
2283
2357
  const error = typeof requestRecord.error === "string" &&
2284
2358
  requestRecord.error.trim().length > 0
2285
2359
  ? requestRecord.error
@@ -2287,6 +2361,7 @@ export function startWebSocketSimulator(opts) {
2287
2361
  return [{
2288
2362
  id: requestId,
2289
2363
  status: normalizeVerifyBatchRequestStatus(requestRecord.status),
2364
+ scenarioRunId,
2290
2365
  runId,
2291
2366
  error,
2292
2367
  }];
@@ -2307,11 +2382,19 @@ export function startWebSocketSimulator(opts) {
2307
2382
  workspaceId: typeof batch.workspaceId === "string" && batch.workspaceId.trim()
2308
2383
  ? batch.workspaceId
2309
2384
  : "",
2310
- graderId: batch.graderId,
2311
- scenarioRunId: typeof batch.scenarioRunId === "string" &&
2312
- batch.scenarioRunId.trim().length > 0
2313
- ? batch.scenarioRunId
2385
+ scenarioDeckId: typeof batch.scenarioDeckId === "string" &&
2386
+ batch.scenarioDeckId.trim().length > 0
2387
+ ? batch.scenarioDeckId
2314
2388
  : undefined,
2389
+ graderId: batch.graderId,
2390
+ scenarioRuns: typeof batch.scenarioRuns === "number" &&
2391
+ Number.isFinite(batch.scenarioRuns)
2392
+ ? Math.max(0, Math.round(batch.scenarioRuns))
2393
+ : 0,
2394
+ graderRepeatsPerScenario: typeof batch.graderRepeatsPerScenario === "number" &&
2395
+ Number.isFinite(batch.graderRepeatsPerScenario)
2396
+ ? Math.max(0, Math.round(batch.graderRepeatsPerScenario))
2397
+ : 0,
2315
2398
  status: normalizeVerifyBatchStatus(batch.status),
2316
2399
  startedAt: typeof batch.startedAt === "string" && batch.startedAt.trim().length >
2317
2400
  0
@@ -2325,6 +2408,14 @@ export function startWebSocketSimulator(opts) {
2325
2408
  active,
2326
2409
  completed,
2327
2410
  failed,
2411
+ scenarioRunsCompleted: typeof batch.scenarioRunsCompleted === "number" &&
2412
+ Number.isFinite(batch.scenarioRunsCompleted)
2413
+ ? Math.max(0, Math.round(batch.scenarioRunsCompleted))
2414
+ : 0,
2415
+ scenarioRunsFailed: typeof batch.scenarioRunsFailed === "number" &&
2416
+ Number.isFinite(batch.scenarioRunsFailed)
2417
+ ? Math.max(0, Math.round(batch.scenarioRunsFailed))
2418
+ : 0,
2328
2419
  requests,
2329
2420
  }];
2330
2421
  });
@@ -2978,6 +3069,7 @@ export function startWebSocketSimulator(opts) {
2978
3069
  if (!pendingTraceEvents.length)
2979
3070
  return;
2980
3071
  for (const pending of pendingTraceEvents) {
3072
+ persistOpenResponsesTraceEvent(state, pending, runId);
2981
3073
  appendSessionEvent(state, {
2982
3074
  ...pending,
2983
3075
  kind: "trace",
@@ -2991,6 +3083,7 @@ export function startWebSocketSimulator(opts) {
2991
3083
  capturedTraces.push(stamped);
2992
3084
  consoleTracer?.(stamped);
2993
3085
  if (savedState?.meta?.sessionId) {
3086
+ persistOpenResponsesTraceEvent(savedState, stamped, runId);
2994
3087
  appendSessionEvent(savedState, {
2995
3088
  ...stamped,
2996
3089
  kind: "trace",
@@ -3469,6 +3562,35 @@ export function startWebSocketSimulator(opts) {
3469
3562
  }
3470
3563
  return state;
3471
3564
  };
3565
+ const buildAuthorityMeta = (sessionState, workspaceId) => {
3566
+ const sessionMeta = sessionState.meta && typeof sessionState.meta === "object"
3567
+ ? sessionState.meta
3568
+ : {};
3569
+ const next = { workspaceId };
3570
+ for (const key of [
3571
+ "sessionId",
3572
+ "sessionDir",
3573
+ "sessionStatePath",
3574
+ "sessionEventsPath",
3575
+ "sessionBuildStatePath",
3576
+ "sessionSqlitePath",
3577
+ "workspaceSchemaVersion",
3578
+ ]) {
3579
+ const value = sessionMeta[key];
3580
+ if (typeof value === "string" && value.trim().length > 0) {
3581
+ next[key] = value;
3582
+ }
3583
+ }
3584
+ return next;
3585
+ };
3586
+ const normalizeBuildAuthorityState = (args) => ({
3587
+ ...args.state,
3588
+ runId: args.runId,
3589
+ meta: {
3590
+ ...(args.state.meta ?? {}),
3591
+ ...buildAuthorityMeta(args.sessionState, args.workspaceId),
3592
+ },
3593
+ });
3472
3594
  const broadcastBuild = (workspaceId, payload) => {
3473
3595
  const state = readSessionState(workspaceId);
3474
3596
  if (state) {
@@ -3482,12 +3604,44 @@ export function startWebSocketSimulator(opts) {
3482
3604
  if (active?.run.status === "running") {
3483
3605
  throw new Error("Build run already in progress for this workspace.");
3484
3606
  }
3485
- const state = ensureWorkspaceStateForBuild(workspaceId);
3607
+ const sessionState = ensureWorkspaceStateForBuild(workspaceId);
3486
3608
  const projection = readBuildState(workspaceId);
3487
3609
  const seedRun = projection?.run;
3488
3610
  const runId = seedRun?.id && seedRun.id.trim().length > 0
3489
3611
  ? seedRun.id
3490
3612
  : randomId("build");
3613
+ const seededMessages = (() => {
3614
+ if (projection?.state?.messages && Array.isArray(projection.state.messages)) {
3615
+ return projection.state.messages;
3616
+ }
3617
+ return Array.isArray(seedRun?.messages)
3618
+ ? seedRun.messages.map((message) => {
3619
+ const role = message.role === "assistant" || message.role === "system" ||
3620
+ message.role === "tool"
3621
+ ? message.role
3622
+ : "user";
3623
+ return {
3624
+ role,
3625
+ content: message.content,
3626
+ };
3627
+ })
3628
+ : [];
3629
+ })();
3630
+ const seedState = normalizeBuildAuthorityState({
3631
+ state: projection?.state && typeof projection.state === "object"
3632
+ ? projection.state
3633
+ : {
3634
+ runId,
3635
+ messages: seededMessages,
3636
+ messageRefs: [],
3637
+ traces: Array.isArray(seedRun?.traces) ? [...seedRun.traces] : [],
3638
+ items: [],
3639
+ meta: {},
3640
+ },
3641
+ workspaceId,
3642
+ runId,
3643
+ sessionState,
3644
+ });
3491
3645
  const trimmedMessage = args.message.trim();
3492
3646
  const run = {
3493
3647
  id: runId,
@@ -3506,29 +3660,35 @@ export function startWebSocketSimulator(opts) {
3506
3660
  ...run.messages,
3507
3661
  { role: "user", content: trimmedMessage, messageSource: "manual" },
3508
3662
  ];
3663
+ persistCanonicalUserInputEvent({
3664
+ state: sessionState,
3665
+ runId,
3666
+ message: trimmedMessage,
3667
+ source: "build",
3668
+ });
3509
3669
  }
3510
3670
  const controller = new AbortController();
3511
3671
  const entry = {
3512
3672
  run,
3513
- state,
3673
+ state: seedState,
3514
3674
  promise: null,
3515
3675
  abort: controller,
3516
3676
  };
3517
3677
  buildBotRuns.set(workspaceId, entry);
3518
3678
  const onStateUpdate = (next) => {
3519
- const enriched = persistSessionState({
3520
- ...next,
3521
- meta: {
3522
- ...(next.meta ?? {}),
3523
- workspaceId,
3524
- },
3679
+ const buildState = normalizeBuildAuthorityState({
3680
+ state: next,
3681
+ workspaceId,
3682
+ runId,
3683
+ sessionState,
3525
3684
  });
3526
- entry.state = enriched;
3527
- const snapshot = buildTestBotSnapshot(enriched);
3685
+ persistOpenResponsesTracesFromState(buildState, runId);
3686
+ entry.state = buildState;
3687
+ const snapshot = buildTestBotSnapshot(buildState);
3528
3688
  run.messages = snapshot.messages;
3529
3689
  run.toolInserts = snapshot.toolInserts;
3530
- const nextTraces = Array.isArray(enriched.traces)
3531
- ? [...enriched.traces]
3690
+ const nextTraces = Array.isArray(buildState.traces)
3691
+ ? [...buildState.traces]
3532
3692
  : [];
3533
3693
  if (nextTraces.length > 0) {
3534
3694
  run.traces = nextTraces;
@@ -3540,12 +3700,14 @@ export function startWebSocketSimulator(opts) {
3540
3700
  type: "buildBotStatus",
3541
3701
  workspaceId,
3542
3702
  run,
3703
+ state: buildState,
3543
3704
  });
3544
3705
  };
3545
3706
  const tracer = (trace) => {
3546
3707
  const event = trace.ts ? trace : { ...trace, ts: Date.now() };
3547
3708
  const currentTraces = Array.isArray(run.traces) ? run.traces : [];
3548
3709
  run.traces = [...currentTraces, event];
3710
+ persistOpenResponsesTraceEvent(entry.state, event, runId);
3549
3711
  broadcastBuild(workspaceId, {
3550
3712
  type: "buildBotTrace",
3551
3713
  workspaceId,
@@ -3562,6 +3724,7 @@ export function startWebSocketSimulator(opts) {
3562
3724
  type: "buildBotStatus",
3563
3725
  workspaceId,
3564
3726
  run,
3727
+ state: entry.state ?? undefined,
3565
3728
  });
3566
3729
  await runDeck({
3567
3730
  path: buildAssistantDeckPath,
@@ -3569,9 +3732,13 @@ export function startWebSocketSimulator(opts) {
3569
3732
  inputProvided: hasInitialContext,
3570
3733
  modelProvider: opts.modelProvider,
3571
3734
  defaultModel: opts.model,
3572
- modelOverride: opts.modelForce,
3735
+ modelOverride: opts.modelForce ??
3736
+ (!opts.model && args.buildChatProvider
3737
+ ? `${args.buildChatProvider}/default`
3738
+ : undefined),
3573
3739
  trace: tracer,
3574
3740
  stream: true,
3741
+ runId,
3575
3742
  state: entry.state ?? undefined,
3576
3743
  allowRootStringInput: true,
3577
3744
  initialUserMessage: trimmedMessage.length > 0 ? trimmedMessage : "",
@@ -3650,6 +3817,7 @@ export function startWebSocketSimulator(opts) {
3650
3817
  type: "buildBotStatus",
3651
3818
  workspaceId,
3652
3819
  run,
3820
+ state: entry.state ?? undefined,
3653
3821
  });
3654
3822
  }
3655
3823
  })();
@@ -3678,14 +3846,6 @@ export function startWebSocketSimulator(opts) {
3678
3846
  catch {
3679
3847
  // Ignore aborted in-flight run.
3680
3848
  }
3681
- const state = ensureWorkspaceStateForBuild(workspaceId);
3682
- const reset = persistSessionState({
3683
- ...state,
3684
- messages: [],
3685
- messageRefs: [],
3686
- traces: [],
3687
- items: [],
3688
- });
3689
3849
  const run = {
3690
3850
  id: randomId("build"),
3691
3851
  status: "idle",
@@ -3693,10 +3853,24 @@ export function startWebSocketSimulator(opts) {
3693
3853
  traces: [],
3694
3854
  toolInserts: [],
3695
3855
  };
3696
- appendWorkspaceEnvelope(reset, "build", {
3856
+ const sessionState = ensureWorkspaceStateForBuild(workspaceId);
3857
+ const reset = normalizeBuildAuthorityState({
3858
+ state: {
3859
+ runId: run.id,
3860
+ messages: [],
3861
+ messageRefs: [],
3862
+ traces: [],
3863
+ items: [],
3864
+ },
3865
+ workspaceId,
3866
+ runId: run.id,
3867
+ sessionState,
3868
+ });
3869
+ appendWorkspaceEnvelope(sessionState, "build", {
3697
3870
  type: "buildBotStatus",
3698
3871
  workspaceId,
3699
3872
  run,
3873
+ state: reset,
3700
3874
  });
3701
3875
  appendDurableStreamEvent(WORKSPACE_STREAM_ID, {
3702
3876
  type: "buildBotStatus",
@@ -3973,6 +4147,9 @@ export function startWebSocketSimulator(opts) {
3973
4147
  const tracer = (event) => {
3974
4148
  const stamped = event.ts ? event : { ...event, ts: Date.now() };
3975
4149
  capturedTraces.push(stamped);
4150
+ if (savedState) {
4151
+ persistOpenResponsesTraceEvent(savedState, stamped, args.runId);
4152
+ }
3976
4153
  emitTestBot({
3977
4154
  type: "testBotTrace",
3978
4155
  workspaceId: args.workspaceId,
@@ -3988,6 +4165,12 @@ export function startWebSocketSimulator(opts) {
3988
4165
  ...run.messages,
3989
4166
  { role: "user", content: trimmedMessage },
3990
4167
  ];
4168
+ persistCanonicalUserInputEvent({
4169
+ state: savedState,
4170
+ runId: args.runId,
4171
+ message: trimmedMessage,
4172
+ source: "scenario",
4173
+ });
3991
4174
  }
3992
4175
  let hasStartedAssistantStreamMessage = false;
3993
4176
  entry.promise = (async () => {
@@ -4040,6 +4223,7 @@ export function startWebSocketSimulator(opts) {
4040
4223
  meta: nextMeta,
4041
4224
  traces: capturedTraces,
4042
4225
  });
4226
+ persistOpenResponsesTracesFromState(enriched, args.runId);
4043
4227
  savedState = enriched;
4044
4228
  entry.state = enriched;
4045
4229
  appendFromState(enriched);
@@ -4336,40 +4520,79 @@ export function startWebSocketSimulator(opts) {
4336
4520
  if (!state) {
4337
4521
  throw new Error(`Workspace ${args.workspaceId} not found`);
4338
4522
  }
4339
- const explicitScenarioRunId = typeof args.scenarioRunId === "string" &&
4340
- args.scenarioRunId.trim().length > 0
4341
- ? args.scenarioRunId.trim()
4342
- : null;
4343
- const runFromState = state.meta && typeof state.meta.scenarioRunId === "string"
4344
- ? state.meta.scenarioRunId
4345
- : null;
4346
- const selectedScenarioRunId = explicitScenarioRunId ?? runFromState;
4347
- const scenarioRun = selectedScenarioRunId
4348
- ? readWorkspaceScenarioRunsForGraphql(args.workspaceId).find((entry) => entry.id === selectedScenarioRunId)
4349
- : null;
4350
- if (selectedScenarioRunId && !scenarioRun) {
4351
- throw new Error(`Scenario run ${selectedScenarioRunId} not found`);
4352
- }
4353
- const normalizedBatchSize = Math.max(1, Math.min(VERIFY_BATCH_SIZE_MAX, Number.isFinite(args.batchSize) ? Math.round(args.batchSize) : 1));
4354
- const normalizedConcurrency = Math.max(1, Math.min(VERIFY_BATCH_CONCURRENCY_MAX, normalizedBatchSize, Number.isFinite(args.concurrency) ? Math.round(args.concurrency) : 1));
4523
+ const selectedScenarioDeckId = typeof args.scenarioDeckId === "string" &&
4524
+ args.scenarioDeckId.trim().length > 0
4525
+ ? args.scenarioDeckId.trim()
4526
+ : undefined;
4527
+ const normalizedScenarioRuns = Math.max(1, Math.min(VERIFY_SCENARIO_RUNS_MAX, Number.isFinite(args.scenarioRuns)
4528
+ ? Math.round(args.scenarioRuns)
4529
+ : DEFAULT_VERIFY_SCENARIO_RUNS));
4530
+ const normalizedRepeats = Math.max(1, Math.min(VERIFY_GRADER_REPEATS_MAX, Number.isFinite(args.graderRepeatsPerScenario)
4531
+ ? Math.round(args.graderRepeatsPerScenario)
4532
+ : DEFAULT_VERIFY_GRADER_REPEATS));
4533
+ const requestedSamples = normalizedScenarioRuns * normalizedRepeats;
4534
+ const normalizedConcurrency = Math.max(1, Math.min(VERIFY_BATCH_CONCURRENCY_MAX, requestedSamples, Number.isFinite(args.concurrency)
4535
+ ? Math.round(args.concurrency)
4536
+ : DEFAULT_VERIFY_CONCURRENCY));
4355
4537
  const now = new Date().toISOString();
4356
4538
  const batchId = randomId("vbatch");
4357
4539
  let batch = {
4358
4540
  id: batchId,
4359
4541
  workspaceId: args.workspaceId,
4542
+ scenarioDeckId: selectedScenarioDeckId,
4360
4543
  graderId: grader.id,
4361
- scenarioRunId: selectedScenarioRunId ?? undefined,
4544
+ scenarioRuns: normalizedScenarioRuns,
4545
+ graderRepeatsPerScenario: normalizedRepeats,
4362
4546
  status: "running",
4363
4547
  startedAt: now,
4364
4548
  finishedAt: undefined,
4365
- requested: normalizedBatchSize,
4549
+ requested: requestedSamples,
4366
4550
  active: 0,
4367
4551
  completed: 0,
4368
4552
  failed: 0,
4369
- requests: Array.from({ length: normalizedBatchSize }, (_value, index) => ({
4370
- id: `${batchId}:${index + 1}`,
4553
+ scenarioRunsCompleted: 0,
4554
+ scenarioRunsFailed: 0,
4555
+ requests: Array.from({ length: normalizedScenarioRuns }, (_value, scenarioIndex) => Array.from({ length: normalizedRepeats }, (_repeat, repeatIndex) => ({
4556
+ id: `${batchId}:s${scenarioIndex + 1}:r${repeatIndex + 1}`,
4371
4557
  status: "queued",
4372
- })),
4558
+ }))).flat(),
4559
+ };
4560
+ const recomputeBatchState = (baseBatch, nextRequests, options) => {
4561
+ const active = nextRequests.filter((request) => request.status === "running").length;
4562
+ const completed = nextRequests.filter((request) => request.status === "completed").length;
4563
+ const failed = nextRequests.filter((request) => request.status === "error")
4564
+ .length;
4565
+ const terminal = completed + failed === requestedSamples && active === 0;
4566
+ return {
4567
+ ...baseBatch,
4568
+ requests: nextRequests,
4569
+ active,
4570
+ completed,
4571
+ failed,
4572
+ scenarioRunsCompleted: options?.scenarioRunsCompleted ??
4573
+ baseBatch.scenarioRunsCompleted,
4574
+ scenarioRunsFailed: options?.scenarioRunsFailed ??
4575
+ baseBatch.scenarioRunsFailed,
4576
+ status: terminal ? (failed > 0 ? "error" : "completed") : "running",
4577
+ finishedAt: terminal ? new Date().toISOString() : undefined,
4578
+ };
4579
+ };
4580
+ const awaitScenarioRunTerminal = async (run) => {
4581
+ if (run.status !== "running" && run.status !== "idle") {
4582
+ return run;
4583
+ }
4584
+ const active = testBotRuns.get(run.id);
4585
+ if (active?.promise) {
4586
+ try {
4587
+ await active.promise;
4588
+ }
4589
+ catch {
4590
+ // Run status/error is projected on the run record.
4591
+ }
4592
+ }
4593
+ const latest = readWorkspaceScenarioRunsForGraphql(args.workspaceId)
4594
+ .find((entry) => entry.id === run.id);
4595
+ return latest ?? run;
4373
4596
  };
4374
4597
  let persistedState = persistSessionState(upsertWorkspaceVerifyBatchInState(state, batch));
4375
4598
  const persistAndBroadcastBatch = (reason) => {
@@ -4391,18 +4614,27 @@ export function startWebSocketSimulator(opts) {
4391
4614
  };
4392
4615
  persistAndBroadcastBatch("created");
4393
4616
  let updateQueue = Promise.resolve();
4394
- const updateBatchRequest = async (requestIndex, patch) => {
4617
+ const queueBatchUpdate = async (reason, updater) => {
4395
4618
  updateQueue = updateQueue.then(() => {
4396
- if (requestIndex < 0 || requestIndex >= batch.requests.length)
4397
- return;
4398
- const nextRequests = batch.requests.map((request, index) => index === requestIndex ? { ...request, ...patch } : request);
4619
+ batch = updater(batch);
4620
+ persistAndBroadcastBatch(reason);
4621
+ });
4622
+ await updateQueue;
4623
+ };
4624
+ const updateBatchRequest = async (requestIndex, patch) => {
4625
+ await queueBatchUpdate("request-update", (current) => {
4626
+ if (requestIndex < 0 || requestIndex >= current.requests.length) {
4627
+ return current;
4628
+ }
4629
+ const nextRequests = current.requests.map((request, index) => index === requestIndex ? { ...request, ...patch } : request);
4399
4630
  const active = nextRequests.filter((request) => request.status === "running").length;
4400
4631
  const completed = nextRequests.filter((request) => request.status === "completed")
4401
4632
  .length;
4402
4633
  const failed = nextRequests.filter((request) => request.status === "error").length;
4403
- const terminal = completed + failed === batch.requested && active === 0;
4404
- batch = {
4405
- ...batch,
4634
+ const terminal = completed + failed === current.requested &&
4635
+ active === 0;
4636
+ return {
4637
+ ...current,
4406
4638
  requests: nextRequests,
4407
4639
  active,
4408
4640
  completed,
@@ -4410,27 +4642,63 @@ export function startWebSocketSimulator(opts) {
4410
4642
  status: terminal ? (failed > 0 ? "error" : "completed") : "running",
4411
4643
  finishedAt: terminal ? new Date().toISOString() : undefined,
4412
4644
  };
4413
- persistAndBroadcastBatch("request-update");
4414
4645
  });
4415
- await updateQueue;
4416
4646
  };
4417
- let cursor = 0;
4418
- const workers = Array.from({ length: normalizedConcurrency }, () => (async () => {
4647
+ const queuedGradeRequestIndexes = [];
4648
+ let gradeQueueClosed = false;
4649
+ const gradeQueueWaiters = [];
4650
+ const wakeGradeWorkers = (count) => {
4651
+ let remaining = Math.max(0, count);
4652
+ while (remaining > 0 && gradeQueueWaiters.length > 0) {
4653
+ const notify = gradeQueueWaiters.shift();
4654
+ if (notify)
4655
+ notify();
4656
+ remaining -= 1;
4657
+ }
4658
+ };
4659
+ const enqueueGradeRequestIndexes = (requestIndexes) => {
4660
+ if (requestIndexes.length === 0)
4661
+ return;
4662
+ queuedGradeRequestIndexes.push(...requestIndexes);
4663
+ wakeGradeWorkers(requestIndexes.length);
4664
+ };
4665
+ const closeGradeQueue = () => {
4666
+ gradeQueueClosed = true;
4667
+ while (gradeQueueWaiters.length > 0) {
4668
+ const notify = gradeQueueWaiters.shift();
4669
+ if (notify)
4670
+ notify();
4671
+ }
4672
+ };
4673
+ const nextQueuedGradeRequestIndex = async () => {
4674
+ while (queuedGradeRequestIndexes.length === 0) {
4675
+ if (gradeQueueClosed)
4676
+ return undefined;
4677
+ await new Promise((resolve) => {
4678
+ gradeQueueWaiters.push(resolve);
4679
+ });
4680
+ }
4681
+ return queuedGradeRequestIndexes.shift();
4682
+ };
4683
+ const gradeWorkers = Array.from({ length: normalizedConcurrency }, () => (async () => {
4419
4684
  while (true) {
4420
- const requestIndex = cursor;
4421
- cursor += 1;
4422
- if (requestIndex >= normalizedBatchSize)
4685
+ const requestIndex = await nextQueuedGradeRequestIndex();
4686
+ if (requestIndex === undefined)
4423
4687
  return;
4688
+ const scenarioRunId = batch.requests[requestIndex]?.scenarioRunId;
4689
+ if (!scenarioRunId)
4690
+ continue;
4424
4691
  await updateBatchRequest(requestIndex, { status: "running" });
4425
4692
  try {
4426
4693
  const run = await createWorkspaceGradeRunForGraphql({
4427
4694
  workspaceId: args.workspaceId,
4428
4695
  graderId: grader.id,
4429
- scenarioRunId: selectedScenarioRunId,
4696
+ scenarioRunId,
4430
4697
  });
4431
4698
  if (run.status === "completed") {
4432
4699
  await updateBatchRequest(requestIndex, {
4433
4700
  status: "completed",
4701
+ scenarioRunId,
4434
4702
  runId: run.id,
4435
4703
  error: undefined,
4436
4704
  });
@@ -4438,6 +4706,7 @@ export function startWebSocketSimulator(opts) {
4438
4706
  else {
4439
4707
  await updateBatchRequest(requestIndex, {
4440
4708
  status: "error",
4709
+ scenarioRunId,
4441
4710
  runId: run.id,
4442
4711
  error: run.error ??
4443
4712
  `Grade run ended with status ${run.status}`,
@@ -4447,12 +4716,82 @@ export function startWebSocketSimulator(opts) {
4447
4716
  catch (error) {
4448
4717
  await updateBatchRequest(requestIndex, {
4449
4718
  status: "error",
4719
+ scenarioRunId,
4450
4720
  error: error instanceof Error ? error.message : String(error),
4451
4721
  });
4452
4722
  }
4453
4723
  }
4454
4724
  })());
4455
- await Promise.all(workers);
4725
+ let scenarioCursor = 0;
4726
+ const nextScenarioIndex = () => {
4727
+ if (scenarioCursor >= normalizedScenarioRuns)
4728
+ return undefined;
4729
+ const current = scenarioCursor;
4730
+ scenarioCursor += 1;
4731
+ return current;
4732
+ };
4733
+ const scenarioWorkerCount = Math.max(1, Math.min(normalizedScenarioRuns, normalizedConcurrency));
4734
+ const scenarioWorkers = Array.from({ length: scenarioWorkerCount }, () => (async () => {
4735
+ while (true) {
4736
+ const scenarioIndex = nextScenarioIndex();
4737
+ if (scenarioIndex === undefined)
4738
+ return;
4739
+ const requestStart = scenarioIndex * normalizedRepeats;
4740
+ const requestEndExclusive = requestStart + normalizedRepeats;
4741
+ try {
4742
+ const startedRun = await startWorkspaceScenarioRunForGraphql({
4743
+ workspaceId: args.workspaceId,
4744
+ scenarioDeckId: selectedScenarioDeckId,
4745
+ });
4746
+ const run = await awaitScenarioRunTerminal(startedRun);
4747
+ if (run.status !== "completed") {
4748
+ const scenarioError = run.error ??
4749
+ `Scenario run ended with status ${run.status}`;
4750
+ await queueBatchUpdate("scenario-run-failed", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
4751
+ requestIndex < requestEndExclusive
4752
+ ? {
4753
+ ...request,
4754
+ scenarioRunId: run.id,
4755
+ status: "error",
4756
+ error: scenarioError,
4757
+ }
4758
+ : request), {
4759
+ scenarioRunsFailed: current.scenarioRunsFailed + 1,
4760
+ }));
4761
+ continue;
4762
+ }
4763
+ await queueBatchUpdate("scenario-run-completed", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
4764
+ requestIndex < requestEndExclusive
4765
+ ? {
4766
+ ...request,
4767
+ scenarioRunId: run.id,
4768
+ }
4769
+ : request), {
4770
+ scenarioRunsCompleted: current.scenarioRunsCompleted + 1,
4771
+ }));
4772
+ const requestIndexes = Array.from({ length: normalizedRepeats }, (_value, repeatIndex) => requestStart + repeatIndex);
4773
+ enqueueGradeRequestIndexes(requestIndexes);
4774
+ }
4775
+ catch (error) {
4776
+ const scenarioError = error instanceof Error
4777
+ ? error.message
4778
+ : String(error);
4779
+ await queueBatchUpdate("scenario-run-error", (current) => recomputeBatchState(current, current.requests.map((request, requestIndex) => requestIndex >= requestStart &&
4780
+ requestIndex < requestEndExclusive
4781
+ ? {
4782
+ ...request,
4783
+ status: "error",
4784
+ error: scenarioError,
4785
+ }
4786
+ : request), {
4787
+ scenarioRunsFailed: current.scenarioRunsFailed + 1,
4788
+ }));
4789
+ }
4790
+ }
4791
+ })());
4792
+ await Promise.all(scenarioWorkers);
4793
+ closeGradeQueue();
4794
+ await Promise.all(gradeWorkers);
4456
4795
  await updateQueue;
4457
4796
  return batch;
4458
4797
  };
@@ -4769,10 +5108,12 @@ export function startWebSocketSimulator(opts) {
4769
5108
  throw new Error("graderId is required");
4770
5109
  const batch = await createWorkspaceVerifyBatchRunForGraphql({
4771
5110
  workspaceId: args.workspaceId,
5111
+ scenarioDeckId: args.scenarioDeckId ?? null,
4772
5112
  graderId: args.graderId,
4773
- scenarioRunId: args.scenarioRunId ?? null,
4774
- batchSize: args.batchSize ?? 1,
4775
- concurrency: args.concurrency ?? 1,
5113
+ scenarioRuns: args.scenarioRuns ?? DEFAULT_VERIFY_SCENARIO_RUNS,
5114
+ graderRepeatsPerScenario: args.graderRepeatsPerScenario ??
5115
+ DEFAULT_VERIFY_GRADER_REPEATS,
5116
+ concurrency: args.concurrency ?? DEFAULT_VERIFY_CONCURRENCY,
4776
5117
  });
4777
5118
  return toVerifyConversationSessionForGraphql(args.workspaceId, batch);
4778
5119
  };
@@ -5461,84 +5802,14 @@ export function startWebSocketSimulator(opts) {
5461
5802
  return new Response("Method not allowed", { status: 405 });
5462
5803
  }
5463
5804
  const isLegacyCodexTrustEndpoint = url.pathname === "/api/codex/trust-workspace";
5464
- let provider = "codex-cli";
5465
- let workspaceId;
5466
- let online = true;
5467
- if (req.method === "POST") {
5468
- try {
5469
- const body = await req.json();
5470
- if (typeof body.workspaceId === "string") {
5471
- workspaceId = body.workspaceId;
5472
- }
5473
- if (!isLegacyCodexTrustEndpoint &&
5474
- body.provider === "claude-code-cli") {
5475
- provider = "claude-code-cli";
5476
- }
5477
- if (body.online === true ||
5478
- body.online === "true" ||
5479
- body.online === 1 ||
5480
- body.online === "1") {
5481
- online = true;
5482
- }
5483
- else if (body.online === false ||
5484
- body.online === "false" ||
5485
- body.online === 0 ||
5486
- body.online === "0" ||
5487
- body.online === "no") {
5488
- online = false;
5489
- }
5490
- }
5491
- catch {
5492
- // Ignore malformed body and fall back to query/default workspace.
5493
- }
5494
- }
5495
- if (!workspaceId) {
5496
- workspaceId = getWorkspaceIdFromQuery(url);
5497
- }
5498
- if (!isLegacyCodexTrustEndpoint &&
5499
- url.searchParams.get("provider") === "claude-code-cli") {
5500
- provider = "claude-code-cli";
5501
- }
5502
- const onlineQuery = url.searchParams.get("online");
5503
- if (onlineQuery === "1" || onlineQuery === "true" ||
5504
- onlineQuery === "yes") {
5505
- online = true;
5506
- }
5507
- else if (onlineQuery === "0" || onlineQuery === "false" ||
5508
- onlineQuery === "no") {
5509
- online = false;
5510
- }
5511
- try {
5512
- await logWorkspaceBotRoot(url.pathname, workspaceId);
5513
- if (!isLegacyCodexTrustEndpoint && provider === "claude-code-cli") {
5514
- return new Response(JSON.stringify({
5515
- ok: true,
5516
- provider,
5517
- loggedIn: false,
5518
- loginStatus: "Claude Code status check is not yet supported in this build.",
5519
- writeEnabled: false,
5520
- }), { headers: { "content-type": "application/json" } });
5521
- }
5522
- const result = await readCodexWorkspaceStatus(workspaceId, online);
5523
- if (!isLegacyCodexTrustEndpoint) {
5524
- return new Response(JSON.stringify({
5525
- ok: true,
5526
- provider,
5527
- loggedIn: result.codexLoggedIn,
5528
- loginStatus: result.codexLoginStatus,
5529
- writeEnabled: result.writeEnabled,
5530
- trustedPath: result.trustedPath,
5531
- }), { headers: { "content-type": "application/json" } });
5532
- }
5533
- return new Response(JSON.stringify({
5534
- ok: true,
5535
- ...result,
5536
- }), { headers: { "content-type": "application/json" } });
5537
- }
5538
- catch (err) {
5539
- const message = err instanceof Error ? err.message : String(err);
5540
- return new Response(JSON.stringify({ ok: false, error: message }), { status: 400, headers: { "content-type": "application/json" } });
5541
- }
5805
+ return await handleBuildProviderStatusRequest({
5806
+ req,
5807
+ url,
5808
+ isLegacyCodexTrustEndpoint,
5809
+ getWorkspaceIdFromQuery,
5810
+ logWorkspaceBotRoot,
5811
+ readCodexWorkspaceStatus,
5812
+ });
5542
5813
  }
5543
5814
  if (url.pathname === "/api/simulator/run") {
5544
5815
  if (req.method !== "POST") {
@@ -5629,6 +5900,15 @@ export function startWebSocketSimulator(opts) {
5629
5900
  _ensureWorkspaceSession(workspaceId);
5630
5901
  await logWorkspaceBotRoot(url.pathname, workspaceId);
5631
5902
  await activateWorkspaceDeck(workspaceId);
5903
+ const buildChatProvider = normalizeBuildChatProvider(body.buildChatProvider) ?? undefined;
5904
+ if (buildChatProvider) {
5905
+ const state = readSessionStateStrict(workspaceId, {
5906
+ withTraces: true,
5907
+ });
5908
+ if (state) {
5909
+ persistSessionState(persistBuildChatProviderMeta(state, workspaceId, buildChatProvider));
5910
+ }
5911
+ }
5632
5912
  const message = typeof body.message === "string"
5633
5913
  ? body.message
5634
5914
  : typeof body.input === "string"
@@ -5637,6 +5917,7 @@ export function startWebSocketSimulator(opts) {
5637
5917
  const run = startWorkspaceBuildRun({
5638
5918
  workspaceId,
5639
5919
  message,
5920
+ buildChatProvider,
5640
5921
  });
5641
5922
  return new Response(JSON.stringify({ run }), {
5642
5923
  headers: { "content-type": "application/json" },
@@ -5681,6 +5962,37 @@ export function startWebSocketSimulator(opts) {
5681
5962
  });
5682
5963
  }
5683
5964
  }
5965
+ if (url.pathname === "/api/build/provider") {
5966
+ if (req.method !== "POST") {
5967
+ return new Response("Method not allowed", { status: 405 });
5968
+ }
5969
+ try {
5970
+ const body = await req.json().catch(() => ({}));
5971
+ const workspaceId = _getWorkspaceIdFromBody(body);
5972
+ if (!workspaceId) {
5973
+ throw new Error("Missing workspaceId");
5974
+ }
5975
+ const buildChatProvider = normalizeBuildChatProvider(body.buildChatProvider);
5976
+ if (!buildChatProvider) {
5977
+ throw new Error("Invalid buildChatProvider; expected codex-cli or claude-code-cli");
5978
+ }
5979
+ await logWorkspaceBotRoot(url.pathname, workspaceId);
5980
+ const state = readSessionStateStrict(workspaceId, {
5981
+ withTraces: true,
5982
+ });
5983
+ if (!state)
5984
+ throw new Error("Workspace not found");
5985
+ persistSessionState(persistBuildChatProviderMeta(state, workspaceId, buildChatProvider));
5986
+ return new Response(JSON.stringify({ ok: true, workspaceId, buildChatProvider }), { headers: { "content-type": "application/json" } });
5987
+ }
5988
+ catch (err) {
5989
+ const message = err instanceof Error ? err.message : String(err);
5990
+ return new Response(JSON.stringify({ error: message }), {
5991
+ status: 400,
5992
+ headers: { "content-type": "application/json" },
5993
+ });
5994
+ }
5995
+ }
5684
5996
  if (url.pathname === "/api/build/reset") {
5685
5997
  if (req.method !== "POST") {
5686
5998
  return new Response("Method not allowed", { status: 405 });
@@ -5820,6 +6132,21 @@ export function startWebSocketSimulator(opts) {
5820
6132
  return Promise.resolve({ ok: deleted });
5821
6133
  },
5822
6134
  readWorkspaceBuildRun: (workspaceId) => Promise.resolve(readWorkspaceBuildRunForGraphql(workspaceId)),
6135
+ readWorkspaceOpenResponseEvents: (args) => Promise.resolve(listOpenResponsesRunEvents({
6136
+ workspaceId: args.workspaceId,
6137
+ runId: args.runId,
6138
+ fromSequence: args.fromSequence,
6139
+ })),
6140
+ readWorkspaceOpenResponseOutputItems: (args) => Promise.resolve(listOpenResponsesOutputItems({
6141
+ workspaceId: args.workspaceId,
6142
+ runId: args.runId,
6143
+ })),
6144
+ subscribeWorkspaceOpenResponseEvents: (args) => subscribeOpenResponsesRunEvents({
6145
+ workspaceId: args.workspaceId,
6146
+ runId: args.runId,
6147
+ fromSequence: args.fromSequence,
6148
+ signal: args.signal,
6149
+ }),
5823
6150
  createWorkspaceBuildRun: async (workspaceId, message) => await startWorkspaceBuildRun({ workspaceId, message }),
5824
6151
  stopWorkspaceBuildRun: async (workspaceId, runId) => await stopWorkspaceBuildRun({ workspaceId, runId }),
5825
6152
  resetWorkspaceBuild: async (workspaceId) => await resetWorkspaceBuild(workspaceId),