swipium 1.3.0 → 1.5.0

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 (438) hide show
  1. package/CHANGELOG.md +142 -0
  2. package/README.md +89 -25
  3. package/THREAT_MODEL.md +1 -1
  4. package/dist/appMap/automationLink.js +13 -3
  5. package/dist/appMap/automationLink.js.map +1 -1
  6. package/dist/appMap/build.js +28 -6
  7. package/dist/appMap/build.js.map +1 -1
  8. package/dist/appMap/codeIndex.js +29 -3
  9. package/dist/appMap/codeIndex.js.map +1 -1
  10. package/dist/appMap/featureIndex.js +20 -2
  11. package/dist/appMap/featureIndex.js.map +1 -1
  12. package/dist/appMap/featureModel.js +42 -6
  13. package/dist/appMap/featureModel.js.map +1 -1
  14. package/dist/appMap/firstRunApply.js +22 -4
  15. package/dist/appMap/firstRunApply.js.map +1 -1
  16. package/dist/appMap/fsWalk.js +19 -2
  17. package/dist/appMap/fsWalk.js.map +1 -1
  18. package/dist/appMap/issues.js +0 -20
  19. package/dist/appMap/issues.js.map +1 -1
  20. package/dist/appMap/migrations.js +1 -1
  21. package/dist/appMap/migrations.js.map +1 -1
  22. package/dist/appMap/prelaunch.js.map +1 -1
  23. package/dist/appMap/projectRegistry.js +8 -2
  24. package/dist/appMap/projectRegistry.js.map +1 -1
  25. package/dist/appMap/query.js +20 -4
  26. package/dist/appMap/query.js.map +1 -1
  27. package/dist/appMap/runtimeMerge.js +9 -2
  28. package/dist/appMap/runtimeMerge.js.map +1 -1
  29. package/dist/appMap/schema.js.map +1 -1
  30. package/dist/appMap/screenMatch.js +5 -1
  31. package/dist/appMap/screenMatch.js.map +1 -1
  32. package/dist/appMap/staticScan.js +134 -22
  33. package/dist/appMap/staticScan.js.map +1 -1
  34. package/dist/appMap/store.js +4 -79
  35. package/dist/appMap/store.js.map +1 -1
  36. package/dist/appMap/tsAstScan.js +31 -9
  37. package/dist/appMap/tsAstScan.js.map +1 -1
  38. package/dist/artifacts/bundletool.js +44 -7
  39. package/dist/artifacts/bundletool.js.map +1 -1
  40. package/dist/artifacts/resolve.js +33 -6
  41. package/dist/artifacts/resolve.js.map +1 -1
  42. package/dist/automation/capabilities.js +109 -27
  43. package/dist/automation/capabilities.js.map +1 -1
  44. package/dist/automation/gestures.js +5 -1
  45. package/dist/automation/gestures.js.map +1 -1
  46. package/dist/automation/plan.js +65 -17
  47. package/dist/automation/plan.js.map +1 -1
  48. package/dist/automation/report.js +12 -2
  49. package/dist/automation/report.js.map +1 -1
  50. package/dist/automation/selectors.js +8 -3
  51. package/dist/automation/selectors.js.map +1 -1
  52. package/dist/automation/types.js.map +1 -1
  53. package/dist/automation/waits.js +9 -3
  54. package/dist/automation/waits.js.map +1 -1
  55. package/dist/automation/webview.js +7 -1
  56. package/dist/automation/webview.js.map +1 -1
  57. package/dist/automationGen/appiumModel.js +3 -1
  58. package/dist/automationGen/appiumModel.js.map +1 -1
  59. package/dist/automationGen/ciEmitter.js +1 -1
  60. package/dist/automationGen/ciEmitter.js.map +1 -1
  61. package/dist/automationGen/jsEmitter.js +29 -21
  62. package/dist/automationGen/jsEmitter.js.map +1 -1
  63. package/dist/automationGen/projectProfile.js +5 -1
  64. package/dist/automationGen/projectProfile.js.map +1 -1
  65. package/dist/automationGen/pythonEmitter.js +3 -3
  66. package/dist/automationGen/pythonEmitter.js.map +1 -1
  67. package/dist/automationGen/readmeEmitter.js.map +1 -1
  68. package/dist/automationGen/suitePlan.js +11 -6
  69. package/dist/automationGen/suitePlan.js.map +1 -1
  70. package/dist/automationGen/validation.js +33 -5
  71. package/dist/automationGen/validation.js.map +1 -1
  72. package/dist/build/parseBuildLog.js +234 -30
  73. package/dist/build/parseBuildLog.js.map +1 -1
  74. package/dist/build/plan.js +33 -12
  75. package/dist/build/plan.js.map +1 -1
  76. package/dist/ci/preflight.js.map +1 -1
  77. package/dist/cli/init.js.map +1 -1
  78. package/dist/cli/scan.js +1 -1
  79. package/dist/cli/scan.js.map +1 -1
  80. package/dist/cli/suite.js +2 -2
  81. package/dist/cli/suite.js.map +1 -1
  82. package/dist/cli/verify.js.map +1 -1
  83. package/dist/context/detect.js +10 -4
  84. package/dist/context/detect.js.map +1 -1
  85. package/dist/context/findApps.js +16 -2
  86. package/dist/context/findApps.js.map +1 -1
  87. package/dist/context/scan.js.map +1 -1
  88. package/dist/core/target.js +7 -5
  89. package/dist/core/target.js.map +1 -1
  90. package/dist/core/targetPlan.js +135 -17
  91. package/dist/core/targetPlan.js.map +1 -1
  92. package/dist/drivers/DirectDriver.js +17 -7
  93. package/dist/drivers/DirectDriver.js.map +1 -1
  94. package/dist/drivers/SimctlDriver.js +4 -1
  95. package/dist/drivers/SimctlDriver.js.map +1 -1
  96. package/dist/drivers/WdaDriver.js +15 -5
  97. package/dist/drivers/WdaDriver.js.map +1 -1
  98. package/dist/explore/candidates.js +5 -1
  99. package/dist/explore/candidates.js.map +1 -1
  100. package/dist/explore/graph.js +11 -2
  101. package/dist/explore/graph.js.map +1 -1
  102. package/dist/explore/memory.js +4 -1
  103. package/dist/explore/memory.js.map +1 -1
  104. package/dist/explore/planner.js +54 -9
  105. package/dist/explore/planner.js.map +1 -1
  106. package/dist/explore/policy.js +6 -1
  107. package/dist/explore/policy.js.map +1 -1
  108. package/dist/explore/runner.js +179 -23
  109. package/dist/explore/runner.js.map +1 -1
  110. package/dist/explore/signatures.js +3 -1
  111. package/dist/explore/signatures.js.map +1 -1
  112. package/dist/explore/suite.js +3 -1
  113. package/dist/explore/suite.js.map +1 -1
  114. package/dist/featureTesting/executionBootstrap.js +128 -19
  115. package/dist/featureTesting/executionBootstrap.js.map +1 -1
  116. package/dist/featureTesting/featureMap.js +4 -1
  117. package/dist/featureTesting/featureMap.js.map +1 -1
  118. package/dist/featureTesting/featureScope.js +94 -13
  119. package/dist/featureTesting/featureScope.js.map +1 -1
  120. package/dist/featureTesting/mapFeatureScope.js +37 -8
  121. package/dist/featureTesting/mapFeatureScope.js.map +1 -1
  122. package/dist/featureTesting/objectiveModel.js +5 -1
  123. package/dist/featureTesting/objectiveModel.js.map +1 -1
  124. package/dist/featureTesting/resultMerge.js +10 -2
  125. package/dist/featureTesting/resultMerge.js.map +1 -1
  126. package/dist/featureTesting/sources.js +4 -1
  127. package/dist/featureTesting/sources.js.map +1 -1
  128. package/dist/featureTesting/suiteBridge.js +7 -1
  129. package/dist/featureTesting/suiteBridge.js.map +1 -1
  130. package/dist/featureTesting/synonyms.js +31 -3
  131. package/dist/featureTesting/synonyms.js.map +1 -1
  132. package/dist/featureTesting/testCaseFactory.js +16 -4
  133. package/dist/featureTesting/testCaseFactory.js.map +1 -1
  134. package/dist/featureTesting/testPlan.js +32 -10
  135. package/dist/featureTesting/testPlan.js.map +1 -1
  136. package/dist/firstRun/classifyScreen.js +4 -1
  137. package/dist/firstRun/classifyScreen.js.map +1 -1
  138. package/dist/firstRun/firstRunPlanner.js +5 -2
  139. package/dist/firstRun/firstRunPlanner.js.map +1 -1
  140. package/dist/firstRun/firstRunRunner.js +84 -23
  141. package/dist/firstRun/firstRunRunner.js.map +1 -1
  142. package/dist/firstRun/generatedDataPolicy.js +16 -6
  143. package/dist/firstRun/generatedDataPolicy.js.map +1 -1
  144. package/dist/firstRun/inputPlanner.js +40 -6
  145. package/dist/firstRun/inputPlanner.js.map +1 -1
  146. package/dist/firstRun/paywallPolicy.js.map +1 -1
  147. package/dist/fixtures/catalog.js +39 -6
  148. package/dist/fixtures/catalog.js.map +1 -1
  149. package/dist/flows/generate.js +53 -12
  150. package/dist/flows/generate.js.map +1 -1
  151. package/dist/flows/lint.js +88 -14
  152. package/dist/flows/lint.js.map +1 -1
  153. package/dist/flows/pack.js +18 -2
  154. package/dist/flows/pack.js.map +1 -1
  155. package/dist/flows/repair.js +71 -20
  156. package/dist/flows/repair.js.map +1 -1
  157. package/dist/flows/run.js +164 -51
  158. package/dist/flows/run.js.map +1 -1
  159. package/dist/flows/schema.js +57 -20
  160. package/dist/flows/schema.js.map +1 -1
  161. package/dist/flows/seedExec.js +5 -1
  162. package/dist/flows/seedExec.js.map +1 -1
  163. package/dist/ios/signing.js +32 -3
  164. package/dist/ios/signing.js.map +1 -1
  165. package/dist/issues/classify.js +12 -4
  166. package/dist/issues/classify.js.map +1 -1
  167. package/dist/issues/fingerprint.js +11 -5
  168. package/dist/issues/fingerprint.js.map +1 -1
  169. package/dist/issues/index.js +4 -20
  170. package/dist/issues/index.js.map +1 -1
  171. package/dist/issues/metrics.js +2 -1
  172. package/dist/issues/metrics.js.map +1 -1
  173. package/dist/issues/recurrence.js.map +1 -1
  174. package/dist/issues/report.js +8 -4
  175. package/dist/issues/report.js.map +1 -1
  176. package/dist/issues/reportBridge.js +36 -5
  177. package/dist/issues/reportBridge.js.map +1 -1
  178. package/dist/issues/schema.js.map +1 -1
  179. package/dist/issues/store.js.map +1 -1
  180. package/dist/lib/android.js +9 -1
  181. package/dist/lib/android.js.map +1 -1
  182. package/dist/lib/device.js +21 -5
  183. package/dist/lib/device.js.map +1 -1
  184. package/dist/lib/image.js +11 -2
  185. package/dist/lib/image.js.map +1 -1
  186. package/dist/lib/lockfile.js +60 -0
  187. package/dist/lib/lockfile.js.map +1 -0
  188. package/dist/lib/needsInput.js +6 -3
  189. package/dist/lib/needsInput.js.map +1 -1
  190. package/dist/lib/png.js +2 -1
  191. package/dist/lib/png.js.map +1 -1
  192. package/dist/lib/result.js +16 -1
  193. package/dist/lib/result.js.map +1 -1
  194. package/dist/lib/schemaHash.js +4 -2
  195. package/dist/lib/schemaHash.js.map +1 -1
  196. package/dist/lib/sensitive.js +3 -1
  197. package/dist/lib/sensitive.js.map +1 -1
  198. package/dist/lib/simctl.js.map +1 -1
  199. package/dist/lib/spawn.js +29 -10
  200. package/dist/lib/spawn.js.map +1 -1
  201. package/dist/lib/wda.js +27 -10
  202. package/dist/lib/wda.js.map +1 -1
  203. package/dist/lib/wdaConfig.js +12 -5
  204. package/dist/lib/wdaConfig.js.map +1 -1
  205. package/dist/lib/wdaTune.js +52 -23
  206. package/dist/lib/wdaTune.js.map +1 -1
  207. package/dist/mobileAudit/checks.js +141 -19
  208. package/dist/mobileAudit/checks.js.map +1 -1
  209. package/dist/mobileAudit/profiles.js +120 -19
  210. package/dist/mobileAudit/profiles.js.map +1 -1
  211. package/dist/mobileAudit/results.js +7 -2
  212. package/dist/mobileAudit/results.js.map +1 -1
  213. package/dist/mobileAudit/runner.js +144 -19
  214. package/dist/mobileAudit/runner.js.map +1 -1
  215. package/dist/oracle/auth.js.map +1 -1
  216. package/dist/oracle/failures.js +888 -131
  217. package/dist/oracle/failures.js.map +1 -1
  218. package/dist/oracle/health.js +90 -14
  219. package/dist/oracle/health.js.map +1 -1
  220. package/dist/oracle/locator.js +147 -18
  221. package/dist/oracle/locator.js.map +1 -1
  222. package/dist/oracle/record.js.map +1 -1
  223. package/dist/orchestration/goal.js +3 -9
  224. package/dist/orchestration/goal.js.map +1 -1
  225. package/dist/orchestration/testThis/execute.js +126 -0
  226. package/dist/orchestration/testThis/execute.js.map +1 -0
  227. package/dist/orchestration/testThis/pipeline.js +324 -0
  228. package/dist/orchestration/testThis/pipeline.js.map +1 -0
  229. package/dist/orchestration/testThis/plan.js +430 -0
  230. package/dist/orchestration/testThis/plan.js.map +1 -0
  231. package/dist/orchestration/testThis/terminal.js +118 -0
  232. package/dist/orchestration/testThis/terminal.js.map +1 -0
  233. package/dist/orchestration/testThis/types.js +12 -0
  234. package/dist/orchestration/testThis/types.js.map +1 -0
  235. package/dist/plan/plan.js.map +1 -1
  236. package/dist/prompts/index.js +3 -3
  237. package/dist/prompts/index.js.map +1 -1
  238. package/dist/report/coverage.js +0 -1
  239. package/dist/report/coverage.js.map +1 -1
  240. package/dist/report/evidence.js.map +1 -1
  241. package/dist/report/export.js +59 -37
  242. package/dist/report/export.js.map +1 -1
  243. package/dist/report/flake.js +13 -14
  244. package/dist/report/flake.js.map +1 -1
  245. package/dist/report/history.js +72 -38
  246. package/dist/report/history.js.map +1 -1
  247. package/dist/report/policy.js +11 -3
  248. package/dist/report/policy.js.map +1 -1
  249. package/dist/report/qaLevel.js +2 -8
  250. package/dist/report/qaLevel.js.map +1 -1
  251. package/dist/report/readiness.js +42 -12
  252. package/dist/report/readiness.js.map +1 -1
  253. package/dist/report/summary.js.map +1 -1
  254. package/dist/report/timing.js +23 -23
  255. package/dist/report/timing.js.map +1 -1
  256. package/dist/server.js +42 -37
  257. package/dist/server.js.map +1 -1
  258. package/dist/services/automationGenerate.js.map +1 -1
  259. package/dist/services/build.js +8 -2
  260. package/dist/services/build.js.map +1 -1
  261. package/dist/services/preflight.js +38 -6
  262. package/dist/services/preflight.js.map +1 -1
  263. package/dist/services/prepareAndroid.js +46 -10
  264. package/dist/services/prepareAndroid.js.map +1 -1
  265. package/dist/services/prepareIos.js +72 -10
  266. package/dist/services/prepareIos.js.map +1 -1
  267. package/dist/services/report.js +173 -37
  268. package/dist/services/report.js.map +1 -1
  269. package/dist/services/smoke.js +36 -6
  270. package/dist/services/smoke.js.map +1 -1
  271. package/dist/services/suiteGenerate.js +16 -4
  272. package/dist/services/suiteGenerate.js.map +1 -1
  273. package/dist/services/testSuiteKnowledge.js +38 -6
  274. package/dist/services/testSuiteKnowledge.js.map +1 -1
  275. package/dist/session/attach.js +16 -0
  276. package/dist/session/attach.js.map +1 -1
  277. package/dist/session/processRegistry.js +164 -0
  278. package/dist/session/processRegistry.js.map +1 -0
  279. package/dist/session/progress.js +1 -1
  280. package/dist/session/progress.js.map +1 -1
  281. package/dist/session/store.js +216 -43
  282. package/dist/session/store.js.map +1 -1
  283. package/dist/snapshot/overlays.js +7 -2
  284. package/dist/snapshot/overlays.js.map +1 -1
  285. package/dist/snapshot/parse.js +2 -8
  286. package/dist/snapshot/parse.js.map +1 -1
  287. package/dist/snapshot/present.js +27 -3
  288. package/dist/snapshot/present.js.map +1 -1
  289. package/dist/state/profile.js +36 -9
  290. package/dist/state/profile.js.map +1 -1
  291. package/dist/suite/compile.js +7 -2
  292. package/dist/suite/compile.js.map +1 -1
  293. package/dist/suite/lint.js +21 -3
  294. package/dist/suite/lint.js.map +1 -1
  295. package/dist/suite/pom.js +26 -4
  296. package/dist/suite/pom.js.map +1 -1
  297. package/dist/suite/testcase.js +6 -4
  298. package/dist/suite/testcase.js.map +1 -1
  299. package/dist/testSuite/exporter.js +6 -2
  300. package/dist/testSuite/exporter.js.map +1 -1
  301. package/dist/testSuite/generator.js +31 -6
  302. package/dist/testSuite/generator.js.map +1 -1
  303. package/dist/testSuite/issueLinks.js.map +1 -1
  304. package/dist/testSuite/lint.js +1 -1
  305. package/dist/testSuite/lint.js.map +1 -1
  306. package/dist/testSuite/merge.js +8 -2
  307. package/dist/testSuite/merge.js.map +1 -1
  308. package/dist/testSuite/schema.js +16 -11
  309. package/dist/testSuite/schema.js.map +1 -1
  310. package/dist/testSuite/store.js +9 -1
  311. package/dist/testSuite/store.js.map +1 -1
  312. package/dist/tools/act.js +107 -43
  313. package/dist/tools/act.js.map +1 -1
  314. package/dist/tools/agent.js +123 -25
  315. package/dist/tools/agent.js.map +1 -1
  316. package/dist/tools/appControl.js +16 -3
  317. package/dist/tools/appControl.js.map +1 -1
  318. package/dist/tools/appMap.js +331 -63
  319. package/dist/tools/appMap.js.map +1 -1
  320. package/dist/tools/assertVisual.js +12 -2
  321. package/dist/tools/assertVisual.js.map +1 -1
  322. package/dist/tools/automationGenerate.js +276 -241
  323. package/dist/tools/automationGenerate.js.map +1 -1
  324. package/dist/tools/build.js +92 -41
  325. package/dist/tools/build.js.map +1 -1
  326. package/dist/tools/bundletool.js +139 -28
  327. package/dist/tools/bundletool.js.map +1 -1
  328. package/dist/tools/capabilities.js +45 -71
  329. package/dist/tools/capabilities.js.map +1 -1
  330. package/dist/tools/clearOverlay.js +45 -8
  331. package/dist/tools/clearOverlay.js.map +1 -1
  332. package/dist/tools/detectContext.js +1 -1
  333. package/dist/tools/detectContext.js.map +1 -1
  334. package/dist/tools/device.js +44 -7
  335. package/dist/tools/device.js.map +1 -1
  336. package/dist/tools/doctor.js +38 -15
  337. package/dist/tools/doctor.js.map +1 -1
  338. package/dist/tools/explore.js +96 -22
  339. package/dist/tools/explore.js.map +1 -1
  340. package/dist/tools/featureTesting.js +153 -114
  341. package/dist/tools/featureTesting.js.map +1 -1
  342. package/dist/tools/firstRun.js +95 -60
  343. package/dist/tools/firstRun.js.map +1 -1
  344. package/dist/tools/flow.js +236 -101
  345. package/dist/tools/flow.js.map +1 -1
  346. package/dist/tools/flowGenerate.js +51 -47
  347. package/dist/tools/flowGenerate.js.map +1 -1
  348. package/dist/tools/flowRepair.js +24 -4
  349. package/dist/tools/flowRepair.js.map +1 -1
  350. package/dist/tools/generate.js +236 -0
  351. package/dist/tools/generate.js.map +1 -0
  352. package/dist/tools/getArtifact.js +21 -3
  353. package/dist/tools/getArtifact.js.map +1 -1
  354. package/dist/tools/health.js +3 -1
  355. package/dist/tools/health.js.map +1 -1
  356. package/dist/tools/history.js +40 -10
  357. package/dist/tools/history.js.map +1 -1
  358. package/dist/tools/ios.js +157 -25
  359. package/dist/tools/ios.js.map +1 -1
  360. package/dist/tools/issues.js +19 -150
  361. package/dist/tools/issues.js.map +1 -1
  362. package/dist/tools/jobs.js +23 -4
  363. package/dist/tools/jobs.js.map +1 -1
  364. package/dist/tools/locator.js +36 -8
  365. package/dist/tools/locator.js.map +1 -1
  366. package/dist/tools/metro.js +61 -16
  367. package/dist/tools/metro.js.map +1 -1
  368. package/dist/tools/mobileAudit.js +67 -15
  369. package/dist/tools/mobileAudit.js.map +1 -1
  370. package/dist/tools/network.js +6 -1
  371. package/dist/tools/network.js.map +1 -1
  372. package/dist/tools/note.js +20 -6
  373. package/dist/tools/note.js.map +1 -1
  374. package/dist/tools/permissions.js +31 -6
  375. package/dist/tools/permissions.js.map +1 -1
  376. package/dist/tools/plan.js +5 -2
  377. package/dist/tools/plan.js.map +1 -1
  378. package/dist/tools/prepareIosTarget.js +31 -8
  379. package/dist/tools/prepareIosTarget.js.map +1 -1
  380. package/dist/tools/prepareTarget.js +97 -18
  381. package/dist/tools/prepareTarget.js.map +1 -1
  382. package/dist/tools/report.js +24 -5
  383. package/dist/tools/report.js.map +1 -1
  384. package/dist/tools/resolveArtifact.js +9 -5
  385. package/dist/tools/resolveArtifact.js.map +1 -1
  386. package/dist/tools/resolveTarget.js +11 -2
  387. package/dist/tools/resolveTarget.js.map +1 -1
  388. package/dist/tools/screenInfo.js +8 -2
  389. package/dist/tools/screenInfo.js.map +1 -1
  390. package/dist/tools/screenRecord.js +74 -11
  391. package/dist/tools/screenRecord.js.map +1 -1
  392. package/dist/tools/screenshot.js +23 -6
  393. package/dist/tools/screenshot.js.map +1 -1
  394. package/dist/tools/seed.js +38 -6
  395. package/dist/tools/seed.js.map +1 -1
  396. package/dist/tools/smoke.js +16 -3
  397. package/dist/tools/smoke.js.map +1 -1
  398. package/dist/tools/snapshot.js +59 -6
  399. package/dist/tools/snapshot.js.map +1 -1
  400. package/dist/tools/startSession.js +54 -9
  401. package/dist/tools/startSession.js.map +1 -1
  402. package/dist/tools/state.js +62 -15
  403. package/dist/tools/state.js.map +1 -1
  404. package/dist/tools/suite.js +350 -298
  405. package/dist/tools/suite.js.map +1 -1
  406. package/dist/tools/testSuite.js +94 -28
  407. package/dist/tools/testSuite.js.map +1 -1
  408. package/dist/tools/testThis.js +30 -793
  409. package/dist/tools/testThis.js.map +1 -1
  410. package/dist/tools/visual.js +124 -18
  411. package/dist/tools/visual.js.map +1 -1
  412. package/dist/tools/visualText.js +51 -6
  413. package/dist/tools/visualText.js.map +1 -1
  414. package/dist/tools/wait.js +18 -3
  415. package/dist/tools/wait.js.map +1 -1
  416. package/dist/tools/wda.js +157 -29
  417. package/dist/tools/wda.js.map +1 -1
  418. package/dist/version.js +17 -49
  419. package/dist/version.js.map +1 -1
  420. package/dist/visual/ocr.js +12 -2
  421. package/dist/visual/ocr.js.map +1 -1
  422. package/dist/visual/provider.js +7 -3
  423. package/dist/visual/provider.js.map +1 -1
  424. package/docs/mcp-server.md +44 -4
  425. package/docs/tools.md +42 -100
  426. package/package.json +14 -5
  427. package/dist/appMap/diff.js +0 -60
  428. package/dist/appMap/diff.js.map +0 -1
  429. package/dist/automation/maestroIr.js +0 -282
  430. package/dist/automation/maestroIr.js.map +0 -1
  431. package/dist/interop/maestro.js +0 -151
  432. package/dist/interop/maestro.js.map +0 -1
  433. package/dist/tools/idling.js +0 -104
  434. package/dist/tools/idling.js.map +0 -1
  435. package/dist/tools/inputCapabilities.js +0 -30
  436. package/dist/tools/inputCapabilities.js.map +0 -1
  437. package/dist/tools/maestro.js +0 -78
  438. package/dist/tools/maestro.js.map +0 -1
@@ -64,7 +64,15 @@ function valueForField(session, label, locatorValue, role, secure, gen) {
64
64
  session.inputValues.set(varName, g.value);
65
65
  if (g.secret)
66
66
  session.secrets.add(g.value);
67
- session.generatedValues.push({ at: Date.now(), fixture: 'generated', field, varName, generator: g.generator, value: g.value, secret: g.secret });
67
+ session.generatedValues.push({
68
+ at: Date.now(),
69
+ fixture: 'generated',
70
+ field,
71
+ varName,
72
+ generator: g.generator,
73
+ value: g.value,
74
+ secret: g.secret,
75
+ });
68
76
  return { value: g.value, varName, secret: g.secret, fixture: 'generated', field, source: 'generator' };
69
77
  }
70
78
  }
@@ -125,7 +133,10 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
125
133
  // SWIPIUM-REQ-02: resolve the generated-data decision once. Only "allowed" when policy + the
126
134
  // classified environment (test/staging) permit safe throwaway data; otherwise generation is off.
127
135
  const genCtx = opts.allowGeneratedData
128
- ? (() => { const r = resolveFirstRunPolicy(session, { testDataPolicyPath: opts.testDataPolicyPath, allowGeneratedAccount: true }); return { allowed: r.decision.allowed, policy: r.policy }; })()
136
+ ? (() => {
137
+ const r = resolveFirstRunPolicy(session, { testDataPolicyPath: opts.testDataPolicyPath, allowGeneratedAccount: true });
138
+ return { allowed: r.decision.allowed, policy: r.policy };
139
+ })()
129
140
  : undefined;
130
141
  const startedAt = Date.now();
131
142
  const deadline = startedAt + (opts.maxDurationMs ?? 6 * 60_000);
@@ -172,7 +183,10 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
172
183
  await recordHealthFindings(sessions, session, health.findings, driver, health.foreground);
173
184
  if (!health.nativeHealthy)
174
185
  summary.appErrors += 0; // native handled separately below
175
- const healthSnap = { native: (health.nativeHealthy ? 'OK' : 'error'), app: health.appStatus === 'error' ? 'error' : health.appStatus === 'degraded' ? 'degraded' : 'OK' };
186
+ const healthSnap = {
187
+ native: (health.nativeHealthy ? 'OK' : 'error'),
188
+ app: health.appStatus === 'error' ? 'error' : health.appStatus === 'degraded' ? 'degraded' : 'OK',
189
+ };
176
190
  let screenshotUri;
177
191
  let png;
178
192
  // Respect the SESSION screenshot budget (not a separate fixed counter) so two observes per
@@ -216,7 +230,20 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
216
230
  authState: authWall ? 'auth_required' : undefined,
217
231
  visualOnlyReason: visual ? 'no reliable UI tree (canvas/map/webview or empty snapshot)' : undefined,
218
232
  locatorQuality: visual ? undefined : locatorQuality(elements),
219
- elements: candidates.map((c) => ({ ref: c.ref, candidateSignature: c.signatureKey, label: c.label, role: c.role, bounds: c.bounds, locator: c.locator, actionType: c.actionType, risk: c.risk, riskClass: c.riskClass, stepUp: c.stepUp, requiresTwoStepConfirmation: c.requiresTwoStepConfirmation, reason: c.reason })),
233
+ elements: candidates.map((c) => ({
234
+ ref: c.ref,
235
+ candidateSignature: c.signatureKey,
236
+ label: c.label,
237
+ role: c.role,
238
+ bounds: c.bounds,
239
+ locator: c.locator,
240
+ actionType: c.actionType,
241
+ risk: c.risk,
242
+ riskClass: c.riskClass,
243
+ stepUp: c.stepUp,
244
+ requiresTwoStepConfirmation: c.requiresTwoStepConfirmation,
245
+ reason: c.reason,
246
+ })),
220
247
  });
221
248
  if (isNew)
222
249
  summary.screensVisited++;
@@ -226,7 +253,15 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
226
253
  summary.appErrors++;
227
254
  // Visual-only screens get a recorded visual assertion as their oracle (Milestone E).
228
255
  if (visual && isNew) {
229
- note({ workflow: 'guided_exploration', outcome: 'pass', category: undefined, reason: `visual-only screen "${foreground}" — verified by screenshot`, verifiedVisually: true, method: 'visual', artifactUris: screenshotUri ? [screenshotUri] : undefined });
256
+ note({
257
+ workflow: 'guided_exploration',
258
+ outcome: 'pass',
259
+ category: undefined,
260
+ reason: `visual-only screen "${foreground}" — verified by screenshot`,
261
+ verifiedVisually: true,
262
+ method: 'visual',
263
+ artifactUris: screenshotUri ? [screenshotUri] : undefined,
264
+ });
230
265
  }
231
266
  return { node, isNew, candidates, visual, authWall, actionLikeSkipped };
232
267
  };
@@ -299,18 +334,41 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
299
334
  if (!planned && (opts.strategy === 'task_planner' || opts.strategy === 'hybrid')) {
300
335
  planned = true;
301
336
  const screenText = obs.candidates.map((c) => `${c.label ?? ''} ${c.locator?.value ?? ''}`).join(' ');
302
- const domain = inferAppDomain({ packageId: session.appId, goal: opts.goal, screenText, fixtures: session.fixtures.map((f) => f.name) });
303
- const tasks = proposeTasks({ packageId: session.appId, goal: opts.goal, screenText, fixtures: session.fixtures.map((f) => f.name), candidates: obs.candidates });
337
+ const domain = inferAppDomain({
338
+ packageId: session.appId,
339
+ goal: opts.goal,
340
+ screenText,
341
+ fixtures: session.fixtures.map((f) => f.name),
342
+ });
343
+ const tasks = proposeTasks({
344
+ packageId: session.appId,
345
+ goal: opts.goal,
346
+ screenText,
347
+ fixtures: session.fixtures.map((f) => f.name),
348
+ candidates: obs.candidates,
349
+ });
304
350
  graph.setTasks(tasks);
305
351
  graph.setHypotheses([`domain:${domain.domain}`, ...tasks.map((t) => `${t.feature}:${t.title}`)]);
306
352
  graph.setBlockedPreconditions([...new Set(tasks.flatMap((t) => t.preconditions))]);
307
353
  }
308
354
  // App error → record + stop this path (do not hide bugs; do not keep crawling a broken screen).
309
355
  if (obs.node.health.app === 'error') {
310
- note({ workflow: 'guided_exploration', outcome: 'fail', category: 'app_bug', reason: `app-layer error on "${obs.node.title}"`, artifactUris: obs.node.screenshotUri ? [obs.node.screenshotUri] : undefined });
356
+ note({
357
+ workflow: 'guided_exploration',
358
+ outcome: 'fail',
359
+ category: 'app_bug',
360
+ reason: `app-layer error on "${obs.node.title}"`,
361
+ artifactUris: obs.node.screenshotUri ? [obs.node.screenshotUri] : undefined,
362
+ });
311
363
  summary.blockers++;
312
364
  if (lastNodeId)
313
- graph.addEdge({ from: lastNodeId, to: obs.node.id, action: { type: 'tap', targetDescription: 'prev action' }, outcome: 'app_error', evidenceUris: obs.node.screenshotUri ? [obs.node.screenshotUri] : [] });
365
+ graph.addEdge({
366
+ from: lastNodeId,
367
+ to: obs.node.id,
368
+ action: { type: 'tap', targetDescription: 'prev action' },
369
+ outcome: 'app_error',
370
+ evidenceUris: obs.node.screenshotUri ? [obs.node.screenshotUri] : [],
371
+ });
314
372
  stoppedReason = 'app-layer error encountered';
315
373
  break;
316
374
  }
@@ -321,11 +379,26 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
321
379
  }
322
380
  // Auth wall with no credentials.
323
381
  if (obs.authWall && !hasCredentials(session)) {
324
- note({ workflow: 'guided_exploration', outcome: 'blocked', category: 'missing_test_data', reason: 'login required, no credentials available', missingPrecondition: 'test account credentials', recommendedSetup: 'Provide TEST_EMAIL/TEST_PASSWORD (qa_continue_from_blocker) or accept pre-login coverage.' });
382
+ note({
383
+ workflow: 'guided_exploration',
384
+ outcome: 'blocked',
385
+ category: 'missing_test_data',
386
+ reason: 'login required, no credentials available',
387
+ missingPrecondition: 'test account credentials',
388
+ recommendedSetup: 'Provide TEST_EMAIL/TEST_PASSWORD (qa_continue_from_blocker) or accept pre-login coverage.',
389
+ });
325
390
  summary.blockers++;
326
391
  if (stopOnAuth) {
327
392
  const suitePromotion = finalizeGraph(graph, summary, sameScreenEdges, destructiveCandidates, ['auth wall blocked exploration']);
328
- return { graph, summary, needsInput: NeedsInput.credentials('Exploration hit a login screen.'), state: 'needs_input', stoppedReason: 'auth required (credentials missing)', suitePromotion, destructiveCandidates: [...destructiveCandidates.values()] };
393
+ return {
394
+ graph,
395
+ summary,
396
+ needsInput: NeedsInput.credentials('Exploration hit a login screen.'),
397
+ state: 'needs_input',
398
+ stoppedReason: 'auth required (credentials missing)',
399
+ suitePromotion,
400
+ destructiveCandidates: [...destructiveCandidates.values()],
401
+ };
329
402
  }
330
403
  // stopOnAuth:false → record blocked and stop crawling further (only public screens were reachable).
331
404
  stoppedReason = 'auth required — recorded blocked, no credentials to proceed';
@@ -339,7 +412,15 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
339
412
  if (blockedCandidates.length && !skippedNotedScreens.has(obs.node.id)) {
340
413
  skippedNotedScreens.add(obs.node.id);
341
414
  const ex = blockedCandidates[0];
342
- note({ workflow: 'guided_exploration', outcome: 'skipped', category: ex.risk === 'destructive' ? 'destructive_refused' : 'other', reason: `Skipped ${ex.risk} action "${ex.label ?? ex.locator?.value}": ${ex.reason}`, recommendedSetup: ex.risk === 'destructive' ? 'Run dry_run_destructive to list candidate-bound approvals, then approve one exact candidate with disposable test state.' : 'Add accessibilityLabel/testID so the action can be judged + automated.' });
415
+ note({
416
+ workflow: 'guided_exploration',
417
+ outcome: 'skipped',
418
+ category: ex.risk === 'destructive' ? 'destructive_refused' : 'other',
419
+ reason: `Skipped ${ex.risk} action "${ex.label ?? ex.locator?.value}": ${ex.reason}`,
420
+ recommendedSetup: ex.risk === 'destructive'
421
+ ? 'Run dry_run_destructive to list candidate-bound approvals, then approve one exact candidate with disposable test state.'
422
+ : 'Add accessibilityLabel/testID so the action can be judged + automated.',
423
+ });
343
424
  summary.unsafeActionsSkipped += blockedCandidates.length;
344
425
  }
345
426
  if (!pick) {
@@ -368,7 +449,12 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
368
449
  // Nothing safe+new here. Go back to keep exploring; if we're at the root with nothing, stop.
369
450
  if (lastNodeId && obs.node.id !== graph.rootId && depth > 1) {
370
451
  await driver.pressKey('back').catch(() => { });
371
- graph.addEdge({ from: obs.node.id, action: { type: 'back', targetDescription: 'back' }, outcome: 'changed_screen', evidenceUris: [] });
452
+ graph.addEdge({
453
+ from: obs.node.id,
454
+ action: { type: 'back', targetDescription: 'back' },
455
+ outcome: 'changed_screen',
456
+ evidenceUris: [],
457
+ });
372
458
  await settle(driver, { timeoutMs: 4000 }).catch(() => { });
373
459
  lastNodeId = obs.node.id;
374
460
  continue;
@@ -385,7 +471,14 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
385
471
  if (pick.actionType === 'type') {
386
472
  const v = valueForField(session, pick.label, pick.locator?.value, pick.role, pick.secure, genCtx);
387
473
  if (!v) {
388
- note({ workflow: 'guided_exploration', outcome: 'skipped', category: 'missing_test_data', reason: `text field "${pick.label ?? pick.locator?.value}" needs a value to exercise`, missingPrecondition: 'a fixture value or credential for this field', recommendedSetup: 'Provide credentials (qa_continue_from_blocker) or a fixture { name, value }.' });
474
+ note({
475
+ workflow: 'guided_exploration',
476
+ outcome: 'skipped',
477
+ category: 'missing_test_data',
478
+ reason: `text field "${pick.label ?? pick.locator?.value}" needs a value to exercise`,
479
+ missingPrecondition: 'a fixture value or credential for this field',
480
+ recommendedSetup: 'Provide credentials (qa_continue_from_blocker) or a fixture { name, value }.',
481
+ });
389
482
  summary.blockers++;
390
483
  continue;
391
484
  }
@@ -394,7 +487,12 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
394
487
  await driver.inputText(v.value);
395
488
  }
396
489
  catch {
397
- graph.addEdge({ from: fromId, action: { type: 'type', targetDescription: pick.label ?? 'field' }, outcome: 'blocked', evidenceUris: [] });
490
+ graph.addEdge({
491
+ from: fromId,
492
+ action: { type: 'type', targetDescription: pick.label ?? 'field' },
493
+ outcome: 'blocked',
494
+ evidenceUris: [],
495
+ });
398
496
  continue;
399
497
  }
400
498
  summary.actionsTried++;
@@ -404,16 +502,40 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
404
502
  if (v.source === 'generator') {
405
503
  const rec = session.generatedValues.find((g) => g.varName === v.varName && g.fixture === v.fixture && g.field === v.field);
406
504
  if (rec && !rec.artifactUri) {
407
- rec.artifactUri = sessions.saveArtifact(session, 'generated_data', `generated-${v.varName.toLowerCase()}-${Date.now()}.json`, JSON.stringify({ schema: 'swipium.generated_value.v1', fixture: rec.fixture, field: rec.field, varName: rec.varName, generator: rec.generator, value: rec.secret ? '<redacted>' : rec.value, secret: rec.secret }, null, 2), 'application/json', `generated fixture value ${rec.fixture}.${rec.field}`);
505
+ rec.artifactUri = sessions.saveArtifact(session, 'generated_data', `generated-${v.varName.toLowerCase()}-${Date.now()}.json`, JSON.stringify({
506
+ schema: 'swipium.generated_value.v1',
507
+ fixture: rec.fixture,
508
+ field: rec.field,
509
+ varName: rec.varName,
510
+ generator: rec.generator,
511
+ value: rec.secret ? '<redacted>' : rec.value,
512
+ secret: rec.secret,
513
+ }, null, 2), 'application/json', `generated fixture value ${rec.fixture}.${rec.field}`);
408
514
  sessions.persist(session);
409
515
  }
410
516
  }
411
517
  if (pick.locator && pick.locator.strategy !== 'coordinate') {
412
- sessions.addRecordedAction(session, { at: Date.now(), action: 'type', selector: pick.locator.value, selectorKind: strategyToKind(pick.locator.strategy), text: `\${${v.varName}}`, secret: v.secret, exportability: v.secret ? 'needs-human-data' : 'semantic', screen: obs.node.title, provenance: provenanceForCandidate(obs.node, pick) });
518
+ sessions.addRecordedAction(session, {
519
+ at: Date.now(),
520
+ action: 'type',
521
+ selector: pick.locator.value,
522
+ selectorKind: strategyToKind(pick.locator.strategy),
523
+ text: `\${${v.varName}}`,
524
+ secret: v.secret,
525
+ exportability: v.secret ? 'needs-human-data' : 'semantic',
526
+ screen: obs.node.title,
527
+ provenance: provenanceForCandidate(obs.node, pick),
528
+ });
413
529
  }
414
530
  await settle(driver, { timeoutMs: 5000 }).catch(() => { });
415
531
  const afterType = await observe();
416
- graph.addEdge({ from: fromId, to: afterType.node.id, action: { type: 'type', targetDescription: pick.label ?? 'field' }, outcome: afterType.node.id === fromId ? 'same_screen' : 'changed_screen', evidenceUris: [] });
532
+ graph.addEdge({
533
+ from: fromId,
534
+ to: afterType.node.id,
535
+ action: { type: 'type', targetDescription: pick.label ?? 'field' },
536
+ outcome: afterType.node.id === fromId ? 'same_screen' : 'changed_screen',
537
+ evidenceUris: [],
538
+ });
417
539
  lastNodeId = afterType.node.id;
418
540
  continue;
419
541
  }
@@ -432,7 +554,12 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
432
554
  detail: 'Approved destructive exploration candidate could not be tapped.',
433
555
  });
434
556
  }
435
- graph.addEdge({ from: fromId, action: { type: 'tap', targetDescription: pick.label ?? pick.locator?.value ?? 'control' }, outcome: 'blocked', evidenceUris: [] });
557
+ graph.addEdge({
558
+ from: fromId,
559
+ action: { type: 'tap', targetDescription: pick.label ?? pick.locator?.value ?? 'control' },
560
+ outcome: 'blocked',
561
+ evidenceUris: [],
562
+ });
436
563
  continue;
437
564
  }
438
565
  if (pick.risk === 'destructive') {
@@ -448,9 +575,17 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
448
575
  }
449
576
  summary.actionsTried++;
450
577
  sessions.bump(session, 'actions');
451
- // Record durable taps so qa_suite_generate can promote the path (§9.3).
578
+ // Record durable taps so qa_generate target:"suite" can promote the path (§9.3).
452
579
  if (pick.locator && pick.locator.strategy !== 'coordinate') {
453
- sessions.addRecordedAction(session, { at: Date.now(), action: 'tap', selector: pick.locator.value, selectorKind: strategyToKind(pick.locator.strategy), exportability: 'semantic', screen: obs.node.title, provenance: provenanceForCandidate(obs.node, pick) });
580
+ sessions.addRecordedAction(session, {
581
+ at: Date.now(),
582
+ action: 'tap',
583
+ selector: pick.locator.value,
584
+ selectorKind: strategyToKind(pick.locator.strategy),
585
+ exportability: 'semantic',
586
+ screen: obs.node.title,
587
+ provenance: provenanceForCandidate(obs.node, pick),
588
+ });
454
589
  }
455
590
  await settle(driver, { timeoutMs: 5000 }).catch(() => { });
456
591
  // ---- observe outcome to classify the transition ----
@@ -465,7 +600,21 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
465
600
  }
466
601
  if (outcome === 'same_screen')
467
602
  sameScreenEdges++;
468
- graph.addEdge({ from: fromId, to: after.node.id, action: { type: 'tap', targetDescription: pick.label ?? pick.locator?.value ?? 'control', locator: pick.locator }, outcome, evidenceUris: after.node.screenshotUri ? [after.node.screenshotUri] : [], riskDecision: pick.riskClass ?? pick.risk, preActionState: obs.node.signature, postActionState: after.node.signature, oracle: outcome === 'changed_screen' ? 'screen_signature_changed' : 'screen_signature_same' });
603
+ graph.addEdge({
604
+ from: fromId,
605
+ to: after.node.id,
606
+ action: {
607
+ type: 'tap',
608
+ targetDescription: pick.label ?? pick.locator?.value ?? 'control',
609
+ locator: pick.locator,
610
+ },
611
+ outcome,
612
+ evidenceUris: after.node.screenshotUri ? [after.node.screenshotUri] : [],
613
+ riskDecision: pick.riskClass ?? pick.risk,
614
+ preActionState: obs.node.signature,
615
+ postActionState: after.node.signature,
616
+ oracle: outcome === 'changed_screen' ? 'screen_signature_changed' : 'screen_signature_same',
617
+ });
469
618
  lastNodeId = after.node.id;
470
619
  if (consecutiveNoChange >= 3) {
471
620
  stoppedReason = 'repeated no-change actions';
@@ -473,7 +622,14 @@ export async function runExplore(sessions, session, driver, opts, ctx = {}) {
473
622
  }
474
623
  }
475
624
  const suitePromotion = finalizeGraph(graph, summary, sameScreenEdges, destructiveCandidates, []);
476
- return { graph, summary, state: summary.appErrors > 0 || summary.blockers > 0 ? 'blocked' : 'completed', stoppedReason, suitePromotion, destructiveCandidates: [...destructiveCandidates.values()] };
625
+ return {
626
+ graph,
627
+ summary,
628
+ state: summary.appErrors > 0 || summary.blockers > 0 ? 'blocked' : 'completed',
629
+ stoppedReason,
630
+ suitePromotion,
631
+ destructiveCandidates: [...destructiveCandidates.values()],
632
+ };
477
633
  }
478
634
  function finalizeGraph(graph, summary, sameScreenEdges, destructiveCandidates, reasons) {
479
635
  const nodes = graph.allNodes();
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/explore/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/explore/runner.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,9 @@ function ctxSuffix(ctx) {
14
14
  */
15
15
  export function structuredSignature(elements, ctx = {}) {
16
16
  const ids = [...new Set(elements.map((e) => e.id).filter(Boolean))].sort();
17
- const labels = [...new Set(elements.map((e) => (e.label || e.text || '').trim().toLowerCase()).filter((t) => t.length > 0 && t.length <= 40))].sort();
17
+ const labels = [
18
+ ...new Set(elements.map((e) => (e.label || e.text || '').trim().toLowerCase()).filter((t) => t.length > 0 && t.length <= 40)),
19
+ ].sort();
18
20
  // Coarse count bucket so one extra list row doesn't fork the screen identity.
19
21
  const bucket = Math.min(10, Math.floor(elements.length / 5));
20
22
  const body = `ids:${ids.join(',')}|labels:${labels.slice(0, 25).join(',')}|n:${bucket}`;
@@ -1 +1 @@
1
- {"version":3,"file":"signatures.js","sourceRoot":"","sources":["../../src/explore/signatures.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,8FAA8F;AAC9F,6FAA6F;AAE7F,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC,SAAS,KAAK,CAAC,CAAS;IACtB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,SAAS,CAAC,GAAqB;IACtC,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACxG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAA2B,EAAE,MAAwB,EAAE;IACzF,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3E,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtJ,8EAA8E;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,MAAM,EAAE,CAAC;IACxF,OAAO,UAAU,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,MAAyC,EAAE,MAAwB,EAAE;IAChH,2EAA2E;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IACxD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI;QAAE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzE,OAAO,UAAU,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;AAChH,CAAC"}
1
+ {"version":3,"file":"signatures.js","sourceRoot":"","sources":["../../src/explore/signatures.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,8FAA8F;AAC9F,6FAA6F;AAE7F,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC,SAAS,KAAK,CAAC,CAAS;IACtB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,SAAS,CAAC,GAAqB;IACtC,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACxG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAA2B,EAAE,MAAwB,EAAE;IACzF,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3E,MAAM,MAAM,GAAG;QACb,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;KAC9H,CAAC,IAAI,EAAE,CAAC;IACT,8EAA8E;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,MAAM,EAAE,CAAC;IACxF,OAAO,UAAU,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,MAAyC,EAAE,MAAwB,EAAE;IAChH,2EAA2E;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IACxD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI;QAAE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzE,OAAO,UAAU,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;AAChH,CAAC"}
@@ -47,7 +47,9 @@ export function scorePromotionCandidates(graph) {
47
47
  path,
48
48
  score: scored.score,
49
49
  status,
50
- reasons: status === 'promote' ? ['semantic path has enough replay confidence', ...scored.reasons] : ['replay confidence below threshold', ...scored.reasons],
50
+ reasons: status === 'promote'
51
+ ? ['semantic path has enough replay confidence', ...scored.reasons]
52
+ : ['replay confidence below threshold', ...scored.reasons],
51
53
  };
52
54
  });
53
55
  return candidates.sort((a, b) => b.score - a.score);
@@ -1 +1 @@
1
- {"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/explore/suite.ts"],"names":[],"mappings":"AASA,SAAS,QAAQ,CAAC,KAAmB;IACnC,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,SAAS,CAAC,IAAiB,EAAE,KAA8B;IAClE,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;QACtC,KAAK,IAAI,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,UAAU,KAAK,MAAM;YAAE,KAAK,IAAI,EAAE,CAAC;aAClC,IAAI,UAAU,KAAK,QAAQ;YAAE,KAAK,IAAI,EAAE,CAAC;;YACzC,KAAK,IAAI,EAAE,CAAC;IACnB,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,KAAK,GAAG,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,KAAK,GAAG;QAAE,KAAK,IAAI,EAAE,CAAC;IACxF,IAAI,EAAE,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1B,KAAK,IAAI,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,IAAI,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;QAC1G,KAAK,IAAI,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAmB;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,KAAK;SACrB,QAAQ,EAAE;SACV,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,gBAAgB,IAAI,IAAI,CAAC,EAAE,CAAC;SAC9D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAG,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzD,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM;YACN,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,4CAA4C,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,mCAAmC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;SAC3H,CAAC;IACtC,CAAC,CAAC,CAAC;IACL,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/explore/suite.ts"],"names":[],"mappings":"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"}