@jevitate/cli 0.6.0 → 0.8.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 (250) hide show
  1. package/dist/ai-cli.d.ts +3 -1
  2. package/dist/ai-cli.js +60 -16
  3. package/dist/ai-cli.js.map +1 -1
  4. package/dist/approval-provenance.d.ts +120 -0
  5. package/dist/approval-provenance.js +300 -0
  6. package/dist/approval-provenance.js.map +1 -0
  7. package/dist/author-journey-cli.js +11 -18
  8. package/dist/author-journey-cli.js.map +1 -1
  9. package/dist/bin.js +29012 -20685
  10. package/dist/build-info.generated.js +2 -2
  11. package/dist/builtin-analyzers.d.ts +7 -0
  12. package/dist/builtin-analyzers.js +19 -0
  13. package/dist/builtin-analyzers.js.map +1 -0
  14. package/dist/campaign-cli.d.ts +6 -0
  15. package/dist/campaign-cli.js +9 -4
  16. package/dist/campaign-cli.js.map +1 -1
  17. package/dist/catalog-analysis.d.ts +70 -0
  18. package/dist/catalog-analysis.js +507 -0
  19. package/dist/catalog-analysis.js.map +1 -0
  20. package/dist/catalog-api.d.ts +73 -0
  21. package/dist/catalog-api.js +97 -0
  22. package/dist/catalog-api.js.map +1 -0
  23. package/dist/catalog-cli.d.ts +12 -0
  24. package/dist/catalog-cli.js +224 -0
  25. package/dist/catalog-cli.js.map +1 -0
  26. package/dist/catalog-review.d.ts +29 -0
  27. package/dist/catalog-review.js +290 -0
  28. package/dist/catalog-review.js.map +1 -0
  29. package/dist/catalog.d.ts +133 -0
  30. package/dist/catalog.js +352 -0
  31. package/dist/catalog.js.map +1 -0
  32. package/dist/check-api.js +24 -2
  33. package/dist/check-api.js.map +1 -1
  34. package/dist/check-cli.d.ts +3 -0
  35. package/dist/check-cli.js +18 -4
  36. package/dist/check-cli.js.map +1 -1
  37. package/dist/check-execute.js +25 -9
  38. package/dist/check-execute.js.map +1 -1
  39. package/dist/check-plan.js +4 -1
  40. package/dist/check-plan.js.map +1 -1
  41. package/dist/check-suite.js +6 -3
  42. package/dist/check-suite.js.map +1 -1
  43. package/dist/check-types.d.ts +12 -1
  44. package/dist/check-types.js.map +1 -1
  45. package/dist/cli-output.js +86 -4
  46. package/dist/cli-output.js.map +1 -1
  47. package/dist/cli-shared.d.ts +22 -2
  48. package/dist/cli-shared.js +34 -5
  49. package/dist/cli-shared.js.map +1 -1
  50. package/dist/demo-aspect-api.d.ts +21 -5
  51. package/dist/demo-aspect-api.js +30 -1
  52. package/dist/demo-aspect-api.js.map +1 -1
  53. package/dist/demo-aspect-cli.js +64 -5
  54. package/dist/demo-aspect-cli.js.map +1 -1
  55. package/dist/environments.js +6 -1
  56. package/dist/environments.js.map +1 -1
  57. package/dist/exit-codes.js +4 -0
  58. package/dist/exit-codes.js.map +1 -1
  59. package/dist/explore-adversarial.d.ts +3 -1
  60. package/dist/explore-adversarial.js +3 -3
  61. package/dist/explore-adversarial.js.map +1 -1
  62. package/dist/explore-author.js +5 -2
  63. package/dist/explore-author.js.map +1 -1
  64. package/dist/explore-cli.js +162 -13
  65. package/dist/explore-cli.js.map +1 -1
  66. package/dist/explore-coverage.d.ts +6 -2
  67. package/dist/explore-coverage.js +5 -4
  68. package/dist/explore-coverage.js.map +1 -1
  69. package/dist/explore-feature.d.ts +3 -1
  70. package/dist/explore-feature.js +2 -2
  71. package/dist/explore-feature.js.map +1 -1
  72. package/dist/explore-goal.d.ts +37 -6
  73. package/dist/explore-goal.js +70 -52
  74. package/dist/explore-goal.js.map +1 -1
  75. package/dist/explore-shared.d.ts +12 -7
  76. package/dist/explore-shared.js +9 -1
  77. package/dist/explore-shared.js.map +1 -1
  78. package/dist/goal-run-flags.d.ts +2 -0
  79. package/dist/goal-run-flags.js +8 -1
  80. package/dist/goal-run-flags.js.map +1 -1
  81. package/dist/http-5xx-outcome.d.ts +8 -3
  82. package/dist/http-5xx-outcome.js +5 -15
  83. package/dist/http-5xx-outcome.js.map +1 -1
  84. package/dist/init-cli.d.ts +7 -0
  85. package/dist/init-cli.js +79 -9
  86. package/dist/init-cli.js.map +1 -1
  87. package/dist/init-codeowners.d.ts +39 -0
  88. package/dist/init-codeowners.js +91 -0
  89. package/dist/init-codeowners.js.map +1 -0
  90. package/dist/init-keys.d.ts +3 -1
  91. package/dist/init-keys.js +20 -8
  92. package/dist/init-keys.js.map +1 -1
  93. package/dist/init-skills.d.ts +85 -7
  94. package/dist/init-skills.js +303 -36
  95. package/dist/init-skills.js.map +1 -1
  96. package/dist/jev-advisor.d.ts +72 -0
  97. package/dist/jev-advisor.js +172 -0
  98. package/dist/jev-advisor.js.map +1 -0
  99. package/dist/journey-api.d.ts +104 -5
  100. package/dist/journey-api.js +165 -23
  101. package/dist/journey-api.js.map +1 -1
  102. package/dist/journey-cli.d.ts +1 -1
  103. package/dist/journey-cli.js +320 -13
  104. package/dist/journey-cli.js.map +1 -1
  105. package/dist/journey-demo-api.d.ts +7 -1
  106. package/dist/journey-demo-api.js +8 -3
  107. package/dist/journey-demo-api.js.map +1 -1
  108. package/dist/journey-demo-cli.js +3 -0
  109. package/dist/journey-demo-cli.js.map +1 -1
  110. package/dist/journey-lint-sarif.d.ts +19 -0
  111. package/dist/journey-lint-sarif.js +48 -0
  112. package/dist/journey-lint-sarif.js.map +1 -0
  113. package/dist/journey-network-checks.d.ts +45 -9
  114. package/dist/journey-network-checks.js +117 -30
  115. package/dist/journey-network-checks.js.map +1 -1
  116. package/dist/journey-prefix.d.ts +24 -15
  117. package/dist/journey-prefix.js +53 -7
  118. package/dist/journey-prefix.js.map +1 -1
  119. package/dist/journey-review-api.d.ts +19 -0
  120. package/dist/journey-review-api.js +46 -0
  121. package/dist/journey-review-api.js.map +1 -0
  122. package/dist/journey-review-store.d.ts +16 -0
  123. package/dist/journey-review-store.js +95 -0
  124. package/dist/journey-review-store.js.map +1 -0
  125. package/dist/journey-review.d.ts +47 -0
  126. package/dist/journey-review.js +499 -0
  127. package/dist/journey-review.js.map +1 -0
  128. package/dist/journey-verify.d.ts +61 -0
  129. package/dist/journey-verify.js +144 -0
  130. package/dist/journey-verify.js.map +1 -0
  131. package/dist/key-report.d.ts +20 -5
  132. package/dist/key-report.js +32 -9
  133. package/dist/key-report.js.map +1 -1
  134. package/dist/kill-signal.js +10 -2
  135. package/dist/kill-signal.js.map +1 -1
  136. package/dist/load-api.js +9 -3
  137. package/dist/load-api.js.map +1 -1
  138. package/dist/load-cli.js +4 -2
  139. package/dist/load-cli.js.map +1 -1
  140. package/dist/log-classes.d.ts +73 -0
  141. package/dist/log-classes.js +167 -0
  142. package/dist/log-classes.js.map +1 -0
  143. package/dist/log-correlation.d.ts +29 -10
  144. package/dist/log-correlation.js +44 -21
  145. package/dist/log-correlation.js.map +1 -1
  146. package/dist/login-cli.d.ts +15 -0
  147. package/dist/login-cli.js +116 -0
  148. package/dist/login-cli.js.map +1 -0
  149. package/dist/logs-cli.js +3 -1
  150. package/dist/logs-cli.js.map +1 -1
  151. package/dist/mcp-api.d.ts +1 -0
  152. package/dist/mcp-api.js +61 -12
  153. package/dist/mcp-api.js.map +1 -1
  154. package/dist/mcp-cli-runner.d.ts +2 -0
  155. package/dist/mcp-cli-runner.js +3 -1
  156. package/dist/mcp-cli-runner.js.map +1 -1
  157. package/dist/mcp-cli-tools.d.ts +6 -0
  158. package/dist/mcp-cli-tools.js +182 -23
  159. package/dist/mcp-cli-tools.js.map +1 -1
  160. package/dist/mission-cli.js +8 -4
  161. package/dist/mission-cli.js.map +1 -1
  162. package/dist/mission-journal.d.ts +4 -1
  163. package/dist/mission-journal.js +9 -3
  164. package/dist/mission-journal.js.map +1 -1
  165. package/dist/mission-queue-cli.js +21 -2
  166. package/dist/mission-queue-cli.js.map +1 -1
  167. package/dist/mission-queue-runner.d.ts +6 -0
  168. package/dist/mission-queue-runner.js +33 -3
  169. package/dist/mission-queue-runner.js.map +1 -1
  170. package/dist/multi-run-cli.d.ts +7 -1
  171. package/dist/multi-run-cli.js +10 -3
  172. package/dist/multi-run-cli.js.map +1 -1
  173. package/dist/multi-run.d.ts +38 -3
  174. package/dist/multi-run.js +115 -23
  175. package/dist/multi-run.js.map +1 -1
  176. package/dist/persona-login.d.ts +199 -0
  177. package/dist/persona-login.js +574 -0
  178. package/dist/persona-login.js.map +1 -0
  179. package/dist/pre-approval.d.ts +98 -0
  180. package/dist/pre-approval.js +175 -0
  181. package/dist/pre-approval.js.map +1 -0
  182. package/dist/program.js +10 -0
  183. package/dist/program.js.map +1 -1
  184. package/dist/project-dir.d.ts +2 -1
  185. package/dist/project-dir.js +3 -1
  186. package/dist/project-dir.js.map +1 -1
  187. package/dist/promotions.d.ts +15 -0
  188. package/dist/promotions.js +52 -0
  189. package/dist/promotions.js.map +1 -0
  190. package/dist/readiness.d.ts +29 -0
  191. package/dist/readiness.js +291 -0
  192. package/dist/readiness.js.map +1 -0
  193. package/dist/regression-cli.js +4 -2
  194. package/dist/regression-cli.js.map +1 -1
  195. package/dist/report-api.d.ts +24 -2
  196. package/dist/report-api.js +33 -5
  197. package/dist/report-api.js.map +1 -1
  198. package/dist/report-cli.js +8 -1
  199. package/dist/report-cli.js.map +1 -1
  200. package/dist/result-schema.d.ts +12 -0
  201. package/dist/result-schema.js +8 -0
  202. package/dist/result-schema.js.map +1 -1
  203. package/dist/run-index.d.ts +4 -2
  204. package/dist/run-index.js +3 -1
  205. package/dist/run-index.js.map +1 -1
  206. package/dist/run-key-preflight.d.ts +2 -1
  207. package/dist/run-key-preflight.js +3 -2
  208. package/dist/run-key-preflight.js.map +1 -1
  209. package/dist/run-metadata.d.ts +26 -0
  210. package/dist/run-metadata.js +41 -0
  211. package/dist/run-metadata.js.map +1 -0
  212. package/dist/run-tags-cli.d.ts +12 -0
  213. package/dist/run-tags-cli.js +35 -0
  214. package/dist/run-tags-cli.js.map +1 -0
  215. package/dist/self-heal-adapter.js +3 -1
  216. package/dist/self-heal-adapter.js.map +1 -1
  217. package/dist/site-cli.d.ts +1 -1
  218. package/dist/site-cli.js +24 -1
  219. package/dist/site-cli.js.map +1 -1
  220. package/dist/source-cli.js +4 -2
  221. package/dist/source-cli.js.map +1 -1
  222. package/dist/source-run-api.js +17 -7
  223. package/dist/source-run-api.js.map +1 -1
  224. package/dist/suite-explore-options.d.ts +14 -0
  225. package/dist/suite-explore-options.js +7 -0
  226. package/dist/suite-explore-options.js.map +1 -1
  227. package/dist/sweep-api.d.ts +266 -0
  228. package/dist/sweep-api.js +828 -0
  229. package/dist/sweep-api.js.map +1 -0
  230. package/dist/sweep-cli.d.ts +9 -0
  231. package/dist/sweep-cli.js +115 -0
  232. package/dist/sweep-cli.js.map +1 -0
  233. package/dist/target-config.d.ts +5 -2
  234. package/dist/target-config.js +15 -0
  235. package/dist/target-config.js.map +1 -1
  236. package/dist/usability-capture.js +6 -0
  237. package/dist/usability-capture.js.map +1 -1
  238. package/dist/ux-cli.js +3 -1
  239. package/dist/ux-cli.js.map +1 -1
  240. package/dist/ux-usability.d.ts +9 -3
  241. package/dist/ux-usability.js +6 -4
  242. package/dist/ux-usability.js.map +1 -1
  243. package/dist/verify-fix-cli.js +4 -2
  244. package/dist/verify-fix-cli.js.map +1 -1
  245. package/package.json +13 -13
  246. package/skills/jevitate-demo/SKILL.md +5 -2
  247. package/skills/jevitate-explore/SKILL.md +6 -2
  248. package/skills/jevitate-getting-started/SKILL.md +12 -0
  249. package/skills/jevitate-run-journey/SKILL.md +17 -4
  250. package/skills/jevitate-test-campaign/SKILL.md +26 -5
@@ -1 +1 @@
1
- {"version":3,"file":"mission-queue-runner.js","sourceRoot":"","sources":["../src/mission-queue-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mission-queue-runner.js","sourceRoot":"","sources":["../src/mission-queue-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAmE,MAAM,sBAAsB,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAkB,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EACL,eAAe,GAKhB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,GAErB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAqB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAwB,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAmFzC,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,CAAC;AAED,4GAA4G;AAC5G,MAAM,UAAU,UAAU,CAAC,OAAsB;IAC/C,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,YAAY,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;AACjH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAA8B;IACpE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;IAClE,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SACrC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC;SACpC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IAClE,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;QACnD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC5D,SAAS;QACX,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAAE,SAAS,CAAC,wBAAwB;QACjH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;YAAE,SAAS;QAC9D,MAAM,OAAO,GAAkB,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC;QACtF,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,OAAuB,CAAC;QAC5B,+FAA+F;QAC/F,8FAA8F;QAC9F,uDAAuD;QACvD,4FAA4F;QAC5F,kDAAkD;QAClD,MAAM,QAAQ,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAA4C,EAAQ,EAAE;YAC5F,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACpB,GAAG,OAAO;gBACV,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,GAAG,EAAE;gBACpB,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC;gBACtC,cAAc,EAAE,cAAc;gBAC9B,QAAQ;aACT,CAAC,CAAC;QACL,CAAC,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,wCAAwC;YACnG,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,QAAQ,EAAE,GAAG,EAAE,CAC1D,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAC/E,CAAC;YACF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBACtB,GAAG,OAAO;gBACV,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,GAAG,EAAE;gBACpB,QAAQ;gBACR,cAAc,EAAE,GAAG,CAAC,cAAc;gBAClC,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1E,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB,CAAC,CAAC;YACH,OAAO,GAAG;gBACR,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,MAAM;gBACd,QAAQ;gBACR,cAAc,EAAE,GAAG,CAAC,cAAc;gBAClC,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1E,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACvF,OAAO,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC3F,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACrC,CAAC;AAED,+FAA+F;AAC/F,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAE5C,wGAAwG;AACxG,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE5C,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wEAAwE;QACxE,OAAO,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,cAAc,CAC3B,IAA8B,EAC9B,IAAqD,EACrD,GAAiB;IAEjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC;IAC5D,MAAM,GAAG,GAAuB,EAAE,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACxC,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,SAAS;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG;YAAE,SAAS,CAAC,mBAAmB;QACvG,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,aAAa,CAAC;QAC7F,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,GAAG,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC;QAC3F,MAAM,KAAK,GAAG,SAAS;YACrB,CAAC,CAAC,GAAG,GAAG,qHAAqH;YAC7H,CAAC,CAAC,GAAG,GAAG,8BAA8B,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC,mGAAmG,CAAC;QACjL,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA4CD;;;;;;;;;GASG;AACH,SAAS,UAAU,CACjB,MAAqB,EACrB,OAA2D,EAC3D,GAAiD,EACjD,OAAgB;IAEhB,IAAI,MAAM,GAAiB,EAAE,CAAC;IAC9B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,GAAG,mBAAmB,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IACD,+FAA+F;IAC/F,gGAAgG;IAChG,qCAAqC;IACrC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,YAAY,OAAO,yBAAyB,MAAM,CAAC,gBAAgB,yCAAyC;gBAC1G,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CACvE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,SAAS,MAAM,CAAC,gBAAgB,6BAA6B,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QACjI,CAAC;QACD,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1F,OAAO;YACL,GAAG,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC;YACzE,YAAY;YACZ,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;SACxE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC;IACrD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC;IAChE,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,MAAM,CAAC,gBAAgB,EAAE,6BAA6B,YAAY,EAAE,CAAC,CAAC;IAClK,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC;IAChE,IAAI,IAAI,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,MAAM,CAAC,EAAE,0DAA0D,CAAC,CAAC;IACxJ,MAAM,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACtH,OAAO;QACL,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;QACvD,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC/D,YAAY;QACZ,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,6GAA6G;AAC7G,SAAS,eAAe,CAAC,OAA2D,EAAE,OAAe;IACnG,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5C,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;sGAEsG;AACtG,MAAM,UAAU,yBAAyB,CAAC,OAA2D,EAAE,OAAe;IACpH,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5C,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtG,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC;IAChD,OAAO;QACL,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,EAAE,WAAW,CAAC;QAClE,SAAS,EAAE,mBAAmB,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QACtD,WAAW;QACX,OAAO,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE;QAChC,SAAS,EAAE,mBAAmB,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QACtD,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QACnD,kBAAkB,EAAE,uBAAuB,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;QAC/E,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;QAC1D,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,iGAAiG;QACjG,UAAU,EAAE,iBAAiB,EAAE;KAChC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAyB;IACjE,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACjG,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;KACjE,CAAC;IACF,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,+FAA+F;QAC/F,sEAAsE;QACtE,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,qBAAqB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC9F,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;QACnE,0FAA0F;QAC1F,iGAAiG;QACjG,mDAAmD;QACnD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAClE,MAAM,UAAU,GAAG,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QACjF,4FAA4F;QAC5F,6FAA6F;QAC7F,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACxF,MAAM,gBAAgB,GAAG;YACvB,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/E,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC5F,CAAC;QACF,2FAA2F;QAC3F,mGAAmG;QACnG,iGAAiG;QACjG,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;gBACzC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtE,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,GAAG,EAAE,MAAM,CAAC,OAAO;gBACnB,SAAS;gBACT,KAAK,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;gBACzC,IAAI,EAAE,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC,EAAE;gBACxE,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG;gBAC5B,SAAS,EAAE,4BAA4B;aACxC,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC7F,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5C,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACnJ,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnF,CAAC;QACH,CAAC;QACD,yFAAyF;QACzF,4FAA4F;QAC5F,8FAA8F;QAC9F,oFAAoF;QACpF,MAAM,gBAAgB,GACpB,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAC5D,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACzE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;aACpE,CAAC;QACR,IAAI,gBAAgB,KAAK,SAAS;YAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACvE,MAAM,aAAa,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAC5F,gGAAgG;QAChG,4CAA4C;QAC5C,MAAM,SAAS,GAAG;YAChB,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAC5F,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;QACF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,YAAY,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;YAC3G,MAAM,CAAC,GAAG,MAAM,oBAAoB,CAAC;gBACnC,GAAG,MAAM;gBACT,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS;gBACT,UAAU,EAAE,OAAO,CAAC,OAAQ;gBAC5B,UAAU;gBACV,MAAM;gBACN,GAAG,UAAU;gBACb,GAAG,UAAU;gBACb,GAAG,aAAa;gBAChB,GAAG,aAAa;gBAChB,GAAG,gBAAgB;gBACnB,GAAG,SAAS;aACb,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9F,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,oHAAoH,CAAC,CAAC;QACxI,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpD,iGAAiG;QACjG,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;QAC/E,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC1E,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC;gBACjC,GAAG,MAAM;gBACT,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,GAAG,EAAE,MAAM,CAAC,OAAO;gBACnB,SAAS;gBACT,KAAK;gBACL,GAAG;gBACH,KAAK;gBACL,MAAM;gBACN,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,GAAG,UAAU;gBACb,GAAG,UAAU;gBACb,GAAG,OAAO;gBACV,GAAG,aAAa;gBAChB,GAAG,gBAAgB;gBACnB,GAAG,SAAS;aACb,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9F,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,MAAM,wBAAwB,CAAC;gBACvC,GAAG,MAAM;gBACT,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS;gBACT,UAAU,EAAE,0BAA0B;gBACtC,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,GAAG;gBACf,KAAK;gBACL,MAAM;gBACN,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,GAAG,UAAU;gBACb,GAAG,UAAU;gBACb,GAAG,OAAO;gBACV,GAAG,aAAa;gBAChB,GAAG,gBAAgB;gBACnB,GAAG,SAAS;aACb,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvF,CAAC;QACD,+FAA+F;QAC/F,0FAA0F;QAC1F,MAAM,EAAE,GAAgC,oBAAoB,CAC1D,EAAE,EACF;YACE,SAAS;YACT,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/E,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzE,kGAAkG;YAClG,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;SACpE,CACF,CAAC;QACF,IAAI,IAAI,GAAG,OAAO,CAAC,IAAK,CAAC;QACzB,cAAc,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC;YACH,uFAAuF;YACvF,4CAA4C;YAC5C,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACrB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;gBACjB,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC7B,GAAG,MAAM;gBACT,GAAG,EAAE,MAAM,CAAC,OAAO;gBACnB,IAAI;gBACJ,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBACjG,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC5E,SAAS;gBACT,KAAK;gBACL,GAAG;gBACH,KAAK;gBACL,MAAM;gBACN,GAAG,UAAU;gBACb,GAAG,UAAU;gBACb,GAAG,OAAO;gBACV,GAAG,aAAa;gBAChB,GAAG,gBAAgB;gBACnB,GAAG,SAAS;gBACZ,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC9E,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;aAC9C,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC1H,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Command } from "commander";
2
- import { type MultiRunPlan, type MultiRunResult, type RunEnvelope } from "./multi-run.js";
2
+ import { type MultiRunPlan, type MultiRunResult, type Persona, type RunEnvelope } from "./multi-run.js";
3
3
  /**
4
4
  * The command line a single run is re-invoked with: every option the user actually gave (source
5
5
  * `cli`), minus the orchestrator's own and `omit`. Values are forwarded as given; storage-state
@@ -33,5 +33,11 @@ export interface ExploreMultiRunArgs {
33
33
  * Absent: a kill prints the multi-run nothing (a library caller that owns stdout).
34
34
  */
35
35
  readonly killOutput?: (partial: MultiRunResult) => string;
36
+ /**
37
+ * #427: the pre-flight auth check, run by the orchestrator before EACH run (a persona's session,
38
+ * or the mission's own `--storage-state`): the result a run ends with when the session is expired
39
+ * (and could not be refreshed), else undefined. The runs themselves then skip it (`--auth-check off`).
40
+ */
41
+ readonly authPreflight?: (persona: Persona | undefined) => Promise<unknown>;
36
42
  }
37
43
  export declare function runExploreMultiRun(args: ExploreMultiRunArgs): Promise<MultiRunResult>;
@@ -4,6 +4,7 @@ import { artifactStamp } from "./mission-journal.js";
4
4
  import { runMultiRun } from "./multi-run.js";
5
5
  import { setKillSummary } from "./kill-signal.js";
6
6
  import { clock } from "@jevitate/domain";
7
+ import { withRunMetadata } from "./run-metadata.js";
7
8
  /**
8
9
  * The `explore --repeat/--persona` CLI glue (#141/#143): each run is the SAME `explore` command,
9
10
  * re-parsed in a fresh program with the multi-run flags removed and `--out` (plus a persona's
@@ -80,7 +81,8 @@ export async function runExploreMultiRun(args) {
80
81
  const { cmd, plan } = args;
81
82
  const outDir = args.out ?? join(logsDirFor((args.nowIso ?? (() => clock.nowIso()))()), `multi-${artifactStamp((args.nowIso ?? (() => clock.nowIso()))())}`);
82
83
  // With personas, each run's --storage-state is the persona's; otherwise the mission's own is kept.
83
- const base = forwardedArgv(cmd, plan.personas === null ? new Set() : new Set(["storageState"]));
84
+ const omit = new Set([...(plan.personas === null ? [] : ["storageState"]), ...(args.authPreflight === undefined ? [] : ["authCheck"])]);
85
+ const base = [...forwardedArgv(cmd, omit), ...(args.authPreflight === undefined ? [] : ["--auth-check", "off"])];
84
86
  return runMultiRun({
85
87
  plan,
86
88
  strategy: args.strategy,
@@ -91,7 +93,11 @@ export async function runExploreMultiRun(args) {
91
93
  const partial = onKill({ signal, exitCode, ...(missions[0] === undefined ? {} : { partial: missions[0].partial }) });
92
94
  return args.killOutput?.(partial);
93
95
  }),
94
- runOnce: async ({ storageState, outDir: runDir }) => {
96
+ runOnce: async ({ storageState, persona, outDir: runDir }) => {
97
+ // #427: an expired session ends this run fast (auth-expired) — the login page is never explored.
98
+ const expired = await args.authPreflight?.(persona);
99
+ if (expired !== undefined)
100
+ return { ok: true, data: expired };
95
101
  const lines = [];
96
102
  const child = args.newProgram();
97
103
  child.exitOverride();
@@ -99,7 +105,8 @@ export async function runExploreMultiRun(args) {
99
105
  const argv = ["explore", ...base, ...(storageState === undefined ? [] : ["--storage-state", storageState]), "--out", runDir, "--json"];
100
106
  let envelope;
101
107
  try {
102
- await child.parseAsync(argv, { from: "user" });
108
+ // #426: the persona's name rides in the run's metadata scope (its result's `target.persona`).
109
+ await withRunMetadata(persona === undefined ? {} : { persona: persona.name }, () => child.parseAsync(argv, { from: "user" }));
103
110
  envelope = lastEnvelope(lines);
104
111
  }
105
112
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"multi-run-cli.js","sourceRoot":"","sources":["../src/multi-run-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multi-run-cli.js","sourceRoot":"","sources":["../src/multi-run-cli.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type GoalOutcome, type MissionOutcome } from "@jevitate/domain";
2
2
  import { type UsageAggregate, type UsageCounts } from "@jevitate/ai-core";
3
3
  import { type EngineInfo } from "./engine.js";
4
+ import { type PersonaLogin } from "./persona-login.js";
4
5
  /**
5
6
  * Multi-run orchestration over the existing explore strategies (#141 repeat-and-vote, #143 persona
6
7
  * matrix). One orchestrator runs the SAME mission N times — once per persona (storageState) and
@@ -26,6 +27,11 @@ export interface Persona {
26
27
  readonly name: string;
27
28
  /** Absolute path of the persona's Playwright storageState file (its contents are never read). */
28
29
  readonly storageState: string;
30
+ /**
31
+ * #427: how to sign in as this persona (a personas file entry's `login`): an expired session is
32
+ * re-minted ONCE from it by the pre-flight auth check. Environment variable NAMES only.
33
+ */
34
+ readonly login?: PersonaLogin;
29
35
  }
30
36
  export interface MultiRunPlan {
31
37
  /** Runs per persona (or per mission, without personas). */
@@ -37,8 +43,21 @@ export interface MultiRunPlan {
37
43
  }
38
44
  /** Upper bound on `--repeat`: each run is a whole mission, run one after another. */
39
45
  export declare const MAX_REPEAT = 20;
40
- /** `--persona <name>=<storageState>`: the path is resolved against the working directory. */
46
+ /**
47
+ * `--persona <name>=<storageState>`: the path is resolved against the working directory. #427: a bare
48
+ * `--persona <name>` is the project's persona of that name (`.jevitate/personas.json`), and a
49
+ * `<name>=<storageState>` persona the project also declares takes its `login` parameters from there.
50
+ */
41
51
  export declare function parsePersonaSpec(spec: string, cwd?: string): Persona;
52
+ /** #427: the project's persona registry, `.jevitate/personas.json` (the `--personas` file format). */
53
+ export declare const PROJECT_PERSONAS_FILE = "personas.json";
54
+ /** The project's declared personas (`.jevitate/personas.json`), or none when the file does not exist. */
55
+ export declare function projectPersonas(cwd?: string): Persona[];
56
+ /**
57
+ * #427: the project persona whose storage state is `storageState` (a single run's `--storage-state`
58
+ * or `--actor`), so its name and login parameters apply to the pre-flight auth check.
59
+ */
60
+ export declare function projectPersonaFor(storageState: string, cwd?: string): Persona | undefined;
42
61
  /**
43
62
  * `--actor <name>=<storageState>` (#147): the same `<name>=<storageState>` shape and checks as a
44
63
  * persona (the file must exist; its contents are never read here).
@@ -47,9 +66,16 @@ export declare function parseActorSpec(spec: string, cwd?: string): Persona;
47
66
  /**
48
67
  * `--personas <file>`: JSON, either `{"admin": "admin.json", "sales": "sales.json"}` or
49
68
  * `{"personas": [{"name": "admin", "storageState": "admin.json"}]}` (a bare array also works).
50
- * Relative paths resolve against the personas file's own directory.
69
+ * Relative paths resolve against the personas file's own directory. #427: an entry may carry
70
+ * `login: {url, userEnv, passwordEnv, userField?, passwordField?, submit?, success?}` (the map form
71
+ * then takes `{"admin": {"storageState": "admin.json", "login": {…}}}`) — the pre-flight auth check
72
+ * re-mints an expired session from it once. #433: an entry may also carry the catalog's
73
+ * `description`, `role` and `approval` (and `id` for `name`); a catalog-only entry (no session) is
74
+ * not a run persona — skipped here, refused when the file has no runnable persona at all.
51
75
  */
52
- export declare function loadPersonasFile(path: string): Persona[];
76
+ export declare function loadPersonasFile(path: string, opts?: {
77
+ readonly requireRunnable?: boolean;
78
+ }): Persona[];
53
79
  export interface MultiRunFlags {
54
80
  readonly repeat?: string;
55
81
  readonly minAgreement?: string;
@@ -106,6 +132,13 @@ export interface RunSummary {
106
132
  readonly missionOutcome: MissionOutcome;
107
133
  /** #226: a goal run's own ending (#217), beside `missionOutcome`. */
108
134
  readonly goalOutcome?: GoalOutcome;
135
+ /** #423: why the run's goal was not achieved (its result's `goalReason`). */
136
+ readonly goalReason?: string;
137
+ /** #423: the run's defect verdict by kind (its result's `defectOutcome`) — orthogonal to the goal's. */
138
+ readonly defectOutcome?: {
139
+ readonly status: string;
140
+ readonly byKind: Readonly<Record<string, number>>;
141
+ };
109
142
  readonly exitCode: number;
110
143
  readonly findings: readonly RunFinding[];
111
144
  readonly requests: Readonly<Record<string, readonly number[]>>;
@@ -252,6 +285,8 @@ export type RunEnvelope = {
252
285
  export interface RunOnceArgs {
253
286
  /** Persona storage state to start from (`undefined`: the mission's own `--storage-state`, if any). */
254
287
  readonly storageState?: string;
288
+ /** #426/#427: the persona this run is (its name is the run's `target.persona` and names an `auth-expired` failure; its `login` refreshes it). */
289
+ readonly persona?: Persona;
255
290
  /** Where this run writes its artifacts. */
256
291
  readonly outDir: string;
257
292
  }
package/dist/multi-run.js CHANGED
@@ -1,10 +1,12 @@
1
1
  import { sessionLostReason } from "./session-check.js";
2
2
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
3
3
  import { dirname, isAbsolute, join, resolve } from "node:path";
4
- import { MISSION_EXIT_CODES, MISSION_OUTCOMES, combineOutcomes, foldGoalOutcome, isGoalOutcome, } from "@jevitate/domain";
4
+ import { MISSION_EXIT_CODES, MISSION_OUTCOMES, combineOutcomes, foldGoalOutcome, goalMissionOutcome, isGoalOutcome, } from "@jevitate/domain";
5
5
  import { sumUsage, usageCountsFrom } from "@jevitate/ai-core";
6
6
  import { normalizeRoute } from "@jevitate/explore";
7
7
  import { currentEngineInfo } from "./engine.js";
8
+ import { findProjectDir } from "./project-dir.js";
9
+ import { LoginArgsError, parsePersonaLogin } from "./persona-login.js";
8
10
  /**
9
11
  * Multi-run orchestration over the existing explore strategies (#141 repeat-and-vote, #143 persona
10
12
  * matrix). One orchestrator runs the SAME mission N times — once per persona (storageState) and
@@ -33,23 +35,70 @@ export class MultiRunArgsError extends Error {
33
35
  /** Upper bound on `--repeat`: each run is a whole mission, run one after another. */
34
36
  export const MAX_REPEAT = 20;
35
37
  const PERSONA_NAME = /^[A-Za-z0-9][A-Za-z0-9_.-]{0,63}$/;
36
- function persona(name, storageState, base, noun = "persona") {
38
+ function persona(name, storageState, base, noun = "persona", login) {
37
39
  if (!PERSONA_NAME.test(name)) {
38
40
  throw new MultiRunArgsError(`${noun} name ${JSON.stringify(name)} must be 1-64 of [A-Za-z0-9_.-], starting alphanumeric`);
39
41
  }
40
42
  if (storageState.trim() === "")
41
43
  throw new MultiRunArgsError(`${noun} ${name}: storage state path is empty`);
42
44
  const path = isAbsolute(storageState) ? storageState : resolve(base, storageState);
43
- if (!existsSync(path))
45
+ // #427: a persona with login parameters may not have a session yet — the pre-flight mints it.
46
+ if (login === undefined && !existsSync(path))
44
47
  throw new MultiRunArgsError(`${noun} ${name}: storage state not found: ${path}`);
45
- return { name, storageState: path };
48
+ return { name, storageState: path, ...(login === undefined ? {} : { login }) };
46
49
  }
47
- /** `--persona <name>=<storageState>`: the path is resolved against the working directory. */
50
+ /** #427: a personas file entry's optional `login` (env variable NAMES only; validated, never echoed). */
51
+ function entryLogin(v, where) {
52
+ if (v === undefined)
53
+ return undefined;
54
+ try {
55
+ return parsePersonaLogin(v, where);
56
+ }
57
+ catch (err) {
58
+ if (err instanceof LoginArgsError)
59
+ throw new MultiRunArgsError(err.message);
60
+ throw err;
61
+ }
62
+ }
63
+ /**
64
+ * `--persona <name>=<storageState>`: the path is resolved against the working directory. #427: a bare
65
+ * `--persona <name>` is the project's persona of that name (`.jevitate/personas.json`), and a
66
+ * `<name>=<storageState>` persona the project also declares takes its `login` parameters from there.
67
+ */
48
68
  export function parsePersonaSpec(spec, cwd = process.cwd()) {
49
69
  const eq = spec.indexOf("=");
70
+ if (eq === -1 && spec !== "") {
71
+ const known = projectPersonas(cwd);
72
+ const p = known.find((k) => k.name === spec);
73
+ if (p === undefined) {
74
+ throw new MultiRunArgsError(`--persona ${JSON.stringify(spec)} is not declared in the project's .jevitate/${PROJECT_PERSONAS_FILE}` +
75
+ (known.length === 0 ? " (pass --persona <name>=<storageState>)" : ` — known personas: ${known.map((k) => k.name).join(", ")}`));
76
+ }
77
+ return p;
78
+ }
50
79
  if (eq <= 0)
51
- throw new MultiRunArgsError(`--persona must be <name>=<storageState>, got ${JSON.stringify(spec)}`);
52
- return persona(spec.slice(0, eq), spec.slice(eq + 1), cwd);
80
+ throw new MultiRunArgsError(`--persona must be <name>=<storageState> (or a name declared in .jevitate/${PROJECT_PERSONAS_FILE}), got ${JSON.stringify(spec)}`);
81
+ const name = spec.slice(0, eq);
82
+ const login = projectPersonas(cwd).find((k) => k.name === name)?.login;
83
+ return persona(name, spec.slice(eq + 1), cwd, "persona", login);
84
+ }
85
+ /** #427: the project's persona registry, `.jevitate/personas.json` (the `--personas` file format). */
86
+ export const PROJECT_PERSONAS_FILE = "personas.json";
87
+ /** The project's declared personas (`.jevitate/personas.json`), or none when the file does not exist. */
88
+ export function projectPersonas(cwd = process.cwd()) {
89
+ const dir = findProjectDir({ cwd: () => cwd });
90
+ if (dir === null)
91
+ return [];
92
+ const file = join(dir, PROJECT_PERSONAS_FILE);
93
+ return existsSync(file) ? loadPersonasFile(file, { requireRunnable: false }) : [];
94
+ }
95
+ /**
96
+ * #427: the project persona whose storage state is `storageState` (a single run's `--storage-state`
97
+ * or `--actor`), so its name and login parameters apply to the pre-flight auth check.
98
+ */
99
+ export function projectPersonaFor(storageState, cwd = process.cwd()) {
100
+ const abs = resolve(cwd, storageState);
101
+ return projectPersonas(cwd).find((p) => p.storageState === abs);
53
102
  }
54
103
  /**
55
104
  * `--actor <name>=<storageState>` (#147): the same `<name>=<storageState>` shape and checks as a
@@ -64,9 +113,14 @@ export function parseActorSpec(spec, cwd = process.cwd()) {
64
113
  /**
65
114
  * `--personas <file>`: JSON, either `{"admin": "admin.json", "sales": "sales.json"}` or
66
115
  * `{"personas": [{"name": "admin", "storageState": "admin.json"}]}` (a bare array also works).
67
- * Relative paths resolve against the personas file's own directory.
116
+ * Relative paths resolve against the personas file's own directory. #427: an entry may carry
117
+ * `login: {url, userEnv, passwordEnv, userField?, passwordField?, submit?, success?}` (the map form
118
+ * then takes `{"admin": {"storageState": "admin.json", "login": {…}}}`) — the pre-flight auth check
119
+ * re-mints an expired session from it once. #433: an entry may also carry the catalog's
120
+ * `description`, `role` and `approval` (and `id` for `name`); a catalog-only entry (no session) is
121
+ * not a run persona — skipped here, refused when the file has no runnable persona at all.
68
122
  */
69
- export function loadPersonasFile(path) {
123
+ export function loadPersonasFile(path, opts = {}) {
70
124
  if (!existsSync(path))
71
125
  throw new MultiRunArgsError(`personas file not found: ${path}`);
72
126
  let raw;
@@ -78,23 +132,51 @@ export function loadPersonasFile(path) {
78
132
  }
79
133
  const base = dirname(resolve(path));
80
134
  const list = Array.isArray(raw) ? raw : isRecord(raw) && Array.isArray(raw.personas) ? raw.personas : null;
135
+ let entries;
81
136
  if (list !== null) {
82
- return list.map((p, i) => {
83
- if (!isRecord(p) || typeof p.name !== "string" || typeof p.storageState !== "string") {
84
- throw new MultiRunArgsError(`personas file ${path}: entry ${i} must be {"name": string, "storageState": string}`);
137
+ entries = list.map((p, i) => {
138
+ // #433: `id` names the persona too (the catalog's word); `name` stays the #427 key.
139
+ const name = isRecord(p) ? (p.name ?? p.id) : undefined;
140
+ if (!isRecord(p) || typeof name !== "string") {
141
+ throw new MultiRunArgsError(`personas file ${path}: entry ${i} must be {"name": string, "storageState": string, "login"?: {…}}`);
85
142
  }
86
- return persona(p.name, p.storageState, base);
143
+ return { name, value: p, where: `entry ${i}` };
87
144
  });
88
145
  }
89
- if (isRecord(raw)) {
90
- return Object.entries(raw).map(([name, state]) => {
91
- if (typeof state !== "string")
92
- throw new MultiRunArgsError(`personas file ${path}: ${name} must map to a storage state path`);
93
- return persona(name, state, base);
146
+ else if (isRecord(raw)) {
147
+ entries = Object.entries(raw).map(([name, state]) => {
148
+ if (typeof state === "string" || isRecord(state))
149
+ return { name, value: state, where: name };
150
+ throw new MultiRunArgsError(`personas file ${path}: ${name} must map to a storage state path or {"storageState": string, "login"?: {…}}`);
94
151
  });
95
152
  }
96
- throw new MultiRunArgsError(`personas file ${path} must be an object or an array of personas`);
153
+ else {
154
+ throw new MultiRunArgsError(`personas file ${path} must be an object or an array of personas`);
155
+ }
156
+ const out = [];
157
+ for (const { name, value, where } of entries) {
158
+ if (typeof value === "string") {
159
+ out.push(persona(name, value, base));
160
+ continue;
161
+ }
162
+ if (typeof value.storageState === "string") {
163
+ out.push(persona(name, value.storageState, base, "persona", entryLogin(value.login, `personas file ${path}: ${name}.login`)));
164
+ continue;
165
+ }
166
+ // #433: a catalog-only persona (description/role/approval, no session yet) is not a run persona.
167
+ if (value.storageState === undefined && value.login === undefined && CATALOG_ONLY_KEYS.some((k) => value[k] !== undefined))
168
+ continue;
169
+ throw new MultiRunArgsError(list !== null
170
+ ? `personas file ${path}: ${where} must be {"name": string, "storageState": string, "login"?: {…}}`
171
+ : `personas file ${path}: ${name} must map to a storage state path or {"storageState": string, "login"?: {…}}`);
172
+ }
173
+ if (out.length === 0 && entries.length > 0 && opts.requireRunnable !== false) {
174
+ throw new MultiRunArgsError(`personas file ${path} declares no persona with a session (a "storageState") — catalog-only personas cannot run`);
175
+ }
176
+ return out;
97
177
  }
178
+ /** #433: the catalog keys that make a session-less personas file entry a catalog-only persona. */
179
+ const CATALOG_ONLY_KEYS = ["description", "role", "approval"];
98
180
  /** Whether the flags ask for a multi-run at all. */
99
181
  export function wantsMultiRun(f) {
100
182
  return f.repeat !== undefined || f.minAgreement !== undefined || f.persona.length > 0 || f.personas !== undefined;
@@ -289,11 +371,13 @@ export function voteRuns(runs, k, persona = null, planned = runs.length) {
289
371
  for (const r of runs)
290
372
  outcomes[r.outcome] = (outcomes[r.outcome] ?? 0) + 1;
291
373
  const { outcome: missionOutcome, reason } = voteOutcome(runs, k, planned);
292
- // A goal cell's own ending: the goal ending ≥ k runs agreed on (when it folds onto the agreed
293
- // verdict), else the canonical verdict itself (a shared outcome is a goal outcome too, #217).
374
+ // A goal cell's own ending: the goal ending ≥ k runs agreed on (when the #423 table derives the
375
+ // agreed verdict from it, with or without defects), else the canonical verdict itself (a shared
376
+ // outcome is a goal outcome too, #217).
294
377
  const goalRuns = runs.filter((r) => r.goalOutcome !== undefined);
295
378
  const goalAgreed = goalRuns.length === 0 ? undefined : agreed(goalRuns.map((r) => r.goalOutcome), k);
296
- const goalOutcome = goalRuns.length === 0 ? undefined : goalAgreed !== undefined && foldGoalOutcome(goalAgreed) === missionOutcome ? goalAgreed : missionOutcome;
379
+ const derives = (g) => goalMissionOutcome(g, "none") === missionOutcome || goalMissionOutcome(g, "defects") === missionOutcome;
380
+ const goalOutcome = goalRuns.length === 0 ? undefined : goalAgreed !== undefined && derives(goalAgreed) ? goalAgreed : missionOutcome;
297
381
  const outcome = goalOutcome ?? missionOutcome;
298
382
  const byId = new Map();
299
383
  for (const r of runs) {
@@ -461,6 +545,10 @@ function runFailureKindOf(data) {
461
545
  const kindOf = (f) => (isRecord(f) && typeof f.kind === "string" ? f.kind : undefined);
462
546
  return (isRecord(data.crash) ? kindOf(data.crash.failure) : undefined) ?? kindOf(data.failure);
463
547
  }
548
+ /** A `byKind` record's numeric entries only. */
549
+ function numericCounts(v) {
550
+ return Object.fromEntries(Object.entries(v).filter((e) => typeof e[1] === "number"));
551
+ }
464
552
  /** Summarizes one run's envelope (the only IO: its transcript file when the result omits it). */
465
553
  export function summarizeRun(strategy, index, envelope, envelopePath) {
466
554
  const base = { index, ...(envelopePath === undefined ? {} : { envelopePath }) };
@@ -497,6 +585,10 @@ export function summarizeRun(strategy, index, envelope, envelopePath) {
497
585
  outcome: goalOutcome ?? missionOutcome,
498
586
  missionOutcome,
499
587
  ...(goalOutcome === undefined ? {} : { goalOutcome }),
588
+ ...(typeof data.goalReason === "string" ? { goalReason: data.goalReason } : {}),
589
+ ...(isRecord(data.defectOutcome) && (data.defectOutcome.status === "none" || data.defectOutcome.status === "defects") && isRecord(data.defectOutcome.byKind)
590
+ ? { defectOutcome: { status: data.defectOutcome.status, byKind: numericCounts(data.defectOutcome.byKind) } }
591
+ : {}),
500
592
  exitCode: typeof data.exitCode === "number" ? data.exitCode : MISSION_EXIT_CODES[missionOutcome],
501
593
  findings: extractRunFindings(data),
502
594
  requests: extractRequests(data),
@@ -598,7 +690,7 @@ export async function runMultiRun(opts) {
598
690
  mkdirSync(runDir, { recursive: true });
599
691
  current = { persona: p, runs, index: i, runDir };
600
692
  // Strictly one at a time: the next run starts only after this one fully ended.
601
- const envelope = await opts.runOnce({ ...(p === null ? {} : { storageState: p.storageState }), outDir: runDir });
693
+ const envelope = await opts.runOnce({ ...(p === null ? {} : { storageState: p.storageState, persona: p }), outDir: runDir });
602
694
  const envelopePath = join(runDir, "run.envelope.json");
603
695
  writeJson(envelopePath, envelope);
604
696
  runs.push(summarizeRun(strategy, i, envelope, envelopePath));