@runcofactor/cli 0.54.0 → 0.55.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 (233) hide show
  1. package/README.md +2 -1
  2. package/dist/{account-6YJAU53I.js → account-RHHS7HT4.js} +5 -5
  3. package/dist/{alert-Z7V2ZUEW.js → alert-B5WEOKHP.js} +8 -8
  4. package/dist/{api-catalog-UEDTRM6E.js → api-catalog-UXONX3BR.js} +5 -5
  5. package/dist/{api-key-V5GEPRRG.js → api-key-J3A4TJKN.js} +5 -5
  6. package/dist/{attachment-M7VZ6GSE.js → attachment-ZQW7DR4G.js} +5 -5
  7. package/dist/{auth-DVTMWJKF.js → auth-HQGKUZBS.js} +3 -3
  8. package/dist/{benchmark-KZJZYUTQ.js → benchmark-TIKJA32J.js} +5 -5
  9. package/dist/{blackcat-QJXYDE66.js → blackcat-Z5LNV2GS.js} +3 -3
  10. package/dist/{chunk-7MRZWPVC.js → chunk-3KBYI6RR.js} +3 -3
  11. package/dist/{chunk-LPQTXBJF.js → chunk-3TZABC7D.js} +7 -7
  12. package/dist/{chunk-ZOPVBINJ.js → chunk-5OKCT6LF.js} +5 -5
  13. package/dist/{chunk-ZO5MSM4Q.js → chunk-635IQV6B.js} +2 -2
  14. package/dist/{chunk-4EWSONHO.js → chunk-6X6ZTDXP.js} +4 -4
  15. package/dist/{chunk-ZFN5FWN2.js → chunk-BJHAVM7Z.js} +2 -2
  16. package/dist/{chunk-Q7UAEFW5.js → chunk-CQSQNDMV.js} +4 -4
  17. package/dist/{chunk-AQOHNAEN.js → chunk-CZDQVQ57.js} +5 -5
  18. package/dist/{chunk-CV22445U.js → chunk-EGWVL5XA.js} +2 -2
  19. package/dist/{chunk-FLDIN6VX.js → chunk-JQG3V5E3.js} +2 -2
  20. package/dist/{chunk-KNWKOKM7.js → chunk-KL2ARGH6.js} +20 -11
  21. package/dist/chunk-KL2ARGH6.js.map +1 -0
  22. package/dist/{chunk-T6EQFICG.js → chunk-L4JQ236V.js} +4 -4
  23. package/dist/{chunk-2M4PZK6Q.js → chunk-MB4FS35J.js} +8 -8
  24. package/dist/{chunk-3YNR6U6Q.js → chunk-OU4I3MEH.js} +3 -3
  25. package/dist/{chunk-O7MBDOMO.js → chunk-QHRWXCON.js} +25 -9
  26. package/dist/chunk-QHRWXCON.js.map +1 -0
  27. package/dist/{chunk-HGEJHS45.js → chunk-QVMGXMP5.js} +5 -5
  28. package/dist/{chunk-G2SCV2CY.js → chunk-R2CRH6JQ.js} +3 -3
  29. package/dist/{chunk-HESV3F6U.js → chunk-RV7FZ4ID.js} +3 -3
  30. package/dist/{chunk-7VBX2M4F.js → chunk-SCQVBLNR.js} +3 -3
  31. package/dist/{chunk-74TU6PGO.js → chunk-TGI2AAOZ.js} +4 -4
  32. package/dist/{chunk-R2CVV7QT.js → chunk-U3MRXQZS.js} +5 -1
  33. package/dist/chunk-U3MRXQZS.js.map +1 -0
  34. package/dist/{chunk-L4Y5PZUE.js → chunk-W6DL4IP6.js} +2 -2
  35. package/dist/{chunk-TRC63RSK.js → chunk-WWUEKQLR.js} +3 -3
  36. package/dist/{chunk-MQQCUU5S.js → chunk-XM3WTJ7Y.js} +2 -2
  37. package/dist/{chunk-YACDH6MJ.js → chunk-XWJJYZQC.js} +2 -2
  38. package/dist/{chunk-QGP67JOK.js → chunk-YEH7UIUY.js} +4 -4
  39. package/dist/{chunk-RA2NRAWU.js → chunk-YTXZUWMN.js} +6 -6
  40. package/dist/{chunk-JAIMLQOU.js → chunk-Z72GWGH2.js} +6 -6
  41. package/dist/{chunk-QYHJUHL7.js → chunk-ZH7HWVEE.js} +2 -2
  42. package/dist/{chunk-IVWWYKAM.js → chunk-ZZZ33KTO.js} +3 -3
  43. package/dist/{credential-546ER7WQ.js → credential-2IEZDTH3.js} +5 -5
  44. package/dist/{credential-template-BWMEBGBN.js → credential-template-S5WSOI3P.js} +5 -5
  45. package/dist/{digest-NIVBDDI2.js → digest-HQGL7H6E.js} +8 -8
  46. package/dist/{docs-AK4MDP6K.js → docs-CJQZVERZ.js} +5 -5
  47. package/dist/{doctor-NCLA47EL.js → doctor-EGK5AB77.js} +3 -3
  48. package/dist/{environment-X3PV5IN2.js → environment-MWVXYEDU.js} +7 -7
  49. package/dist/{eval-5FZKYZ6O.js → eval-F4NORBQI.js} +9 -9
  50. package/dist/{exploration-2RVGIUKT.js → exploration-JC7R7KTJ.js} +5 -5
  51. package/dist/{exploratory-test-SJ5HFI3L.js → exploratory-test-BHK5FTMJ.js} +13 -5
  52. package/dist/exploratory-test-BHK5FTMJ.js.map +1 -0
  53. package/dist/{external-run-4NDVAHQB.js → external-run-UL5CKG54.js} +9 -9
  54. package/dist/{feature-flag-C4IRE724.js → feature-flag-NMO25TZN.js} +5 -5
  55. package/dist/{feedback-337OZCKC.js → feedback-3JNPSUXS.js} +6 -6
  56. package/dist/{flow-D7ZLBKCH.js → flow-AYE4RTZN.js} +5 -5
  57. package/dist/{github-LKXYIALH.js → github-DM2DCXRY.js} +6 -6
  58. package/dist/index.js +76 -76
  59. package/dist/{init-GKEC6LPH.js → init-CPDT5XAU.js} +5 -5
  60. package/dist/{install-K45SAT2V.js → install-JZRNCHMO.js} +5 -5
  61. package/dist/{issues-2HMTQYWR.js → issues-GRFJB52C.js} +8 -8
  62. package/dist/{knobs-KUCGLO5Z.js → knobs-3Y4QXWAD.js} +5 -5
  63. package/dist/{landing-KAET2I73.js → landing-ABYL5WVG.js} +7 -7
  64. package/dist/{list-GDV4UYWV.js → list-WG5QB4NK.js} +5 -5
  65. package/dist/{local-NFOSJLLV.js → local-KX24OR5Z.js} +7 -7
  66. package/dist/{login-Y77HWROY.js → login-MLJQAIFK.js} +5 -5
  67. package/dist/{mcp-CPCFMU6B.js → mcp-DDTO54XD.js} +10 -10
  68. package/dist/{metrics-Y245ST63.js → metrics-BJLLOSPQ.js} +5 -5
  69. package/dist/{monitor-BUDWSC3S.js → monitor-E2CKGHPM.js} +5 -5
  70. package/dist/{perf-3JOAXPHP.js → perf-IX7JOMUE.js} +11 -11
  71. package/dist/{product-CXL3YTMD.js → product-2ECWM2JN.js} +5 -5
  72. package/dist/{product-map-656BTU74.js → product-map-O542LZQL.js} +7 -7
  73. package/dist/{prompts-3SZ7O5E6.js → prompts-Y7O4XJ5P.js} +5 -5
  74. package/dist/{proofs-4CSCCSNL.js → proofs-TNOBLSRP.js} +9 -9
  75. package/dist/{property-IEKBXRVY.js → property-TZCGOZQG.js} +6 -6
  76. package/dist/{psql-M4CM6TSI.js → psql-M66YSUXW.js} +5 -5
  77. package/dist/{record-QP4TYZBS.js → record-3JINBRAR.js} +6 -6
  78. package/dist/{redis-KG47IGJV.js → redis-FOIBINYA.js} +5 -5
  79. package/dist/{release-QHPSQULK.js → release-B4VWMVEI.js} +5 -5
  80. package/dist/{runbook-YVBG2QK3.js → runbook-EYMSE37E.js} +5 -5
  81. package/dist/{sandbox-ZXDZTCCN.js → sandbox-R6EMGOKR.js} +16 -13
  82. package/dist/sandbox-R6EMGOKR.js.map +1 -0
  83. package/dist/{scenarios-2SX2NUCD.js → scenarios-W7YNLBVO.js} +5 -5
  84. package/dist/{schedule-P6F7MLXX.js → schedule-EDHQJUUZ.js} +8 -8
  85. package/dist/{session-SZMCZTPE.js → session-4N62APNQ.js} +9 -9
  86. package/dist/{skill-D4XFW6QI.js → skill-XFGMNOVM.js} +107 -9
  87. package/dist/skill-XFGMNOVM.js.map +1 -0
  88. package/dist/skills/cofactor-debug-run/SKILL.md +5 -1
  89. package/dist/skills/cofactor-debug-run/history/2.0.9.md +319 -0
  90. package/dist/skills/cofactor-debug-run/version.json +1 -1
  91. package/dist/{slack-UDXTPOSW.js → slack-RUAXG6TB.js} +6 -6
  92. package/dist/{spec-YCBBIV27.js → spec-ZZKMW7ER.js} +5 -5
  93. package/dist/{src-ZKVNVLXY.js → src-CQ2YAW7F.js} +3 -3
  94. package/dist/{src-NG7DRE5A.js → src-DGIVA22K.js} +3 -3
  95. package/dist/{src-DEGBASCD.js → src-ECZWYNSV.js} +5 -5
  96. package/dist/{src-DY7GLRO2.js → src-OKSAEHQS.js} +4 -4
  97. package/dist/{start-ZYZSORPY.js → start-OCZGILRL.js} +5 -5
  98. package/dist/{status-ESIG6A7W.js → status-YTJ6YITG.js} +5 -5
  99. package/dist/{tag-3K5Y25AR.js → tag-KBG4SWRL.js} +6 -6
  100. package/dist/{task-JLNX7O3M.js → task-O6XRMHYE.js} +6 -6
  101. package/dist/{teams-F4IU3EXE.js → teams-NFUHS7XI.js} +7 -7
  102. package/dist/{test-suite-QHDUW5W5.js → test-suite-6BH3DESN.js} +12 -12
  103. package/dist/{tickets-NBL5WACL.js → tickets-JU2STK4B.js} +5 -5
  104. package/dist/{trace-ZKYAI5JF.js → trace-NMSGKASJ.js} +8 -8
  105. package/dist/{triage-5NWCREUM.js → triage-JGECJJU5.js} +6 -6
  106. package/dist/{trigger-KXYYY5IR.js → trigger-OSPEVCCQ.js} +9 -9
  107. package/dist/{update-check-Q2URVJLC.js → update-check-FNP6RFZO.js} +4 -4
  108. package/dist/{upgrade-4XSASC7U.js → upgrade-3PPBXFAT.js} +5 -5
  109. package/dist/{usage-UY7VZYVY.js → usage-QMCU2JIO.js} +7 -7
  110. package/dist/{utilities-53NXNLA7.js → utilities-7VHWTSJT.js} +6 -6
  111. package/dist/{visual-IJAT7X7D.js → visual-WIZSPTVK.js} +5 -5
  112. package/dist/{workflow-OQNH2FIS.js → workflow-23HKTJLS.js} +62 -33
  113. package/dist/workflow-23HKTJLS.js.map +1 -0
  114. package/dist/{workflow-cache-FP6MKLVR.js → workflow-cache-ACGM3BOI.js} +16 -16
  115. package/dist/{workflow-cache-convergence-resolve-HS5KO7US.js → workflow-cache-convergence-resolve-KEQDQMKL.js} +5 -5
  116. package/dist/{workflow-debug-EM55H2QE.js → workflow-debug-TVLBNRCB.js} +11 -11
  117. package/dist/{workflow-feedback-GNWNWVHH.js → workflow-feedback-GB5VPGE2.js} +5 -5
  118. package/dist/{workflow-fork-M5AQWST7.js → workflow-fork-2IPJNR76.js} +5 -5
  119. package/dist/{workflow-promotion-HYULZDYL.js → workflow-promotion-QEQUXVUT.js} +5 -5
  120. package/dist/{workflow-proposals-EN327FSE.js → workflow-proposals-KHGTPMD4.js} +5 -5
  121. package/dist/{workflow-revisions-ZMTVNWRW.js → workflow-revisions-F5KQEEXB.js} +5 -5
  122. package/dist/{workflow-status-FNAJG34W.js → workflow-status-66HC5MEA.js} +5 -5
  123. package/package.json +1 -1
  124. package/dist/chunk-KNWKOKM7.js.map +0 -1
  125. package/dist/chunk-O7MBDOMO.js.map +0 -1
  126. package/dist/chunk-R2CVV7QT.js.map +0 -1
  127. package/dist/exploratory-test-SJ5HFI3L.js.map +0 -1
  128. package/dist/sandbox-ZXDZTCCN.js.map +0 -1
  129. package/dist/skill-D4XFW6QI.js.map +0 -1
  130. package/dist/workflow-OQNH2FIS.js.map +0 -1
  131. /package/dist/{account-6YJAU53I.js.map → account-RHHS7HT4.js.map} +0 -0
  132. /package/dist/{alert-Z7V2ZUEW.js.map → alert-B5WEOKHP.js.map} +0 -0
  133. /package/dist/{api-catalog-UEDTRM6E.js.map → api-catalog-UXONX3BR.js.map} +0 -0
  134. /package/dist/{api-key-V5GEPRRG.js.map → api-key-J3A4TJKN.js.map} +0 -0
  135. /package/dist/{attachment-M7VZ6GSE.js.map → attachment-ZQW7DR4G.js.map} +0 -0
  136. /package/dist/{auth-DVTMWJKF.js.map → auth-HQGKUZBS.js.map} +0 -0
  137. /package/dist/{benchmark-KZJZYUTQ.js.map → benchmark-TIKJA32J.js.map} +0 -0
  138. /package/dist/{blackcat-QJXYDE66.js.map → blackcat-Z5LNV2GS.js.map} +0 -0
  139. /package/dist/{chunk-7MRZWPVC.js.map → chunk-3KBYI6RR.js.map} +0 -0
  140. /package/dist/{chunk-LPQTXBJF.js.map → chunk-3TZABC7D.js.map} +0 -0
  141. /package/dist/{chunk-ZOPVBINJ.js.map → chunk-5OKCT6LF.js.map} +0 -0
  142. /package/dist/{chunk-ZO5MSM4Q.js.map → chunk-635IQV6B.js.map} +0 -0
  143. /package/dist/{chunk-4EWSONHO.js.map → chunk-6X6ZTDXP.js.map} +0 -0
  144. /package/dist/{chunk-ZFN5FWN2.js.map → chunk-BJHAVM7Z.js.map} +0 -0
  145. /package/dist/{chunk-Q7UAEFW5.js.map → chunk-CQSQNDMV.js.map} +0 -0
  146. /package/dist/{chunk-AQOHNAEN.js.map → chunk-CZDQVQ57.js.map} +0 -0
  147. /package/dist/{chunk-CV22445U.js.map → chunk-EGWVL5XA.js.map} +0 -0
  148. /package/dist/{chunk-FLDIN6VX.js.map → chunk-JQG3V5E3.js.map} +0 -0
  149. /package/dist/{chunk-T6EQFICG.js.map → chunk-L4JQ236V.js.map} +0 -0
  150. /package/dist/{chunk-2M4PZK6Q.js.map → chunk-MB4FS35J.js.map} +0 -0
  151. /package/dist/{chunk-3YNR6U6Q.js.map → chunk-OU4I3MEH.js.map} +0 -0
  152. /package/dist/{chunk-HGEJHS45.js.map → chunk-QVMGXMP5.js.map} +0 -0
  153. /package/dist/{chunk-G2SCV2CY.js.map → chunk-R2CRH6JQ.js.map} +0 -0
  154. /package/dist/{chunk-HESV3F6U.js.map → chunk-RV7FZ4ID.js.map} +0 -0
  155. /package/dist/{chunk-7VBX2M4F.js.map → chunk-SCQVBLNR.js.map} +0 -0
  156. /package/dist/{chunk-74TU6PGO.js.map → chunk-TGI2AAOZ.js.map} +0 -0
  157. /package/dist/{chunk-L4Y5PZUE.js.map → chunk-W6DL4IP6.js.map} +0 -0
  158. /package/dist/{chunk-TRC63RSK.js.map → chunk-WWUEKQLR.js.map} +0 -0
  159. /package/dist/{chunk-MQQCUU5S.js.map → chunk-XM3WTJ7Y.js.map} +0 -0
  160. /package/dist/{chunk-YACDH6MJ.js.map → chunk-XWJJYZQC.js.map} +0 -0
  161. /package/dist/{chunk-QGP67JOK.js.map → chunk-YEH7UIUY.js.map} +0 -0
  162. /package/dist/{chunk-RA2NRAWU.js.map → chunk-YTXZUWMN.js.map} +0 -0
  163. /package/dist/{chunk-JAIMLQOU.js.map → chunk-Z72GWGH2.js.map} +0 -0
  164. /package/dist/{chunk-QYHJUHL7.js.map → chunk-ZH7HWVEE.js.map} +0 -0
  165. /package/dist/{chunk-IVWWYKAM.js.map → chunk-ZZZ33KTO.js.map} +0 -0
  166. /package/dist/{credential-546ER7WQ.js.map → credential-2IEZDTH3.js.map} +0 -0
  167. /package/dist/{credential-template-BWMEBGBN.js.map → credential-template-S5WSOI3P.js.map} +0 -0
  168. /package/dist/{digest-NIVBDDI2.js.map → digest-HQGL7H6E.js.map} +0 -0
  169. /package/dist/{docs-AK4MDP6K.js.map → docs-CJQZVERZ.js.map} +0 -0
  170. /package/dist/{doctor-NCLA47EL.js.map → doctor-EGK5AB77.js.map} +0 -0
  171. /package/dist/{environment-X3PV5IN2.js.map → environment-MWVXYEDU.js.map} +0 -0
  172. /package/dist/{eval-5FZKYZ6O.js.map → eval-F4NORBQI.js.map} +0 -0
  173. /package/dist/{exploration-2RVGIUKT.js.map → exploration-JC7R7KTJ.js.map} +0 -0
  174. /package/dist/{external-run-4NDVAHQB.js.map → external-run-UL5CKG54.js.map} +0 -0
  175. /package/dist/{feature-flag-C4IRE724.js.map → feature-flag-NMO25TZN.js.map} +0 -0
  176. /package/dist/{feedback-337OZCKC.js.map → feedback-3JNPSUXS.js.map} +0 -0
  177. /package/dist/{flow-D7ZLBKCH.js.map → flow-AYE4RTZN.js.map} +0 -0
  178. /package/dist/{github-LKXYIALH.js.map → github-DM2DCXRY.js.map} +0 -0
  179. /package/dist/{init-GKEC6LPH.js.map → init-CPDT5XAU.js.map} +0 -0
  180. /package/dist/{install-K45SAT2V.js.map → install-JZRNCHMO.js.map} +0 -0
  181. /package/dist/{issues-2HMTQYWR.js.map → issues-GRFJB52C.js.map} +0 -0
  182. /package/dist/{knobs-KUCGLO5Z.js.map → knobs-3Y4QXWAD.js.map} +0 -0
  183. /package/dist/{landing-KAET2I73.js.map → landing-ABYL5WVG.js.map} +0 -0
  184. /package/dist/{list-GDV4UYWV.js.map → list-WG5QB4NK.js.map} +0 -0
  185. /package/dist/{local-NFOSJLLV.js.map → local-KX24OR5Z.js.map} +0 -0
  186. /package/dist/{login-Y77HWROY.js.map → login-MLJQAIFK.js.map} +0 -0
  187. /package/dist/{mcp-CPCFMU6B.js.map → mcp-DDTO54XD.js.map} +0 -0
  188. /package/dist/{metrics-Y245ST63.js.map → metrics-BJLLOSPQ.js.map} +0 -0
  189. /package/dist/{monitor-BUDWSC3S.js.map → monitor-E2CKGHPM.js.map} +0 -0
  190. /package/dist/{perf-3JOAXPHP.js.map → perf-IX7JOMUE.js.map} +0 -0
  191. /package/dist/{product-CXL3YTMD.js.map → product-2ECWM2JN.js.map} +0 -0
  192. /package/dist/{product-map-656BTU74.js.map → product-map-O542LZQL.js.map} +0 -0
  193. /package/dist/{prompts-3SZ7O5E6.js.map → prompts-Y7O4XJ5P.js.map} +0 -0
  194. /package/dist/{proofs-4CSCCSNL.js.map → proofs-TNOBLSRP.js.map} +0 -0
  195. /package/dist/{property-IEKBXRVY.js.map → property-TZCGOZQG.js.map} +0 -0
  196. /package/dist/{psql-M4CM6TSI.js.map → psql-M66YSUXW.js.map} +0 -0
  197. /package/dist/{record-QP4TYZBS.js.map → record-3JINBRAR.js.map} +0 -0
  198. /package/dist/{redis-KG47IGJV.js.map → redis-FOIBINYA.js.map} +0 -0
  199. /package/dist/{release-QHPSQULK.js.map → release-B4VWMVEI.js.map} +0 -0
  200. /package/dist/{runbook-YVBG2QK3.js.map → runbook-EYMSE37E.js.map} +0 -0
  201. /package/dist/{scenarios-2SX2NUCD.js.map → scenarios-W7YNLBVO.js.map} +0 -0
  202. /package/dist/{schedule-P6F7MLXX.js.map → schedule-EDHQJUUZ.js.map} +0 -0
  203. /package/dist/{session-SZMCZTPE.js.map → session-4N62APNQ.js.map} +0 -0
  204. /package/dist/{slack-UDXTPOSW.js.map → slack-RUAXG6TB.js.map} +0 -0
  205. /package/dist/{spec-YCBBIV27.js.map → spec-ZZKMW7ER.js.map} +0 -0
  206. /package/dist/{src-ZKVNVLXY.js.map → src-CQ2YAW7F.js.map} +0 -0
  207. /package/dist/{src-DEGBASCD.js.map → src-DGIVA22K.js.map} +0 -0
  208. /package/dist/{src-DY7GLRO2.js.map → src-ECZWYNSV.js.map} +0 -0
  209. /package/dist/{src-NG7DRE5A.js.map → src-OKSAEHQS.js.map} +0 -0
  210. /package/dist/{start-ZYZSORPY.js.map → start-OCZGILRL.js.map} +0 -0
  211. /package/dist/{status-ESIG6A7W.js.map → status-YTJ6YITG.js.map} +0 -0
  212. /package/dist/{tag-3K5Y25AR.js.map → tag-KBG4SWRL.js.map} +0 -0
  213. /package/dist/{task-JLNX7O3M.js.map → task-O6XRMHYE.js.map} +0 -0
  214. /package/dist/{teams-F4IU3EXE.js.map → teams-NFUHS7XI.js.map} +0 -0
  215. /package/dist/{test-suite-QHDUW5W5.js.map → test-suite-6BH3DESN.js.map} +0 -0
  216. /package/dist/{tickets-NBL5WACL.js.map → tickets-JU2STK4B.js.map} +0 -0
  217. /package/dist/{trace-ZKYAI5JF.js.map → trace-NMSGKASJ.js.map} +0 -0
  218. /package/dist/{triage-5NWCREUM.js.map → triage-JGECJJU5.js.map} +0 -0
  219. /package/dist/{trigger-KXYYY5IR.js.map → trigger-OSPEVCCQ.js.map} +0 -0
  220. /package/dist/{update-check-Q2URVJLC.js.map → update-check-FNP6RFZO.js.map} +0 -0
  221. /package/dist/{upgrade-4XSASC7U.js.map → upgrade-3PPBXFAT.js.map} +0 -0
  222. /package/dist/{usage-UY7VZYVY.js.map → usage-QMCU2JIO.js.map} +0 -0
  223. /package/dist/{utilities-53NXNLA7.js.map → utilities-7VHWTSJT.js.map} +0 -0
  224. /package/dist/{visual-IJAT7X7D.js.map → visual-WIZSPTVK.js.map} +0 -0
  225. /package/dist/{workflow-cache-FP6MKLVR.js.map → workflow-cache-ACGM3BOI.js.map} +0 -0
  226. /package/dist/{workflow-cache-convergence-resolve-HS5KO7US.js.map → workflow-cache-convergence-resolve-KEQDQMKL.js.map} +0 -0
  227. /package/dist/{workflow-debug-EM55H2QE.js.map → workflow-debug-TVLBNRCB.js.map} +0 -0
  228. /package/dist/{workflow-feedback-GNWNWVHH.js.map → workflow-feedback-GB5VPGE2.js.map} +0 -0
  229. /package/dist/{workflow-fork-M5AQWST7.js.map → workflow-fork-2IPJNR76.js.map} +0 -0
  230. /package/dist/{workflow-promotion-HYULZDYL.js.map → workflow-promotion-QEQUXVUT.js.map} +0 -0
  231. /package/dist/{workflow-proposals-EN327FSE.js.map → workflow-proposals-KHGTPMD4.js.map} +0 -0
  232. /package/dist/{workflow-revisions-ZMTVNWRW.js.map → workflow-revisions-F5KQEEXB.js.map} +0 -0
  233. /package/dist/{workflow-status-FNAJG34W.js.map → workflow-status-66HC5MEA.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/exploratory-test.ts"],"sourcesContent":["/**\n * `cofactor exploratory-test` — start and inspect exploratory (ad-hoc) tests.\n *\n * An exploratory test is one agent-driven browser run against an application\n * from a free-text prompt. Not to be confused with `cofactor exploration`,\n * which runs product-map exploration cycles. Thin wrapper over\n * `POST/GET /adhoc-tests`.\n *\n * @module exploratory-test\n */\n\nimport process from 'node:process';\nimport { readFileSync } from 'node:fs';\nimport { hasFlag, resolveConfig, resolveOrgAppUrl } from './auth.js';\nimport {\n apiRequest,\n getApplicationArg,\n getPositionalArg,\n getScalarArgValue,\n resolveCredentialId,\n selectProperty,\n} from './cli-helpers.js';\nimport { stripTerminalControls, writeRawOutput } from './brand.js';\nimport {\n ADHOC_TEST_INSTRUCTIONS_MAX_LENGTH,\n EXPLORATORY_EFFORT_VALUES,\n REVIEW_FLAVOR_VALUES,\n} from '@chatsdet/types';\n\ntype ApiResult = { ok: boolean; error?: string; code?: string };\n\ntype StartResult = ApiResult & { adhocTestId?: string; jobId?: string };\n\ntype TestRow = {\n id: string;\n propertyName?: string;\n title: string | null;\n status: string;\n flavor: string;\n issuesFound: number;\n summary: string | null;\n};\n\ntype ListResult = ApiResult & {\n items?: TestRow[];\n pagination?: { page: number; pageSize: number; totalItems: number; totalPages: number };\n};\n\ntype TestDetail = TestRow & {\n targetKind: string | null;\n sandboxV2Environment: string | null;\n overallScore: number | null;\n startedAt: string | null;\n finishedAt: string | null;\n videoStorageKey: string | null;\n traceStorageKey: string | null;\n};\n\ntype GetResult = ApiResult & {\n data?: TestDetail;\n reviewFindings?: unknown[];\n browserSessions?: Array<{ videoStorageKey: string | null; traceStorageKey: string | null }>;\n};\n\nconst TERMINAL_STATUSES = new Set(['completed', 'failed', 'canceled']);\nconst DEFAULT_WAIT_TIMEOUT_SEC = 1800;\nconst DEFAULT_POLL_INTERVAL_MS = 5000;\n\n/** Global flags that take a value, so the id after one of them is still found by `get`. */\nconst VALUE_FLAGS = ['--env', '--api-url', '--token', '--org'];\n\nfunction fail(message: string): never {\n console.error(`Error: ${message}`);\n process.exit(1);\n}\n\n/** The API's typed user error, code and message unchanged. */\nfunction failApi(result: ApiResult, fallback: string): never {\n const message = result.error ?? fallback;\n fail(result.code ? `${result.code}: ${message}` : message);\n}\n\nfunction printHelp(): void {\n console.log(\n [\n 'Usage: cofactor exploratory-test <sub-command> [options]',\n '',\n 'Start and inspect exploratory (ad-hoc) tests: an agent drives a browser from your prompt',\n 'and reports what it finds. (Not `cofactor exploration`, which runs product-map cycles.)',\n '',\n 'Sub-commands:',\n ' run --application <name|id> --prompt <text|@file> Start an exploratory test',\n ' get <id> Status, summary, findings, video/trace',\n ' list [--application <name|id>] Recent exploratory tests',\n ' (To run one on a schedule: cofactor schedule exploratory-test --help)',\n '',\n 'run options:',\n ` --prompt <text|@file> What to explore (up to ${ADHOC_TEST_INSTRUCTIONS_MAX_LENGTH} characters; @file reads a file)`,\n ' --flavor <f> functional (default) | ux | spec | fuzz (needs --sandbox-env)',\n ' --effort <e> fuzz only: quick (~5 min) | standard (~15, default) | deep (~30)',\n ' --environment <name|id> Run against a named live environment of the application',\n ' --sandbox-env <name> Run against a Sandboxes v2 environment of the application',\n ' (personas come from the environment; no --environment/--credential)',\n ' --credential <name|id> Sign in with this credential (live targets)',\n ' --wait Poll until the run finishes, then print status and URL;',\n ' exits non-zero unless it completed',\n ' --timeout <seconds> Max time to wait with --wait (default: 1800)',\n ' With no target flag the application\\'s default ad-hoc environment is used, else live.',\n ' Functional runs on a live environment can use its variables (cofactor env set-var):',\n ' name one in the prompt as $var.ENV.<name> and the agent types it by reference.',\n ' A sensitive value is never shown to the agent: it reads [REDACTED] in tool results,',\n ' files and the trace. Screenshots and video are not masked.',\n '',\n 'list options:',\n ' --flavor <f> Only this flavor',\n ' --page <n>, --page-size <n> Pagination',\n '',\n 'Common options:',\n ' --application <name|id> Application (alias: --property)',\n ' --org <name|id> Which logged-in org to act as',\n ' --env <env> Target environment (prod, dev, local)',\n ' --api-url <url> API URL override',\n ' --token <key> API token override',\n ' --json Print machine-readable JSON',\n ].join('\\n')\n );\n}\n\nfunction readPrompt(value: string): string {\n let text = value;\n if (value.startsWith('@')) {\n try {\n text = readFileSync(value.slice(1), 'utf8');\n } catch (error) {\n fail(`Cannot read prompt file ${value.slice(1)}: ${error instanceof Error ? error.message : String(error)}`);\n }\n }\n if (text.trim().length === 0) fail('--prompt is empty.');\n if (text.length > ADHOC_TEST_INSTRUCTIONS_MAX_LENGTH) {\n fail(`--prompt is ${text.length} characters; the limit is ${ADHOC_TEST_INSTRUCTIONS_MAX_LENGTH}.`);\n }\n return text;\n}\n\nfunction parseFlavor(argv: string[]): string | undefined {\n const flavor = getScalarArgValue(argv, '--flavor');\n if (flavor !== undefined && !(REVIEW_FLAVOR_VALUES as readonly string[]).includes(flavor)) {\n fail(`--flavor must be one of: ${REVIEW_FLAVOR_VALUES.join(', ')}`);\n }\n return flavor;\n}\n\nfunction parseEffort(argv: string[]): string | undefined {\n const effort = getScalarArgValue(argv, '--effort');\n if (effort !== undefined && !(EXPLORATORY_EFFORT_VALUES as readonly string[]).includes(effort)) {\n fail(`--effort must be one of: ${EXPLORATORY_EFFORT_VALUES.join(', ')}`);\n }\n return effort;\n}\n\n/** The web page for a run; one detail page serves every flavor. */\nfunction runUrl(appUrl: string, id: string): string {\n return `${appUrl}/exploratory/${id}`;\n}\n\nasync function resolveEnvironmentId(\n arg: string,\n propertyId: string,\n apiUrl: string,\n token: string\n): Promise<string> {\n const res = await apiRequest<ApiResult & { items?: Array<{ id: string; name: string }> }>(\n apiUrl,\n token,\n 'GET',\n `/org/properties/${propertyId}/environments`\n );\n if (!res.ok) failApi(res, 'Failed to list environments');\n const environments = res.items ?? [];\n const byName = environments.filter((e) => e.name.toLowerCase() === arg.toLowerCase());\n if (byName.length > 1) fail(`Multiple environments match \"${arg}\" on this application. Use the id.`);\n const match = environments.find((e) => e.id === arg) ?? byName[0];\n if (!match) {\n fail(\n `Environment \"${arg}\" not found on this application. Known: ${\n environments.map((e) => e.name).join(', ') || '(none)'\n }`\n );\n }\n return match.id;\n}\n\nasync function buildTarget(\n argv: string[],\n propertyId: string,\n apiUrl: string,\n token: string\n): Promise<Record<string, unknown> | undefined> {\n const sandboxEnv = getScalarArgValue(argv, '--sandbox-env');\n const environment = getScalarArgValue(argv, '--environment');\n const credential = getScalarArgValue(argv, '--credential');\n\n if (sandboxEnv !== undefined) {\n if (environment !== undefined || credential !== undefined) {\n fail('--sandbox-env cannot be combined with --environment or --credential.');\n }\n return { kind: 'sandbox-v2-environment', environment: sandboxEnv };\n }\n if (environment === undefined && credential === undefined) return undefined;\n return {\n kind: 'live',\n ...(environment !== undefined\n ? { environmentId: await resolveEnvironmentId(environment, propertyId, apiUrl, token) }\n : {}),\n ...(credential !== undefined\n ? { credentialId: await resolveCredentialId(credential, propertyId, apiUrl, token) }\n : {}),\n };\n}\n\nasync function fetchTest(apiUrl: string, token: string, id: string): Promise<GetResult> {\n const result = await apiRequest<GetResult>(\n apiUrl,\n token,\n 'GET',\n `/adhoc-tests/${encodeURIComponent(id)}`\n );\n if (!result.ok || !result.data) failApi(result, 'Failed to read the exploratory test');\n return result;\n}\n\n/** Poll until the run is terminal; progress lines go to stderr so --json stays pipeable. */\nasync function waitForTerminal(\n apiUrl: string,\n token: string,\n id: string,\n timeoutSec: number,\n intervalMs: number\n): Promise<GetResult> {\n const deadline = Date.now() + timeoutSec * 1000;\n let lastStatus = '';\n for (;;) {\n const result = await apiRequest<GetResult>(apiUrl, token, 'GET', `/adhoc-tests/${encodeURIComponent(id)}`);\n if (!result.ok || !result.data) {\n failApi(result, `Failed to read ${id}; it keeps running. Check it with: cofactor exploratory-test get ${id}`);\n }\n const status = result.data.status;\n if (status !== lastStatus) {\n console.error(`Status: ${status}`);\n lastStatus = status;\n }\n if (TERMINAL_STATUSES.has(status)) return result;\n if (Date.now() >= deadline) {\n fail(`Timed out after ${timeoutSec}s waiting for ${id} (status: ${status}). It is still running.`);\n }\n await new Promise((resolve) => setTimeout(resolve, intervalMs));\n }\n}\n\nfunction printDetail(result: GetResult, url: string): void {\n const d = result.data!;\n console.log(`${d.id} ${d.status} ${d.flavor}${d.propertyName ? ` ${d.propertyName}` : ''}`);\n if (d.title) console.log(`Title: ${stripTerminalControls(d.title)}`);\n console.log(`URL: ${url}`);\n if (d.targetKind) {\n console.log(`Target: ${d.sandboxV2Environment ? `${d.targetKind} (${d.sandboxV2Environment})` : d.targetKind}`);\n }\n if (d.startedAt) console.log(`Started: ${d.startedAt}${d.finishedAt ? ` Finished: ${d.finishedAt}` : ''}`);\n const findings = result.reviewFindings?.length ?? 0;\n console.log(`Issues found: ${d.issuesFound}${findings > 0 ? ` Review findings: ${findings}` : ''}`);\n if (d.overallScore !== null && d.overallScore !== undefined) console.log(`Score: ${d.overallScore}`);\n const sessions = result.browserSessions ?? [];\n const hasVideo = sessions.some((s) => s.videoStorageKey) || Boolean(d.videoStorageKey);\n const hasTrace = sessions.some((s) => s.traceStorageKey) || Boolean(d.traceStorageKey);\n console.log(`Video: ${hasVideo ? 'available' : 'not available'} Trace: ${hasTrace ? 'available' : 'not available'}`);\n if (d.summary) console.log(`\\n${stripTerminalControls(d.summary)}`);\n}\n\nexport async function handleRun(\n argv: string[],\n apiUrl: string,\n token: string,\n appSubdomain: string | null | undefined,\n pollIntervalMs: number = DEFAULT_POLL_INTERVAL_MS\n): Promise<void> {\n const promptArg = getScalarArgValue(argv, '--prompt');\n if (promptArg === undefined) fail('Missing --prompt <text|@file>.');\n const instructions = readPrompt(promptArg);\n const flavor = parseFlavor(argv);\n const effort = parseEffort(argv);\n const timeoutArg = getScalarArgValue(argv, '--timeout');\n if (timeoutArg !== undefined && !/^[1-9]\\d*$/.test(timeoutArg)) fail('--timeout must be a positive whole number of seconds.');\n const timeoutSec = timeoutArg === undefined ? DEFAULT_WAIT_TIMEOUT_SEC : Number.parseInt(timeoutArg, 10);\n const json = hasFlag(argv, '--json');\n const wait = hasFlag(argv, '--wait');\n\n const property = await selectProperty(apiUrl, token, getApplicationArg(argv));\n if (!property) process.exit(1);\n const target = await buildTarget(argv, property.id, apiUrl, token);\n\n const started = await apiRequest<StartResult>(apiUrl, token, 'POST', '/adhoc-tests', {\n propertyId: property.id,\n instructions,\n ...(flavor ? { flavor } : {}),\n ...(effort ? { effort } : {}),\n ...(target ? { target } : {}),\n });\n if (!started.ok || !started.adhocTestId) failApi(started, 'Failed to start the exploratory test');\n const id = started.adhocTestId;\n const appUrl = resolveOrgAppUrl(apiUrl, appSubdomain);\n const url = runUrl(appUrl, id);\n\n if (!wait) {\n if (json) {\n writeRawOutput(JSON.stringify({ id, jobId: started.jobId, url }, null, 2));\n return;\n }\n console.log(`Started exploratory test ${id}`);\n console.log(`URL: ${url}`);\n console.log(`Inspect it: cofactor exploratory-test get ${id}`);\n return;\n }\n\n console.error(`Started exploratory test ${id}`);\n const finished = await waitForTerminal(apiUrl, token, id, timeoutSec, pollIntervalMs);\n if (json) {\n writeRawOutput(JSON.stringify({ ...finished, url }, null, 2));\n } else {\n printDetail(finished, url);\n }\n process.exitCode = finished.data!.status === 'completed' ? 0 : 1;\n}\n\nexport async function handleGet(\n argv: string[],\n apiUrl: string,\n token: string,\n appSubdomain: string | null | undefined\n): Promise<void> {\n const id = getPositionalArg(argv, VALUE_FLAGS);\n if (!id) fail('Missing exploratory test id.');\n const result = await fetchTest(apiUrl, token, id);\n const url = runUrl(resolveOrgAppUrl(apiUrl, appSubdomain), result.data!.id);\n if (hasFlag(argv, '--json')) {\n writeRawOutput(JSON.stringify({ ...result, url }, null, 2));\n return;\n }\n printDetail(result, url);\n}\n\nexport async function handleList(argv: string[], apiUrl: string, token: string): Promise<void> {\n const flavor = parseFlavor(argv);\n const applicationArg = getApplicationArg(argv);\n const query = new URLSearchParams();\n if (applicationArg !== undefined) {\n const property = await selectProperty(apiUrl, token, applicationArg);\n if (!property) process.exit(1);\n query.set('propertyId', property.id);\n }\n if (flavor) query.set('flavor', flavor);\n const page = getScalarArgValue(argv, '--page');\n if (page !== undefined) query.set('page', page);\n const pageSize = getScalarArgValue(argv, '--page-size');\n if (pageSize !== undefined) query.set('pageSize', pageSize);\n\n const qs = query.toString();\n const result = await apiRequest<ListResult>(apiUrl, token, 'GET', `/adhoc-tests${qs ? `?${qs}` : ''}`);\n if (!result.ok) failApi(result, 'Failed to list exploratory tests');\n if (hasFlag(argv, '--json')) {\n writeRawOutput(JSON.stringify(result, null, 2));\n return;\n }\n const items = result.items ?? [];\n if (items.length === 0) {\n console.log('No exploratory tests found.');\n return;\n }\n for (const t of items) {\n const label = stripTerminalControls((t.title ?? t.summary ?? '').split('\\n')[0]!).slice(0, 60);\n console.log(\n `${t.id} ${t.status.padEnd(9)} ${t.flavor.padEnd(10)} issues=${String(t.issuesFound).padEnd(3)} ${t.propertyName ?? ''} ${label}`.trimEnd()\n );\n }\n const p = result.pagination;\n if (p && p.totalPages > p.page) {\n console.log(`\\nPage ${p.page} of ${p.totalPages} (${p.totalItems} total). Next: --page ${p.page + 1}`);\n }\n}\n\nexport async function runExploratoryTest(argv: string[]): Promise<void> {\n const [subCommand, ...rest] = argv;\n if (!subCommand || subCommand === 'help' || hasFlag(argv, '--help', '-h')) {\n printHelp();\n return;\n }\n const { apiUrl, token, appSubdomain } = await resolveConfig(argv);\n switch (subCommand) {\n case 'run':\n await handleRun(rest, apiUrl, token, appSubdomain);\n break;\n case 'get':\n await handleGet(rest, apiUrl, token, appSubdomain);\n break;\n case 'list':\n await handleList(rest, apiUrl, token);\n break;\n default:\n console.error(`Unknown sub-command: ${subCommand}`);\n printHelp();\n process.exit(1);\n }\n}\n"],"mappings":"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","names":[]}