@qontinui/shared-types 0.2.1

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 (579) hide show
  1. package/README.md +128 -0
  2. package/dist/Region.d-BbpFAWF4.d.cts +88 -0
  3. package/dist/Region.d-BbpFAWF4.d.ts +88 -0
  4. package/dist/accessibility.cjs +19 -0
  5. package/dist/accessibility.cjs.map +1 -0
  6. package/dist/accessibility.d.cts +396 -0
  7. package/dist/accessibility.d.ts +396 -0
  8. package/dist/accessibility.js +1 -0
  9. package/dist/accessibility.js.map +1 -0
  10. package/dist/chat.cjs +19 -0
  11. package/dist/chat.cjs.map +1 -0
  12. package/dist/chat.d.cts +13 -0
  13. package/dist/chat.d.ts +13 -0
  14. package/dist/chat.js +1 -0
  15. package/dist/chat.js.map +1 -0
  16. package/dist/chunk-YXD4WCYQ.js +95 -0
  17. package/dist/chunk-YXD4WCYQ.js.map +1 -0
  18. package/dist/chunk-ZK5MJEGT.js +153 -0
  19. package/dist/chunk-ZK5MJEGT.js.map +1 -0
  20. package/dist/config.cjs +19 -0
  21. package/dist/config.cjs.map +1 -0
  22. package/dist/config.d.cts +112 -0
  23. package/dist/config.d.ts +112 -0
  24. package/dist/config.js +1 -0
  25. package/dist/config.js.map +1 -0
  26. package/dist/constraints.cjs +19 -0
  27. package/dist/constraints.cjs.map +1 -0
  28. package/dist/constraints.d.cts +401 -0
  29. package/dist/constraints.d.ts +401 -0
  30. package/dist/constraints.js +1 -0
  31. package/dist/constraints.js.map +1 -0
  32. package/dist/execution.cjs +127 -0
  33. package/dist/execution.cjs.map +1 -0
  34. package/dist/execution.d.cts +1269 -0
  35. package/dist/execution.d.ts +1269 -0
  36. package/dist/execution.js +19 -0
  37. package/dist/execution.js.map +1 -0
  38. package/dist/geometry.cjs +19 -0
  39. package/dist/geometry.cjs.map +1 -0
  40. package/dist/geometry.d.cts +89 -0
  41. package/dist/geometry.d.ts +89 -0
  42. package/dist/geometry.js +1 -0
  43. package/dist/geometry.js.map +1 -0
  44. package/dist/index.cjs +443 -0
  45. package/dist/index.cjs.map +1 -0
  46. package/dist/index.d.cts +1325 -0
  47. package/dist/index.d.ts +1325 -0
  48. package/dist/index.js +178 -0
  49. package/dist/index.js.map +1 -0
  50. package/dist/library.cjs +19 -0
  51. package/dist/library.cjs.map +1 -0
  52. package/dist/library.d.cts +205 -0
  53. package/dist/library.d.ts +205 -0
  54. package/dist/library.js +1 -0
  55. package/dist/library.js.map +1 -0
  56. package/dist/rag.cjs +19 -0
  57. package/dist/rag.cjs.map +1 -0
  58. package/dist/rag.d.cts +630 -0
  59. package/dist/rag.d.ts +630 -0
  60. package/dist/rag.js +1 -0
  61. package/dist/rag.js.map +1 -0
  62. package/dist/runner.cjs +19 -0
  63. package/dist/runner.cjs.map +1 -0
  64. package/dist/runner.d.cts +156 -0
  65. package/dist/runner.d.ts +156 -0
  66. package/dist/runner.js +1 -0
  67. package/dist/runner.js.map +1 -0
  68. package/dist/scheduler.cjs +19 -0
  69. package/dist/scheduler.cjs.map +1 -0
  70. package/dist/scheduler.d.cts +729 -0
  71. package/dist/scheduler.d.ts +729 -0
  72. package/dist/scheduler.js +1 -0
  73. package/dist/scheduler.js.map +1 -0
  74. package/dist/state-machine.cjs +19 -0
  75. package/dist/state-machine.cjs.map +1 -0
  76. package/dist/state-machine.d.cts +1240 -0
  77. package/dist/state-machine.d.ts +1240 -0
  78. package/dist/state-machine.js +1 -0
  79. package/dist/state-machine.js.map +1 -0
  80. package/dist/targets.cjs +19 -0
  81. package/dist/targets.cjs.map +1 -0
  82. package/dist/targets.d.cts +352 -0
  83. package/dist/targets.d.ts +352 -0
  84. package/dist/targets.js +1 -0
  85. package/dist/targets.js.map +1 -0
  86. package/dist/task-run.cjs +19 -0
  87. package/dist/task-run.cjs.map +1 -0
  88. package/dist/task-run.d.cts +1566 -0
  89. package/dist/task-run.d.ts +1566 -0
  90. package/dist/task-run.js +1 -0
  91. package/dist/task-run.js.map +1 -0
  92. package/dist/tree-events.cjs +19 -0
  93. package/dist/tree-events.cjs.map +1 -0
  94. package/dist/tree-events.d.cts +522 -0
  95. package/dist/tree-events.d.ts +522 -0
  96. package/dist/tree-events.js +1 -0
  97. package/dist/tree-events.js.map +1 -0
  98. package/dist/ui-bridge-ir.cjs +376 -0
  99. package/dist/ui-bridge-ir.cjs.map +1 -0
  100. package/dist/ui-bridge-ir.d.cts +820 -0
  101. package/dist/ui-bridge-ir.d.ts +820 -0
  102. package/dist/ui-bridge-ir.js +343 -0
  103. package/dist/ui-bridge-ir.js.map +1 -0
  104. package/dist/workflow.cjs +181 -0
  105. package/dist/workflow.cjs.map +1 -0
  106. package/dist/workflow.d.cts +2092 -0
  107. package/dist/workflow.d.ts +2092 -0
  108. package/dist/workflow.js +11 -0
  109. package/dist/workflow.js.map +1 -0
  110. package/package.json +136 -0
  111. package/src/accessibility/_api.ts +17 -0
  112. package/src/accessibility/index.ts +1 -0
  113. package/src/canvas/index.ts +319 -0
  114. package/src/chat/_api.ts +23 -0
  115. package/src/chat/index.ts +1 -0
  116. package/src/config/_api.ts +13 -0
  117. package/src/config/index.ts +1 -0
  118. package/src/constraints/_api.ts +17 -0
  119. package/src/constraints/index.ts +1 -0
  120. package/src/discovery.ts +188 -0
  121. package/src/execution/_api.ts +483 -0
  122. package/src/execution/index.ts +1 -0
  123. package/src/generated/A11yAction.d.ts +11 -0
  124. package/src/generated/AccessibilityBackend.d.ts +12 -0
  125. package/src/generated/AccessibilityBounds.d.ts +17 -0
  126. package/src/generated/AccessibilityNode.d.ts +73 -0
  127. package/src/generated/AccessibilityRole.d.ts +93 -0
  128. package/src/generated/AccessibilityRoleCriterion.d.ts +13 -0
  129. package/src/generated/AccessibilitySelector.d.ts +76 -0
  130. package/src/generated/AccessibilitySnapshot.d.ts +43 -0
  131. package/src/generated/AccessibilityState.d.ts +67 -0
  132. package/src/generated/ActionExecutionBatch.d.ts +23 -0
  133. package/src/generated/ActionExecutionBatchResponse.d.ts +24 -0
  134. package/src/generated/ActionExecutionCreate.d.ts +124 -0
  135. package/src/generated/ActionExecutionListResponse.d.ts +20 -0
  136. package/src/generated/ActionExecutionResponse.d.ts +24 -0
  137. package/src/generated/ActionReliabilityStats.d.ts +54 -0
  138. package/src/generated/ActionResponse.d.ts +45 -0
  139. package/src/generated/ActionStatus.d.ts +11 -0
  140. package/src/generated/ActionType.d.ts +41 -0
  141. package/src/generated/ActiveStatesResult.d.ts +32 -0
  142. package/src/generated/AgenticPhaseOutput.d.ts +50 -0
  143. package/src/generated/AgenticStatus.d.ts +11 -0
  144. package/src/generated/AiWorkflow.d.ts +76 -0
  145. package/src/generated/ApiAssertion.d.ts +35 -0
  146. package/src/generated/ApiAssertionOperator.d.ts +11 -0
  147. package/src/generated/ApiAssertionType.d.ts +11 -0
  148. package/src/generated/ApiContentType.d.ts +11 -0
  149. package/src/generated/ApiVariableExtraction.d.ts +24 -0
  150. package/src/generated/AppEvent.d.ts +586 -0
  151. package/src/generated/AvailableTransitionsResult.d.ts +34 -0
  152. package/src/generated/BaseStepFields.d.ts +72 -0
  153. package/src/generated/BatchComputeEmbeddingRequest.d.ts +27 -0
  154. package/src/generated/BatchComputeEmbeddingResponse.d.ts +23 -0
  155. package/src/generated/BatchEmbeddingResult.d.ts +23 -0
  156. package/src/generated/BetweenIterations.d.ts +35 -0
  157. package/src/generated/BoundingBox.d.ts +18 -0
  158. package/src/generated/BuildPhaseConfig.d.ts +24 -0
  159. package/src/generated/BuiltinOverrideProposal.d.ts +27 -0
  160. package/src/generated/CanonicalStep.d.ts +60 -0
  161. package/src/generated/CatchUpPolicy.d.ts +12 -0
  162. package/src/generated/Category.d.ts +24 -0
  163. package/src/generated/CheckIssueDetail.d.ts +40 -0
  164. package/src/generated/CheckType.d.ts +21 -0
  165. package/src/generated/CodeExecutionStep.d.ts +88 -0
  166. package/src/generated/CommandMode.d.ts +11 -0
  167. package/src/generated/CommandStep.d.ts +183 -0
  168. package/src/generated/CommandStepPhase.d.ts +11 -0
  169. package/src/generated/ComponentActionInfo.d.ts +24 -0
  170. package/src/generated/ComponentActionRequest.d.ts +22 -0
  171. package/src/generated/ComputeEmbeddingRequest.d.ts +24 -0
  172. package/src/generated/ComputeEmbeddingResponse.d.ts +38 -0
  173. package/src/generated/ComputeTextEmbeddingRequest.d.ts +20 -0
  174. package/src/generated/ComputeTextEmbeddingResponse.d.ts +32 -0
  175. package/src/generated/ConditionScheduleConfig.d.ts +17 -0
  176. package/src/generated/ConditionStatus.d.ts +29 -0
  177. package/src/generated/Confidence.d.ts +11 -0
  178. package/src/generated/ConfidenceLevel.d.ts +11 -0
  179. package/src/generated/Constraint.d.ts +33 -0
  180. package/src/generated/ConstraintCheck.d.ts +64 -0
  181. package/src/generated/ConstraintProposal.d.ts +37 -0
  182. package/src/generated/ConstraintResult.d.ts +32 -0
  183. package/src/generated/ConstraintSeverity.d.ts +16 -0
  184. package/src/generated/ConstraintViolation.d.ts +24 -0
  185. package/src/generated/Context.d.ts +50 -0
  186. package/src/generated/ContextAutoInclude.d.ts +34 -0
  187. package/src/generated/CoordinateSystem.d.ts +12 -0
  188. package/src/generated/Coordinates.d.ts +33 -0
  189. package/src/generated/CostTrendDataPoint.d.ts +36 -0
  190. package/src/generated/CostTrendResponse.d.ts +41 -0
  191. package/src/generated/CoverageData.d.ts +52 -0
  192. package/src/generated/CreateMcpCallInput.d.ts +59 -0
  193. package/src/generated/CreateMcpServerInput.d.ts +48 -0
  194. package/src/generated/CreateOlConfigRequest.d.ts +27 -0
  195. package/src/generated/CreateScheduledTaskRequest.d.ts +63 -0
  196. package/src/generated/CreateTaskRunRequest.d.ts +51 -0
  197. package/src/generated/CriterionOverride.d.ts +39 -0
  198. package/src/generated/CriterionType.d.ts +11 -0
  199. package/src/generated/DagApprovalStep.d.ts +80 -0
  200. package/src/generated/DagCancelStep.d.ts +76 -0
  201. package/src/generated/DagLoopStep.d.ts +80 -0
  202. package/src/generated/DecomposerConfig.d.ts +31 -0
  203. package/src/generated/DiagnosePhaseConfig.d.ts +34 -0
  204. package/src/generated/DiagnosticResult.d.ts +40 -0
  205. package/src/generated/DiscoveredElement.d.ts +48 -0
  206. package/src/generated/DiscoveredState.d.ts +49 -0
  207. package/src/generated/DiscoveredStateImage.d.ts +56 -0
  208. package/src/generated/DiscoveredTransition.d.ts +44 -0
  209. package/src/generated/DiscoveryBoundingBox.d.ts +32 -0
  210. package/src/generated/DiscoveryRequest.d.ts +40 -0
  211. package/src/generated/DiscoveryResponse.d.ts +32 -0
  212. package/src/generated/DiscoverySourceType.d.ts +14 -0
  213. package/src/generated/DiscoveryStrategy.d.ts +13 -0
  214. package/src/generated/DiscoveryTransitionTrigger.d.ts +38 -0
  215. package/src/generated/DisplayNode.d.ts +45 -0
  216. package/src/generated/DomainAssignment.d.ts +50 -0
  217. package/src/generated/DomainKnowledge.d.ts +29 -0
  218. package/src/generated/DomainVerificationResult.d.ts +36 -0
  219. package/src/generated/ElementActionRequest.d.ts +28 -0
  220. package/src/generated/ElementBbox.d.ts +36 -0
  221. package/src/generated/ElementIdentifier.d.ts +40 -0
  222. package/src/generated/ElementRect.d.ts +48 -0
  223. package/src/generated/ElementState.d.ts +47 -0
  224. package/src/generated/ElementType.d.ts +45 -0
  225. package/src/generated/EmbeddedElement.d.ts +36 -0
  226. package/src/generated/EmbeddingItem.d.ts +49 -0
  227. package/src/generated/EmbeddingListResponse.d.ts +22 -0
  228. package/src/generated/EmbeddingResultItem.d.ts +29 -0
  229. package/src/generated/EmbeddingResultsRequest.d.ts +19 -0
  230. package/src/generated/EmbeddingResultsResponse.d.ts +17 -0
  231. package/src/generated/ErrorType.d.ts +18 -0
  232. package/src/generated/ExecutePlaybookStep.d.ts +84 -0
  233. package/src/generated/ExecutionActionType.d.ts +40 -0
  234. package/src/generated/ExecutionIssueBatch.d.ts +19 -0
  235. package/src/generated/ExecutionIssueBatchResponse.d.ts +24 -0
  236. package/src/generated/ExecutionIssueCreate.d.ts +57 -0
  237. package/src/generated/ExecutionIssueDetail.d.ts +89 -0
  238. package/src/generated/ExecutionIssueListResponse.d.ts +26 -0
  239. package/src/generated/ExecutionIssueResponse.d.ts +24 -0
  240. package/src/generated/ExecutionIssueUpdate.d.ts +31 -0
  241. package/src/generated/ExecutionMatchLocation.d.ts +31 -0
  242. package/src/generated/ExecutionRunComplete.d.ts +34 -0
  243. package/src/generated/ExecutionRunCompleteResponse.d.ts +38 -0
  244. package/src/generated/ExecutionRunCreate.d.ts +40 -0
  245. package/src/generated/ExecutionRunDetail.d.ts +76 -0
  246. package/src/generated/ExecutionRunListResponse.d.ts +22 -0
  247. package/src/generated/ExecutionRunResponse.d.ts +41 -0
  248. package/src/generated/ExecutionScreenshotCreate.d.ts +59 -0
  249. package/src/generated/ExecutionScreenshotResponse.d.ts +36 -0
  250. package/src/generated/ExecutionStats.d.ts +56 -0
  251. package/src/generated/ExecutionStep.d.ts +78 -0
  252. package/src/generated/ExecutionTreeResponse.d.ts +42 -0
  253. package/src/generated/ExecutionTrendDataPoint.d.ts +36 -0
  254. package/src/generated/ExecutionTrendResponse.d.ts +46 -0
  255. package/src/generated/ExitCheckResult.d.ts +20 -0
  256. package/src/generated/ExitStrategy.d.ts +27 -0
  257. package/src/generated/ExportResult.d.ts +30 -0
  258. package/src/generated/ExtendIterationsRequest.d.ts +20 -0
  259. package/src/generated/FileChange.d.ts +20 -0
  260. package/src/generated/Finding.d.ts +40 -0
  261. package/src/generated/FindingActionType.d.ts +13 -0
  262. package/src/generated/FindingBatchCreate.d.ts +27 -0
  263. package/src/generated/FindingCategory.d.ts +25 -0
  264. package/src/generated/FindingCodeContext.d.ts +31 -0
  265. package/src/generated/FindingCreate.d.ts +52 -0
  266. package/src/generated/FindingDetail.d.ts +78 -0
  267. package/src/generated/FindingListResponse.d.ts +40 -0
  268. package/src/generated/FindingOutput.d.ts +36 -0
  269. package/src/generated/FindingSeverity.d.ts +14 -0
  270. package/src/generated/FindingStatus.d.ts +15 -0
  271. package/src/generated/FindingSummary.d.ts +53 -0
  272. package/src/generated/FindingUpdate.d.ts +33 -0
  273. package/src/generated/FindingUserInput.d.ts +27 -0
  274. package/src/generated/FindingsSummary.d.ts +47 -0
  275. package/src/generated/FlowEvent.d.ts +66 -0
  276. package/src/generated/FullRunnerStep.d.ts +144 -0
  277. package/src/generated/GUIElementChunk.d.ts +151 -0
  278. package/src/generated/GateEvaluationResult.d.ts +36 -0
  279. package/src/generated/HealthCheckUrl.d.ts +35 -0
  280. package/src/generated/HistoricalActionQuery.d.ts +42 -0
  281. package/src/generated/HistoricalActionResult.d.ts +57 -0
  282. package/src/generated/HttpConfig.d.ts +27 -0
  283. package/src/generated/HttpMethod.d.ts +13 -0
  284. package/src/generated/IdleCondition.d.ts +17 -0
  285. package/src/generated/ImplementFixesConfig.d.ts +25 -0
  286. package/src/generated/IndividualCheckResult.d.ts +50 -0
  287. package/src/generated/InitialStateRef.d.ts +23 -0
  288. package/src/generated/InitialStatesSource.d.ts +18 -0
  289. package/src/generated/IssueSeverity.d.ts +11 -0
  290. package/src/generated/IssueSource.d.ts +11 -0
  291. package/src/generated/IssueStatus.d.ts +11 -0
  292. package/src/generated/IssueType.d.ts +21 -0
  293. package/src/generated/IterationResult.d.ts +65 -0
  294. package/src/generated/IterationVerificationResults.d.ts +53 -0
  295. package/src/generated/JobItem.d.ts +31 -0
  296. package/src/generated/JobListResponse.d.ts +20 -0
  297. package/src/generated/JobStatus.d.ts +11 -0
  298. package/src/generated/JobSummary.d.ts +30 -0
  299. package/src/generated/LLMCostSummary.d.ts +38 -0
  300. package/src/generated/LLMMetrics.d.ts +42 -0
  301. package/src/generated/LogSourceSelection.d.ts +25 -0
  302. package/src/generated/LoopInstanceStatus.d.ts +28 -0
  303. package/src/generated/LoopPhase.d.ts +26 -0
  304. package/src/generated/MatchAdjustment.d.ts +23 -0
  305. package/src/generated/MatchLocation.d.ts +22 -0
  306. package/src/generated/MatchMethod.d.ts +11 -0
  307. package/src/generated/McpCallRecord.d.ts +35 -0
  308. package/src/generated/McpCallsResult.d.ts +44 -0
  309. package/src/generated/McpConnectionRef.d.ts +25 -0
  310. package/src/generated/McpServerConfig.d.ts +77 -0
  311. package/src/generated/McpServerStatus.d.ts +42 -0
  312. package/src/generated/McpToolCallResult.d.ts +38 -0
  313. package/src/generated/McpToolInfo.d.ts +23 -0
  314. package/src/generated/McpToolInputSchema.d.ts +34 -0
  315. package/src/generated/McpTransport.d.ts +15 -0
  316. package/src/generated/ModelCostBreakdown.d.ts +36 -0
  317. package/src/generated/ModelOverrideConfig.d.ts +47 -0
  318. package/src/generated/Monitor.d.ts +48 -0
  319. package/src/generated/MonitorPosition.d.ts +13 -0
  320. package/src/generated/MouseButton.d.ts +13 -0
  321. package/src/generated/MultiLoopConfig.d.ts +32 -0
  322. package/src/generated/MultiLoopEntry.d.ts +32 -0
  323. package/src/generated/MultiLoopStatus.d.ts +37 -0
  324. package/src/generated/NativeAccessibilityStep.d.ts +121 -0
  325. package/src/generated/NavigationResult.d.ts +40 -0
  326. package/src/generated/NewConstraintProposal.d.ts +20 -0
  327. package/src/generated/NextTaskInfo.d.ts +24 -0
  328. package/src/generated/NodeMetadata.d.ts +47 -0
  329. package/src/generated/NodeStatus.d.ts +11 -0
  330. package/src/generated/NodeType.d.ts +11 -0
  331. package/src/generated/OcrEngine.d.ts +11 -0
  332. package/src/generated/OlConfig.d.ts +48 -0
  333. package/src/generated/OrchestrationLoopConfig.d.ts +87 -0
  334. package/src/generated/OrchestrationLoopStatus.d.ts +59 -0
  335. package/src/generated/Outcome.d.ts +15 -0
  336. package/src/generated/OutputLine.d.ts +23 -0
  337. package/src/generated/OutputStream.d.ts +11 -0
  338. package/src/generated/OverrideCollection.d.ts +18 -0
  339. package/src/generated/Pagination.d.ts +28 -0
  340. package/src/generated/ParserType.d.ts +17 -0
  341. package/src/generated/PathElement.d.ts +17 -0
  342. package/src/generated/PathfindingRequest.d.ts +24 -0
  343. package/src/generated/PathfindingResult.d.ts +30 -0
  344. package/src/generated/PathfindingStep.d.ts +36 -0
  345. package/src/generated/PatternOptions.d.ts +32 -0
  346. package/src/generated/PipelineConfig.d.ts +31 -0
  347. package/src/generated/PlaybackFrameRequest.d.ts +21 -0
  348. package/src/generated/PlaywrightExecutionMode.d.ts +11 -0
  349. package/src/generated/Point.d.ts +20 -0
  350. package/src/generated/PollingConfig.d.ts +14 -0
  351. package/src/generated/ProcessConfig.d.ts +96 -0
  352. package/src/generated/ProcessState.d.ts +15 -0
  353. package/src/generated/ProcessStatus.d.ts +41 -0
  354. package/src/generated/PromptStep.d.ts +92 -0
  355. package/src/generated/PromptStepPhase.d.ts +13 -0
  356. package/src/generated/RAGDashboardStats.d.ts +26 -0
  357. package/src/generated/RagCompletionEvent.d.ts +25 -0
  358. package/src/generated/RagProcessingStatus.d.ts +11 -0
  359. package/src/generated/RagProgressEvent.d.ts +27 -0
  360. package/src/generated/ReadConfigResponse.d.ts +20 -0
  361. package/src/generated/ReflectionFixOutput.d.ts +20 -0
  362. package/src/generated/Region.d.ts +39 -0
  363. package/src/generated/RepositoryInactiveCondition.d.ts +24 -0
  364. package/src/generated/RepositoryWatch.d.ts +20 -0
  365. package/src/generated/ResolvedInitialStates.d.ts +29 -0
  366. package/src/generated/ResolvedInitialStatesResult.d.ts +40 -0
  367. package/src/generated/ResourceLimits.d.ts +33 -0
  368. package/src/generated/RestartProcessStep.d.ts +88 -0
  369. package/src/generated/RetryPolicy.d.ts +24 -0
  370. package/src/generated/RetrySpec.d.ts +24 -0
  371. package/src/generated/RoleCriterion.d.ts +14 -0
  372. package/src/generated/RootCauseCategory.d.ts +18 -0
  373. package/src/generated/RoutingRule.d.ts +38 -0
  374. package/src/generated/RunPromptRequest.d.ts +56 -0
  375. package/src/generated/RunPromptResponse.d.ts +50 -0
  376. package/src/generated/RunPromptResponseData.d.ts +20 -0
  377. package/src/generated/RunStatus.d.ts +11 -0
  378. package/src/generated/RunType.d.ts +11 -0
  379. package/src/generated/Runner.d.ts +81 -0
  380. package/src/generated/RunnerCrash.d.ts +32 -0
  381. package/src/generated/RunnerMetadata.d.ts +42 -0
  382. package/src/generated/RunnerStatus.d.ts +12 -0
  383. package/src/generated/RunnerUiError.d.ts +28 -0
  384. package/src/generated/RuntimeData.d.ts +40 -0
  385. package/src/generated/SaveWorkflowArtifactStep.d.ts +80 -0
  386. package/src/generated/ScheduleConditions.d.ts +29 -0
  387. package/src/generated/ScheduleExpression.d.ts +39 -0
  388. package/src/generated/ScheduledTask.d.ts +104 -0
  389. package/src/generated/ScheduledTaskStatus.d.ts +19 -0
  390. package/src/generated/ScheduledTaskType.d.ts +126 -0
  391. package/src/generated/SchedulerSettings.d.ts +28 -0
  392. package/src/generated/SchedulerStatus.d.ts +31 -0
  393. package/src/generated/ScreenshotAnnotation.d.ts +39 -0
  394. package/src/generated/ScreenshotAnnotationShape.d.ts +11 -0
  395. package/src/generated/ScreenshotType.d.ts +11 -0
  396. package/src/generated/ScrollDirection.d.ts +13 -0
  397. package/src/generated/SearchOptions.d.ts +33 -0
  398. package/src/generated/SearchResultItem.d.ts +19 -0
  399. package/src/generated/SearchStrategy.d.ts +14 -0
  400. package/src/generated/SemanticSearchRequest.d.ts +26 -0
  401. package/src/generated/SemanticSearchResponse.d.ts +21 -0
  402. package/src/generated/StageCondition.d.ts +37 -0
  403. package/src/generated/StageInput.d.ts +27 -0
  404. package/src/generated/StageOutput.d.ts +20 -0
  405. package/src/generated/StageTransition.d.ts +30 -0
  406. package/src/generated/StallDetectorConfig.d.ts +31 -0
  407. package/src/generated/StandardActionType.d.ts +40 -0
  408. package/src/generated/StateContext.d.ts +17 -0
  409. package/src/generated/StateDiscoveryResult.d.ts +104 -0
  410. package/src/generated/StateDiscoveryResultCreate.d.ts +65 -0
  411. package/src/generated/StateDiscoveryResultListResponse.d.ts +23 -0
  412. package/src/generated/StateDiscoveryResultSummary.d.ts +57 -0
  413. package/src/generated/StateDiscoveryResultUpdate.d.ts +47 -0
  414. package/src/generated/StateFilterItem.d.ts +18 -0
  415. package/src/generated/StateMachineConfig.d.ts +45 -0
  416. package/src/generated/StateMachineConfigCreate.d.ts +20 -0
  417. package/src/generated/StateMachineConfigFull.d.ts +67 -0
  418. package/src/generated/StateMachineConfigUpdate.d.ts +20 -0
  419. package/src/generated/StateMachineExport.d.ts +64 -0
  420. package/src/generated/StateMachineExportFormat.d.ts +39 -0
  421. package/src/generated/StateMachineImport.d.ts +25 -0
  422. package/src/generated/StateMachineState.d.ts +71 -0
  423. package/src/generated/StateMachineStateCreate.d.ts +52 -0
  424. package/src/generated/StateMachineStateUpdate.d.ts +48 -0
  425. package/src/generated/StateMachineTransition.d.ts +75 -0
  426. package/src/generated/StateMachineTransitionCreate.d.ts +53 -0
  427. package/src/generated/StateMachineTransitionUpdate.d.ts +53 -0
  428. package/src/generated/StateNodeData.d.ts +71 -0
  429. package/src/generated/StatesResponse.d.ts +19 -0
  430. package/src/generated/StdioConfig.d.ts +34 -0
  431. package/src/generated/StepExecutionConfig.d.ts +37 -0
  432. package/src/generated/StructuredFinding.d.ts +32 -0
  433. package/src/generated/StructuredOverride.d.ts +24 -0
  434. package/src/generated/StructuredSignal.d.ts +20 -0
  435. package/src/generated/SuccessCriterion.d.ts +57 -0
  436. package/src/generated/SummarizationConfig.d.ts +35 -0
  437. package/src/generated/TargetConfig.d.ts +108 -0
  438. package/src/generated/TaskCompletionResult.d.ts +90 -0
  439. package/src/generated/TaskExecutionRecord.d.ts +61 -0
  440. package/src/generated/TaskRun.d.ts +88 -0
  441. package/src/generated/TaskRunBackend.d.ts +86 -0
  442. package/src/generated/TaskRunBackendDetail.d.ts +99 -0
  443. package/src/generated/TaskRunCreate.d.ts +62 -0
  444. package/src/generated/TaskRunFilters.d.ts +38 -0
  445. package/src/generated/TaskRunFinding.d.ts +100 -0
  446. package/src/generated/TaskRunFindingActionType.d.ts +11 -0
  447. package/src/generated/TaskRunFindingCategory.d.ts +24 -0
  448. package/src/generated/TaskRunFindingCreate.d.ts +79 -0
  449. package/src/generated/TaskRunFindingFilters.d.ts +28 -0
  450. package/src/generated/TaskRunFindingSeverity.d.ts +11 -0
  451. package/src/generated/TaskRunFindingStatus.d.ts +11 -0
  452. package/src/generated/TaskRunFindingSummary.d.ts +34 -0
  453. package/src/generated/TaskRunFindingUpdate.d.ts +34 -0
  454. package/src/generated/TaskRunFindingsListResponse.d.ts +24 -0
  455. package/src/generated/TaskRunListResponse.d.ts +21 -0
  456. package/src/generated/TaskRunSession.d.ts +40 -0
  457. package/src/generated/TaskRunStatus.d.ts +11 -0
  458. package/src/generated/TaskRunUpdate.d.ts +47 -0
  459. package/src/generated/TaskType.d.ts +11 -0
  460. package/src/generated/TerminalExitEvent.d.ts +26 -0
  461. package/src/generated/TerminalInfo.d.ts +69 -0
  462. package/src/generated/TerminalOutputEvent.d.ts +29 -0
  463. package/src/generated/TestType.d.ts +11 -0
  464. package/src/generated/TextMatchType.d.ts +11 -0
  465. package/src/generated/TextSearchOptions.d.ts +30 -0
  466. package/src/generated/Ticket.d.ts +53 -0
  467. package/src/generated/TicketComment.d.ts +28 -0
  468. package/src/generated/TicketProviderConfig.d.ts +55 -0
  469. package/src/generated/TicketSource.d.ts +17 -0
  470. package/src/generated/TicketState.d.ts +15 -0
  471. package/src/generated/TimingInfo.d.ts +23 -0
  472. package/src/generated/TopMatch.d.ts +17 -0
  473. package/src/generated/TransitionAction.d.ts +93 -0
  474. package/src/generated/TransitionActionValue.d.ts +14 -0
  475. package/src/generated/TransitionEdgeData.d.ts +46 -0
  476. package/src/generated/TransitionExecutionResult.d.ts +30 -0
  477. package/src/generated/TransitionInfo.d.ts +29 -0
  478. package/src/generated/TransitionTriggerType.d.ts +13 -0
  479. package/src/generated/TreeEvent.d.ts +47 -0
  480. package/src/generated/TreeEventCreate.d.ts +30 -0
  481. package/src/generated/TreeEventListResponse.d.ts +30 -0
  482. package/src/generated/TreeEventResponse.d.ts +47 -0
  483. package/src/generated/TreeEventType.d.ts +20 -0
  484. package/src/generated/TreeNode.d.ts +54 -0
  485. package/src/generated/UIBridgeCapturedToast.d.ts +22 -0
  486. package/src/generated/UIBridgeComponent.d.ts +45 -0
  487. package/src/generated/UIBridgeElement.d.ts +62 -0
  488. package/src/generated/UIBridgeModalInfo.d.ts +40 -0
  489. package/src/generated/UIBridgeModalStack.d.ts +19 -0
  490. package/src/generated/UIBridgeSnapshot.d.ts +67 -0
  491. package/src/generated/UIBridgeToastContext.d.ts +17 -0
  492. package/src/generated/UIBridgeUndoContext.d.ts +19 -0
  493. package/src/generated/UiBridgeAction.d.ts +18 -0
  494. package/src/generated/UiBridgeAssertType.d.ts +11 -0
  495. package/src/generated/UiBridgeComparisonMode.d.ts +11 -0
  496. package/src/generated/UiBridgeDesignAuditStep.d.ts +76 -0
  497. package/src/generated/UiBridgeSeverity.d.ts +11 -0
  498. package/src/generated/UiBridgeStep.d.ts +127 -0
  499. package/src/generated/UiBridgeStepPhase.d.ts +14 -0
  500. package/src/generated/UiBridgeVisualAssertionStep.d.ts +97 -0
  501. package/src/generated/UnifiedStep.d.ts +57 -0
  502. package/src/generated/UnifiedWorkflow.d.ts +411 -0
  503. package/src/generated/UpdateMcpServerInput.d.ts +28 -0
  504. package/src/generated/UpdateOlConfigRequest.d.ts +32 -0
  505. package/src/generated/UpdateScheduledTaskRequest.d.ts +71 -0
  506. package/src/generated/ValidateConfigRequest.d.ts +16 -0
  507. package/src/generated/ValidateConfigResponse.d.ts +28 -0
  508. package/src/generated/VectorSearchResult.d.ts +48 -0
  509. package/src/generated/VerificationAgentContext.d.ts +25 -0
  510. package/src/generated/VerificationCategoryKind.d.ts +19 -0
  511. package/src/generated/VerificationMethod.d.ts +20 -0
  512. package/src/generated/VerificationPhaseResult.d.ts +63 -0
  513. package/src/generated/VerificationPlan.d.ts +43 -0
  514. package/src/generated/VerificationResult.d.ts +44 -0
  515. package/src/generated/VerificationResultResponse.d.ts +65 -0
  516. package/src/generated/VerificationResultsListResponse.d.ts +41 -0
  517. package/src/generated/VerificationStepDetails.d.ts +55 -0
  518. package/src/generated/VerificationStepResult.d.ts +68 -0
  519. package/src/generated/VgaAction.d.ts +61 -0
  520. package/src/generated/VgaActionKind.d.ts +14 -0
  521. package/src/generated/VgaAutomateStep.d.ts +110 -0
  522. package/src/generated/VirtualDesktop.d.ts +23 -0
  523. package/src/generated/VisualAssertionType.d.ts +11 -0
  524. package/src/generated/VisualComparisonResult.d.ts +40 -0
  525. package/src/generated/WaitOptions.d.ts +35 -0
  526. package/src/generated/WorkerCoordinationMessage.d.ts +93 -0
  527. package/src/generated/WorkerDomain.d.ts +29 -0
  528. package/src/generated/WorkerInstance.d.ts +62 -0
  529. package/src/generated/WorkerOutput.d.ts +53 -0
  530. package/src/generated/WorkerSignal.d.ts +48 -0
  531. package/src/generated/WorkerStatus.d.ts +11 -0
  532. package/src/generated/WorkflowArchitecture.d.ts +16 -0
  533. package/src/generated/WorkflowFixupMode.d.ts +11 -0
  534. package/src/generated/WorkflowFixupStep.d.ts +85 -0
  535. package/src/generated/WorkflowInfo.d.ts +28 -0
  536. package/src/generated/WorkflowMetadata.d.ts +44 -0
  537. package/src/generated/WorkflowRefStep.d.ts +94 -0
  538. package/src/generated/WorkflowStage.d.ts +126 -0
  539. package/src/generated/WorkflowStep.d.ts +80 -0
  540. package/src/generated/WorkflowStepPhase.d.ts +11 -0
  541. package/src/generated/WriteConfigRequest.d.ts +20 -0
  542. package/src/generated/WriteConfigResponse.d.ts +24 -0
  543. package/src/generated/index.ts +421 -0
  544. package/src/geometry/_api.ts +16 -0
  545. package/src/geometry/index.ts +1 -0
  546. package/src/index.ts +73 -0
  547. package/src/known-issues/index.ts +179 -0
  548. package/src/library/_api.ts +326 -0
  549. package/src/library/index.ts +1 -0
  550. package/src/rag/_api.ts +47 -0
  551. package/src/rag/index.ts +1 -0
  552. package/src/render-log.ts +371 -0
  553. package/src/runner/_api.ts +14 -0
  554. package/src/runner/index.ts +1 -0
  555. package/src/scheduler/_api.ts +21 -0
  556. package/src/scheduler/index.ts +1 -0
  557. package/src/state-machine/_api.ts +145 -0
  558. package/src/state-machine/index.ts +1 -0
  559. package/src/targets/_api.ts +47 -0
  560. package/src/targets/index.ts +1 -0
  561. package/src/task-run/_api.ts +108 -0
  562. package/src/task-run/index.ts +1 -0
  563. package/src/tree-events/_api.ts +42 -0
  564. package/src/tree-events/index.ts +1 -0
  565. package/src/ui-bridge-ir/__tests__/legacy-roster.test.ts +182 -0
  566. package/src/ui-bridge-ir/__tests__/projection.test.ts +1029 -0
  567. package/src/ui-bridge-ir/adapter.ts +220 -0
  568. package/src/ui-bridge-ir/document.ts +43 -0
  569. package/src/ui-bridge-ir/element-criteria.ts +48 -0
  570. package/src/ui-bridge-ir/index.ts +23 -0
  571. package/src/ui-bridge-ir/ir.schema.json +210 -0
  572. package/src/ui-bridge-ir/primitives.ts +102 -0
  573. package/src/ui-bridge-ir/projection.ts +863 -0
  574. package/src/ui-bridge-ir/state.ts +90 -0
  575. package/src/ui-bridge-ir/transition.ts +92 -0
  576. package/src/workflow/_api.ts +474 -0
  577. package/src/workflow/action-plan.ts +208 -0
  578. package/src/workflow/index.ts +1 -0
  579. package/src/workflow/skill.ts +152 -0
@@ -0,0 +1,2092 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * This file was automatically generated.
4
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
5
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
6
+ */
7
+
8
+ /**
9
+ * Log source selection for a workflow.
10
+ *
11
+ * - `"default"` / `"ai"` / `"all"`: Use the corresponding [`LogSourceMode`].
12
+ * - `{ "profile_id": "..." }`: Use a specific profile.
13
+ *
14
+ * Serialized as an untagged union: a bare string for the mode variants, or an
15
+ * object with a `profile_id` key for the profile variant.
16
+ */
17
+ type LogSourceSelection =
18
+ | ("default" | "ai" | "all")
19
+ | {
20
+ /**
21
+ * ID of the log-source profile to use.
22
+ */
23
+ profile_id: string;
24
+ [k: string]: unknown;
25
+ };
26
+
27
+ /* eslint-disable */
28
+ /**
29
+ * This file was automatically generated.
30
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
31
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
32
+ */
33
+
34
+ /**
35
+ * Configuration for a single health check URL.
36
+ *
37
+ * A workflow can have zero or more of these; they run before verification to
38
+ * confirm required services are up.
39
+ */
40
+ interface HealthCheckUrl {
41
+ /**
42
+ * Expected HTTP status code (default: `200`).
43
+ */
44
+ expectedStatus: number;
45
+ /**
46
+ * Whether failure should stop the workflow (default: `true`).
47
+ */
48
+ isCritical: boolean;
49
+ /**
50
+ * Display name for the health check (e.g., `"Backend Server"`).
51
+ */
52
+ name: string;
53
+ /**
54
+ * Timeout in seconds (default: `30`).
55
+ */
56
+ timeoutSeconds: number;
57
+ /**
58
+ * URL to check (e.g., `"http://localhost:8000/health"`).
59
+ */
60
+ url: string;
61
+ }
62
+
63
+ /* eslint-disable */
64
+ /**
65
+ * This file was automatically generated.
66
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
67
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
68
+ */
69
+
70
+ /**
71
+ * A conditional routing rule that selects model/provider based on runtime
72
+ * context.
73
+ *
74
+ * Rules are evaluated in order; the first matching rule wins. Condition
75
+ * syntax: `"<variable> <op> <value>"` where:
76
+ * - Variables: `verification_failures`, `iteration`, `stage_index`
77
+ * - Operators: `>=`, `>`, `<=`, `<`, `==`, `!=`
78
+ */
79
+ interface RoutingRule {
80
+ /**
81
+ * Condition expression, e.g. `"verification_failures >= 2"`.
82
+ */
83
+ condition: string;
84
+ /**
85
+ * Max tokens override when this rule matches.
86
+ */
87
+ maxTokens?: number | null;
88
+ /**
89
+ * Model to use when this rule matches.
90
+ */
91
+ model?: string | null;
92
+ /**
93
+ * Provider to use when this rule matches.
94
+ */
95
+ provider?: string | null;
96
+ /**
97
+ * Temperature override when this rule matches.
98
+ */
99
+ temperature?: number | null;
100
+ }
101
+
102
+ /* eslint-disable */
103
+ /**
104
+ * This file was automatically generated.
105
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
106
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
107
+ */
108
+
109
+
110
+
111
+ /**
112
+ * Per-phase model override configuration.
113
+ *
114
+ * Each phase can independently specify a provider and/or model, along with
115
+ * optional temperature, max_tokens, fallback config, and conditional routing
116
+ * rules.
117
+ */
118
+ interface ModelOverrideConfig {
119
+ /**
120
+ * Fallback model if the primary fails with a retryable error.
121
+ */
122
+ fallbackModel?: string | null;
123
+ /**
124
+ * Fallback provider if the primary fails with a retryable error.
125
+ */
126
+ fallbackProvider?: string | null;
127
+ /**
128
+ * Max output tokens override for this phase.
129
+ */
130
+ maxTokens?: number | null;
131
+ /**
132
+ * Model override for this phase.
133
+ */
134
+ model?: string | null;
135
+ /**
136
+ * Provider override for this phase.
137
+ */
138
+ provider?: string | null;
139
+ /**
140
+ * Conditional routing rules evaluated at runtime. First matching rule
141
+ * wins; unmatched falls back to this config's static fields.
142
+ */
143
+ routingRules?: RoutingRule[] | null;
144
+ /**
145
+ * Temperature override for this phase (`0.0`–`1.0`).
146
+ */
147
+ temperature?: number | null;
148
+ }
149
+
150
+ /* eslint-disable */
151
+ /**
152
+ * This file was automatically generated.
153
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
154
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
155
+ */
156
+
157
+ /**
158
+ * Condition for conditional stage execution.
159
+ *
160
+ * When attached to a [`WorkflowStage`], the stage is skipped if the condition
161
+ * evaluates to "should skip". All condition fields are optional and combine
162
+ * with AND semantics — all specified conditions must be met for the stage to
163
+ * run.
164
+ */
165
+ interface StageCondition {
166
+ /**
167
+ * Run this stage only if the previous stage had this outcome.
168
+ *
169
+ * - `"passed"`: run only if previous stage verification passed
170
+ * - `"failed"`: run only if previous stage verification failed
171
+ * - `"any"`: always run regardless of previous outcome (default behavior)
172
+ */
173
+ ifPrevious?: string | null;
174
+ /**
175
+ * Skip this stage if the total number of failed stages so far is below
176
+ * this threshold. Useful for "recovery" stages that only run when
177
+ * multiple prior stages have failed.
178
+ */
179
+ minFailures?: number | null;
180
+ /**
181
+ * Run this stage only after this many loop iterations have occurred
182
+ * (across all stages). Useful for "escalation" stages that only kick in
183
+ * after initial attempts have failed.
184
+ */
185
+ minIteration?: number | null;
186
+ }
187
+
188
+ /* eslint-disable */
189
+ /**
190
+ * This file was automatically generated.
191
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
192
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
193
+ */
194
+
195
+ /**
196
+ * Retry policy for a step or stage.
197
+ */
198
+ interface RetryPolicy {
199
+ /**
200
+ * Whether to use exponential backoff.
201
+ */
202
+ backoff: boolean;
203
+ /**
204
+ * Number of retry attempts (`0` = no retries).
205
+ */
206
+ count: number;
207
+ /**
208
+ * Delay between retries in milliseconds.
209
+ */
210
+ delayMs: number;
211
+ }
212
+
213
+ /* eslint-disable */
214
+ /**
215
+ * This file was automatically generated.
216
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
217
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
218
+ */
219
+
220
+ /**
221
+ * An output declared by a stage, available to subsequent stages.
222
+ */
223
+ interface StageOutput {
224
+ /**
225
+ * Human-readable description.
226
+ */
227
+ description: string;
228
+ /**
229
+ * Unique key for this output (e.g. `"api_url"`, `"auth_token"`).
230
+ */
231
+ key: string;
232
+ }
233
+
234
+ /* eslint-disable */
235
+ /**
236
+ * This file was automatically generated.
237
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
238
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
239
+ */
240
+
241
+ /**
242
+ * An input required by a stage, referencing a prior stage's output.
243
+ */
244
+ interface StageInput {
245
+ /**
246
+ * Which stage provides this input (stage id). If omitted, searches all
247
+ * prior stages.
248
+ */
249
+ fromStage?: string | null;
250
+ /**
251
+ * The key to bind this input to (matches a [`StageOutput::key`] from a
252
+ * prior stage).
253
+ */
254
+ key: string;
255
+ /**
256
+ * Whether this input is required (default: `true`). Missing required
257
+ * inputs are Critical findings.
258
+ */
259
+ required: boolean;
260
+ }
261
+
262
+ /* eslint-disable */
263
+ /**
264
+ * This file was automatically generated.
265
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
266
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
267
+ */
268
+
269
+ /**
270
+ * Kinds of deterministic check surfaced by `CommandStep` when
271
+ * `mode = "check"` or `mode = "check_group"`.
272
+ */
273
+ type CheckType =
274
+ | "lint"
275
+ | "format"
276
+ | "typecheck"
277
+ | "analyze"
278
+ | "security"
279
+ | "custom_command"
280
+ | "http_status"
281
+ | "ai_review"
282
+ | "ci_cd";
283
+
284
+ /* eslint-disable */
285
+ /**
286
+ * This file was automatically generated.
287
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
288
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
289
+ */
290
+
291
+ /**
292
+ * Execution mode for a [`CommandStep`].
293
+ */
294
+ type CommandMode = "shell" | "check" | "check_group" | "test";
295
+
296
+ /* eslint-disable */
297
+ /**
298
+ * This file was automatically generated.
299
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
300
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
301
+ */
302
+
303
+ /**
304
+ * Phases in which a [`CommandStep`] may appear.
305
+ */
306
+ type CommandStepPhase = "setup" | "verification" | "completion";
307
+
308
+ /* eslint-disable */
309
+ /**
310
+ * This file was automatically generated.
311
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
312
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
313
+ */
314
+
315
+ /**
316
+ * Whether a Playwright test executes independently or as part of a chain.
317
+ */
318
+ type PlaywrightExecutionMode = "independent" | "chained";
319
+
320
+ /* eslint-disable */
321
+ /**
322
+ * This file was automatically generated.
323
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
324
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
325
+ */
326
+
327
+ /**
328
+ * Per-step retry configuration carried by [`BaseStepFields::retry`].
329
+ *
330
+ * Distinct from the workflow frame's `RetryPolicy` — that one also carries a
331
+ * `backoff` flag, this per-step form is the older, simpler shape that step
332
+ * DTOs inherited from the TS `BaseStep` interface.
333
+ */
334
+ interface RetrySpec {
335
+ /**
336
+ * Number of retry attempts (`0` = no retries).
337
+ */
338
+ count: number;
339
+ /**
340
+ * Delay between retries in milliseconds.
341
+ */
342
+ delayMs: number;
343
+ }
344
+
345
+ /* eslint-disable */
346
+ /**
347
+ * This file was automatically generated.
348
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
349
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
350
+ */
351
+
352
+ /**
353
+ * Test-runner kinds surfaced by `CommandStep` when `mode = "test"`.
354
+ */
355
+ type TestType = "playwright" | "qontinui_vision" | "python" | "repository" | "custom_command";
356
+
357
+ /* eslint-disable */
358
+ /**
359
+ * This file was automatically generated.
360
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
361
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
362
+ */
363
+
364
+ /**
365
+ * Verification-depth category for a step.
366
+ *
367
+ * Mirrors the TS `VerificationCategory` literal union. Kept local to this
368
+ * module because it is only referenced from [`BaseStepFields`].
369
+ */
370
+ type VerificationCategoryKind =
371
+ | "existence"
372
+ | "uniqueness"
373
+ | "referential_integrity"
374
+ | "semantic_correctness"
375
+ | "runtime_behavior";
376
+
377
+ /* eslint-disable */
378
+ /**
379
+ * This file was automatically generated.
380
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
381
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
382
+ */
383
+
384
+
385
+
386
+ /**
387
+ * Shell commands, checks, check groups, and tests.
388
+ *
389
+ * A single variant covers all command-like steps; the specific sub-kind is
390
+ * carried by [`CommandMode`] and the matching `*_id` / `*_type` fields.
391
+ */
392
+ interface CommandStep {
393
+ /**
394
+ * Whether to auto-fix during the check.
395
+ */
396
+ autoFix?: boolean | null;
397
+ /**
398
+ * Branch selector for repository-targeted steps.
399
+ */
400
+ branch?: string | null;
401
+ /**
402
+ * Saved check-group ID.
403
+ */
404
+ checkGroupId?: string | null;
405
+ /**
406
+ * Saved check definition ID.
407
+ */
408
+ checkId?: string | null;
409
+ /**
410
+ * Kind of deterministic check (for `check` / `check_group` modes).
411
+ */
412
+ checkType?: CheckType | null;
413
+ /**
414
+ * Inline code body (e.g., Python snippet).
415
+ */
416
+ code?: string | null;
417
+ /**
418
+ * Shell command line (for `shell` mode).
419
+ */
420
+ command?: string | null;
421
+ /**
422
+ * Path to the check's config file.
423
+ */
424
+ configPath?: string | null;
425
+ /**
426
+ * Acceptance criterion IDs verified by this step.
427
+ */
428
+ criterionIds?: string[];
429
+ /**
430
+ * IDs of other steps that must complete first.
431
+ */
432
+ dependsOn?: string[];
433
+ /**
434
+ * Execution mode for Playwright tests.
435
+ */
436
+ executionMode?: PlaywrightExecutionMode | null;
437
+ /**
438
+ * Extractions published to subsequent steps.
439
+ */
440
+ extract?: {
441
+ [k: string]: string;
442
+ };
443
+ /**
444
+ * If `Some(true)`, a console-error signal from the UI fails this step.
445
+ */
446
+ failOnConsoleErrors?: boolean | null;
447
+ /**
448
+ * Whether non-zero exit status fails the step.
449
+ */
450
+ failOnError?: boolean | null;
451
+ /**
452
+ * Fail the step on warnings in addition to errors.
453
+ */
454
+ failOnWarning?: boolean | null;
455
+ /**
456
+ * Saved fused-script ID.
457
+ */
458
+ fusedScriptId?: string | null;
459
+ /**
460
+ * Unique identifier for the step.
461
+ */
462
+ id: string;
463
+ /**
464
+ * Named input bindings evaluated at step entry.
465
+ */
466
+ inputs?: {
467
+ [k: string]: string;
468
+ };
469
+ /**
470
+ * Execution mode — which sub-kind of command step this is.
471
+ */
472
+ mode?: CommandMode | null;
473
+ /**
474
+ * Display name for the step.
475
+ */
476
+ name: string;
477
+ phase: CommandStepPhase;
478
+ /**
479
+ * Repository selector for repository-targeted steps.
480
+ */
481
+ repository?: string | null;
482
+ /**
483
+ * Whether this step is required (default: `true` on consumer side).
484
+ */
485
+ required?: boolean | null;
486
+ /**
487
+ * Per-step retry configuration.
488
+ */
489
+ retry?: RetrySpec | null;
490
+ /**
491
+ * Re-run this step on every verification-agentic iteration.
492
+ */
493
+ runOnSubsequentIterations?: boolean | null;
494
+ /**
495
+ * Inline script contents.
496
+ */
497
+ scriptContent?: string | null;
498
+ /**
499
+ * Saved script ID.
500
+ */
501
+ scriptId?: string | null;
502
+ /**
503
+ * Saved shell command template ID.
504
+ */
505
+ shellCommandId?: string | null;
506
+ /**
507
+ * Provenance of this step when generated from a skill template.
508
+ *
509
+ * Typed as `serde_json::Value` here to avoid pulling the `skill`
510
+ * dependency chain into this module; the TS side re-imports the typed
511
+ * `SkillOrigin` after regeneration.
512
+ */
513
+ skillOrigin?: {
514
+ [k: string]: unknown;
515
+ };
516
+ /**
517
+ * Target URL for navigation-style tests.
518
+ */
519
+ targetUrl?: string | null;
520
+ /**
521
+ * Saved test ID.
522
+ */
523
+ testId?: string | null;
524
+ /**
525
+ * Test runner kind.
526
+ */
527
+ testType?: TestType | null;
528
+ /**
529
+ * Timeout in seconds.
530
+ */
531
+ timeoutSeconds?: number | null;
532
+ /**
533
+ * Tool identifier (e.g., `eslint`, `ruff`).
534
+ */
535
+ tool?: string | null;
536
+ /**
537
+ * Verification depth category.
538
+ */
539
+ verificationCategory?: VerificationCategoryKind | null;
540
+ /**
541
+ * Whether the caller waits for the workflow to complete.
542
+ */
543
+ waitForCompletion?: boolean | null;
544
+ /**
545
+ * Name of a workflow to invoke.
546
+ */
547
+ workflowName?: string | null;
548
+ /**
549
+ * Working directory for the command.
550
+ */
551
+ workingDirectory?: string | null;
552
+ [k: string]: unknown;
553
+ }
554
+
555
+ /* eslint-disable */
556
+ /**
557
+ * This file was automatically generated.
558
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
559
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
560
+ */
561
+
562
+ /**
563
+ * Phases in which a [`PromptStep`] may appear.
564
+ *
565
+ * Prompt steps are the only variant that may appear in the agentic phase.
566
+ */
567
+ type PromptStepPhase = "setup" | "verification" | "agentic" | "completion";
568
+
569
+ /* eslint-disable */
570
+ /**
571
+ * This file was automatically generated.
572
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
573
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
574
+ */
575
+
576
+
577
+
578
+ /**
579
+ * AI task instructions (prompt).
580
+ */
581
+ interface PromptStep {
582
+ /**
583
+ * Prompt body.
584
+ */
585
+ content: string;
586
+ /**
587
+ * Acceptance criterion IDs verified by this step.
588
+ */
589
+ criterionIds?: string[];
590
+ /**
591
+ * IDs of other steps that must complete first.
592
+ */
593
+ dependsOn?: string[];
594
+ /**
595
+ * Extractions published to subsequent steps.
596
+ */
597
+ extract?: {
598
+ [k: string]: string;
599
+ };
600
+ /**
601
+ * If `Some(true)`, a console-error signal from the UI fails this step.
602
+ */
603
+ failOnConsoleErrors?: boolean | null;
604
+ /**
605
+ * Unique identifier for the step.
606
+ */
607
+ id: string;
608
+ /**
609
+ * Named input bindings evaluated at step entry.
610
+ */
611
+ inputs?: {
612
+ [k: string]: string;
613
+ };
614
+ /**
615
+ * Marks this prompt as the summary step at the end of completion.
616
+ */
617
+ isSummaryStep?: boolean | null;
618
+ /**
619
+ * Model override.
620
+ */
621
+ model?: string | null;
622
+ /**
623
+ * Display name for the step.
624
+ */
625
+ name: string;
626
+ phase: PromptStepPhase;
627
+ /**
628
+ * Saved prompt ID (when the body is a reference).
629
+ */
630
+ promptId?: string | null;
631
+ /**
632
+ * AI provider override.
633
+ */
634
+ provider?: string | null;
635
+ /**
636
+ * Whether this step is required (default: `true` on consumer side).
637
+ */
638
+ required?: boolean | null;
639
+ /**
640
+ * Per-step retry configuration.
641
+ */
642
+ retry?: RetrySpec | null;
643
+ /**
644
+ * Provenance of this step when generated from a skill template.
645
+ *
646
+ * Typed as `serde_json::Value` here to avoid pulling the `skill`
647
+ * dependency chain into this module; the TS side re-imports the typed
648
+ * `SkillOrigin` after regeneration.
649
+ */
650
+ skillOrigin?: {
651
+ [k: string]: unknown;
652
+ };
653
+ /**
654
+ * Verification depth category.
655
+ */
656
+ verificationCategory?: VerificationCategoryKind | null;
657
+ [k: string]: unknown;
658
+ }
659
+
660
+ /* eslint-disable */
661
+ /**
662
+ * This file was automatically generated.
663
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
664
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
665
+ */
666
+
667
+ /**
668
+ * UI Bridge action kind.
669
+ */
670
+ type UiBridgeAction =
671
+ | "navigate"
672
+ | "execute"
673
+ | "assert"
674
+ | "snapshot"
675
+ | "compare"
676
+ | "snapshot_assert"
677
+ | "action_plan";
678
+
679
+ /* eslint-disable */
680
+ /**
681
+ * This file was automatically generated.
682
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
683
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
684
+ */
685
+
686
+ /**
687
+ * Kinds of assertion supported by `assert` actions.
688
+ */
689
+ type UiBridgeAssertType = "exists" | "text_equals" | "contains" | "visible" | "enabled";
690
+
691
+ /* eslint-disable */
692
+ /**
693
+ * This file was automatically generated.
694
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
695
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
696
+ */
697
+
698
+ /**
699
+ * Comparison mode for `compare` / `snapshot_assert` actions.
700
+ */
701
+ type UiBridgeComparisonMode = "structural" | "visual" | "both";
702
+
703
+ /* eslint-disable */
704
+ /**
705
+ * This file was automatically generated.
706
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
707
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
708
+ */
709
+
710
+ /**
711
+ * Severity threshold for `compare` / `snapshot_assert` actions.
712
+ */
713
+ type UiBridgeSeverity = "critical" | "major" | "minor" | "info";
714
+
715
+ /* eslint-disable */
716
+ /**
717
+ * This file was automatically generated.
718
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
719
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
720
+ */
721
+
722
+ /**
723
+ * Phases in which a [`UiBridgeStep`] may appear.
724
+ *
725
+ * UI-bridge interactions only run in deterministic phases — never inside
726
+ * the agentic loop (where the AI drives steps directly via prompts).
727
+ */
728
+ type UiBridgeStepPhase = "setup" | "verification" | "completion";
729
+
730
+ /* eslint-disable */
731
+ /**
732
+ * This file was automatically generated.
733
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
734
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
735
+ */
736
+
737
+
738
+
739
+ /**
740
+ * UI Bridge SDK interaction — navigate, execute, assert, snapshot, compare.
741
+ */
742
+ interface UiBridgeStep {
743
+ action: UiBridgeAction;
744
+ /**
745
+ * Structured action plan (for `action_plan`).
746
+ *
747
+ * Typed as `serde_json::Value` here to avoid pulling the `action-plan`
748
+ * module into this crate; the TS side re-imports the typed `ActionPlan`
749
+ * after regeneration.
750
+ */
751
+ actionPlan?: {
752
+ [k: string]: unknown;
753
+ };
754
+ /**
755
+ * Assertion kind (for `assert`).
756
+ */
757
+ assertType?: UiBridgeAssertType | null;
758
+ /**
759
+ * Comparison mode (for `compare` / `snapshot_assert`).
760
+ */
761
+ comparisonMode?: UiBridgeComparisonMode | null;
762
+ /**
763
+ * Acceptance criterion IDs verified by this step.
764
+ */
765
+ criterionIds?: string[];
766
+ /**
767
+ * IDs of other steps that must complete first.
768
+ */
769
+ dependsOn?: string[];
770
+ /**
771
+ * Expected value for assertions.
772
+ */
773
+ expected?: string | null;
774
+ /**
775
+ * Extractions published to subsequent steps.
776
+ */
777
+ extract?: {
778
+ [k: string]: string;
779
+ };
780
+ /**
781
+ * If `Some(true)`, a console-error signal from the UI fails this step.
782
+ */
783
+ failOnConsoleErrors?: boolean | null;
784
+ /**
785
+ * Unique identifier for the step.
786
+ */
787
+ id: string;
788
+ /**
789
+ * Named input bindings evaluated at step entry.
790
+ */
791
+ inputs?: {
792
+ [k: string]: string;
793
+ };
794
+ /**
795
+ * Free-form instruction text (for `execute`).
796
+ */
797
+ instruction?: string | null;
798
+ /**
799
+ * Display name for the step.
800
+ */
801
+ name: string;
802
+ phase: UiBridgeStepPhase;
803
+ /**
804
+ * Reference snapshot ID (for `compare` / `snapshot_assert`).
805
+ */
806
+ referenceSnapshotId?: string | null;
807
+ /**
808
+ * Whether this step is required (default: `true` on consumer side).
809
+ */
810
+ required?: boolean | null;
811
+ /**
812
+ * Per-step retry configuration.
813
+ */
814
+ retry?: RetrySpec | null;
815
+ /**
816
+ * Severity threshold (for `compare` / `snapshot_assert`).
817
+ */
818
+ severityThreshold?: UiBridgeSeverity | null;
819
+ /**
820
+ * Provenance of this step when generated from a skill template.
821
+ *
822
+ * Typed as `serde_json::Value` here to avoid pulling the `skill`
823
+ * dependency chain into this module; the TS side re-imports the typed
824
+ * `SkillOrigin` after regeneration.
825
+ */
826
+ skillOrigin?: {
827
+ [k: string]: unknown;
828
+ };
829
+ /**
830
+ * Target selector or element ID.
831
+ */
832
+ target?: string | null;
833
+ /**
834
+ * Timeout in milliseconds.
835
+ */
836
+ timeoutMs?: number | null;
837
+ /**
838
+ * Snapshot target — `"control"`, `"sdk"`, or `"proxy:PORT"`.
839
+ */
840
+ uiBridgeSnapshotTarget?: string | null;
841
+ /**
842
+ * Navigation URL (for `navigate`).
843
+ */
844
+ url?: string | null;
845
+ /**
846
+ * Verification depth category.
847
+ */
848
+ verificationCategory?: VerificationCategoryKind | null;
849
+ [k: string]: unknown;
850
+ }
851
+
852
+ /* eslint-disable */
853
+ /**
854
+ * This file was automatically generated.
855
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
856
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
857
+ */
858
+
859
+ /**
860
+ * Phases in which a [`WorkflowStep`] may appear.
861
+ */
862
+ type WorkflowStepPhase = "setup" | "verification" | "completion";
863
+
864
+ /* eslint-disable */
865
+ /**
866
+ * This file was automatically generated.
867
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
868
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
869
+ */
870
+
871
+
872
+
873
+ /**
874
+ * Run a saved workflow inline (composition).
875
+ */
876
+ interface WorkflowStep {
877
+ /**
878
+ * Acceptance criterion IDs verified by this step.
879
+ */
880
+ criterionIds?: string[];
881
+ /**
882
+ * IDs of other steps that must complete first.
883
+ */
884
+ dependsOn?: string[];
885
+ /**
886
+ * Extractions published to subsequent steps.
887
+ */
888
+ extract?: {
889
+ [k: string]: string;
890
+ };
891
+ /**
892
+ * If `Some(true)`, a console-error signal from the UI fails this step.
893
+ */
894
+ failOnConsoleErrors?: boolean | null;
895
+ /**
896
+ * Unique identifier for the step.
897
+ */
898
+ id: string;
899
+ /**
900
+ * Named input bindings evaluated at step entry.
901
+ */
902
+ inputs?: {
903
+ [k: string]: string;
904
+ };
905
+ /**
906
+ * Display name for the step.
907
+ */
908
+ name: string;
909
+ phase: WorkflowStepPhase;
910
+ /**
911
+ * Whether this step is required (default: `true` on consumer side).
912
+ */
913
+ required?: boolean | null;
914
+ /**
915
+ * Per-step retry configuration.
916
+ */
917
+ retry?: RetrySpec | null;
918
+ /**
919
+ * Provenance of this step when generated from a skill template.
920
+ *
921
+ * Typed as `serde_json::Value` here to avoid pulling the `skill`
922
+ * dependency chain into this module; the TS side re-imports the typed
923
+ * `SkillOrigin` after regeneration.
924
+ */
925
+ skillOrigin?: {
926
+ [k: string]: unknown;
927
+ };
928
+ /**
929
+ * Verification depth category.
930
+ */
931
+ verificationCategory?: VerificationCategoryKind | null;
932
+ /**
933
+ * ID of the saved workflow to run.
934
+ */
935
+ workflowId: string;
936
+ /**
937
+ * Display name of the saved workflow (denormalized for UI).
938
+ */
939
+ workflowName: string;
940
+ [k: string]: unknown;
941
+ }
942
+
943
+ /* eslint-disable */
944
+ /**
945
+ * This file was automatically generated.
946
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
947
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
948
+ */
949
+
950
+
951
+
952
+ /**
953
+ * Discriminated union over the four canonical step variants.
954
+ *
955
+ * Wire format is a flat object with a `"type"` discriminator — serde's
956
+ * internal tagging merges the inner struct's fields (including the flattened
957
+ * [`BaseStepFields`]) up into the top-level object. Example:
958
+ *
959
+ * ```text
960
+ * {"type":"command","id":"s1","name":"build","phase":"setup","mode":"shell","command":"cargo build"}
961
+ * ```
962
+ *
963
+ * Consumers that want a strict 4-variant typed view should use
964
+ * [`CanonicalStep`]. Consumers that need to tolerate runner-specific step
965
+ * types (e.g. `gate`, `screenshot`, `playwright`, `state`, `action`,
966
+ * `log_watch`, and others dispatched by the runner but absent from the
967
+ * wire-contract surface) should use [`UnifiedStep`], which preserves
968
+ * unknown payloads verbatim as `serde_json::Value`.
969
+ *
970
+ * Variant sizes are similar (~200–672 bytes each); the asymmetry reflects
971
+ * real differences in step-field cardinality and doesn't warrant boxing.
972
+ */
973
+ type CanonicalStep =
974
+ | (CommandStep & {
975
+ type: "command";
976
+ })
977
+ | (PromptStep & {
978
+ type: "prompt";
979
+ })
980
+ | (UiBridgeStep & {
981
+ type: "ui_bridge";
982
+ })
983
+ | (WorkflowStep & {
984
+ type: "workflow";
985
+ });
986
+
987
+ /* eslint-disable */
988
+ /**
989
+ * This file was automatically generated.
990
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
991
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
992
+ */
993
+
994
+
995
+
996
+ /**
997
+ * A workflow step, preferring typed canonical variants and falling back to an
998
+ * opaque [`serde_json::Value`] for runner-specific types not yet part of the
999
+ * wire contract.
1000
+ *
1001
+ * Serialization is transparent: a [`CanonicalStep`] serializes with its flat
1002
+ * `"type"`-tagged shape; [`UnifiedStep::Other`] serializes the wrapped value
1003
+ * as-is. Deserialization tries the canonical shape first; any payload that
1004
+ * does not match (unknown `"type"`, missing fields, or missing discriminator)
1005
+ * is preserved as [`UnifiedStep::Other`].
1006
+ *
1007
+ * This catch-all is what makes the type *robust* on the wire: a runner can
1008
+ * emit a `{"type":"gate", ...}` step and a consumer using [`UnifiedStep`]
1009
+ * will round-trip it losslessly even though `gate` is not in the canonical
1010
+ * set.
1011
+ *
1012
+ * ## Layout note (`#[allow(large_enum_variant)]`)
1013
+ *
1014
+ * `Canonical` carries a [`CanonicalStep`] (~672 bytes) while `Other` carries
1015
+ * a [`serde_json::Value`] (~32 bytes). The size asymmetry is intentional and
1016
+ * the enum is not held in bulk by any hot path today — `UnifiedWorkflow.*_steps`
1017
+ * remains `Vec<serde_json::Value>`. Boxing `Canonical` would save stack space
1018
+ * in hypothetical dense `Vec<UnifiedStep>` consumers at the cost of an extra
1019
+ * heap allocation per step everywhere else and noisier pattern-matching.
1020
+ */
1021
+ type UnifiedStep =
1022
+ | CanonicalStep
1023
+ | {
1024
+ [k: string]: unknown;
1025
+ };
1026
+
1027
+ /* eslint-disable */
1028
+ /**
1029
+ * This file was automatically generated.
1030
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1031
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1032
+ */
1033
+
1034
+
1035
+
1036
+ /**
1037
+ * A workflow stage — a self-contained unit of execution with its own
1038
+ * setup / verification / agentic / completion steps and verification-agentic
1039
+ * loop.
1040
+ *
1041
+ * Multi-stage workflows execute stages sequentially. Each stage gets its own
1042
+ * verification-agentic loop, and later stages see full output from all prior
1043
+ * stages. Step arrays are opaque `serde_json::Value` payloads pending the
1044
+ * Wave 4 typed-step migration.
1045
+ */
1046
+ interface WorkflowStage {
1047
+ /**
1048
+ * Agentic phase steps for this stage.
1049
+ */
1050
+ agenticSteps: UnifiedStep[];
1051
+ /**
1052
+ * Whether to pause for human approval after each agentic phase.
1053
+ */
1054
+ approvalGate: boolean;
1055
+ /**
1056
+ * When true, run completion prompt steps BEFORE automation steps.
1057
+ * Default (`false`) runs automation first, then prompts.
1058
+ */
1059
+ completionPromptsFirst: boolean;
1060
+ /**
1061
+ * Completion phase steps for this stage.
1062
+ */
1063
+ completionSteps: UnifiedStep[];
1064
+ /**
1065
+ * Optional condition for stage execution. When set, the stage is
1066
+ * evaluated against this condition before running. If the condition is
1067
+ * not met, the stage is skipped.
1068
+ */
1069
+ condition?: StageCondition | null;
1070
+ /**
1071
+ * Description of what this stage does.
1072
+ */
1073
+ description: string;
1074
+ /**
1075
+ * Unique identifier (UUID v4).
1076
+ */
1077
+ id: string;
1078
+ /**
1079
+ * Inputs required from prior stages.
1080
+ */
1081
+ inputs?: StageInput[] | null;
1082
+ /**
1083
+ * Maximum iterations for this stage's verification-agentic loop.
1084
+ *
1085
+ * `None` (omitted in JSON) means no iteration cap — the loop terminates
1086
+ * on success, explicit stop, or fix-attempt exhaustion.
1087
+ */
1088
+ maxIterations?: number | null;
1089
+ /**
1090
+ * Model override for this stage.
1091
+ */
1092
+ model?: string | null;
1093
+ /**
1094
+ * Per-phase model overrides for this stage.
1095
+ */
1096
+ modelOverrides?: {
1097
+ [k: string]: ModelOverrideConfig;
1098
+ };
1099
+ /**
1100
+ * Display name for this stage.
1101
+ */
1102
+ name: string;
1103
+ /**
1104
+ * Declared outputs that this stage produces for downstream stages.
1105
+ */
1106
+ outputs?: StageOutput[] | null;
1107
+ /**
1108
+ * AI provider override for this stage.
1109
+ */
1110
+ provider?: string | null;
1111
+ /**
1112
+ * Retry policy for this stage (overrides per-step defaults).
1113
+ */
1114
+ retryPolicy?: RetryPolicy | null;
1115
+ /**
1116
+ * Setup phase steps for this stage (polymorphic; see module docs).
1117
+ */
1118
+ setupSteps: UnifiedStep[];
1119
+ /**
1120
+ * Optional inactivity timeout in seconds for this stage's AI sessions.
1121
+ */
1122
+ timeoutSeconds?: number | null;
1123
+ /**
1124
+ * Verification phase steps for this stage.
1125
+ */
1126
+ verificationSteps: UnifiedStep[];
1127
+ }
1128
+
1129
+ /* eslint-disable */
1130
+ /**
1131
+ * This file was automatically generated.
1132
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1133
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1134
+ */
1135
+
1136
+ /**
1137
+ * The workflow execution architecture to use.
1138
+ *
1139
+ * This is a first-class workflow architecture option, allowing direct
1140
+ * comparison between traditional deterministic verification and agentic
1141
+ * verification approaches. Mirrors the runner-side enum in
1142
+ * `crate::agentic_verification`.
1143
+ */
1144
+ type WorkflowArchitecture = "traditional" | "agentic_verification" | "multi_agent_pipeline";
1145
+
1146
+ /* eslint-disable */
1147
+ /**
1148
+ * This file was automatically generated.
1149
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1150
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1151
+ */
1152
+
1153
+
1154
+
1155
+ /**
1156
+ * A unified workflow with steps organized by phase.
1157
+ *
1158
+ * The "frame" carries all non-step metadata — iteration caps, provider/model
1159
+ * selection, log-source routing, health checks, stage list, generator
1160
+ * outputs (dependency graph, cost annotations, quality report, acceptance
1161
+ * criteria), and timestamps. Step arrays remain opaque until the Wave 4
1162
+ * typed-step migration lands.
1163
+ */
1164
+ interface UnifiedWorkflow {
1165
+ /**
1166
+ * Acceptance criteria from the specification agent (opaque JSON blob).
1167
+ *
1168
+ * Used by the canvas panel manager to show a live requirements tracker.
1169
+ */
1170
+ acceptanceCriteria?: {
1171
+ [k: string]: unknown;
1172
+ };
1173
+ /**
1174
+ * Agentic phase steps (polymorphic JSON array).
1175
+ */
1176
+ agenticSteps: UnifiedStep[];
1177
+ /**
1178
+ * Whether the AI semantic review actually ran successfully during
1179
+ * generation.
1180
+ *
1181
+ * When `false`, the workflow passed through the pipeline without AI
1182
+ * verification (e.g., all verification iterations failed at
1183
+ * infrastructure level).
1184
+ */
1185
+ aiReviewed: boolean;
1186
+ /**
1187
+ * Whether to pause for human approval after each agentic phase.
1188
+ */
1189
+ approvalGate: boolean;
1190
+ /**
1191
+ * Auto-commit files touched by sub-agents on successful terminal state.
1192
+ *
1193
+ * Phase C of the Commit Progress feature. Commits the file-set recorded
1194
+ * in `session_touched_files` to the workflow's worktree branch when the
1195
+ * sub-agent reaches a successful terminal state, so the parent workflow
1196
+ * sees an atomic delta instead of a half-edited working tree.
1197
+ *
1198
+ * - `Some(true)` — commit after success regardless of worktree state.
1199
+ * - `Some(false)` — never commit, even with worktree.
1200
+ * - `None` (default) — commit if and only if the workflow uses a worktree.
1201
+ *
1202
+ * Failure to commit never fails the workflow — best-effort durability.
1203
+ */
1204
+ autoCommitSubagents?: boolean | null;
1205
+ /**
1206
+ * Whether to auto-include contexts based on task mentions (default:
1207
+ * `true`).
1208
+ */
1209
+ autoIncludeContexts: boolean;
1210
+ /**
1211
+ * Category for organization.
1212
+ */
1213
+ category: string;
1214
+ /**
1215
+ * When `true`, run completion prompt steps BEFORE automation steps.
1216
+ *
1217
+ * Used by meta-workflows so the AI hardener runs before
1218
+ * `save_workflow_artifact`. Default (`false`) runs automation first,
1219
+ * then prompts.
1220
+ */
1221
+ completionPromptsFirst: boolean;
1222
+ /**
1223
+ * Completion phase steps (polymorphic JSON array) — runs once after the
1224
+ * verification loop exits.
1225
+ */
1226
+ completionSteps: UnifiedStep[];
1227
+ /**
1228
+ * Per-constraint overrides: map of `constraint_id` to enabled (`true`) /
1229
+ * disabled (`false`).
1230
+ *
1231
+ * Applied to the constraint engine at execution time, after loading
1232
+ * builtins and config.
1233
+ */
1234
+ constraintOverrides?: {
1235
+ [k: string]: boolean;
1236
+ };
1237
+ /**
1238
+ * Manually added context IDs.
1239
+ */
1240
+ contextIds?: string[];
1241
+ /**
1242
+ * Cost annotations computed during generation (opaque JSON blob).
1243
+ */
1244
+ costAnnotations?: {
1245
+ [k: string]: unknown;
1246
+ };
1247
+ /**
1248
+ * ISO 8601 timestamp of creation.
1249
+ */
1250
+ createdAt: string;
1251
+ /**
1252
+ * Dependency graph computed during generation (opaque JSON blob).
1253
+ */
1254
+ dependencyGraph?: {
1255
+ [k: string]: unknown;
1256
+ };
1257
+ /**
1258
+ * Description of what this workflow does.
1259
+ */
1260
+ description: string;
1261
+ /**
1262
+ * Disabled context IDs (excluded from auto-include).
1263
+ */
1264
+ disabledContextIds?: string[];
1265
+ /**
1266
+ * Whether to run a completion sweep after verification passes.
1267
+ *
1268
+ * The sweep reviews all completed work for gaps before proceeding to
1269
+ * completion.
1270
+ */
1271
+ enableSweep: boolean;
1272
+ /**
1273
+ * When `true`, the pipeline will stop execution if accumulated token
1274
+ * usage exceeds the token budget. Disabled by default — only logs
1275
+ * warnings.
1276
+ */
1277
+ enforceTokenBudget: boolean;
1278
+ /**
1279
+ * Flow control configuration as a JSON string (e.g., concurrency limits,
1280
+ * queue behavior).
1281
+ */
1282
+ flowControlJson?: string | null;
1283
+ /**
1284
+ * Task run ID that generated this workflow (for meta-workflow tracking).
1285
+ */
1286
+ generatedByTaskRunId?: string | null;
1287
+ /**
1288
+ * Whether to automatically include health check steps before
1289
+ * verification.
1290
+ *
1291
+ * When enabled and `health_check_urls` is non-empty, health check steps
1292
+ * are prepended to verification steps to verify configured servers are
1293
+ * running.
1294
+ */
1295
+ healthCheckEnabled: boolean;
1296
+ /**
1297
+ * URLs to health check before verification (user-configurable).
1298
+ *
1299
+ * Each entry specifies a URL to check, expected status, and timeout.
1300
+ * If empty, no health checks are performed even if `health_check_enabled`
1301
+ * is true.
1302
+ */
1303
+ healthCheckUrls?: HealthCheckUrl[];
1304
+ /**
1305
+ * Whether HTN (Hierarchical Task Network) planning is enabled for this
1306
+ * workflow.
1307
+ *
1308
+ * When `true`, the loop attempts structured plan-based fixes before
1309
+ * falling back to AI agentic sessions.
1310
+ */
1311
+ htnEnabled: boolean;
1312
+ /**
1313
+ * Path to a serialized state machine JSON file for HTN planning.
1314
+ *
1315
+ * When `None` and HTN is enabled, defaults to the bundled
1316
+ * `data/runner_state_machine.json`.
1317
+ */
1318
+ htnStateMachinePath?: string | null;
1319
+ /**
1320
+ * UI Bridge URL for HTN planning (e.g., `"http://localhost:1420"`).
1321
+ *
1322
+ * When set, the HTN planner connects to UI Bridge for querying element
1323
+ * state. If `None`, HTN runs in plan-only mode without GUI execution.
1324
+ */
1325
+ htnUiBridgeUrl?: string | null;
1326
+ /**
1327
+ * Unique identifier (UUID v4).
1328
+ */
1329
+ id: string;
1330
+ /**
1331
+ * Whether this workflow is marked as a favorite for quick access.
1332
+ */
1333
+ isFavorite: boolean;
1334
+ logSourceSelection?: LogSourceSelection;
1335
+ /**
1336
+ * Whether to automatically include a `log_watch` step before verification.
1337
+ *
1338
+ * When enabled (default), a `log_watch` step is prepended to
1339
+ * verification steps to detect runtime errors in backend/frontend logs.
1340
+ */
1341
+ logWatchEnabled: boolean;
1342
+ /**
1343
+ * Maximum number of CI-triggered auto-resumes before requiring human
1344
+ * intervention. Used by the PR watcher integration. `0` = disabled.
1345
+ * Default: `10`.
1346
+ */
1347
+ maxCiAutoResumes: number;
1348
+ /**
1349
+ * Maximum consecutive non-improving fix attempts before escalating.
1350
+ *
1351
+ * When the verification check count does not improve across this many
1352
+ * iterations, the loop exits with `fix_attempts_exhausted`. `0` =
1353
+ * disabled. Default: `3`.
1354
+ */
1355
+ maxFixAttempts: number;
1356
+ /**
1357
+ * Maximum iterations for the agentic phase.
1358
+ *
1359
+ * `None` means no iteration cap — the loop terminates on success,
1360
+ * explicit stop, or fix-attempt exhaustion.
1361
+ */
1362
+ maxIterations?: number | null;
1363
+ /**
1364
+ * Maximum number of sweep iterations (default: `5`).
1365
+ */
1366
+ maxSweepIterations: number;
1367
+ /**
1368
+ * Model override.
1369
+ */
1370
+ model?: string | null;
1371
+ /**
1372
+ * Per-phase model overrides.
1373
+ */
1374
+ modelOverrides?: {
1375
+ [k: string]: ModelOverrideConfig;
1376
+ };
1377
+ /**
1378
+ * ISO 8601 timestamp of last modification (serialized as `"modified_at"`
1379
+ * to match the frontend).
1380
+ */
1381
+ modified_at: string;
1382
+ /**
1383
+ * Enable multi-agent fixer mode for the agentic phase.
1384
+ *
1385
+ * When `true`, verification failures are triaged and fixed by
1386
+ * specialized agents (quick-fix for lint/compilation, feature-fix for
1387
+ * missing functionality). Default: `true`.
1388
+ */
1389
+ multiAgentMode: boolean;
1390
+ /**
1391
+ * Display name.
1392
+ */
1393
+ name: string;
1394
+ /**
1395
+ * Per-phase timeout configuration as a JSON string.
1396
+ */
1397
+ phaseTimeoutsJson?: string | null;
1398
+ /**
1399
+ * Whether to automatically include a pre-flight environment check at the
1400
+ * start of setup.
1401
+ *
1402
+ * When enabled (default), a shell command step runs to verify disk
1403
+ * space, Node.js/npm, Python/Poetry, Rust/Cargo, and Git availability.
1404
+ * Uses the global setting from Settings if not explicitly set per
1405
+ * workflow.
1406
+ */
1407
+ preflightCheckEnabled: boolean;
1408
+ /**
1409
+ * Custom developer prompt template for this workflow.
1410
+ *
1411
+ * When set, this template is used instead of the global default when
1412
+ * running the workflow. Supports variables: `{{SESSION_ID}}`,
1413
+ * `{{ITERATION}}`, `{{MAX_ITERATIONS}}`, `{{GOAL}}`,
1414
+ * `{{EXECUTION_STEPS}}`, `{{WORKSPACE_ESCAPED}}`.
1415
+ */
1416
+ promptTemplate?: string | null;
1417
+ /**
1418
+ * AI provider override.
1419
+ */
1420
+ provider?: string | null;
1421
+ /**
1422
+ * Quality report from the revision phase (opaque JSON blob).
1423
+ */
1424
+ qualityReport?: {
1425
+ [k: string]: unknown;
1426
+ };
1427
+ /**
1428
+ * Whether to enable reflection mode during agentic iterations.
1429
+ *
1430
+ * When `true`, the AI investigates root causes before fixing failures.
1431
+ * Default: `true` for user-created workflows.
1432
+ */
1433
+ reflectionMode: boolean;
1434
+ /**
1435
+ * Policy for automatic git rollback when the workflow fails.
1436
+ *
1437
+ * Values: `"none"` (default), `"last_good"`, `"clean"`.
1438
+ */
1439
+ rollbackPolicy?: string | null;
1440
+ /**
1441
+ * Per-workflow security profile override.
1442
+ *
1443
+ * When set, overrides the default security profile from settings for
1444
+ * this workflow. Values: `"permissive"`, `"standard"`, `"strict"`,
1445
+ * or `"custom"`. If `None`, uses the default from Settings > Security.
1446
+ */
1447
+ securityProfile?: string | null;
1448
+ /**
1449
+ * Setup phase steps (polymorphic JSON array; see module docs).
1450
+ */
1451
+ setupSteps: UnifiedStep[];
1452
+ /**
1453
+ * Skip AI summary generation at the end (default: `false`, meaning the
1454
+ * AI summary is generated).
1455
+ */
1456
+ skipAiSummary: boolean;
1457
+ /**
1458
+ * Optional stages for multi-stage workflows.
1459
+ *
1460
+ * When non-empty, the workflow executes stages sequentially instead of
1461
+ * using top-level steps. Each stage has its own
1462
+ * setup / verification / agentic / completion steps and loop.
1463
+ */
1464
+ stages?: WorkflowStage[];
1465
+ /**
1466
+ * Whether to stop execution if a stage fails verification.
1467
+ *
1468
+ * Default: `false` (autonomous mode — continue to the next stage even
1469
+ * if the previous failed).
1470
+ */
1471
+ stopOnFailure: boolean;
1472
+ /**
1473
+ * Restrict working directory resolution to the workspace boundary.
1474
+ *
1475
+ * When `true`, steps cannot resolve paths outside the workspace root.
1476
+ * Default: `false` (permissive, current behavior).
1477
+ */
1478
+ strictCwd: boolean;
1479
+ /**
1480
+ * Tags for filtering.
1481
+ */
1482
+ tags: string[];
1483
+ /**
1484
+ * Error IDs targeted by this workflow (for auto-resolution on success).
1485
+ *
1486
+ * When the workflow completes successfully, these errors will be marked
1487
+ * as resolved. Used by error-fix workflows generated from the Error
1488
+ * Monitor.
1489
+ */
1490
+ targetedErrorIds?: number[];
1491
+ /**
1492
+ * Optional inactivity timeout in seconds for AI sessions.
1493
+ *
1494
+ * - `None` (default): no timeout, runs until completion or manual stop.
1495
+ * - `Some(N)`: kill AI session after `N` seconds of no output.
1496
+ *
1497
+ * Takes precedence over the global AI settings timeout.
1498
+ */
1499
+ timeoutSeconds?: number | null;
1500
+ /**
1501
+ * Tags for per-execution tool whitelisting.
1502
+ *
1503
+ * When non-empty, only skills matching at least one tag are included in
1504
+ * the AI prompt context, reducing prompt bloat.
1505
+ */
1506
+ toolTags?: string[];
1507
+ /**
1508
+ * Run the workflow in an isolated git worktree.
1509
+ *
1510
+ * When `true`, a new branch and worktree are created before execution.
1511
+ * Changes stay on the worktree branch and can be merged back after
1512
+ * review. Default: `false`.
1513
+ */
1514
+ useWorktree: boolean;
1515
+ /**
1516
+ * Verification phase steps (polymorphic JSON array).
1517
+ */
1518
+ verificationSteps: UnifiedStep[];
1519
+ /**
1520
+ * Workflow execution architecture override.
1521
+ *
1522
+ * When set, forces the workflow to use a specific execution architecture
1523
+ * instead of the default Traditional loop. When `None`, the system
1524
+ * infers the best architecture based on workflow complexity.
1525
+ */
1526
+ workflowArchitecture?: WorkflowArchitecture | null;
1527
+ }
1528
+
1529
+ /* eslint-disable */
1530
+ /**
1531
+ * This file was automatically generated.
1532
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1533
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1534
+ */
1535
+
1536
+
1537
+
1538
+ /**
1539
+ * Shared fields common to every canonical step variant.
1540
+ *
1541
+ * Flattened into each step struct via `#[serde(flatten)]` so the wire shape
1542
+ * stays flat (no nested `"base": { … }` envelope).
1543
+ */
1544
+ interface BaseStepFields {
1545
+ /**
1546
+ * Acceptance criterion IDs verified by this step.
1547
+ */
1548
+ criterionIds?: string[];
1549
+ /**
1550
+ * IDs of other steps that must complete first.
1551
+ */
1552
+ dependsOn?: string[];
1553
+ /**
1554
+ * Extractions published to subsequent steps.
1555
+ */
1556
+ extract?: {
1557
+ [k: string]: string;
1558
+ };
1559
+ /**
1560
+ * If `Some(true)`, a console-error signal from the UI fails this step.
1561
+ */
1562
+ failOnConsoleErrors?: boolean | null;
1563
+ /**
1564
+ * Unique identifier for the step.
1565
+ */
1566
+ id: string;
1567
+ /**
1568
+ * Named input bindings evaluated at step entry.
1569
+ */
1570
+ inputs?: {
1571
+ [k: string]: string;
1572
+ };
1573
+ /**
1574
+ * Display name for the step.
1575
+ */
1576
+ name: string;
1577
+ /**
1578
+ * Whether this step is required (default: `true` on consumer side).
1579
+ */
1580
+ required?: boolean | null;
1581
+ /**
1582
+ * Per-step retry configuration.
1583
+ */
1584
+ retry?: RetrySpec | null;
1585
+ /**
1586
+ * Provenance of this step when generated from a skill template.
1587
+ *
1588
+ * Typed as `serde_json::Value` here to avoid pulling the `skill`
1589
+ * dependency chain into this module; the TS side re-imports the typed
1590
+ * `SkillOrigin` after regeneration.
1591
+ */
1592
+ skillOrigin?: {
1593
+ [k: string]: unknown;
1594
+ };
1595
+ /**
1596
+ * Verification depth category.
1597
+ */
1598
+ verificationCategory?: VerificationCategoryKind | null;
1599
+ }
1600
+
1601
+ /* eslint-disable */
1602
+ /**
1603
+ * This file was automatically generated.
1604
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1605
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1606
+ */
1607
+
1608
+ /**
1609
+ * HTTP methods accepted by API-request command steps.
1610
+ *
1611
+ * Serialized uppercase (`GET`, `POST`, …) to match HTTP convention.
1612
+ */
1613
+ type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
1614
+
1615
+ /* eslint-disable */
1616
+ /**
1617
+ * This file was automatically generated.
1618
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1619
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1620
+ */
1621
+
1622
+ /**
1623
+ * Content-Type values for an API request body.
1624
+ */
1625
+ type ApiContentType = "application/json" | "application/x-www-form-urlencoded" | "text/plain" | "none";
1626
+
1627
+ /* eslint-disable */
1628
+ /**
1629
+ * This file was automatically generated.
1630
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1631
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1632
+ */
1633
+
1634
+ /**
1635
+ * Comparison operators supported by API assertions.
1636
+ */
1637
+ type ApiAssertionOperator = "equals" | "contains" | "matches" | "greater_than" | "less_than";
1638
+
1639
+ /* eslint-disable */
1640
+ /**
1641
+ * This file was automatically generated.
1642
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1643
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1644
+ */
1645
+
1646
+ /**
1647
+ * Assertion kinds supported on API responses.
1648
+ */
1649
+ type ApiAssertionType = "status_code" | "json_path" | "header" | "body_contains" | "response_time";
1650
+
1651
+ /* eslint-disable */
1652
+ /**
1653
+ * This file was automatically generated.
1654
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1655
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1656
+ */
1657
+
1658
+
1659
+
1660
+ /**
1661
+ * A single assertion evaluated against an API response.
1662
+ */
1663
+ interface ApiAssertion {
1664
+ /**
1665
+ * Expected value. The TS source allows either a string or number, so
1666
+ * this field stays as `serde_json::Value` on the wire.
1667
+ */
1668
+ expected: {
1669
+ [k: string]: unknown;
1670
+ };
1671
+ /**
1672
+ * Header name for `header` assertions.
1673
+ */
1674
+ headerName?: string | null;
1675
+ /**
1676
+ * JSONPath for `json_path` assertions.
1677
+ */
1678
+ jsonPath?: string | null;
1679
+ /**
1680
+ * Comparison operator; defaults to `equals` on the consumer side.
1681
+ */
1682
+ operator?: ApiAssertionOperator | null;
1683
+ type: ApiAssertionType;
1684
+ }
1685
+
1686
+ /* eslint-disable */
1687
+ /**
1688
+ * This file was automatically generated.
1689
+ * DO NOT MODIFY IT BY HAND. Regenerate with `just generate-types` or
1690
+ * `qontinui-runner/src-tauri/scripts/generate_types.sh`.
1691
+ */
1692
+
1693
+ /**
1694
+ * Extract a named variable from an API response via JSONPath.
1695
+ */
1696
+ interface ApiVariableExtraction {
1697
+ /**
1698
+ * Default value if the path does not resolve.
1699
+ */
1700
+ defaultValue?: string | null;
1701
+ /**
1702
+ * JSONPath expression used to extract the value.
1703
+ */
1704
+ jsonPath: string;
1705
+ /**
1706
+ * Variable name to bind the extracted value to.
1707
+ */
1708
+ variableName: string;
1709
+ }
1710
+
1711
+ /**
1712
+ * Skill Types
1713
+ *
1714
+ * A skill is a named, parameterized template that produces pre-configured
1715
+ * workflow step(s) when instantiated. Skills sit between raw step types
1716
+ * and full workflows:
1717
+ *
1718
+ * Raw Step Types (command, prompt, ui_bridge, workflow) ← execution primitives
1719
+ * ↑ instantiates
1720
+ * Skills ("Lint Project", "API Health Check") ← named capability templates
1721
+ * ↑ composes into
1722
+ * Workflows (multi-phase verification-agentic loops) ← orchestration
1723
+ *
1724
+ * Skills are purely a configuration-time abstraction — they produce steps,
1725
+ * they do NOT add new runtime behavior.
1726
+ */
1727
+
1728
+ type SkillCategory = "code-quality" | "testing" | "monitoring" | "ai-task" | "deployment" | "composition" | "custom";
1729
+ interface SkillAuthor {
1730
+ name: string;
1731
+ email?: string;
1732
+ url?: string;
1733
+ }
1734
+ interface SkillParameterOption {
1735
+ label: string;
1736
+ value: string;
1737
+ }
1738
+ interface SkillParameter {
1739
+ name: string;
1740
+ type: "string" | "number" | "boolean" | "select";
1741
+ label: string;
1742
+ description: string;
1743
+ required: boolean;
1744
+ default?: unknown;
1745
+ options?: SkillParameterOption[];
1746
+ placeholder?: string;
1747
+ min?: number;
1748
+ max?: number;
1749
+ pattern?: string;
1750
+ depends_on?: {
1751
+ param: string;
1752
+ value: unknown;
1753
+ };
1754
+ }
1755
+ interface SingleStepTemplate {
1756
+ kind: "single_step";
1757
+ step: Record<string, unknown>;
1758
+ }
1759
+ interface MultiStepTemplate {
1760
+ kind: "multi_step";
1761
+ steps: Record<string, unknown>[];
1762
+ }
1763
+ interface CompositionTemplate {
1764
+ kind: "composition";
1765
+ skill_refs: SkillRef[];
1766
+ }
1767
+ interface SkillRef {
1768
+ skill_id: string;
1769
+ parameter_overrides?: Record<string, unknown>;
1770
+ }
1771
+ type SkillTemplate = SingleStepTemplate | MultiStepTemplate | CompositionTemplate;
1772
+ interface SkillDefinition {
1773
+ id: string;
1774
+ name: string;
1775
+ slug: string;
1776
+ description: string;
1777
+ category: SkillCategory;
1778
+ tags: string[];
1779
+ icon: string;
1780
+ color: string;
1781
+ allowed_phases: WorkflowPhase[];
1782
+ parameters: SkillParameter[];
1783
+ template: SkillTemplate;
1784
+ source: "builtin" | "user" | "community";
1785
+ version?: string;
1786
+ author?: SkillAuthor;
1787
+ checksum?: string;
1788
+ depends_on?: string[];
1789
+ usage_count?: number;
1790
+ approval_status?: "pending" | "approved" | "rejected";
1791
+ forked_from?: string;
1792
+ }
1793
+ interface SkillOrigin {
1794
+ skill_id: string;
1795
+ skill_slug: string;
1796
+ parameter_values: Record<string, unknown>;
1797
+ }
1798
+ interface SkillExportManifest {
1799
+ version: string;
1800
+ exported_at: string;
1801
+ app_version: string;
1802
+ content_type: "skills";
1803
+ skill_count: number;
1804
+ checksum?: string;
1805
+ }
1806
+ interface SkillExport {
1807
+ manifest: SkillExportManifest;
1808
+ skills: SkillDefinition[];
1809
+ }
1810
+ interface SkillImportResult {
1811
+ imported: number;
1812
+ skipped: number;
1813
+ overwritten: number;
1814
+ errors: string[];
1815
+ }
1816
+
1817
+ /**
1818
+ * Structured Action Plan Types
1819
+ *
1820
+ * Defines the schema for LLM-generated UI Bridge action plans.
1821
+ * Instead of natural language instructions interpreted by a second LLM call,
1822
+ * action plans let the agentic-phase LLM directly specify typed UI actions
1823
+ * that map to UI Bridge's control API.
1824
+ *
1825
+ * Inspired by Skyvern's structured action protocol: each action carries
1826
+ * reasoning, confidence, and typed parameters so that execution is
1827
+ * deterministic and auditable.
1828
+ */
1829
+ /**
1830
+ * Action types that can appear in an action plan.
1831
+ * Maps directly to UI Bridge's StandardAction type with additions
1832
+ * for navigation and waiting.
1833
+ */
1834
+ type PlannedActionType = "click" | "doubleClick" | "rightClick" | "type" | "clear" | "select" | "check" | "uncheck" | "toggle" | "hover" | "focus" | "scroll" | "scrollIntoView" | "setValue" | "drag" | "submit" | "sendKeys" | "autocomplete" | "navigate" | "wait";
1835
+ /**
1836
+ * How to find the target element for an action.
1837
+ * Supports multiple resolution strategies with fallback.
1838
+ */
1839
+ interface ElementTarget {
1840
+ /** Direct element ID from a prior snapshot (fastest resolution) */
1841
+ elementId?: string;
1842
+ /** data-testid attribute value */
1843
+ testId?: string;
1844
+ /** Natural language description for fuzzy search (fallback) */
1845
+ searchText?: string;
1846
+ /** Element type hint to narrow search (e.g., "button", "input") */
1847
+ elementType?: string;
1848
+ /** CSS selector */
1849
+ selector?: string;
1850
+ }
1851
+ /**
1852
+ * A single action in an action plan.
1853
+ *
1854
+ * The LLM produces an array of these, each mapping to one UI Bridge
1855
+ * control action. The reasoning and confidence fields enable auditing
1856
+ * and confidence-gated execution.
1857
+ */
1858
+ interface PlannedAction {
1859
+ /** Action type to execute */
1860
+ action: PlannedActionType;
1861
+ /** How to find the target element */
1862
+ target: ElementTarget;
1863
+ /** LLM's reasoning for this action (audit trail) */
1864
+ reasoning?: string;
1865
+ /** LLM's confidence that this is the right action (0.0–1.0) */
1866
+ confidence: number;
1867
+ /**
1868
+ * Action-specific parameters.
1869
+ * - type/setValue: { text: string }
1870
+ * - select: { value: string } or { label: string }
1871
+ * - scroll: { direction: "up"|"down"|"left"|"right" }
1872
+ * - drag: { targetPosition: { x: number, y: number } }
1873
+ * - sendKeys: { keys: string }
1874
+ * - navigate: { url: string }
1875
+ * - wait: { ms: number }
1876
+ */
1877
+ params?: Record<string, unknown>;
1878
+ /**
1879
+ * Separates the generic intent from specific data.
1880
+ * Enables action plan caching: the query stays stable across runs,
1881
+ * only the answer changes per user context.
1882
+ *
1883
+ * Example:
1884
+ * userDetailQuery: "What email should be entered?"
1885
+ * userDetailAnswer: "test@example.com"
1886
+ */
1887
+ userDetailQuery?: string;
1888
+ userDetailAnswer?: string;
1889
+ }
1890
+ /**
1891
+ * A complete action plan: an ordered sequence of UI actions
1892
+ * produced by the agentic-phase LLM.
1893
+ */
1894
+ interface ActionPlan {
1895
+ /** Ordered list of actions to execute */
1896
+ actions: PlannedAction[];
1897
+ /** High-level goal this plan achieves */
1898
+ goal: string;
1899
+ /**
1900
+ * Minimum confidence threshold. Actions below this confidence
1901
+ * are skipped (or trigger verification) rather than executed.
1902
+ * Default: 0.5
1903
+ */
1904
+ confidenceThreshold?: number;
1905
+ /** Whether to stop on first action failure (default: true) */
1906
+ stopOnFailure?: boolean;
1907
+ }
1908
+ /** Result of executing a single planned action */
1909
+ interface PlannedActionResult {
1910
+ /** Index of the action in the plan */
1911
+ index: number;
1912
+ /** Whether the action succeeded */
1913
+ success: boolean;
1914
+ /** The action that was executed */
1915
+ action: PlannedActionType;
1916
+ /** Element ID that was resolved and acted upon */
1917
+ resolvedElementId?: string;
1918
+ /** Error message if the action failed */
1919
+ error?: string;
1920
+ /** Whether the action was skipped due to low confidence */
1921
+ skippedLowConfidence?: boolean;
1922
+ /** Duration in milliseconds */
1923
+ durationMs: number;
1924
+ /** Post-action element state (if available) */
1925
+ elementState?: Record<string, unknown>;
1926
+ }
1927
+ /** Aggregated result of executing a full action plan */
1928
+ interface ActionPlanResult {
1929
+ /** Whether all executed actions succeeded */
1930
+ success: boolean;
1931
+ /** The goal from the action plan */
1932
+ goal?: string;
1933
+ /** Per-action results */
1934
+ results: PlannedActionResult[];
1935
+ /** Count of actions executed (excludes skipped) */
1936
+ executedCount: number;
1937
+ /** Count of actions skipped due to low confidence */
1938
+ skippedCount: number;
1939
+ /** Count of actions that failed */
1940
+ failedCount: number;
1941
+ /** Total duration in milliseconds */
1942
+ totalDurationMs: number;
1943
+ /** Whether this plan was stored in the cache for future reuse */
1944
+ cached?: boolean;
1945
+ }
1946
+ /**
1947
+ * Extended action plan request with caching fields.
1948
+ * Used when calling the endpoint directly (not via workflow steps).
1949
+ */
1950
+ interface ActionPlanExecuteRequest extends ActionPlan {
1951
+ /** Page URL for cache keying */
1952
+ pageUrl?: string;
1953
+ /** Element snapshot for cache fingerprinting (array of {id, type, role, label}) */
1954
+ elementSnapshot?: Array<{
1955
+ id?: string;
1956
+ type?: string;
1957
+ role?: string;
1958
+ label?: string;
1959
+ }>;
1960
+ }
1961
+
1962
+ /**
1963
+ * Workflow Types
1964
+ *
1965
+ * Canonical type definitions for the unified Workflow Builder system.
1966
+ * Shared across qontinui-runner and qontinui-web.
1967
+ *
1968
+ * All automation is organized into four phases: Setup, Verification, Agentic, Completion.
1969
+ *
1970
+ * Execution Order:
1971
+ * Setup (once) -> [Verification <-> Agentic]* -> Completion (once)
1972
+ *
1973
+ * Step Types (4 core types):
1974
+ * command - Shell commands, checks, check groups, tests
1975
+ * ui_bridge - UI Bridge SDK interactions (navigate, execute, assert, snapshot)
1976
+ * prompt - AI task instructions
1977
+ * workflow - Run a saved workflow inline (composition)
1978
+ */
1979
+
1980
+ type ModelOverrides = {
1981
+ setup?: ModelOverrideConfig;
1982
+ agentic?: ModelOverrideConfig;
1983
+ completion?: ModelOverrideConfig;
1984
+ verification?: ModelOverrideConfig;
1985
+ investigation?: ModelOverrideConfig;
1986
+ summary?: ModelOverrideConfig;
1987
+ generation?: ModelOverrideConfig;
1988
+ };
1989
+ type WorkflowPhase = "setup" | "verification" | "agentic" | "completion";
1990
+
1991
+ type BaseStep = BaseStepFields;
1992
+ type StepTypeName = "command" | "ui_bridge" | "prompt" | "workflow" | "native_accessibility";
1993
+ type SetupStep = CommandStep | PromptStep | UiBridgeStep | WorkflowStep;
1994
+ type VerificationStep = CommandStep | PromptStep | UiBridgeStep | WorkflowStep;
1995
+ type AgenticStep = PromptStep;
1996
+ type CompletionStep = CommandStep | PromptStep | UiBridgeStep | WorkflowStep;
1997
+
1998
+ type VerificationCategory = VerificationCategoryKind;
1999
+ interface DependencyNode {
2000
+ id: string;
2001
+ label: string;
2002
+ type: string;
2003
+ phase: WorkflowPhase;
2004
+ is_referenced: boolean;
2005
+ cost_category?: string;
2006
+ }
2007
+ interface DependencyEdge {
2008
+ source: string;
2009
+ target: string;
2010
+ label?: string;
2011
+ edge_type: "explicit_depends_on" | "implicit_reference" | "setup_provides";
2012
+ }
2013
+ interface DependencyGraph {
2014
+ nodes: DependencyNode[];
2015
+ edges: DependencyEdge[];
2016
+ }
2017
+ type CostCategory = "network" | "ai_call" | "setup" | "ui_interaction";
2018
+ interface StepCost {
2019
+ step_id: string;
2020
+ name: string;
2021
+ estimated_ms: number;
2022
+ category: CostCategory;
2023
+ has_side_effects: boolean;
2024
+ }
2025
+ interface CostAnnotations {
2026
+ steps: StepCost[];
2027
+ total_estimated_ms: number;
2028
+ }
2029
+ type QualityFindingSeverity = "critical" | "warning" | "info";
2030
+ type QualityFindingCategory = "verification_gap" | "missing_criterion" | "unnecessary_step" | "weak_retry" | "required_flag_violation" | "retry_inconsistency" | "data_contract_violation" | "false_positive_risk";
2031
+ interface QualityFinding {
2032
+ finding_id: string;
2033
+ step_id?: string;
2034
+ severity: QualityFindingSeverity;
2035
+ category: QualityFindingCategory;
2036
+ description: string;
2037
+ suggested_fix?: string;
2038
+ }
2039
+ interface CoverageMatrix {
2040
+ criteria_to_steps: Record<string, string[]>;
2041
+ steps_to_criteria: Record<string, string[]>;
2042
+ uncovered_criteria: string[];
2043
+ unlinked_steps: string[];
2044
+ }
2045
+ interface QualityReport {
2046
+ findings: QualityFinding[];
2047
+ score: number;
2048
+ pass: boolean;
2049
+ coverage_matrix?: CoverageMatrix;
2050
+ }
2051
+
2052
+ interface WorkflowExportManifest {
2053
+ version: string;
2054
+ exported_at: string;
2055
+ app_version: string;
2056
+ content_type: "unified_workflow";
2057
+ }
2058
+ interface WorkflowExport {
2059
+ manifest: WorkflowExportManifest;
2060
+ workflow: UnifiedWorkflow;
2061
+ }
2062
+ interface WorkflowImportResult {
2063
+ workflow: UnifiedWorkflow;
2064
+ overwritten: boolean;
2065
+ original_id: string | null;
2066
+ }
2067
+ interface WorkflowFeatures {
2068
+ hasSetup: boolean;
2069
+ hasVerification: boolean;
2070
+ hasAgentic: boolean;
2071
+ hasCompletion: boolean;
2072
+ hasUiBridge: boolean;
2073
+ showIterationSettings: boolean;
2074
+ hasAiPrompts: boolean;
2075
+ }
2076
+ interface StepTypeInfo {
2077
+ type: string;
2078
+ label: string;
2079
+ description: string;
2080
+ icon: string;
2081
+ color: string;
2082
+ phase: WorkflowPhase;
2083
+ }
2084
+ declare const STEP_TYPES: Record<WorkflowPhase, StepTypeInfo[]>;
2085
+ declare const PHASE_INFO: Record<WorkflowPhase, {
2086
+ label: string;
2087
+ description: string;
2088
+ color: string;
2089
+ }>;
2090
+ declare const DEFAULT_SUMMARY_PROMPT = "Write a one-paragraph summary of all the tasks completed in this workflow. Include what was accomplished, whether the stated goal was achieved, any issues encountered and how they were resolved, and remaining work if the goal was not fully achieved. Be concise but comprehensive.";
2091
+
2092
+ export { type ActionPlan, type ActionPlanExecuteRequest, type ActionPlanResult, type AgenticStep, type ApiAssertion, type ApiContentType, type ApiVariableExtraction, type BaseStep, type BaseStepFields, type CanonicalStep, type CheckType, type CommandMode, type CommandStep, type CompletionStep, type CompositionTemplate, type CostAnnotations, type CostCategory, type CoverageMatrix, DEFAULT_SUMMARY_PROMPT, type DependencyEdge, type DependencyGraph, type DependencyNode, type ElementTarget, type HealthCheckUrl, type HttpMethod, type LogSourceSelection, type ModelOverrideConfig, type ModelOverrides, type MultiStepTemplate, PHASE_INFO, type PlannedAction, type PlannedActionResult, type PlannedActionType, type PlaywrightExecutionMode, type PromptStep, type QualityFinding, type QualityFindingCategory, type QualityFindingSeverity, type QualityReport, type RetryPolicy, type RetrySpec, type RoutingRule, STEP_TYPES, type SetupStep, type SingleStepTemplate, type SkillAuthor, type SkillCategory, type SkillDefinition, type SkillExport, type SkillExportManifest, type SkillImportResult, type SkillOrigin, type SkillParameter, type SkillParameterOption, type SkillRef, type SkillTemplate, type StageCondition, type StageInput, type StageOutput, type StepCost, type StepTypeInfo, type StepTypeName, type TestType, type UiBridgeAction, type UiBridgeStep, type UnifiedStep, type UnifiedWorkflow, type VerificationCategory, type VerificationCategoryKind, type VerificationStep, type WorkflowArchitecture, type WorkflowExport, type WorkflowExportManifest, type WorkflowFeatures, type WorkflowImportResult, type WorkflowPhase, type WorkflowStage, type WorkflowStep };