taphound 0.2.0-dev.1 → 0.2.0-dev.11

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 (447) hide show
  1. package/README.md +49 -149
  2. package/README.zh-CN.md +47 -147
  3. package/assets/skills/taphound-case-suite/SKILL.md +363 -0
  4. package/assets/skills/taphound-case-suite/schemas/base-flow-record.schema.json +22 -0
  5. package/assets/skills/taphound-case-suite/schemas/case-catalog.schema.json +26 -0
  6. package/assets/skills/taphound-case-suite/schemas/case-ledger.schema.json +158 -0
  7. package/assets/skills/taphound-case-suite/schemas/suite-input.schema.json +41 -0
  8. package/assets/skills/taphound-case-suite/schemas/transition.schema.json +61 -0
  9. package/assets/skills/taphound-case-suite/scripts/ledger.mjs +1207 -0
  10. package/assets/skills/taphound-case-suite/templates/base-flow-record.example.json +20 -0
  11. package/assets/skills/taphound-case-suite/templates/suite-input.example.json +27 -0
  12. package/assets/skills/taphound-case-suite/templates/transition.example.json +8 -0
  13. package/assets/skills/taphound-flash/SKILL.md +115 -0
  14. package/assets/skills/taphound-flash/scripts/flash.mjs +585 -0
  15. package/assets/skills/taphound-flash/templates/flash-plan.example.json +15 -0
  16. package/assets/skills/taphound-journey-brief-author/CONTEXT-GUIDE.md +471 -0
  17. package/assets/skills/taphound-journey-brief-author/SKILL.md +494 -0
  18. package/assets/skills/taphound-journey-brief-author/prompts/brief-author-role.md +96 -0
  19. package/assets/skills/taphound-journey-brief-author/prompts/brief-author-role.zh-CN.md +80 -0
  20. package/assets/skills/taphound-journey-brief-author/prompts/context-analyze-project.md +309 -0
  21. package/assets/skills/taphound-journey-brief-author/schemas/context-refresh-result.json +123 -0
  22. package/assets/skills/taphound-journey-brief-author/schemas/project-context-module.json +192 -0
  23. package/assets/skills/taphound-journey-brief-author/schemas/project-context.json +152 -0
  24. package/assets/skills/taphound-journey-brief-author/templates/project-context-module.example.json +58 -0
  25. package/assets/skills/taphound-journey-brief-author/templates/project-context.example.json +51 -0
  26. package/assets/skills/taphound-journey-brief-author/templates/taphound-journey-brief.template.md +63 -0
  27. package/assets/skills/taphound-journey-generator/SKILL.md +500 -0
  28. package/assets/skills/{taphound-ai-journey → taphound-journey-generator}/prompts/check-completion.md +3 -0
  29. package/assets/skills/taphound-journey-generator/prompts/consume-journey-brief.md +52 -0
  30. package/assets/skills/taphound-journey-generator/prompts/generate-step.md +211 -0
  31. package/assets/skills/taphound-journey-generator/prompts/select-flow.md +91 -0
  32. package/assets/skills/taphound-journey-generator/references/bridge.md +35 -0
  33. package/assets/skills/taphound-journey-generator/references/mid-session.md +44 -0
  34. package/assets/skills/taphound-journey-generator/schemas/external-flow.json +37 -0
  35. package/assets/skills/taphound-journey-generator/schemas/flow.json +28 -0
  36. package/assets/skills/taphound-journey-generator/schemas/journey-source.json +25 -0
  37. package/assets/skills/{taphound-ai-journey → taphound-journey-generator}/schemas/observe-output.json +13 -4
  38. package/assets/skills/{taphound-ai-journey → taphound-journey-generator}/schemas/proposed-step-envelope.json +127 -5
  39. package/assets/skills/taphound-journey-generator/scripts/envelope.mjs +561 -0
  40. package/assets/skills/taphound-journey-generator/templates/external-flow.example.json +22 -0
  41. package/assets/skills/taphound-journey-generator/templates/flow.example.json +22 -0
  42. package/assets/skills/taphound-journey-generator/templates/journey-source.example.json +17 -0
  43. package/assets/skills/taphound-journey-generator/templates/taphound-journey-brief.example.md +70 -0
  44. package/assets/skills/taphound-verify-change/SKILL.md +91 -0
  45. package/assets/skills/taphound-verify-change/references/accept.md +38 -0
  46. package/assets/skills/taphound-verify-change/references/preserve.md +349 -0
  47. package/assets/skills/taphound-verify-change/schemas/workflow-manifest.schema.json +295 -0
  48. package/assets/skills/taphound-verify-change/scripts/handoff.mjs +482 -0
  49. package/assets/skills/taphound-verify-change/scripts/ui-refactor.mjs +505 -0
  50. package/dist/adapters/adb/adb-adapter.d.ts +16 -2
  51. package/dist/adapters/adb/adb-adapter.js +199 -0
  52. package/dist/adapters/adb/system-uiautomator-snapshot-provider.d.ts +13 -0
  53. package/dist/adapters/adb/system-uiautomator-snapshot-provider.js +122 -0
  54. package/dist/adapters/adb/ui-automator-parser.d.ts +3 -0
  55. package/dist/adapters/adb/ui-automator-parser.js +160 -0
  56. package/dist/adapters/adb/window-topology-parser.d.ts +2 -0
  57. package/dist/adapters/adb/window-topology-parser.js +101 -0
  58. package/dist/adapters/android-cli/android-cli-adapter.d.ts +16 -8
  59. package/dist/adapters/android-cli/android-cli-adapter.js +137 -15
  60. package/dist/adapters/android-cli/android-cli-snapshot-provider.d.ts +9 -0
  61. package/dist/adapters/android-cli/android-cli-snapshot-provider.js +99 -0
  62. package/dist/adapters/android-cli/layout-parser.js +12 -8
  63. package/dist/adapters/appium/appium-doctor.d.ts +7 -0
  64. package/dist/adapters/appium/appium-doctor.js +128 -0
  65. package/dist/adapters/appium/appium-ui-snapshot-provider.d.ts +34 -0
  66. package/dist/adapters/appium/appium-ui-snapshot-provider.js +240 -0
  67. package/dist/adapters/camera/camera-probe-adapter.d.ts +18 -0
  68. package/dist/adapters/camera/camera-probe-adapter.js +286 -0
  69. package/dist/adapters/filesystem/artifact-store.js +40 -1
  70. package/dist/adapters/filesystem/context-document-writer.d.ts +15 -0
  71. package/dist/adapters/filesystem/context-document-writer.js +112 -0
  72. package/dist/adapters/filesystem/external-flow-registry.d.ts +17 -0
  73. package/dist/adapters/filesystem/external-flow-registry.js +325 -0
  74. package/dist/adapters/filesystem/generation-session-store.d.ts +17 -11
  75. package/dist/adapters/filesystem/generation-session-store.js +281 -855
  76. package/dist/adapters/filesystem/generation-store/session-lock.d.ts +29 -0
  77. package/dist/adapters/filesystem/generation-store/session-lock.js +202 -0
  78. package/dist/adapters/filesystem/generation-store/session-transitions.d.ts +24 -0
  79. package/dist/adapters/filesystem/generation-store/session-transitions.js +340 -0
  80. package/dist/adapters/filesystem/generation-store/store-files.d.ts +50 -0
  81. package/dist/adapters/filesystem/generation-store/store-files.js +363 -0
  82. package/dist/adapters/filesystem/journey-composition-store.d.ts +23 -0
  83. package/dist/adapters/filesystem/journey-composition-store.js +151 -0
  84. package/dist/adapters/filesystem/knowledge-registry.d.ts +12 -0
  85. package/dist/adapters/filesystem/knowledge-registry.js +223 -0
  86. package/dist/adapters/filesystem/project-bound-file.js +3 -5
  87. package/dist/adapters/filesystem/project-file-inspector.d.ts +2 -0
  88. package/dist/adapters/filesystem/project-file-inspector.js +57 -28
  89. package/dist/adapters/filesystem/project-identity-inspector.d.ts +7 -0
  90. package/dist/adapters/filesystem/project-identity-inspector.js +215 -0
  91. package/dist/adapters/filesystem/project-inventory-inspector.d.ts +8 -0
  92. package/dist/adapters/filesystem/project-inventory-inspector.js +93 -0
  93. package/dist/adapters/filesystem/project-module-discoverer.d.ts +6 -0
  94. package/dist/adapters/filesystem/project-module-discoverer.js +158 -0
  95. package/dist/adapters/filesystem/skill-installer.d.ts +7 -2
  96. package/dist/adapters/filesystem/skill-installer.js +40 -11
  97. package/dist/adapters/filesystem/workspace-layout.d.ts +7 -0
  98. package/dist/adapters/filesystem/workspace-layout.js +57 -0
  99. package/dist/adapters/git/node-git-diff.d.ts +17 -0
  100. package/dist/adapters/git/node-git-diff.js +114 -0
  101. package/dist/adapters/process/node-detached-process-launcher.d.ts +6 -0
  102. package/dist/adapters/process/node-detached-process-launcher.js +96 -0
  103. package/dist/adapters/process/node-process-runner.js +11 -2
  104. package/dist/adapters/prompt/inquirer-align-prompt.d.ts +27 -0
  105. package/dist/adapters/prompt/inquirer-align-prompt.js +65 -0
  106. package/dist/adapters/prompt/inquirer-generation-prompt.js +3 -0
  107. package/dist/adapters/prompt/inquirer-recorder-prompt.d.ts +9 -1
  108. package/dist/adapters/prompt/inquirer-recorder-prompt.js +63 -0
  109. package/dist/adapters/runtime/adb-runtime-backend.d.ts +67 -0
  110. package/dist/adapters/runtime/adb-runtime-backend.js +206 -0
  111. package/dist/adapters/runtime/fake-runtime-backend.d.ts +87 -0
  112. package/dist/adapters/runtime/fake-runtime-backend.js +240 -0
  113. package/dist/adapters/runtime/mobile-mcp/mcp-tool-client.d.ts +45 -0
  114. package/dist/adapters/runtime/mobile-mcp/mcp-tool-client.js +153 -0
  115. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-errors.d.ts +23 -0
  116. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-errors.js +39 -0
  117. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-responses.d.ts +20 -0
  118. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-responses.js +180 -0
  119. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-runtime-backend.d.ts +78 -0
  120. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-runtime-backend.js +379 -0
  121. package/dist/adapters/runtime/mobile-mcp/mobile-mcp-tools.d.ts +46 -0
  122. package/dist/adapters/runtime/session-adb-view.d.ts +53 -0
  123. package/dist/adapters/runtime/session-adb-view.js +193 -0
  124. package/dist/adapters/runtime/session-backed-ports.d.ts +21 -0
  125. package/dist/adapters/runtime/session-backed-ports.js +43 -0
  126. package/dist/adapters/runtime/shared-session-runtime-backend.d.ts +12 -0
  127. package/dist/adapters/runtime/shared-session-runtime-backend.js +64 -0
  128. package/dist/adapters/ui/auto-ui-snapshot-provider.d.ts +8 -0
  129. package/dist/adapters/ui/auto-ui-snapshot-provider.js +48 -0
  130. package/dist/adapters/ui/device-layout-temp.d.ts +6 -0
  131. package/dist/adapters/ui/device-layout-temp.js +18 -0
  132. package/dist/adapters/ui/device-ui-environment.d.ts +13 -0
  133. package/dist/adapters/ui/device-ui-environment.js +81 -0
  134. package/dist/adapters/ui/layout-normalization.d.ts +9 -0
  135. package/dist/adapters/ui/layout-normalization.js +44 -0
  136. package/dist/adapters/ui/ui-snapshot-error.d.ts +11 -0
  137. package/dist/adapters/ui/ui-snapshot-error.js +12 -0
  138. package/dist/adapters/ui/ui-snapshot-support.d.ts +15 -0
  139. package/dist/adapters/ui/ui-snapshot-support.js +12 -0
  140. package/dist/application/align/align-service.d.ts +42 -0
  141. package/dist/application/align/align-service.js +106 -0
  142. package/dist/application/assertion/expectation-evaluator.d.ts +18 -5
  143. package/dist/application/assertion/expectation-evaluator.js +156 -18
  144. package/dist/application/assertion/guarded-expectation.d.ts +45 -0
  145. package/dist/application/assertion/guarded-expectation.js +74 -0
  146. package/dist/application/checkpoint/baseline-capturer.d.ts +26 -0
  147. package/dist/application/checkpoint/baseline-capturer.js +163 -0
  148. package/dist/application/checkpoint/baseline-error.d.ts +5 -0
  149. package/dist/application/checkpoint/baseline-error.js +8 -0
  150. package/dist/application/checkpoint/baseline-service.d.ts +31 -0
  151. package/dist/application/checkpoint/baseline-service.js +147 -0
  152. package/dist/application/checkpoint/checkpoint-evaluator.d.ts +35 -0
  153. package/dist/application/checkpoint/checkpoint-evaluator.js +415 -0
  154. package/dist/application/checkpoint/regression-comparator.d.ts +18 -0
  155. package/dist/application/checkpoint/regression-comparator.js +192 -0
  156. package/dist/application/collector/logcat-collector.d.ts +22 -1
  157. package/dist/application/collector/logcat-collector.js +103 -15
  158. package/dist/application/collector/logcat-event.d.ts +8 -0
  159. package/dist/application/collector/logcat-event.js +79 -0
  160. package/dist/application/collector/logcat-stop.d.ts +2 -0
  161. package/dist/application/collector/logcat-stop.js +11 -0
  162. package/dist/application/context/context-generator.d.ts +45 -0
  163. package/dist/application/context/context-generator.js +228 -0
  164. package/dist/application/context/context-loader.d.ts +40 -0
  165. package/dist/application/context/context-loader.js +223 -0
  166. package/dist/application/context/context-refresher.d.ts +59 -0
  167. package/dist/application/context/context-refresher.js +349 -0
  168. package/dist/application/context/context-rehasher.d.ts +36 -0
  169. package/dist/application/context/context-rehasher.js +110 -0
  170. package/dist/application/context/context-validator.d.ts +23 -1
  171. package/dist/application/context/context-validator.js +116 -9
  172. package/dist/application/context/evidence-hash.d.ts +1 -0
  173. package/dist/application/context/evidence-hash.js +125 -0
  174. package/dist/application/context/evidence-match.d.ts +9 -0
  175. package/dist/application/context/evidence-match.js +8 -0
  176. package/dist/application/context/shard-identity.d.ts +2 -0
  177. package/dist/application/context/shard-identity.js +7 -0
  178. package/dist/application/contract/contract-loader.d.ts +25 -0
  179. package/dist/application/contract/contract-loader.js +68 -0
  180. package/dist/application/contract/contract-review.d.ts +25 -0
  181. package/dist/application/contract/contract-review.js +51 -0
  182. package/dist/application/contract/contract-verifier.d.ts +53 -0
  183. package/dist/application/contract/contract-verifier.js +645 -0
  184. package/dist/application/devices/resolve-device-assignments.d.ts +21 -0
  185. package/dist/application/devices/resolve-device-assignments.js +60 -0
  186. package/dist/application/diagnosis/failure-classifier.d.ts +23 -0
  187. package/dist/application/diagnosis/failure-classifier.js +179 -0
  188. package/dist/application/doctor/doctor-service.d.ts +36 -3
  189. package/dist/application/doctor/doctor-service.js +255 -25
  190. package/dist/application/generation/generation-app-preparer.d.ts +20 -0
  191. package/dist/application/generation/generation-app-preparer.js +28 -0
  192. package/dist/application/generation/generation-config-service.d.ts +21 -0
  193. package/dist/application/generation/generation-config-service.js +53 -0
  194. package/dist/application/generation/generation-confirmation-service.d.ts +14 -3
  195. package/dist/application/generation/generation-confirmation-service.js +109 -24
  196. package/dist/application/generation/generation-context-snapshot.d.ts +6 -0
  197. package/dist/application/generation/generation-context-snapshot.js +29 -0
  198. package/dist/application/generation/generation-finalizer.d.ts +15 -9
  199. package/dist/application/generation/generation-finalizer.js +167 -70
  200. package/dist/application/generation/generation-publisher.js +12 -8
  201. package/dist/application/generation/generation-recovery-service.d.ts +35 -0
  202. package/dist/application/generation/generation-recovery-service.js +144 -0
  203. package/dist/application/generation/generation-reopen-service.d.ts +15 -0
  204. package/dist/application/generation/generation-reopen-service.js +37 -0
  205. package/dist/application/generation/generation-replace-service.d.ts +32 -0
  206. package/dist/application/generation/generation-replace-service.js +116 -0
  207. package/dist/application/generation/generation-starter.d.ts +44 -4
  208. package/dist/application/generation/generation-starter.js +175 -8
  209. package/dist/application/generation/generation-step-executor.d.ts +67 -5
  210. package/dist/application/generation/generation-step-executor.js +471 -108
  211. package/dist/application/generation/proposed-step-validator.js +96 -30
  212. package/dist/application/generation/replay-policy-loader.d.ts +16 -0
  213. package/dist/application/generation/replay-policy-loader.js +29 -0
  214. package/dist/application/generation/risk-evaluator.d.ts +4 -1
  215. package/dist/application/generation/risk-evaluator.js +118 -3
  216. package/dist/application/generation/runtime-observer.d.ts +39 -7
  217. package/dist/application/generation/runtime-observer.js +193 -24
  218. package/dist/application/impact/impact-resolver.d.ts +32 -0
  219. package/dist/application/impact/impact-resolver.js +160 -0
  220. package/dist/application/init/init-service.js +26 -13
  221. package/dist/application/interaction/action-executor.d.ts +3 -2
  222. package/dist/application/interaction/action-executor.js +11 -1
  223. package/dist/application/interaction/action-target.d.ts +17 -0
  224. package/dist/application/interaction/action-target.js +40 -0
  225. package/dist/application/interaction/external-step-runner.d.ts +153 -0
  226. package/dist/application/interaction/external-step-runner.js +332 -0
  227. package/dist/application/interaction/fallback-resolver.d.ts +6 -3
  228. package/dist/application/interaction/fallback-resolver.js +7 -5
  229. package/dist/application/interaction/scroll-to-executor.d.ts +17 -3
  230. package/dist/application/interaction/scroll-to-executor.js +118 -36
  231. package/dist/application/journey/external-flow-resolver.d.ts +25 -0
  232. package/dist/application/journey/external-flow-resolver.js +22 -0
  233. package/dist/application/journey/journey-check-service.d.ts +54 -0
  234. package/dist/application/journey/journey-check-service.js +207 -0
  235. package/dist/application/journey/journey-promoter.d.ts +26 -0
  236. package/dist/application/journey/journey-promoter.js +123 -0
  237. package/dist/application/journey/journey-resolver.d.ts +42 -0
  238. package/dist/application/journey/journey-resolver.js +239 -0
  239. package/dist/application/journey/journey-retirer.d.ts +25 -0
  240. package/dist/application/journey/journey-retirer.js +87 -0
  241. package/dist/application/knowledge/anchor-resolver.d.ts +36 -0
  242. package/dist/application/knowledge/anchor-resolver.js +110 -0
  243. package/dist/application/knowledge/knowledge-loader.d.ts +16 -0
  244. package/dist/application/knowledge/knowledge-loader.js +36 -0
  245. package/dist/application/locator/layout-failure-summary.d.ts +2 -0
  246. package/dist/application/locator/layout-failure-summary.js +67 -0
  247. package/dist/application/locator/layout-traversal.d.ts +11 -0
  248. package/dist/application/locator/layout-traversal.js +18 -0
  249. package/dist/application/locator/locator-resolver.d.ts +13 -1
  250. package/dist/application/locator/locator-resolver.js +182 -18
  251. package/dist/application/observe/observe-service.d.ts +20 -0
  252. package/dist/application/observe/observe-service.js +91 -0
  253. package/dist/application/project/project-describer.d.ts +14 -6
  254. package/dist/application/project/project-describer.js +38 -5
  255. package/dist/application/recognition/screen-detector.d.ts +28 -0
  256. package/dist/application/recognition/screen-detector.js +111 -0
  257. package/dist/application/recorder/locator-selector.js +151 -17
  258. package/dist/application/recorder/recorder-service.d.ts +16 -4
  259. package/dist/application/recorder/recorder-service.js +420 -128
  260. package/dist/application/report/report-writer.js +1 -1
  261. package/dist/application/runtime/cold-launch.d.ts +28 -0
  262. package/dist/application/runtime/cold-launch.js +59 -0
  263. package/dist/application/runtime/step-runner.d.ts +49 -4
  264. package/dist/application/runtime/step-runner.js +721 -130
  265. package/dist/application/runtime/verify-runtime.d.ts +57 -7
  266. package/dist/application/runtime/verify-runtime.js +554 -174
  267. package/dist/application/ui/cached-ui-snapshot-provider.d.ts +45 -0
  268. package/dist/application/ui/cached-ui-snapshot-provider.js +111 -0
  269. package/dist/application/ui/ui-snapshot-lifecycle.d.ts +2 -0
  270. package/dist/application/ui/ui-snapshot-lifecycle.js +8 -0
  271. package/dist/application/ui/ui-stability-probe.d.ts +3 -0
  272. package/dist/application/ui/ui-stability-probe.js +8 -0
  273. package/dist/application/wait/idle-advice.d.ts +6 -0
  274. package/dist/application/wait/idle-advice.js +27 -0
  275. package/dist/application/wait/idle-profiles.d.ts +15 -0
  276. package/dist/application/wait/idle-profiles.js +75 -0
  277. package/dist/application/wait/idle-waiter.d.ts +28 -4
  278. package/dist/application/wait/idle-waiter.js +186 -15
  279. package/dist/cli/commands/align.d.ts +3 -0
  280. package/dist/cli/commands/align.js +124 -0
  281. package/dist/cli/commands/baseline.d.ts +3 -0
  282. package/dist/cli/commands/baseline.js +130 -0
  283. package/dist/cli/commands/context.js +300 -27
  284. package/dist/cli/commands/contract.d.ts +3 -0
  285. package/dist/cli/commands/contract.js +120 -0
  286. package/dist/cli/commands/doctor.js +16 -9
  287. package/dist/cli/commands/failure.d.ts +3 -0
  288. package/dist/cli/commands/failure.js +63 -0
  289. package/dist/cli/commands/generation/lifecycle-commands.d.ts +5 -0
  290. package/dist/cli/commands/generation/lifecycle-commands.js +211 -0
  291. package/dist/cli/commands/generation/session-commands.d.ts +11 -0
  292. package/dist/cli/commands/generation/session-commands.js +472 -0
  293. package/dist/cli/commands/generation/shared.d.ts +1414 -0
  294. package/dist/cli/commands/generation/shared.js +291 -0
  295. package/dist/cli/commands/generation/step-commands.d.ts +8 -0
  296. package/dist/cli/commands/generation/step-commands.js +315 -0
  297. package/dist/cli/commands/generation.js +10 -507
  298. package/dist/cli/commands/impact.d.ts +3 -0
  299. package/dist/cli/commands/impact.js +87 -0
  300. package/dist/cli/commands/init.js +13 -6
  301. package/dist/cli/commands/journey.d.ts +3 -0
  302. package/dist/cli/commands/journey.js +382 -0
  303. package/dist/cli/commands/knowledge.d.ts +3 -0
  304. package/dist/cli/commands/knowledge.js +93 -0
  305. package/dist/cli/commands/observe.d.ts +3 -0
  306. package/dist/cli/commands/observe.js +127 -0
  307. package/dist/cli/commands/project.js +2 -1
  308. package/dist/cli/commands/record.js +18 -5
  309. package/dist/cli/commands/verify.js +273 -63
  310. package/dist/cli/dependencies.d.ts +125 -1
  311. package/dist/cli/dependencies.js +450 -51
  312. package/dist/cli/diff-verification.d.ts +41 -0
  313. package/dist/cli/diff-verification.js +192 -0
  314. package/dist/cli/main.js +49 -1
  315. package/dist/cli/output.d.ts +5 -3
  316. package/dist/cli/output.js +12 -0
  317. package/dist/cli/program.js +19 -1
  318. package/dist/cli/project-root.d.ts +1 -0
  319. package/dist/cli/project-root.js +6 -0
  320. package/dist/cli/runtime-selection.d.ts +22 -0
  321. package/dist/cli/runtime-selection.js +92 -0
  322. package/dist/cli/version.d.ts +1 -0
  323. package/dist/cli/version.js +14 -0
  324. package/dist/cli/workspace-guard.d.ts +2 -0
  325. package/dist/cli/workspace-guard.js +3 -0
  326. package/dist/domain/binding-reference.d.ts +4 -0
  327. package/dist/domain/binding-reference.js +23 -0
  328. package/dist/domain/checkpoint.d.ts +404 -0
  329. package/dist/domain/checkpoint.js +297 -0
  330. package/dist/domain/config.d.ts +107 -1
  331. package/dist/domain/config.js +52 -6
  332. package/dist/domain/contract.d.ts +413 -0
  333. package/dist/domain/contract.js +196 -0
  334. package/dist/domain/external-flow.d.ts +493 -0
  335. package/dist/domain/external-flow.js +15 -0
  336. package/dist/domain/failure-classification.d.ts +176 -0
  337. package/dist/domain/failure-classification.js +169 -0
  338. package/dist/domain/failure.d.ts +2 -1
  339. package/dist/domain/failure.js +123 -0
  340. package/dist/domain/generation.d.ts +1671 -132
  341. package/dist/domain/generation.js +202 -13
  342. package/dist/domain/geometry.d.ts +13 -0
  343. package/dist/domain/geometry.js +16 -0
  344. package/dist/domain/impact.d.ts +71 -0
  345. package/dist/domain/impact.js +76 -0
  346. package/dist/domain/init.d.ts +12 -4
  347. package/dist/domain/init.js +24 -18
  348. package/dist/domain/journey-composition.d.ts +2285 -0
  349. package/dist/domain/journey-composition.js +85 -0
  350. package/dist/domain/journey-lifecycle.d.ts +10 -0
  351. package/dist/domain/journey-lifecycle.js +9 -0
  352. package/dist/domain/journey.d.ts +2419 -212
  353. package/dist/domain/journey.js +384 -14
  354. package/dist/domain/knowledge.d.ts +165 -0
  355. package/dist/domain/knowledge.js +188 -0
  356. package/dist/domain/layout.d.ts +34 -5
  357. package/dist/domain/layout.js +64 -6
  358. package/dist/domain/locator-evidence.d.ts +3 -0
  359. package/dist/domain/locator-evidence.js +36 -0
  360. package/dist/domain/logcat-event.d.ts +54 -0
  361. package/dist/domain/logcat-event.js +40 -0
  362. package/dist/domain/observation.d.ts +33 -0
  363. package/dist/domain/observation.js +18 -0
  364. package/dist/domain/project-context.d.ts +219 -1
  365. package/dist/domain/project-context.js +209 -6
  366. package/dist/domain/proposed-step.d.ts +340 -60
  367. package/dist/domain/proposed-step.js +23 -3
  368. package/dist/domain/report.d.ts +1455 -28
  369. package/dist/domain/report.js +211 -14
  370. package/dist/domain/runtime-snapshot.d.ts +58 -1
  371. package/dist/domain/runtime-snapshot.js +14 -3
  372. package/dist/domain/runtime.d.ts +50 -0
  373. package/dist/domain/runtime.js +36 -0
  374. package/dist/domain/system-app-profiles.d.ts +6 -0
  375. package/dist/domain/system-app-profiles.js +43 -0
  376. package/dist/domain/ui-backend.d.ts +28 -0
  377. package/dist/domain/ui-backend.js +33 -0
  378. package/dist/domain/ui-cache.d.ts +11 -0
  379. package/dist/domain/ui-cache.js +10 -0
  380. package/dist/domain/window-hierarchy.d.ts +84 -0
  381. package/dist/domain/window-hierarchy.js +172 -0
  382. package/dist/domain/workflow-manifest.d.ts +77 -0
  383. package/dist/domain/workflow-manifest.js +136 -0
  384. package/dist/domain/workspace.d.ts +28 -0
  385. package/dist/domain/workspace.js +72 -0
  386. package/dist/ports/adb.d.ts +34 -1
  387. package/dist/ports/align-prompt.d.ts +11 -0
  388. package/dist/ports/align-prompt.js +6 -0
  389. package/dist/ports/anchor-resolver.d.ts +30 -0
  390. package/dist/ports/anchor-resolver.js +1 -0
  391. package/dist/ports/annotated-screen-resolver.d.ts +4 -0
  392. package/dist/ports/annotated-screen-resolver.js +1 -0
  393. package/dist/ports/camera-probe.d.ts +23 -0
  394. package/dist/ports/camera-probe.js +8 -0
  395. package/dist/ports/context-document-writer.d.ts +24 -0
  396. package/dist/ports/context-document-writer.js +1 -0
  397. package/dist/ports/detached-process-launcher.d.ts +12 -0
  398. package/dist/ports/detached-process-launcher.js +1 -0
  399. package/dist/ports/external-flow-registry.d.ts +37 -0
  400. package/dist/ports/external-flow-registry.js +1 -0
  401. package/dist/ports/generation-prompt.d.ts +2 -1
  402. package/dist/ports/generation-session-store.d.ts +12 -2
  403. package/dist/ports/git-diff.d.ts +9 -0
  404. package/dist/ports/git-diff.js +1 -0
  405. package/dist/ports/journey-composition-store.d.ts +17 -0
  406. package/dist/ports/journey-composition-store.js +1 -0
  407. package/dist/ports/knowledge-registry.d.ts +20 -0
  408. package/dist/ports/knowledge-registry.js +1 -0
  409. package/dist/ports/process-runner.d.ts +7 -0
  410. package/dist/ports/project-file-inspector.d.ts +1 -0
  411. package/dist/ports/project-identity-inspector.d.ts +24 -0
  412. package/dist/ports/project-identity-inspector.js +1 -0
  413. package/dist/ports/project-inventory-inspector.d.ts +21 -0
  414. package/dist/ports/project-inventory-inspector.js +1 -0
  415. package/dist/ports/project-module-discoverer.d.ts +26 -0
  416. package/dist/ports/project-module-discoverer.js +1 -0
  417. package/dist/ports/recorder-prompt.d.ts +10 -1
  418. package/dist/ports/runtime-backend.d.ts +89 -0
  419. package/dist/ports/runtime-backend.js +13 -0
  420. package/dist/ports/runtime-capability.d.ts +12 -0
  421. package/dist/ports/runtime-capability.js +20 -0
  422. package/dist/ports/runtime-session-ports.d.ts +25 -0
  423. package/dist/ports/runtime-session-ports.js +1 -0
  424. package/dist/ports/screenshot.d.ts +11 -0
  425. package/dist/ports/screenshot.js +1 -0
  426. package/dist/ports/skill-installer.d.ts +2 -2
  427. package/dist/ports/ui-snapshot.d.ts +35 -0
  428. package/dist/ports/ui-snapshot.js +1 -0
  429. package/dist/ports/ui-stability.d.ts +19 -0
  430. package/dist/ports/ui-stability.js +1 -0
  431. package/dist/ports/workspace-layout.d.ts +4 -0
  432. package/dist/ports/workspace-layout.js +1 -0
  433. package/dist/shared/errors.d.ts +2 -0
  434. package/dist/shared/errors.js +22 -0
  435. package/dist/shared/paths.d.ts +2 -0
  436. package/dist/shared/paths.js +24 -0
  437. package/dist/shared/strings.d.ts +2 -0
  438. package/dist/shared/strings.js +16 -0
  439. package/package.json +6 -1
  440. package/assets/skills/taphound-ai-journey/GUIDE.md +0 -862
  441. package/assets/skills/taphound-ai-journey/SKILL.md +0 -377
  442. package/assets/skills/taphound-ai-journey/prompts/analyze-project.md +0 -526
  443. package/assets/skills/taphound-ai-journey/prompts/generate-step.md +0 -109
  444. package/assets/skills/taphound-ai-journey/schemas/project-context.json +0 -81
  445. package/assets/skills/taphound-ai-journey/templates/project-context.example.json +0 -49
  446. package/dist/ports/android-cli.d.ts +0 -21
  447. /package/dist/{ports/android-cli.js → adapters/runtime/mobile-mcp/mobile-mcp-tools.js} +0 -0
@@ -1,14 +1,20 @@
1
1
  import { z } from "zod";
2
2
  export declare const ReportFailureSchema: z.ZodObject<{
3
3
  code: z.ZodEnum<{
4
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
5
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
6
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
4
7
  CONFIG_INVALID: "CONFIG_INVALID";
5
- APP_CRASHED: "APP_CRASHED";
6
8
  ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
7
9
  DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
10
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
8
11
  APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
9
12
  APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
13
+ APP_CRASHED: "APP_CRASHED";
10
14
  LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
11
15
  LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
16
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
17
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
12
18
  SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
13
19
  ACTION_FAILED: "ACTION_FAILED";
14
20
  IDLE_TIMEOUT: "IDLE_TIMEOUT";
@@ -17,6 +23,57 @@ export declare const ReportFailureSchema: z.ZodObject<{
17
23
  EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
18
24
  EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
19
25
  EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
26
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
27
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
28
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
29
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
30
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
31
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
32
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
33
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
34
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
35
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
36
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
37
+ CONTEXT_INVALID: "CONTEXT_INVALID";
38
+ CONTEXT_STALE: "CONTEXT_STALE";
39
+ BRIEF_INVALID: "BRIEF_INVALID";
40
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
41
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
42
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
43
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
44
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
45
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
46
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
47
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
48
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
49
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
50
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
51
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
52
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
53
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
54
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
55
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
56
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
57
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
58
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
59
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
60
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
61
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
62
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
63
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
64
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
65
+ CONTRACT_INVALID: "CONTRACT_INVALID";
66
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
67
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
68
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
69
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
70
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
71
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
72
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
73
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
74
+ BASELINE_EMPTY: "BASELINE_EMPTY";
75
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
76
+ GIT_REF_INVALID: "GIT_REF_INVALID";
20
77
  COLLECTION_FAILED: "COLLECTION_FAILED";
21
78
  INTERNAL_ERROR: "INTERNAL_ERROR";
22
79
  }>;
@@ -34,26 +91,57 @@ export declare const StepReportSchema: z.ZodObject<{
34
91
  scrollTo: "scrollTo";
35
92
  back: "back";
36
93
  wait: "wait";
94
+ bridge: "bridge";
37
95
  }>;
38
96
  status: z.ZodEnum<{
39
- notRun: "notRun";
40
97
  passed: "passed";
41
98
  failed: "failed";
99
+ notRun: "notRun";
100
+ manualRequired: "manualRequired";
42
101
  }>;
102
+ device: z.ZodOptional<z.ZodString>;
103
+ replayMode: z.ZodOptional<z.ZodEnum<{
104
+ auto: "auto";
105
+ manual: "manual";
106
+ }>>;
43
107
  startedAtMs: z.ZodNumber;
44
108
  finishedAtMs: z.ZodNumber;
45
109
  durationMs: z.ZodNumber;
46
110
  locator: z.ZodOptional<z.ZodObject<{
47
111
  status: z.ZodEnum<{
48
- notRun: "notRun";
49
112
  failed: "failed";
113
+ notRun: "notRun";
50
114
  found: "found";
51
115
  }>;
52
116
  matchedBy: z.ZodOptional<z.ZodEnum<{
117
+ anchor: "anchor";
53
118
  resourceId: "resourceId";
54
119
  text: "text";
55
120
  contentDescription: "contentDescription";
56
121
  }>>;
122
+ requested: z.ZodOptional<z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>>;
123
+ anchorId: z.ZodOptional<z.ZodString>;
124
+ anchor: z.ZodOptional<z.ZodObject<{
125
+ status: z.ZodEnum<{
126
+ failed: "failed";
127
+ resolved: "resolved";
128
+ locatorFallback: "locatorFallback";
129
+ }>;
130
+ resolvedBy: z.ZodOptional<z.ZodObject<{
131
+ kind: z.ZodEnum<{
132
+ resourceId: "resourceId";
133
+ contentDescription: "contentDescription";
134
+ composeSemantics: "composeSemantics";
135
+ visibleText: "visibleText";
136
+ visualMatch: "visualMatch";
137
+ }>;
138
+ confidence: z.ZodEnum<{
139
+ fallback: "fallback";
140
+ primary: "primary";
141
+ }>;
142
+ }, z.core.$strict>>;
143
+ message: z.ZodOptional<z.ZodString>;
144
+ }, z.core.$strict>>;
57
145
  fallbackUsed: z.ZodBoolean;
58
146
  fallbackLabel: z.ZodOptional<z.ZodString>;
59
147
  annotatedScreenshotPath: z.ZodOptional<z.ZodString>;
@@ -63,10 +151,27 @@ export declare const StepReportSchema: z.ZodObject<{
63
151
  status: z.ZodEnum<{
64
152
  cancelled: "cancelled";
65
153
  notRun: "notRun";
66
- stable: "stable";
67
154
  timeout: "timeout";
155
+ stable: "stable";
68
156
  }>;
69
157
  polls: z.ZodNumber;
158
+ durationMs: z.ZodOptional<z.ZodNumber>;
159
+ samplingDurationMs: z.ZodOptional<z.ZodNumber>;
160
+ strategy: z.ZodOptional<z.ZodEnum<{
161
+ frameStats: "frameStats";
162
+ hybrid: "hybrid";
163
+ layoutDiff: "layoutDiff";
164
+ structural: "structural";
165
+ }>>;
166
+ backend: z.ZodOptional<z.ZodEnum<{
167
+ uiautomator: "uiautomator";
168
+ androidCli: "androidCli";
169
+ gfxFrameStats: "gfxFrameStats";
170
+ mobileMcp: "mobileMcp";
171
+ }>>;
172
+ backendId: z.ZodOptional<z.ZodString>;
173
+ fallbackUsed: z.ZodOptional<z.ZodBoolean>;
174
+ frameActivityDetected: z.ZodOptional<z.ZodBoolean>;
70
175
  lastDiff: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
71
176
  }, z.core.$strict>>;
72
177
  scroll: z.ZodOptional<z.ZodObject<{
@@ -76,18 +181,20 @@ export declare const StepReportSchema: z.ZodObject<{
76
181
  activity: z.ZodOptional<z.ZodObject<{
77
182
  before: z.ZodObject<{
78
183
  status: z.ZodEnum<{
79
- notRun: "notRun";
80
184
  passed: "passed";
81
185
  failed: "failed";
186
+ notRun: "notRun";
187
+ manualRequired: "manualRequired";
82
188
  }>;
83
189
  expected: z.ZodString;
84
190
  actual: z.ZodOptional<z.ZodString>;
85
191
  }, z.core.$strict>;
86
192
  after: z.ZodObject<{
87
193
  status: z.ZodEnum<{
88
- notRun: "notRun";
89
194
  passed: "passed";
90
195
  failed: "failed";
196
+ notRun: "notRun";
197
+ manualRequired: "manualRequired";
91
198
  }>;
92
199
  expected: z.ZodString;
93
200
  actual: z.ZodOptional<z.ZodString>;
@@ -98,21 +205,29 @@ export declare const StepReportSchema: z.ZodObject<{
98
205
  activity: "activity";
99
206
  logcat: "logcat";
100
207
  element: "element";
208
+ logcatEvent: "logcatEvent";
101
209
  }>;
102
210
  status: z.ZodEnum<{
103
- notRun: "notRun";
104
211
  passed: "passed";
105
212
  failed: "failed";
213
+ notRun: "notRun";
214
+ manualRequired: "manualRequired";
106
215
  }>;
107
216
  code: z.ZodOptional<z.ZodEnum<{
217
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
218
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
219
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
108
220
  CONFIG_INVALID: "CONFIG_INVALID";
109
- APP_CRASHED: "APP_CRASHED";
110
221
  ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
111
222
  DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
223
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
112
224
  APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
113
225
  APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
226
+ APP_CRASHED: "APP_CRASHED";
114
227
  LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
115
228
  LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
229
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
230
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
116
231
  SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
117
232
  ACTION_FAILED: "ACTION_FAILED";
118
233
  IDLE_TIMEOUT: "IDLE_TIMEOUT";
@@ -121,20 +236,317 @@ export declare const StepReportSchema: z.ZodObject<{
121
236
  EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
122
237
  EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
123
238
  EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
239
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
240
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
241
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
242
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
243
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
244
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
245
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
246
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
247
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
248
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
249
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
250
+ CONTEXT_INVALID: "CONTEXT_INVALID";
251
+ CONTEXT_STALE: "CONTEXT_STALE";
252
+ BRIEF_INVALID: "BRIEF_INVALID";
253
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
254
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
255
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
256
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
257
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
258
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
259
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
260
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
261
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
262
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
263
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
264
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
265
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
266
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
267
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
268
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
269
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
270
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
271
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
272
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
273
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
274
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
275
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
276
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
277
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
278
+ CONTRACT_INVALID: "CONTRACT_INVALID";
279
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
280
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
281
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
282
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
283
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
284
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
285
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
286
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
287
+ BASELINE_EMPTY: "BASELINE_EMPTY";
288
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
289
+ GIT_REF_INVALID: "GIT_REF_INVALID";
124
290
  COLLECTION_FAILED: "COLLECTION_FAILED";
125
291
  INTERNAL_ERROR: "INTERNAL_ERROR";
126
292
  }>>;
127
293
  message: z.ZodOptional<z.ZodString>;
294
+ logcatEvent: z.ZodOptional<z.ZodObject<{
295
+ matchedCount: z.ZodNumber;
296
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
297
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
298
+ from: z.ZodLiteral<"stepStart">;
299
+ }, z.core.$strict>, z.ZodObject<{
300
+ from: z.ZodLiteral<"runStart">;
301
+ }, z.core.$strict>, z.ZodObject<{
302
+ from: z.ZodLiteral<"marker">;
303
+ markerId: z.ZodString;
304
+ }, z.core.$strict>], "from">;
305
+ startedAtMs: z.ZodNumber;
306
+ requestErrorClass: z.ZodOptional<z.ZodEnum<{
307
+ client: "client";
308
+ auth: "auth";
309
+ network: "network";
310
+ server: "server";
311
+ }>>;
312
+ }, z.core.$strict>>;
313
+ capture: z.ZodOptional<z.ZodObject<{
314
+ name: z.ZodString;
315
+ valueType: z.ZodEnum<{
316
+ string: "string";
317
+ integer: "integer";
318
+ identifier: "identifier";
319
+ }>;
320
+ length: z.ZodNumber;
321
+ sourceStepIndex: z.ZodNumber;
322
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
323
+ from: z.ZodLiteral<"stepStart">;
324
+ }, z.core.$strict>, z.ZodObject<{
325
+ from: z.ZodLiteral<"runStart">;
326
+ }, z.core.$strict>, z.ZodObject<{
327
+ from: z.ZodLiteral<"marker">;
328
+ markerId: z.ZodString;
329
+ }, z.core.$strict>], "from">;
330
+ startedAtMs: z.ZodNumber;
331
+ evidenceSha256: z.ZodString;
332
+ }, z.core.$strict>>;
333
+ }, z.core.$strict>>;
334
+ marker: z.ZodOptional<z.ZodObject<{
335
+ id: z.ZodString;
336
+ startedAtMs: z.ZodNumber;
128
337
  }, z.core.$strict>>;
129
338
  logcatPath: z.ZodOptional<z.ZodString>;
130
339
  }, z.core.$strict>;
131
- export declare const TapHoundReportSchema: z.ZodObject<{
132
- schemaVersion: z.ZodLiteral<2>;
340
+ export declare const CheckpointConditionReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
341
+ kind: z.ZodLiteral<"activity">;
342
+ status: z.ZodEnum<{
343
+ passed: "passed";
344
+ failed: "failed";
345
+ unresolved: "unresolved";
346
+ }>;
347
+ expected: z.ZodString;
348
+ actual: z.ZodOptional<z.ZodString>;
349
+ message: z.ZodOptional<z.ZodString>;
350
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
351
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
352
+ evidenceRef: z.ZodOptional<z.ZodString>;
353
+ }, z.core.$strict>, z.ZodObject<{
354
+ kind: z.ZodLiteral<"screen">;
355
+ status: z.ZodEnum<{
356
+ passed: "passed";
357
+ failed: "failed";
358
+ unresolved: "unresolved";
359
+ }>;
360
+ expected: z.ZodString;
361
+ actual: z.ZodOptional<z.ZodString>;
362
+ message: z.ZodOptional<z.ZodString>;
363
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
364
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
365
+ evidenceRef: z.ZodOptional<z.ZodString>;
366
+ }, z.core.$strict>, z.ZodObject<{
367
+ kind: z.ZodEnum<{
368
+ visibleElement: "visibleElement";
369
+ absentElement: "absentElement";
370
+ }>;
371
+ status: z.ZodEnum<{
372
+ passed: "passed";
373
+ failed: "failed";
374
+ unresolved: "unresolved";
375
+ }>;
376
+ locator: z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>;
377
+ message: z.ZodOptional<z.ZodString>;
378
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
379
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
380
+ evidenceRef: z.ZodOptional<z.ZodString>;
381
+ }, z.core.$strict>, z.ZodObject<{
382
+ kind: z.ZodLiteral<"logcatEvent">;
383
+ status: z.ZodEnum<{
384
+ passed: "passed";
385
+ failed: "failed";
386
+ unresolved: "unresolved";
387
+ }>;
388
+ expect: z.ZodObject<{
389
+ type: z.ZodLiteral<"logcatEvent">;
390
+ window: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
391
+ from: z.ZodLiteral<"stepStart">;
392
+ }, z.core.$strict>, z.ZodObject<{
393
+ from: z.ZodLiteral<"runStart">;
394
+ }, z.core.$strict>, z.ZodObject<{
395
+ from: z.ZodLiteral<"marker">;
396
+ markerId: z.ZodString;
397
+ }, z.core.$strict>], "from">>;
398
+ tag: z.ZodString;
399
+ capture: z.ZodOptional<z.ZodObject<{
400
+ name: z.ZodString;
401
+ field: z.ZodOptional<z.ZodString>;
402
+ group: z.ZodOptional<z.ZodLiteral<"correlation">>;
403
+ valueType: z.ZodEnum<{
404
+ string: "string";
405
+ integer: "integer";
406
+ identifier: "identifier";
407
+ }>;
408
+ }, z.core.$strict>>;
409
+ correlation: z.ZodOptional<z.ZodObject<{
410
+ key: z.ZodString;
411
+ value: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodString]>;
412
+ }, z.core.$strict>>;
413
+ event: z.ZodString;
414
+ fields: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
415
+ unique: z.ZodDefault<z.ZodLiteral<true>>;
416
+ }, z.core.$strict>;
417
+ matchedCount: z.ZodNumber;
418
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
419
+ startedAtMs: z.ZodNumber;
420
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
421
+ evidenceRef: z.ZodOptional<z.ZodString>;
422
+ message: z.ZodOptional<z.ZodString>;
423
+ }, z.core.$strict>], "kind">;
424
+ export declare const CheckpointReportSchema: z.ZodObject<{
425
+ id: z.ZodString;
426
+ stepIndex: z.ZodOptional<z.ZodNumber>;
427
+ status: z.ZodEnum<{
428
+ passed: "passed";
429
+ failed: "failed";
430
+ unresolved: "unresolved";
431
+ }>;
432
+ conditions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
433
+ kind: z.ZodLiteral<"activity">;
434
+ status: z.ZodEnum<{
435
+ passed: "passed";
436
+ failed: "failed";
437
+ unresolved: "unresolved";
438
+ }>;
439
+ expected: z.ZodString;
440
+ actual: z.ZodOptional<z.ZodString>;
441
+ message: z.ZodOptional<z.ZodString>;
442
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
443
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
444
+ evidenceRef: z.ZodOptional<z.ZodString>;
445
+ }, z.core.$strict>, z.ZodObject<{
446
+ kind: z.ZodLiteral<"screen">;
447
+ status: z.ZodEnum<{
448
+ passed: "passed";
449
+ failed: "failed";
450
+ unresolved: "unresolved";
451
+ }>;
452
+ expected: z.ZodString;
453
+ actual: z.ZodOptional<z.ZodString>;
454
+ message: z.ZodOptional<z.ZodString>;
455
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
456
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
457
+ evidenceRef: z.ZodOptional<z.ZodString>;
458
+ }, z.core.$strict>, z.ZodObject<{
459
+ kind: z.ZodEnum<{
460
+ visibleElement: "visibleElement";
461
+ absentElement: "absentElement";
462
+ }>;
463
+ status: z.ZodEnum<{
464
+ passed: "passed";
465
+ failed: "failed";
466
+ unresolved: "unresolved";
467
+ }>;
468
+ locator: z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>;
469
+ message: z.ZodOptional<z.ZodString>;
470
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
471
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
472
+ evidenceRef: z.ZodOptional<z.ZodString>;
473
+ }, z.core.$strict>, z.ZodObject<{
474
+ kind: z.ZodLiteral<"logcatEvent">;
475
+ status: z.ZodEnum<{
476
+ passed: "passed";
477
+ failed: "failed";
478
+ unresolved: "unresolved";
479
+ }>;
480
+ expect: z.ZodObject<{
481
+ type: z.ZodLiteral<"logcatEvent">;
482
+ window: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
483
+ from: z.ZodLiteral<"stepStart">;
484
+ }, z.core.$strict>, z.ZodObject<{
485
+ from: z.ZodLiteral<"runStart">;
486
+ }, z.core.$strict>, z.ZodObject<{
487
+ from: z.ZodLiteral<"marker">;
488
+ markerId: z.ZodString;
489
+ }, z.core.$strict>], "from">>;
490
+ tag: z.ZodString;
491
+ capture: z.ZodOptional<z.ZodObject<{
492
+ name: z.ZodString;
493
+ field: z.ZodOptional<z.ZodString>;
494
+ group: z.ZodOptional<z.ZodLiteral<"correlation">>;
495
+ valueType: z.ZodEnum<{
496
+ string: "string";
497
+ integer: "integer";
498
+ identifier: "identifier";
499
+ }>;
500
+ }, z.core.$strict>>;
501
+ correlation: z.ZodOptional<z.ZodObject<{
502
+ key: z.ZodString;
503
+ value: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodString]>;
504
+ }, z.core.$strict>>;
505
+ event: z.ZodString;
506
+ fields: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
507
+ unique: z.ZodDefault<z.ZodLiteral<true>>;
508
+ }, z.core.$strict>;
509
+ matchedCount: z.ZodNumber;
510
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
511
+ startedAtMs: z.ZodNumber;
512
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
513
+ evidenceRef: z.ZodOptional<z.ZodString>;
514
+ message: z.ZodOptional<z.ZodString>;
515
+ }, z.core.$strict>], "kind">>;
516
+ }, z.core.$strict>;
517
+ export declare const TapHoundReportV4Schema: z.ZodObject<{
518
+ environment: z.ZodObject<{
519
+ devices: z.ZodArray<z.ZodObject<{
520
+ role: z.ZodString;
521
+ deviceSerial: z.ZodString;
522
+ uiBackend: z.ZodOptional<z.ZodObject<{
523
+ id: z.ZodEnum<{
524
+ "system-uiautomator": "system-uiautomator";
525
+ "android-cli": "android-cli";
526
+ "appium-uiautomator2": "appium-uiautomator2";
527
+ "mobile-mcp": "mobile-mcp";
528
+ }>;
529
+ adapterVersion: z.ZodString;
530
+ engineVersion: z.ZodOptional<z.ZodString>;
531
+ configSha256: z.ZodString;
532
+ }, z.core.$strict>>;
533
+ uiCache: z.ZodOptional<z.ZodObject<{
534
+ hits: z.ZodNumber;
535
+ misses: z.ZodNumber;
536
+ stale: z.ZodNumber;
537
+ relearns: z.ZodNumber;
538
+ capturesSaved: z.ZodNumber;
539
+ validationDurationMs: z.ZodNumber;
540
+ }, z.core.$strict>>;
541
+ }, z.core.$strict>>;
542
+ tools: z.ZodRecord<z.ZodString, z.ZodString>;
543
+ }, z.core.$strict>;
133
544
  runId: z.ZodString;
134
545
  status: z.ZodEnum<{
135
546
  error: "error";
136
547
  passed: "passed";
137
548
  failed: "failed";
549
+ manualRequired: "manualRequired";
138
550
  }>;
139
551
  startedAt: z.ZodString;
140
552
  finishedAt: z.ZodString;
@@ -148,35 +560,663 @@ export declare const TapHoundReportSchema: z.ZodObject<{
148
560
  name: z.ZodString;
149
561
  sha256: z.ZodString;
150
562
  }, z.core.$strict>;
563
+ layers: z.ZodObject<{
564
+ run: z.ZodEnum<{
565
+ passed: "passed";
566
+ failed: "failed";
567
+ notRun: "notRun";
568
+ manualRequired: "manualRequired";
569
+ }>;
570
+ structural: z.ZodEnum<{
571
+ passed: "passed";
572
+ failed: "failed";
573
+ notRun: "notRun";
574
+ manualRequired: "manualRequired";
575
+ }>;
576
+ activityCheckpoint: z.ZodEnum<{
577
+ passed: "passed";
578
+ failed: "failed";
579
+ notRun: "notRun";
580
+ manualRequired: "manualRequired";
581
+ }>;
582
+ explicitExpect: z.ZodEnum<{
583
+ passed: "passed";
584
+ failed: "failed";
585
+ notRun: "notRun";
586
+ manualRequired: "manualRequired";
587
+ }>;
588
+ collection: z.ZodEnum<{
589
+ passed: "passed";
590
+ failed: "failed";
591
+ notRun: "notRun";
592
+ manualRequired: "manualRequired";
593
+ }>;
594
+ }, z.core.$strict>;
595
+ steps: z.ZodArray<z.ZodObject<{
596
+ index: z.ZodNumber;
597
+ action: z.ZodEnum<{
598
+ swipe: "swipe";
599
+ click: "click";
600
+ longClick: "longClick";
601
+ inputText: "inputText";
602
+ scrollTo: "scrollTo";
603
+ back: "back";
604
+ wait: "wait";
605
+ bridge: "bridge";
606
+ }>;
607
+ status: z.ZodEnum<{
608
+ passed: "passed";
609
+ failed: "failed";
610
+ notRun: "notRun";
611
+ manualRequired: "manualRequired";
612
+ }>;
613
+ device: z.ZodOptional<z.ZodString>;
614
+ replayMode: z.ZodOptional<z.ZodEnum<{
615
+ auto: "auto";
616
+ manual: "manual";
617
+ }>>;
618
+ startedAtMs: z.ZodNumber;
619
+ finishedAtMs: z.ZodNumber;
620
+ durationMs: z.ZodNumber;
621
+ locator: z.ZodOptional<z.ZodObject<{
622
+ status: z.ZodEnum<{
623
+ failed: "failed";
624
+ notRun: "notRun";
625
+ found: "found";
626
+ }>;
627
+ matchedBy: z.ZodOptional<z.ZodEnum<{
628
+ anchor: "anchor";
629
+ resourceId: "resourceId";
630
+ text: "text";
631
+ contentDescription: "contentDescription";
632
+ }>>;
633
+ requested: z.ZodOptional<z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>>;
634
+ anchorId: z.ZodOptional<z.ZodString>;
635
+ anchor: z.ZodOptional<z.ZodObject<{
636
+ status: z.ZodEnum<{
637
+ failed: "failed";
638
+ resolved: "resolved";
639
+ locatorFallback: "locatorFallback";
640
+ }>;
641
+ resolvedBy: z.ZodOptional<z.ZodObject<{
642
+ kind: z.ZodEnum<{
643
+ resourceId: "resourceId";
644
+ contentDescription: "contentDescription";
645
+ composeSemantics: "composeSemantics";
646
+ visibleText: "visibleText";
647
+ visualMatch: "visualMatch";
648
+ }>;
649
+ confidence: z.ZodEnum<{
650
+ fallback: "fallback";
651
+ primary: "primary";
652
+ }>;
653
+ }, z.core.$strict>>;
654
+ message: z.ZodOptional<z.ZodString>;
655
+ }, z.core.$strict>>;
656
+ fallbackUsed: z.ZodBoolean;
657
+ fallbackLabel: z.ZodOptional<z.ZodString>;
658
+ annotatedScreenshotPath: z.ZodOptional<z.ZodString>;
659
+ message: z.ZodOptional<z.ZodString>;
660
+ }, z.core.$strict>>;
661
+ idle: z.ZodOptional<z.ZodObject<{
662
+ status: z.ZodEnum<{
663
+ cancelled: "cancelled";
664
+ notRun: "notRun";
665
+ timeout: "timeout";
666
+ stable: "stable";
667
+ }>;
668
+ polls: z.ZodNumber;
669
+ durationMs: z.ZodOptional<z.ZodNumber>;
670
+ samplingDurationMs: z.ZodOptional<z.ZodNumber>;
671
+ strategy: z.ZodOptional<z.ZodEnum<{
672
+ frameStats: "frameStats";
673
+ hybrid: "hybrid";
674
+ layoutDiff: "layoutDiff";
675
+ structural: "structural";
676
+ }>>;
677
+ backend: z.ZodOptional<z.ZodEnum<{
678
+ uiautomator: "uiautomator";
679
+ androidCli: "androidCli";
680
+ gfxFrameStats: "gfxFrameStats";
681
+ mobileMcp: "mobileMcp";
682
+ }>>;
683
+ backendId: z.ZodOptional<z.ZodString>;
684
+ fallbackUsed: z.ZodOptional<z.ZodBoolean>;
685
+ frameActivityDetected: z.ZodOptional<z.ZodBoolean>;
686
+ lastDiff: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
687
+ }, z.core.$strict>>;
688
+ scroll: z.ZodOptional<z.ZodObject<{
689
+ swipesUsed: z.ZodNumber;
690
+ maxSwipes: z.ZodNumber;
691
+ }, z.core.$strict>>;
692
+ activity: z.ZodOptional<z.ZodObject<{
693
+ before: z.ZodObject<{
694
+ status: z.ZodEnum<{
695
+ passed: "passed";
696
+ failed: "failed";
697
+ notRun: "notRun";
698
+ manualRequired: "manualRequired";
699
+ }>;
700
+ expected: z.ZodString;
701
+ actual: z.ZodOptional<z.ZodString>;
702
+ }, z.core.$strict>;
703
+ after: z.ZodObject<{
704
+ status: z.ZodEnum<{
705
+ passed: "passed";
706
+ failed: "failed";
707
+ notRun: "notRun";
708
+ manualRequired: "manualRequired";
709
+ }>;
710
+ expected: z.ZodString;
711
+ actual: z.ZodOptional<z.ZodString>;
712
+ }, z.core.$strict>;
713
+ }, z.core.$strict>>;
714
+ expectation: z.ZodOptional<z.ZodObject<{
715
+ type: z.ZodEnum<{
716
+ activity: "activity";
717
+ logcat: "logcat";
718
+ element: "element";
719
+ logcatEvent: "logcatEvent";
720
+ }>;
721
+ status: z.ZodEnum<{
722
+ passed: "passed";
723
+ failed: "failed";
724
+ notRun: "notRun";
725
+ manualRequired: "manualRequired";
726
+ }>;
727
+ code: z.ZodOptional<z.ZodEnum<{
728
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
729
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
730
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
731
+ CONFIG_INVALID: "CONFIG_INVALID";
732
+ ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
733
+ DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
734
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
735
+ APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
736
+ APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
737
+ APP_CRASHED: "APP_CRASHED";
738
+ LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
739
+ LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
740
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
741
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
742
+ SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
743
+ ACTION_FAILED: "ACTION_FAILED";
744
+ IDLE_TIMEOUT: "IDLE_TIMEOUT";
745
+ ACTIVITY_BEFORE_MISMATCH: "ACTIVITY_BEFORE_MISMATCH";
746
+ ACTIVITY_AFTER_MISMATCH: "ACTIVITY_AFTER_MISMATCH";
747
+ EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
748
+ EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
749
+ EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
750
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
751
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
752
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
753
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
754
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
755
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
756
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
757
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
758
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
759
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
760
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
761
+ CONTEXT_INVALID: "CONTEXT_INVALID";
762
+ CONTEXT_STALE: "CONTEXT_STALE";
763
+ BRIEF_INVALID: "BRIEF_INVALID";
764
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
765
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
766
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
767
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
768
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
769
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
770
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
771
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
772
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
773
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
774
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
775
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
776
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
777
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
778
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
779
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
780
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
781
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
782
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
783
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
784
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
785
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
786
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
787
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
788
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
789
+ CONTRACT_INVALID: "CONTRACT_INVALID";
790
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
791
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
792
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
793
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
794
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
795
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
796
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
797
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
798
+ BASELINE_EMPTY: "BASELINE_EMPTY";
799
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
800
+ GIT_REF_INVALID: "GIT_REF_INVALID";
801
+ COLLECTION_FAILED: "COLLECTION_FAILED";
802
+ INTERNAL_ERROR: "INTERNAL_ERROR";
803
+ }>>;
804
+ message: z.ZodOptional<z.ZodString>;
805
+ logcatEvent: z.ZodOptional<z.ZodObject<{
806
+ matchedCount: z.ZodNumber;
807
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
808
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
809
+ from: z.ZodLiteral<"stepStart">;
810
+ }, z.core.$strict>, z.ZodObject<{
811
+ from: z.ZodLiteral<"runStart">;
812
+ }, z.core.$strict>, z.ZodObject<{
813
+ from: z.ZodLiteral<"marker">;
814
+ markerId: z.ZodString;
815
+ }, z.core.$strict>], "from">;
816
+ startedAtMs: z.ZodNumber;
817
+ requestErrorClass: z.ZodOptional<z.ZodEnum<{
818
+ client: "client";
819
+ auth: "auth";
820
+ network: "network";
821
+ server: "server";
822
+ }>>;
823
+ }, z.core.$strict>>;
824
+ capture: z.ZodOptional<z.ZodObject<{
825
+ name: z.ZodString;
826
+ valueType: z.ZodEnum<{
827
+ string: "string";
828
+ integer: "integer";
829
+ identifier: "identifier";
830
+ }>;
831
+ length: z.ZodNumber;
832
+ sourceStepIndex: z.ZodNumber;
833
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
834
+ from: z.ZodLiteral<"stepStart">;
835
+ }, z.core.$strict>, z.ZodObject<{
836
+ from: z.ZodLiteral<"runStart">;
837
+ }, z.core.$strict>, z.ZodObject<{
838
+ from: z.ZodLiteral<"marker">;
839
+ markerId: z.ZodString;
840
+ }, z.core.$strict>], "from">;
841
+ startedAtMs: z.ZodNumber;
842
+ evidenceSha256: z.ZodString;
843
+ }, z.core.$strict>>;
844
+ }, z.core.$strict>>;
845
+ marker: z.ZodOptional<z.ZodObject<{
846
+ id: z.ZodString;
847
+ startedAtMs: z.ZodNumber;
848
+ }, z.core.$strict>>;
849
+ logcatPath: z.ZodOptional<z.ZodString>;
850
+ }, z.core.$strict>>;
851
+ logcatEvidence: z.ZodOptional<z.ZodArray<z.ZodObject<{
852
+ role: z.ZodString;
853
+ status: z.ZodLiteral<"incomplete">;
854
+ droppedLines: z.ZodNumber;
855
+ droppedBytes: z.ZodNumber;
856
+ lastDroppedAtMs: z.ZodOptional<z.ZodNumber>;
857
+ }, z.core.$strict>>>;
858
+ checkpoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
859
+ id: z.ZodString;
860
+ stepIndex: z.ZodOptional<z.ZodNumber>;
861
+ status: z.ZodEnum<{
862
+ passed: "passed";
863
+ failed: "failed";
864
+ unresolved: "unresolved";
865
+ }>;
866
+ conditions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
867
+ kind: z.ZodLiteral<"activity">;
868
+ status: z.ZodEnum<{
869
+ passed: "passed";
870
+ failed: "failed";
871
+ unresolved: "unresolved";
872
+ }>;
873
+ expected: z.ZodString;
874
+ actual: z.ZodOptional<z.ZodString>;
875
+ message: z.ZodOptional<z.ZodString>;
876
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
877
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
878
+ evidenceRef: z.ZodOptional<z.ZodString>;
879
+ }, z.core.$strict>, z.ZodObject<{
880
+ kind: z.ZodLiteral<"screen">;
881
+ status: z.ZodEnum<{
882
+ passed: "passed";
883
+ failed: "failed";
884
+ unresolved: "unresolved";
885
+ }>;
886
+ expected: z.ZodString;
887
+ actual: z.ZodOptional<z.ZodString>;
888
+ message: z.ZodOptional<z.ZodString>;
889
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
890
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
891
+ evidenceRef: z.ZodOptional<z.ZodString>;
892
+ }, z.core.$strict>, z.ZodObject<{
893
+ kind: z.ZodEnum<{
894
+ visibleElement: "visibleElement";
895
+ absentElement: "absentElement";
896
+ }>;
897
+ status: z.ZodEnum<{
898
+ passed: "passed";
899
+ failed: "failed";
900
+ unresolved: "unresolved";
901
+ }>;
902
+ locator: z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>;
903
+ message: z.ZodOptional<z.ZodString>;
904
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
905
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
906
+ evidenceRef: z.ZodOptional<z.ZodString>;
907
+ }, z.core.$strict>, z.ZodObject<{
908
+ kind: z.ZodLiteral<"logcatEvent">;
909
+ status: z.ZodEnum<{
910
+ passed: "passed";
911
+ failed: "failed";
912
+ unresolved: "unresolved";
913
+ }>;
914
+ expect: z.ZodObject<{
915
+ type: z.ZodLiteral<"logcatEvent">;
916
+ window: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
917
+ from: z.ZodLiteral<"stepStart">;
918
+ }, z.core.$strict>, z.ZodObject<{
919
+ from: z.ZodLiteral<"runStart">;
920
+ }, z.core.$strict>, z.ZodObject<{
921
+ from: z.ZodLiteral<"marker">;
922
+ markerId: z.ZodString;
923
+ }, z.core.$strict>], "from">>;
924
+ tag: z.ZodString;
925
+ capture: z.ZodOptional<z.ZodObject<{
926
+ name: z.ZodString;
927
+ field: z.ZodOptional<z.ZodString>;
928
+ group: z.ZodOptional<z.ZodLiteral<"correlation">>;
929
+ valueType: z.ZodEnum<{
930
+ string: "string";
931
+ integer: "integer";
932
+ identifier: "identifier";
933
+ }>;
934
+ }, z.core.$strict>>;
935
+ correlation: z.ZodOptional<z.ZodObject<{
936
+ key: z.ZodString;
937
+ value: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodString]>;
938
+ }, z.core.$strict>>;
939
+ event: z.ZodString;
940
+ fields: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
941
+ unique: z.ZodDefault<z.ZodLiteral<true>>;
942
+ }, z.core.$strict>;
943
+ matchedCount: z.ZodNumber;
944
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
945
+ startedAtMs: z.ZodNumber;
946
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
947
+ evidenceRef: z.ZodOptional<z.ZodString>;
948
+ message: z.ZodOptional<z.ZodString>;
949
+ }, z.core.$strict>], "kind">>;
950
+ }, z.core.$strict>>>;
951
+ screens: z.ZodOptional<z.ZodArray<z.ZodObject<{
952
+ screen: z.ZodString;
953
+ status: z.ZodEnum<{
954
+ ambiguous: "ambiguous";
955
+ matched: "matched";
956
+ unresolved: "unresolved";
957
+ }>;
958
+ }, z.core.$strict>>>;
959
+ artifacts: z.ZodObject<{
960
+ directory: z.ZodString;
961
+ report: z.ZodString;
962
+ summary: z.ZodString;
963
+ screenshots: z.ZodArray<z.ZodObject<{
964
+ role: z.ZodString;
965
+ path: z.ZodString;
966
+ }, z.core.$strict>>;
967
+ uiHierarchies: z.ZodOptional<z.ZodArray<z.ZodObject<{
968
+ role: z.ZodString;
969
+ path: z.ZodString;
970
+ }, z.core.$strict>>>;
971
+ logcats: z.ZodArray<z.ZodObject<{
972
+ role: z.ZodString;
973
+ path: z.ZodString;
974
+ }, z.core.$strict>>;
975
+ stepLogs: z.ZodArray<z.ZodString>;
976
+ }, z.core.$strict>;
977
+ primaryFailure: z.ZodOptional<z.ZodObject<{
978
+ code: z.ZodEnum<{
979
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
980
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
981
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
982
+ CONFIG_INVALID: "CONFIG_INVALID";
983
+ ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
984
+ DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
985
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
986
+ APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
987
+ APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
988
+ APP_CRASHED: "APP_CRASHED";
989
+ LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
990
+ LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
991
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
992
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
993
+ SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
994
+ ACTION_FAILED: "ACTION_FAILED";
995
+ IDLE_TIMEOUT: "IDLE_TIMEOUT";
996
+ ACTIVITY_BEFORE_MISMATCH: "ACTIVITY_BEFORE_MISMATCH";
997
+ ACTIVITY_AFTER_MISMATCH: "ACTIVITY_AFTER_MISMATCH";
998
+ EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
999
+ EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
1000
+ EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
1001
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
1002
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
1003
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
1004
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
1005
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
1006
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
1007
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
1008
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
1009
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
1010
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
1011
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
1012
+ CONTEXT_INVALID: "CONTEXT_INVALID";
1013
+ CONTEXT_STALE: "CONTEXT_STALE";
1014
+ BRIEF_INVALID: "BRIEF_INVALID";
1015
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
1016
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
1017
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
1018
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
1019
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
1020
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
1021
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
1022
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
1023
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
1024
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
1025
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
1026
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
1027
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
1028
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
1029
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
1030
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
1031
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
1032
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
1033
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
1034
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
1035
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
1036
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
1037
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
1038
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
1039
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
1040
+ CONTRACT_INVALID: "CONTRACT_INVALID";
1041
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
1042
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
1043
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
1044
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
1045
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
1046
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
1047
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
1048
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
1049
+ BASELINE_EMPTY: "BASELINE_EMPTY";
1050
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
1051
+ GIT_REF_INVALID: "GIT_REF_INVALID";
1052
+ COLLECTION_FAILED: "COLLECTION_FAILED";
1053
+ INTERNAL_ERROR: "INTERNAL_ERROR";
1054
+ }>;
1055
+ message: z.ZodString;
1056
+ phase: z.ZodString;
1057
+ stepIndex: z.ZodOptional<z.ZodNumber>;
1058
+ }, z.core.$strict>>;
1059
+ secondaryErrors: z.ZodArray<z.ZodObject<{
1060
+ code: z.ZodEnum<{
1061
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
1062
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
1063
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
1064
+ CONFIG_INVALID: "CONFIG_INVALID";
1065
+ ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
1066
+ DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
1067
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
1068
+ APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
1069
+ APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
1070
+ APP_CRASHED: "APP_CRASHED";
1071
+ LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
1072
+ LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
1073
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
1074
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
1075
+ SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
1076
+ ACTION_FAILED: "ACTION_FAILED";
1077
+ IDLE_TIMEOUT: "IDLE_TIMEOUT";
1078
+ ACTIVITY_BEFORE_MISMATCH: "ACTIVITY_BEFORE_MISMATCH";
1079
+ ACTIVITY_AFTER_MISMATCH: "ACTIVITY_AFTER_MISMATCH";
1080
+ EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
1081
+ EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
1082
+ EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
1083
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
1084
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
1085
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
1086
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
1087
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
1088
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
1089
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
1090
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
1091
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
1092
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
1093
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
1094
+ CONTEXT_INVALID: "CONTEXT_INVALID";
1095
+ CONTEXT_STALE: "CONTEXT_STALE";
1096
+ BRIEF_INVALID: "BRIEF_INVALID";
1097
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
1098
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
1099
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
1100
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
1101
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
1102
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
1103
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
1104
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
1105
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
1106
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
1107
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
1108
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
1109
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
1110
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
1111
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
1112
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
1113
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
1114
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
1115
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
1116
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
1117
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
1118
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
1119
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
1120
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
1121
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
1122
+ CONTRACT_INVALID: "CONTRACT_INVALID";
1123
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
1124
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
1125
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
1126
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
1127
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
1128
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
1129
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
1130
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
1131
+ BASELINE_EMPTY: "BASELINE_EMPTY";
1132
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
1133
+ GIT_REF_INVALID: "GIT_REF_INVALID";
1134
+ COLLECTION_FAILED: "COLLECTION_FAILED";
1135
+ INTERNAL_ERROR: "INTERNAL_ERROR";
1136
+ }>;
1137
+ message: z.ZodString;
1138
+ phase: z.ZodString;
1139
+ stepIndex: z.ZodOptional<z.ZodNumber>;
1140
+ }, z.core.$strict>>;
1141
+ fallbackUsed: z.ZodBoolean;
1142
+ schemaVersion: z.ZodLiteral<4>;
1143
+ }, z.core.$strict>;
1144
+ export declare const TapHoundReportSchema: z.ZodObject<{
151
1145
  environment: z.ZodObject<{
152
- deviceSerial: z.ZodString;
1146
+ devices: z.ZodArray<z.ZodObject<{
1147
+ role: z.ZodString;
1148
+ deviceSerial: z.ZodString;
1149
+ uiBackend: z.ZodOptional<z.ZodObject<{
1150
+ id: z.ZodEnum<{
1151
+ "system-uiautomator": "system-uiautomator";
1152
+ "android-cli": "android-cli";
1153
+ "appium-uiautomator2": "appium-uiautomator2";
1154
+ "mobile-mcp": "mobile-mcp";
1155
+ }>;
1156
+ adapterVersion: z.ZodString;
1157
+ engineVersion: z.ZodOptional<z.ZodString>;
1158
+ configSha256: z.ZodString;
1159
+ }, z.core.$strict>>;
1160
+ uiCache: z.ZodOptional<z.ZodObject<{
1161
+ hits: z.ZodNumber;
1162
+ misses: z.ZodNumber;
1163
+ stale: z.ZodNumber;
1164
+ relearns: z.ZodNumber;
1165
+ capturesSaved: z.ZodNumber;
1166
+ validationDurationMs: z.ZodNumber;
1167
+ }, z.core.$strict>>;
1168
+ }, z.core.$strict>>;
153
1169
  tools: z.ZodRecord<z.ZodString, z.ZodString>;
154
1170
  }, z.core.$strict>;
1171
+ runId: z.ZodString;
1172
+ status: z.ZodEnum<{
1173
+ error: "error";
1174
+ passed: "passed";
1175
+ failed: "failed";
1176
+ manualRequired: "manualRequired";
1177
+ }>;
1178
+ startedAt: z.ZodString;
1179
+ finishedAt: z.ZodString;
1180
+ durationMs: z.ZodNumber;
1181
+ project: z.ZodObject<{
1182
+ root: z.ZodString;
1183
+ packageName: z.ZodString;
1184
+ launchActivity: z.ZodString;
1185
+ }, z.core.$strict>;
1186
+ journey: z.ZodObject<{
1187
+ name: z.ZodString;
1188
+ sha256: z.ZodString;
1189
+ }, z.core.$strict>;
155
1190
  layers: z.ZodObject<{
156
1191
  run: z.ZodEnum<{
157
- notRun: "notRun";
158
1192
  passed: "passed";
159
1193
  failed: "failed";
1194
+ notRun: "notRun";
1195
+ manualRequired: "manualRequired";
160
1196
  }>;
161
1197
  structural: z.ZodEnum<{
162
- notRun: "notRun";
163
1198
  passed: "passed";
164
1199
  failed: "failed";
1200
+ notRun: "notRun";
1201
+ manualRequired: "manualRequired";
165
1202
  }>;
166
1203
  activityCheckpoint: z.ZodEnum<{
167
- notRun: "notRun";
168
1204
  passed: "passed";
169
1205
  failed: "failed";
1206
+ notRun: "notRun";
1207
+ manualRequired: "manualRequired";
170
1208
  }>;
171
1209
  explicitExpect: z.ZodEnum<{
172
- notRun: "notRun";
173
1210
  passed: "passed";
174
1211
  failed: "failed";
1212
+ notRun: "notRun";
1213
+ manualRequired: "manualRequired";
175
1214
  }>;
176
1215
  collection: z.ZodEnum<{
177
- notRun: "notRun";
178
1216
  passed: "passed";
179
1217
  failed: "failed";
1218
+ notRun: "notRun";
1219
+ manualRequired: "manualRequired";
180
1220
  }>;
181
1221
  }, z.core.$strict>;
182
1222
  steps: z.ZodArray<z.ZodObject<{
@@ -189,26 +1229,57 @@ export declare const TapHoundReportSchema: z.ZodObject<{
189
1229
  scrollTo: "scrollTo";
190
1230
  back: "back";
191
1231
  wait: "wait";
1232
+ bridge: "bridge";
192
1233
  }>;
193
1234
  status: z.ZodEnum<{
194
- notRun: "notRun";
195
1235
  passed: "passed";
196
1236
  failed: "failed";
1237
+ notRun: "notRun";
1238
+ manualRequired: "manualRequired";
197
1239
  }>;
1240
+ device: z.ZodOptional<z.ZodString>;
1241
+ replayMode: z.ZodOptional<z.ZodEnum<{
1242
+ auto: "auto";
1243
+ manual: "manual";
1244
+ }>>;
198
1245
  startedAtMs: z.ZodNumber;
199
1246
  finishedAtMs: z.ZodNumber;
200
1247
  durationMs: z.ZodNumber;
201
1248
  locator: z.ZodOptional<z.ZodObject<{
202
1249
  status: z.ZodEnum<{
203
- notRun: "notRun";
204
1250
  failed: "failed";
1251
+ notRun: "notRun";
205
1252
  found: "found";
206
1253
  }>;
207
1254
  matchedBy: z.ZodOptional<z.ZodEnum<{
1255
+ anchor: "anchor";
208
1256
  resourceId: "resourceId";
209
1257
  text: "text";
210
1258
  contentDescription: "contentDescription";
211
1259
  }>>;
1260
+ requested: z.ZodOptional<z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>>;
1261
+ anchorId: z.ZodOptional<z.ZodString>;
1262
+ anchor: z.ZodOptional<z.ZodObject<{
1263
+ status: z.ZodEnum<{
1264
+ failed: "failed";
1265
+ resolved: "resolved";
1266
+ locatorFallback: "locatorFallback";
1267
+ }>;
1268
+ resolvedBy: z.ZodOptional<z.ZodObject<{
1269
+ kind: z.ZodEnum<{
1270
+ resourceId: "resourceId";
1271
+ contentDescription: "contentDescription";
1272
+ composeSemantics: "composeSemantics";
1273
+ visibleText: "visibleText";
1274
+ visualMatch: "visualMatch";
1275
+ }>;
1276
+ confidence: z.ZodEnum<{
1277
+ fallback: "fallback";
1278
+ primary: "primary";
1279
+ }>;
1280
+ }, z.core.$strict>>;
1281
+ message: z.ZodOptional<z.ZodString>;
1282
+ }, z.core.$strict>>;
212
1283
  fallbackUsed: z.ZodBoolean;
213
1284
  fallbackLabel: z.ZodOptional<z.ZodString>;
214
1285
  annotatedScreenshotPath: z.ZodOptional<z.ZodString>;
@@ -218,10 +1289,27 @@ export declare const TapHoundReportSchema: z.ZodObject<{
218
1289
  status: z.ZodEnum<{
219
1290
  cancelled: "cancelled";
220
1291
  notRun: "notRun";
221
- stable: "stable";
222
1292
  timeout: "timeout";
1293
+ stable: "stable";
223
1294
  }>;
224
1295
  polls: z.ZodNumber;
1296
+ durationMs: z.ZodOptional<z.ZodNumber>;
1297
+ samplingDurationMs: z.ZodOptional<z.ZodNumber>;
1298
+ strategy: z.ZodOptional<z.ZodEnum<{
1299
+ frameStats: "frameStats";
1300
+ hybrid: "hybrid";
1301
+ layoutDiff: "layoutDiff";
1302
+ structural: "structural";
1303
+ }>>;
1304
+ backend: z.ZodOptional<z.ZodEnum<{
1305
+ uiautomator: "uiautomator";
1306
+ androidCli: "androidCli";
1307
+ gfxFrameStats: "gfxFrameStats";
1308
+ mobileMcp: "mobileMcp";
1309
+ }>>;
1310
+ backendId: z.ZodOptional<z.ZodString>;
1311
+ fallbackUsed: z.ZodOptional<z.ZodBoolean>;
1312
+ frameActivityDetected: z.ZodOptional<z.ZodBoolean>;
225
1313
  lastDiff: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
226
1314
  }, z.core.$strict>>;
227
1315
  scroll: z.ZodOptional<z.ZodObject<{
@@ -231,18 +1319,20 @@ export declare const TapHoundReportSchema: z.ZodObject<{
231
1319
  activity: z.ZodOptional<z.ZodObject<{
232
1320
  before: z.ZodObject<{
233
1321
  status: z.ZodEnum<{
234
- notRun: "notRun";
235
1322
  passed: "passed";
236
1323
  failed: "failed";
1324
+ notRun: "notRun";
1325
+ manualRequired: "manualRequired";
237
1326
  }>;
238
1327
  expected: z.ZodString;
239
1328
  actual: z.ZodOptional<z.ZodString>;
240
1329
  }, z.core.$strict>;
241
1330
  after: z.ZodObject<{
242
1331
  status: z.ZodEnum<{
243
- notRun: "notRun";
244
1332
  passed: "passed";
245
1333
  failed: "failed";
1334
+ notRun: "notRun";
1335
+ manualRequired: "manualRequired";
246
1336
  }>;
247
1337
  expected: z.ZodString;
248
1338
  actual: z.ZodOptional<z.ZodString>;
@@ -253,21 +1343,29 @@ export declare const TapHoundReportSchema: z.ZodObject<{
253
1343
  activity: "activity";
254
1344
  logcat: "logcat";
255
1345
  element: "element";
1346
+ logcatEvent: "logcatEvent";
256
1347
  }>;
257
1348
  status: z.ZodEnum<{
258
- notRun: "notRun";
259
1349
  passed: "passed";
260
1350
  failed: "failed";
1351
+ notRun: "notRun";
1352
+ manualRequired: "manualRequired";
261
1353
  }>;
262
1354
  code: z.ZodOptional<z.ZodEnum<{
1355
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
1356
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
1357
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
263
1358
  CONFIG_INVALID: "CONFIG_INVALID";
264
- APP_CRASHED: "APP_CRASHED";
265
1359
  ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
266
1360
  DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
1361
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
267
1362
  APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
268
1363
  APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
1364
+ APP_CRASHED: "APP_CRASHED";
269
1365
  LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
270
1366
  LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
1367
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
1368
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
271
1369
  SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
272
1370
  ACTION_FAILED: "ACTION_FAILED";
273
1371
  IDLE_TIMEOUT: "IDLE_TIMEOUT";
@@ -276,31 +1374,249 @@ export declare const TapHoundReportSchema: z.ZodObject<{
276
1374
  EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
277
1375
  EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
278
1376
  EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
1377
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
1378
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
1379
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
1380
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
1381
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
1382
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
1383
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
1384
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
1385
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
1386
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
1387
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
1388
+ CONTEXT_INVALID: "CONTEXT_INVALID";
1389
+ CONTEXT_STALE: "CONTEXT_STALE";
1390
+ BRIEF_INVALID: "BRIEF_INVALID";
1391
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
1392
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
1393
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
1394
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
1395
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
1396
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
1397
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
1398
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
1399
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
1400
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
1401
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
1402
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
1403
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
1404
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
1405
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
1406
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
1407
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
1408
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
1409
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
1410
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
1411
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
1412
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
1413
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
1414
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
1415
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
1416
+ CONTRACT_INVALID: "CONTRACT_INVALID";
1417
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
1418
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
1419
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
1420
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
1421
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
1422
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
1423
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
1424
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
1425
+ BASELINE_EMPTY: "BASELINE_EMPTY";
1426
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
1427
+ GIT_REF_INVALID: "GIT_REF_INVALID";
279
1428
  COLLECTION_FAILED: "COLLECTION_FAILED";
280
1429
  INTERNAL_ERROR: "INTERNAL_ERROR";
281
1430
  }>>;
282
1431
  message: z.ZodOptional<z.ZodString>;
1432
+ logcatEvent: z.ZodOptional<z.ZodObject<{
1433
+ matchedCount: z.ZodNumber;
1434
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
1435
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
1436
+ from: z.ZodLiteral<"stepStart">;
1437
+ }, z.core.$strict>, z.ZodObject<{
1438
+ from: z.ZodLiteral<"runStart">;
1439
+ }, z.core.$strict>, z.ZodObject<{
1440
+ from: z.ZodLiteral<"marker">;
1441
+ markerId: z.ZodString;
1442
+ }, z.core.$strict>], "from">;
1443
+ startedAtMs: z.ZodNumber;
1444
+ requestErrorClass: z.ZodOptional<z.ZodEnum<{
1445
+ client: "client";
1446
+ auth: "auth";
1447
+ network: "network";
1448
+ server: "server";
1449
+ }>>;
1450
+ }, z.core.$strict>>;
1451
+ capture: z.ZodOptional<z.ZodObject<{
1452
+ name: z.ZodString;
1453
+ valueType: z.ZodEnum<{
1454
+ string: "string";
1455
+ integer: "integer";
1456
+ identifier: "identifier";
1457
+ }>;
1458
+ length: z.ZodNumber;
1459
+ sourceStepIndex: z.ZodNumber;
1460
+ window: z.ZodDiscriminatedUnion<[z.ZodObject<{
1461
+ from: z.ZodLiteral<"stepStart">;
1462
+ }, z.core.$strict>, z.ZodObject<{
1463
+ from: z.ZodLiteral<"runStart">;
1464
+ }, z.core.$strict>, z.ZodObject<{
1465
+ from: z.ZodLiteral<"marker">;
1466
+ markerId: z.ZodString;
1467
+ }, z.core.$strict>], "from">;
1468
+ startedAtMs: z.ZodNumber;
1469
+ evidenceSha256: z.ZodString;
1470
+ }, z.core.$strict>>;
1471
+ }, z.core.$strict>>;
1472
+ marker: z.ZodOptional<z.ZodObject<{
1473
+ id: z.ZodString;
1474
+ startedAtMs: z.ZodNumber;
283
1475
  }, z.core.$strict>>;
284
1476
  logcatPath: z.ZodOptional<z.ZodString>;
285
1477
  }, z.core.$strict>>;
1478
+ logcatEvidence: z.ZodOptional<z.ZodArray<z.ZodObject<{
1479
+ role: z.ZodString;
1480
+ status: z.ZodLiteral<"incomplete">;
1481
+ droppedLines: z.ZodNumber;
1482
+ droppedBytes: z.ZodNumber;
1483
+ lastDroppedAtMs: z.ZodOptional<z.ZodNumber>;
1484
+ }, z.core.$strict>>>;
1485
+ checkpoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
1486
+ id: z.ZodString;
1487
+ stepIndex: z.ZodOptional<z.ZodNumber>;
1488
+ status: z.ZodEnum<{
1489
+ passed: "passed";
1490
+ failed: "failed";
1491
+ unresolved: "unresolved";
1492
+ }>;
1493
+ conditions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1494
+ kind: z.ZodLiteral<"activity">;
1495
+ status: z.ZodEnum<{
1496
+ passed: "passed";
1497
+ failed: "failed";
1498
+ unresolved: "unresolved";
1499
+ }>;
1500
+ expected: z.ZodString;
1501
+ actual: z.ZodOptional<z.ZodString>;
1502
+ message: z.ZodOptional<z.ZodString>;
1503
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
1504
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
1505
+ evidenceRef: z.ZodOptional<z.ZodString>;
1506
+ }, z.core.$strict>, z.ZodObject<{
1507
+ kind: z.ZodLiteral<"screen">;
1508
+ status: z.ZodEnum<{
1509
+ passed: "passed";
1510
+ failed: "failed";
1511
+ unresolved: "unresolved";
1512
+ }>;
1513
+ expected: z.ZodString;
1514
+ actual: z.ZodOptional<z.ZodString>;
1515
+ message: z.ZodOptional<z.ZodString>;
1516
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
1517
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
1518
+ evidenceRef: z.ZodOptional<z.ZodString>;
1519
+ }, z.core.$strict>, z.ZodObject<{
1520
+ kind: z.ZodEnum<{
1521
+ visibleElement: "visibleElement";
1522
+ absentElement: "absentElement";
1523
+ }>;
1524
+ status: z.ZodEnum<{
1525
+ passed: "passed";
1526
+ failed: "failed";
1527
+ unresolved: "unresolved";
1528
+ }>;
1529
+ locator: z.ZodType<import("./layout.js").Locator, unknown, z.core.$ZodTypeInternals<import("./layout.js").Locator, unknown>>;
1530
+ message: z.ZodOptional<z.ZodString>;
1531
+ startedAtMs: z.ZodOptional<z.ZodNumber>;
1532
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
1533
+ evidenceRef: z.ZodOptional<z.ZodString>;
1534
+ }, z.core.$strict>, z.ZodObject<{
1535
+ kind: z.ZodLiteral<"logcatEvent">;
1536
+ status: z.ZodEnum<{
1537
+ passed: "passed";
1538
+ failed: "failed";
1539
+ unresolved: "unresolved";
1540
+ }>;
1541
+ expect: z.ZodObject<{
1542
+ type: z.ZodLiteral<"logcatEvent">;
1543
+ window: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
1544
+ from: z.ZodLiteral<"stepStart">;
1545
+ }, z.core.$strict>, z.ZodObject<{
1546
+ from: z.ZodLiteral<"runStart">;
1547
+ }, z.core.$strict>, z.ZodObject<{
1548
+ from: z.ZodLiteral<"marker">;
1549
+ markerId: z.ZodString;
1550
+ }, z.core.$strict>], "from">>;
1551
+ tag: z.ZodString;
1552
+ capture: z.ZodOptional<z.ZodObject<{
1553
+ name: z.ZodString;
1554
+ field: z.ZodOptional<z.ZodString>;
1555
+ group: z.ZodOptional<z.ZodLiteral<"correlation">>;
1556
+ valueType: z.ZodEnum<{
1557
+ string: "string";
1558
+ integer: "integer";
1559
+ identifier: "identifier";
1560
+ }>;
1561
+ }, z.core.$strict>>;
1562
+ correlation: z.ZodOptional<z.ZodObject<{
1563
+ key: z.ZodString;
1564
+ value: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodString]>;
1565
+ }, z.core.$strict>>;
1566
+ event: z.ZodString;
1567
+ fields: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
1568
+ unique: z.ZodDefault<z.ZodLiteral<true>>;
1569
+ }, z.core.$strict>;
1570
+ matchedCount: z.ZodNumber;
1571
+ matchedLineSha256: z.ZodOptional<z.ZodString>;
1572
+ startedAtMs: z.ZodNumber;
1573
+ matchedAtMs: z.ZodOptional<z.ZodNumber>;
1574
+ evidenceRef: z.ZodOptional<z.ZodString>;
1575
+ message: z.ZodOptional<z.ZodString>;
1576
+ }, z.core.$strict>], "kind">>;
1577
+ }, z.core.$strict>>>;
1578
+ screens: z.ZodOptional<z.ZodArray<z.ZodObject<{
1579
+ screen: z.ZodString;
1580
+ status: z.ZodEnum<{
1581
+ ambiguous: "ambiguous";
1582
+ matched: "matched";
1583
+ unresolved: "unresolved";
1584
+ }>;
1585
+ }, z.core.$strict>>>;
286
1586
  artifacts: z.ZodObject<{
287
1587
  directory: z.ZodString;
288
1588
  report: z.ZodString;
289
1589
  summary: z.ZodString;
290
- screenshot: z.ZodOptional<z.ZodString>;
291
- logcat: z.ZodOptional<z.ZodString>;
1590
+ screenshots: z.ZodArray<z.ZodObject<{
1591
+ role: z.ZodString;
1592
+ path: z.ZodString;
1593
+ }, z.core.$strict>>;
1594
+ uiHierarchies: z.ZodOptional<z.ZodArray<z.ZodObject<{
1595
+ role: z.ZodString;
1596
+ path: z.ZodString;
1597
+ }, z.core.$strict>>>;
1598
+ logcats: z.ZodArray<z.ZodObject<{
1599
+ role: z.ZodString;
1600
+ path: z.ZodString;
1601
+ }, z.core.$strict>>;
292
1602
  stepLogs: z.ZodArray<z.ZodString>;
293
1603
  }, z.core.$strict>;
294
1604
  primaryFailure: z.ZodOptional<z.ZodObject<{
295
1605
  code: z.ZodEnum<{
1606
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
1607
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
1608
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
296
1609
  CONFIG_INVALID: "CONFIG_INVALID";
297
- APP_CRASHED: "APP_CRASHED";
298
1610
  ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
299
1611
  DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
1612
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
300
1613
  APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
301
1614
  APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
1615
+ APP_CRASHED: "APP_CRASHED";
302
1616
  LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
303
1617
  LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
1618
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
1619
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
304
1620
  SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
305
1621
  ACTION_FAILED: "ACTION_FAILED";
306
1622
  IDLE_TIMEOUT: "IDLE_TIMEOUT";
@@ -309,6 +1625,57 @@ export declare const TapHoundReportSchema: z.ZodObject<{
309
1625
  EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
310
1626
  EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
311
1627
  EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
1628
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
1629
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
1630
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
1631
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
1632
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
1633
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
1634
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
1635
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
1636
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
1637
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
1638
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
1639
+ CONTEXT_INVALID: "CONTEXT_INVALID";
1640
+ CONTEXT_STALE: "CONTEXT_STALE";
1641
+ BRIEF_INVALID: "BRIEF_INVALID";
1642
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
1643
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
1644
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
1645
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
1646
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
1647
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
1648
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
1649
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
1650
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
1651
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
1652
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
1653
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
1654
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
1655
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
1656
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
1657
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
1658
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
1659
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
1660
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
1661
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
1662
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
1663
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
1664
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
1665
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
1666
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
1667
+ CONTRACT_INVALID: "CONTRACT_INVALID";
1668
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
1669
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
1670
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
1671
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
1672
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
1673
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
1674
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
1675
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
1676
+ BASELINE_EMPTY: "BASELINE_EMPTY";
1677
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
1678
+ GIT_REF_INVALID: "GIT_REF_INVALID";
312
1679
  COLLECTION_FAILED: "COLLECTION_FAILED";
313
1680
  INTERNAL_ERROR: "INTERNAL_ERROR";
314
1681
  }>;
@@ -318,14 +1685,20 @@ export declare const TapHoundReportSchema: z.ZodObject<{
318
1685
  }, z.core.$strict>>;
319
1686
  secondaryErrors: z.ZodArray<z.ZodObject<{
320
1687
  code: z.ZodEnum<{
1688
+ UI_BACKEND_UNAVAILABLE: "UI_BACKEND_UNAVAILABLE";
1689
+ UI_SNAPSHOT_FAILED: "UI_SNAPSHOT_FAILED";
1690
+ UI_SNAPSHOT_INVALID: "UI_SNAPSHOT_INVALID";
321
1691
  CONFIG_INVALID: "CONFIG_INVALID";
322
- APP_CRASHED: "APP_CRASHED";
323
1692
  ENVIRONMENT_MISSING_TOOL: "ENVIRONMENT_MISSING_TOOL";
324
1693
  DEVICE_UNAVAILABLE: "DEVICE_UNAVAILABLE";
1694
+ RUNTIME_CAPABILITY_MISSING: "RUNTIME_CAPABILITY_MISSING";
325
1695
  APP_NOT_INSTALLED: "APP_NOT_INSTALLED";
326
1696
  APP_LAUNCH_FAILED: "APP_LAUNCH_FAILED";
1697
+ APP_CRASHED: "APP_CRASHED";
327
1698
  LOCATOR_NOT_FOUND: "LOCATOR_NOT_FOUND";
328
1699
  LOCATOR_AMBIGUOUS: "LOCATOR_AMBIGUOUS";
1700
+ ANCHOR_NOT_FOUND: "ANCHOR_NOT_FOUND";
1701
+ ANCHOR_AMBIGUOUS: "ANCHOR_AMBIGUOUS";
329
1702
  SCROLL_TARGET_NOT_FOUND: "SCROLL_TARGET_NOT_FOUND";
330
1703
  ACTION_FAILED: "ACTION_FAILED";
331
1704
  IDLE_TIMEOUT: "IDLE_TIMEOUT";
@@ -334,6 +1707,57 @@ export declare const TapHoundReportSchema: z.ZodObject<{
334
1707
  EXPECT_ACTIVITY_FAILED: "EXPECT_ACTIVITY_FAILED";
335
1708
  EXPECT_ELEMENT_FAILED: "EXPECT_ELEMENT_FAILED";
336
1709
  EXPECT_LOGCAT_FAILED: "EXPECT_LOGCAT_FAILED";
1710
+ EXPECT_LOGCAT_AMBIGUOUS: "EXPECT_LOGCAT_AMBIGUOUS";
1711
+ BRIDGE_NO_ESCAPE: "BRIDGE_NO_ESCAPE";
1712
+ BRIDGE_NOT_RETURNED: "BRIDGE_NOT_RETURNED";
1713
+ WAIT_TIMEOUT: "WAIT_TIMEOUT";
1714
+ DEVICE_ROLE_UNMAPPED: "DEVICE_ROLE_UNMAPPED";
1715
+ EXTERNAL_FLOW_NOT_FOUND: "EXTERNAL_FLOW_NOT_FOUND";
1716
+ EXTERNAL_FLOW_STALE: "EXTERNAL_FLOW_STALE";
1717
+ EXTERNAL_LOCATOR_STRICTNESS: "EXTERNAL_LOCATOR_STRICTNESS";
1718
+ EXTERNAL_PACKAGE_MISMATCH: "EXTERNAL_PACKAGE_MISMATCH";
1719
+ EXTERNAL_ACTIVITY_MISMATCH: "EXTERNAL_ACTIVITY_MISMATCH";
1720
+ EXTERNAL_STEP_FAILED: "EXTERNAL_STEP_FAILED";
1721
+ CONTEXT_INVALID: "CONTEXT_INVALID";
1722
+ CONTEXT_STALE: "CONTEXT_STALE";
1723
+ BRIEF_INVALID: "BRIEF_INVALID";
1724
+ CONTEXT_MODULE_NOT_FOUND: "CONTEXT_MODULE_NOT_FOUND";
1725
+ CONTEXT_MODULE_INCOMPLETE: "CONTEXT_MODULE_INCOMPLETE";
1726
+ CONTEXT_SCHEMA_INVALID: "CONTEXT_SCHEMA_INVALID";
1727
+ CONTEXT_IDENTITY_MISMATCH: "CONTEXT_IDENTITY_MISMATCH";
1728
+ PROJECT_ROOT_UNREADABLE: "PROJECT_ROOT_UNREADABLE";
1729
+ PROJECT_ROOT_NOT_DIRECTORY: "PROJECT_ROOT_NOT_DIRECTORY";
1730
+ EVIDENCE_SECRET_PATH: "EVIDENCE_SECRET_PATH";
1731
+ EVIDENCE_NOT_FOUND: "EVIDENCE_NOT_FOUND";
1732
+ EVIDENCE_UNREADABLE: "EVIDENCE_UNREADABLE";
1733
+ EVIDENCE_NOT_FILE: "EVIDENCE_NOT_FILE";
1734
+ EVIDENCE_PATH_ESCAPE: "EVIDENCE_PATH_ESCAPE";
1735
+ EVIDENCE_CHANGED_IDENTITY: "EVIDENCE_CHANGED_IDENTITY";
1736
+ EVIDENCE_TOO_LARGE: "EVIDENCE_TOO_LARGE";
1737
+ EVIDENCE_HASH_MISMATCH: "EVIDENCE_HASH_MISMATCH";
1738
+ MANUAL_STEP_REQUIRED: "MANUAL_STEP_REQUIRED";
1739
+ ALIGN_DEVICE_UNAVAILABLE: "ALIGN_DEVICE_UNAVAILABLE";
1740
+ ALIGN_CAMERA_INTENT_FAILED: "ALIGN_CAMERA_INTENT_FAILED";
1741
+ ALIGN_CAMERA_NOT_LAUNCHED: "ALIGN_CAMERA_NOT_LAUNCHED";
1742
+ ALIGN_SHUTTER_NOT_FOUND: "ALIGN_SHUTTER_NOT_FOUND";
1743
+ ALIGN_SHUTTER_AMBIGUOUS: "ALIGN_SHUTTER_AMBIGUOUS";
1744
+ ALIGN_SHUTTER_NO_RESOURCE_ID: "ALIGN_SHUTTER_NO_RESOURCE_ID";
1745
+ ALIGN_CONFIRM_NOT_FOUND: "ALIGN_CONFIRM_NOT_FOUND";
1746
+ ALIGN_CONFIRM_AMBIGUOUS: "ALIGN_CONFIRM_AMBIGUOUS";
1747
+ ALIGN_CONFIRM_NO_RESOURCE_ID: "ALIGN_CONFIRM_NO_RESOURCE_ID";
1748
+ ALIGN_FLOW_EXISTS: "ALIGN_FLOW_EXISTS";
1749
+ CONTRACT_INVALID: "CONTRACT_INVALID";
1750
+ CONTRACT_JOURNEY_MISSING: "CONTRACT_JOURNEY_MISSING";
1751
+ CONTRACT_JOURNEY_DRIFT: "CONTRACT_JOURNEY_DRIFT";
1752
+ CONTRACT_EVIDENCE_INSUFFICIENT: "CONTRACT_EVIDENCE_INSUFFICIENT";
1753
+ CONTRACT_KNOWLEDGE_UNAVAILABLE: "CONTRACT_KNOWLEDGE_UNAVAILABLE";
1754
+ REPLAY_POLICY_UNAVAILABLE: "REPLAY_POLICY_UNAVAILABLE";
1755
+ CHECKPOINT_FAILED: "CHECKPOINT_FAILED";
1756
+ CHECKPOINT_UNRESOLVED: "CHECKPOINT_UNRESOLVED";
1757
+ BASELINE_INCOMPARABLE: "BASELINE_INCOMPARABLE";
1758
+ BASELINE_EMPTY: "BASELINE_EMPTY";
1759
+ GIT_ROOT_NOT_FOUND: "GIT_ROOT_NOT_FOUND";
1760
+ GIT_REF_INVALID: "GIT_REF_INVALID";
337
1761
  COLLECTION_FAILED: "COLLECTION_FAILED";
338
1762
  INTERNAL_ERROR: "INTERNAL_ERROR";
339
1763
  }>;
@@ -342,8 +1766,11 @@ export declare const TapHoundReportSchema: z.ZodObject<{
342
1766
  stepIndex: z.ZodOptional<z.ZodNumber>;
343
1767
  }, z.core.$strict>>;
344
1768
  fallbackUsed: z.ZodBoolean;
1769
+ schemaVersion: z.ZodLiteral<4>;
345
1770
  }, z.core.$strict>;
346
1771
  export type ReportFailure = z.infer<typeof ReportFailureSchema>;
347
1772
  export type StepReport = z.infer<typeof StepReportSchema>;
348
- export type TapHoundReport = z.infer<typeof TapHoundReportSchema>;
1773
+ export type CheckpointReport = z.infer<typeof CheckpointReportSchema>;
1774
+ export type TapHoundReportV4 = z.infer<typeof TapHoundReportV4Schema>;
1775
+ export type TapHoundReport = TapHoundReportV4;
349
1776
  export declare function hashJourney(journey: unknown): string;