@cleocode/cleo 2026.10.3 → 2026.10.5-rc.ci.672
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.
- package/README.md +7 -0
- package/bin/cleo.js +11 -1
- package/dist/cli/adapter-OUQRSFZL.js +159 -0
- package/dist/cli/add-4SRRJL4U.js +443 -0
- package/dist/cli/add-batch-TSWICA5J.js +164 -0
- package/dist/cli/admin-L3F6CDYH.js +1428 -0
- package/dist/cli/admin-YMU55YCU.js +341 -0
- package/dist/cli/adr-XESRMFMP.js +172 -0
- package/dist/cli/agent-TAFPIYUU.js +2404 -0
- package/dist/cli/agent-outputs-HVJJIPS4.js +84 -0
- package/dist/cli/analyze-YQ22QVGW.js +49 -0
- package/dist/cli/archive-W5XX6AH7.js +65 -0
- package/dist/cli/archive-stats-HP2KPAJU.js +101 -0
- package/dist/cli/attention-7JBDCRZX.js +124 -0
- package/dist/cli/attention-ZXZANHKC.js +168 -0
- package/dist/cli/audit-ICA2SEFN.js +122 -0
- package/dist/cli/auth-DXIG5OG7.js +491 -0
- package/dist/cli/backfill-LBSYBWLR.js +156 -0
- package/dist/cli/backup-NUGBZ7NA.js +588 -0
- package/dist/cli/backup-inspect-PDRXI45A.js +26 -0
- package/dist/cli/backup-recover-TVKAPERB.js +29 -0
- package/dist/cli/blockers-ZOPCGHDW.js +55 -0
- package/dist/cli/brain-EJOBKL4A.js +397 -0
- package/dist/cli/briefing-RDQJ6WHS.js +213 -0
- package/dist/cli/caamp-Z3XPKEHB.js +181 -0
- package/dist/cli/cancel-S7EHLCJN.js +85 -0
- package/dist/cli/canon-NPF5RODM.js +142 -0
- package/dist/cli/canon-docs-2GTOLF7Y.js +26 -0
- package/dist/cli/cant-CHNN6O57.js +239 -0
- package/dist/cli/changeset-RYPHPN2B.js +246 -0
- package/dist/cli/check-C67YAU7W.js +759 -0
- package/dist/cli/check-DHMURGHC.js +924 -0
- package/dist/cli/checkpoint-UWDFOGYQ.js +128 -0
- package/dist/cli/chunk-22YPFZYB.js +91 -0
- package/dist/cli/chunk-2MGFDMDF.js +272 -0
- package/dist/cli/chunk-47JYZAMS.js +30 -0
- package/dist/cli/chunk-4JYHPP4C.js +76 -0
- package/dist/cli/chunk-4PEODTHY.js +278 -0
- package/dist/cli/chunk-4RGSNUUP.js +950 -0
- package/dist/cli/chunk-4VASFLUW.js +35 -0
- package/dist/cli/chunk-5PNI276X.js +124 -0
- package/dist/cli/chunk-6JSJNYH2.js +114 -0
- package/dist/cli/chunk-6N6WGLXE.js +63 -0
- package/dist/cli/chunk-75UH3BLS.js +210 -0
- package/dist/cli/chunk-7ACK4EIN.js +92 -0
- package/dist/cli/chunk-7NMKLVMI.js +107 -0
- package/dist/cli/chunk-7SINJXB6.js +110 -0
- package/dist/cli/chunk-7UARFJYS.js +46 -0
- package/dist/cli/chunk-7ZYPQV4N.js +90 -0
- package/dist/cli/chunk-AQCYT3L4.js +72 -0
- package/dist/cli/chunk-BQK6XTOH.js +57 -0
- package/dist/cli/chunk-C3B7C43W.js +16 -0
- package/dist/cli/chunk-CAPAGD5E.js +98 -0
- package/dist/cli/chunk-CHGEDCKG.js +77 -0
- package/dist/cli/chunk-COXFJ3PT.js +74 -0
- package/dist/cli/chunk-D7BAQNV2.js +55 -0
- package/dist/cli/chunk-EIUXVHNF.js +258 -0
- package/dist/cli/chunk-EUGB6P5V.js +173 -0
- package/dist/cli/chunk-EW2CKNNZ.js +304 -0
- package/dist/cli/chunk-FSKN4DWC.js +108 -0
- package/dist/cli/chunk-FVKLULL7.js +48 -0
- package/dist/cli/chunk-GAGUBU4Z.js +280 -0
- package/dist/cli/chunk-GKRFH2YG.js +171 -0
- package/dist/cli/chunk-GRU74UE4.js +270 -0
- package/dist/cli/chunk-GZFVDR44.js +320 -0
- package/dist/cli/chunk-HFLLZE6A.js +83 -0
- package/dist/cli/chunk-HXRXT3XU.js +78 -0
- package/dist/cli/chunk-IIOGUY3B.js +258 -0
- package/dist/cli/chunk-ILWWL462.js +60 -0
- package/dist/cli/chunk-J5USPJKZ.js +48 -0
- package/dist/cli/chunk-KEQS36GD.js +88 -0
- package/dist/cli/chunk-L7ONYSV6.js +2497 -0
- package/dist/cli/chunk-LVGIFMCV.js +163 -0
- package/dist/cli/chunk-NEFMQYLE.js +656 -0
- package/dist/cli/chunk-NU6CQQVB.js +4501 -0
- package/dist/cli/chunk-OILHT47L.js +252 -0
- package/dist/cli/chunk-PKKZPOOP.js +352 -0
- package/dist/cli/chunk-PN4WW5VX.js +66 -0
- package/dist/cli/chunk-PSJ33WVO.js +56 -0
- package/dist/cli/chunk-QA6T2LQ5.js +71 -0
- package/dist/cli/chunk-QJJWWCIC.js +288 -0
- package/dist/cli/chunk-QKMBWYAS.js +93 -0
- package/dist/cli/chunk-QWNKLLLG.js +84 -0
- package/dist/cli/chunk-QWUFFDL3.js +85 -0
- package/dist/cli/chunk-QY76BRUZ.js +35 -0
- package/dist/cli/chunk-R45KVF5Y.js +117 -0
- package/dist/cli/chunk-RRKP7HLU.js +66 -0
- package/dist/cli/chunk-SXXOC6KZ.js +209 -0
- package/dist/cli/chunk-T6GZJYL3.js +108 -0
- package/dist/cli/chunk-TLQ37HRE.js +67 -0
- package/dist/cli/chunk-TPTNEJZJ.js +52 -0
- package/dist/cli/chunk-TYC7G5LF.js +100 -0
- package/dist/cli/chunk-UWCZY52R.js +766 -0
- package/dist/cli/chunk-VB3LDPL5.js +46 -0
- package/dist/cli/chunk-VLEYOOPH.js +31 -0
- package/dist/cli/chunk-W3JLYKKY.js +140 -0
- package/dist/cli/chunk-WWCYZYSN.js +56 -0
- package/dist/cli/chunk-XA5WISNV.js +52 -0
- package/dist/cli/chunk-XHRZ7OYZ.js +132 -0
- package/dist/cli/chunk-XLPMIGJJ.js +148 -0
- package/dist/cli/chunk-YY66LFZF.js +29 -0
- package/dist/cli/chunk-ZMGDZMSJ.js +210 -0
- package/dist/cli/claim-IGOG2QOC.js +97 -0
- package/dist/cli/classify-MG4N7GMQ.js +117 -0
- package/dist/cli/cli-A23Q335V.js +51 -0
- package/dist/cli/cloud-SILYJVKO.js +731 -0
- package/dist/cli/cockpit-RZKLGYPN.js +790 -0
- package/dist/cli/code-H2FQCVMW.js +178 -0
- package/dist/cli/complete-JLX7NBI4.js +35 -0
- package/dist/cli/complexity-OKV7PVZH.js +57 -0
- package/dist/cli/compliance-QMGZHJNQ.js +277 -0
- package/dist/cli/conduit-4H32UYEA.js +308 -0
- package/dist/cli/conduit-EY54WTZA.js +535 -0
- package/dist/cli/config-TDYOC7XO.js +519 -0
- package/dist/cli/consensus-4XCOFPPT.js +122 -0
- package/dist/cli/context-FN4YTGHD.js +142 -0
- package/dist/cli/contribution-7RWFBJLC.js +112 -0
- package/dist/cli/curator-HKZJCVRL.js +139 -0
- package/dist/cli/current-B2NU7V3G.js +43 -0
- package/dist/cli/daemon-GBD4TVCD.js +452 -0
- package/dist/cli/dash-IGDANIE5.js +71 -0
- package/dist/cli/decide-26SXC2V6.js +416 -0
- package/dist/cli/decompose-LQ76TEZG.js +78 -0
- package/dist/cli/decomposition-WFRWNUSJ.js +122 -0
- package/dist/cli/delete-T5DUQHOX.js +69 -0
- package/dist/cli/deps-UTPZJBXL.js +462 -0
- package/dist/cli/detect-FFZSMVDT.js +46 -0
- package/dist/cli/detect-drift-TVCJOFYJ.js +408 -0
- package/dist/cli/diagnostics-GN5CVD3N.js +93 -0
- package/dist/cli/diagnostics-ZNBKH6GX.js +133 -0
- package/dist/cli/docs-CLQKEEUK.js +1710 -0
- package/dist/cli/docs-DPPDFTWR.js +3098 -0
- package/dist/cli/doctor-GPENOP4N.js +1270 -0
- package/dist/cli/doctor-ac-bindings-S3IOEFP4.js +26 -0
- package/dist/cli/doctor-acceptance-drift-VNFKPBSQ.js +26 -0
- package/dist/cli/doctor-credentials-A5H4JMTF.js +26 -0
- package/dist/cli/doctor-db-substrate-FGCISE4Z.js +27 -0
- package/dist/cli/doctor-dep-cycles-BKKKHHYG.js +26 -0
- package/dist/cli/doctor-exodus-ND2DH2KP.js +26 -0
- package/dist/cli/doctor-exodus-residue-4EMRYMEQ.js +26 -0
- package/dist/cli/doctor-fk-check-VY3RIQV3.js +26 -0
- package/dist/cli/doctor-global-delivery-JN6IGHUL.js +26 -0
- package/dist/cli/doctor-heavy-command-hook-XSN44WXU.js +26 -0
- package/dist/cli/doctor-legacy-backups-QAG5NHYP.js +26 -0
- package/dist/cli/doctor-legacy-reaper-CIRGFE6R.js +26 -0
- package/dist/cli/doctor-malformed-ids-WL7HT4TB.js +26 -0
- package/dist/cli/doctor-manifest-rows-SMQCKJ2T.js +26 -0
- package/dist/cli/doctor-memory-guard-LJDOJG76.js +26 -0
- package/dist/cli/doctor-migrations-ETQPFNUP.js +26 -0
- package/dist/cli/doctor-nexus-residency-A4JMKBEJ.js +26 -0
- package/dist/cli/doctor-project-identity-FFQJ5LNX.js +26 -0
- package/dist/cli/doctor-projects-MFUTKRHP.js +30 -0
- package/dist/cli/doctor-projects-registry-76X6VTGM.js +26 -0
- package/dist/cli/doctor-release-readiness-QJCOPFTK.js +26 -0
- package/dist/cli/doctor-repair-AU76FIKY.js +26 -0
- package/dist/cli/doctor-row-identity-KW6JYZQE.js +26 -0
- package/dist/cli/doctor-skill-fixtures-G3T7JUHS.js +26 -0
- package/dist/cli/doctor-split-brain-FUW6L7FS.js +26 -0
- package/dist/cli/doctor-superseded-store-DUHGSBLC.js +26 -0
- package/dist/cli/doctor-sync-journal-SXMUIKF7.js +26 -0
- package/dist/cli/doctor-sync-triggers-6WNJZFRM.js +26 -0
- package/dist/cli/doctor-tool-locks-66LSLUBN.js +26 -0
- package/dist/cli/doctor-twin-collapse-AYBYBFC4.js +26 -0
- package/dist/cli/doctor-worktree-stores-C5XEH5OG.js +26 -0
- package/dist/cli/done-R64XRZ32.js +196 -0
- package/dist/cli/dynamic-RR4HB7BB.js +29 -0
- package/dist/cli/entities-3JIHDIOK.js +361 -0
- package/dist/cli/event-45KEWV5H.js +372 -0
- package/dist/cli/exists-BEDZS5RI.js +65 -0
- package/dist/cli/exodus-DUX62344.js +401 -0
- package/dist/cli/export-C5PQIQ5O.js +93 -0
- package/dist/cli/export-tasks-CUXDZPJB.js +97 -0
- package/dist/cli/federation-ESM35EGG.js +145 -0
- package/dist/cli/find-5EUZHHQJ.js +178 -0
- package/dist/cli/focus-6AH4KLRO.js +368 -0
- package/dist/cli/focus-ANKAIRO5.js +56 -0
- package/dist/cli/gateway-2GW2KTK3.js +77 -0
- package/dist/cli/gateway-auto-start-EDK7XI6E.js +36 -0
- package/dist/cli/gc-CTOQLUSA.js +291 -0
- package/dist/cli/go-YJPNHHYT.js +206 -0
- package/dist/cli/goal-4GW4G77D.js +213 -0
- package/dist/cli/grade-25WSZH4X.js +57 -0
- package/dist/cli/graph-JUO3TMF3.js +879 -0
- package/dist/cli/history-NACNUQTC.js +138 -0
- package/dist/cli/hook-UF7J7R6D.js +57 -0
- package/dist/cli/hook-entry.js +244 -19
- package/dist/cli/hygiene-3QZ2NI7P.js +55 -0
- package/dist/cli/import-7ESGL5SS.js +89 -0
- package/dist/cli/import-tasks-FLE2RPBR.js +109 -0
- package/dist/cli/index.js +601 -94637
- package/dist/cli/init-AN4DZ2XO.js +40 -0
- package/dist/cli/inject-HQWA5GWY.js +83 -0
- package/dist/cli/install-global-YQV4W5OG.js +95 -0
- package/dist/cli/intelligence-OFFNQGHE.js +238 -0
- package/dist/cli/intelligence-QIC4SN4X.js +182 -0
- package/dist/cli/issue-P5RNMRDG.js +159 -0
- package/dist/cli/janitor-ZNCFQ7E3.js +111 -0
- package/dist/cli/labels-ORBM3T57.js +88 -0
- package/dist/cli/lifecycle-MHR22TVI.js +273 -0
- package/dist/cli/list-LB6GCYYU.js +109 -0
- package/dist/cli/llm-H7LZWQKX.js +130 -0
- package/dist/cli/llm-OTJWPMGI.js +704 -0
- package/dist/cli/llm-cost-MLMXEAR4.js +25 -0
- package/dist/cli/llm-stream-AAEUNKRP.js +27 -0
- package/dist/cli/log-W2A5M2NA.js +76 -0
- package/dist/cli/login-SIXFFZSP.js +45 -0
- package/dist/cli/logout-G3KVLQQM.js +74 -0
- package/dist/cli/manifest-G4T6EBSI.js +354 -0
- package/dist/cli/map-VU5M72TK.js +53 -0
- package/dist/cli/memory-2E27G2G5.js +1952 -0
- package/dist/cli/memory-IAEYKXG6.js +1895 -0
- package/dist/cli/migrate-agents-v2-A52QIYNJ.js +33 -0
- package/dist/cli/migrate-claude-mem-TPDW3R4Z.js +206 -0
- package/dist/cli/next-SVH4LIDY.js +57 -0
- package/dist/cli/nexus-FPQV2EAF.js +1059 -0
- package/dist/cli/nexus-XSFXN5E6.js +2924 -0
- package/dist/cli/ops-K6LHY5J6.js +52 -0
- package/dist/cli/orchestrate-CZ2J6W3L.js +1650 -0
- package/dist/cli/orchestrate-HURUCQFT.js +950 -0
- package/dist/cli/otel-JCNPVJLZ.js +188 -0
- package/dist/cli/phase-VDFRASSO.js +221 -0
- package/dist/cli/pipeline-TCZPOEDR.js +697 -0
- package/dist/cli/pivot-V5MSQZ7L.js +88 -0
- package/dist/cli/plan-SQUGCKSM.js +49 -0
- package/dist/cli/playbook-L47GLDQD.js +230 -0
- package/dist/cli/playbook-NJVO4R6P.js +33 -0
- package/dist/cli/project-YZEC7GYF.js +331 -0
- package/dist/cli/promote-FINF4HVK.js +53 -0
- package/dist/cli/provenance-3TUWVBFR.js +141 -0
- package/dist/cli/provenance-YZG33JGM.js +129 -0
- package/dist/cli/provider-23JVLLG3.js +213 -0
- package/dist/cli/reason-FHN54O7O.js +138 -0
- package/dist/cli/reconcile-MOM5T4AX.js +128 -0
- package/dist/cli/refresh-memory-3OSTRAVK.js +45 -0
- package/dist/cli/relates-6FWUFUS2.js +260 -0
- package/dist/cli/release-G2DPSG5M.js +347 -0
- package/dist/cli/release-URX6JHZ2.js +525 -0
- package/dist/cli/remote-VIULU2T5.js +279 -0
- package/dist/cli/renderers-TGSW77J4.js +37 -0
- package/dist/cli/reorder-UIPN6TQY.js +87 -0
- package/dist/cli/reparent-ALOWWUIU.js +59 -0
- package/dist/cli/req-RH2Y3H7A.js +130 -0
- package/dist/cli/research-G2Y72HRC.js +366 -0
- package/dist/cli/restore-VBR5XNML.js +470 -0
- package/dist/cli/revert-32LDNSGP.js +240 -0
- package/dist/cli/roadmap-LFU3AG7D.js +62 -0
- package/dist/cli/run-HXRILSR7.js +245 -0
- package/dist/cli/safestop-Z5UC7NGQ.js +89 -0
- package/dist/cli/saga-Y6FZS6AM.js +286 -0
- package/dist/cli/schema-OOOKLWUE.js +195 -0
- package/dist/cli/self-update-26SOTJMH.js +504 -0
- package/dist/cli/selfimprove-4SMOCLUV.js +89 -0
- package/dist/cli/selfimprove-EB4RQLP4.js +139 -0
- package/dist/cli/sentient-QPETVE53.js +254 -0
- package/dist/cli/sentient-RGMWR4XJ.js +1088 -0
- package/dist/cli/sequence-H7DSAJPF.js +94 -0
- package/dist/cli/service-EK5MGB2D.js +156 -0
- package/dist/cli/service-GLOMZWPQ.js +437 -0
- package/dist/cli/session-HYUXAQGC.js +708 -0
- package/dist/cli/session-N5ISU56W.js +568 -0
- package/dist/cli/setup-L3YYV53D.js +323 -0
- package/dist/cli/show-364V3KY2.js +123 -0
- package/dist/cli/skill-F2KR6HW5.js +84 -0
- package/dist/cli/skills-FS3DCP6E.js +929 -0
- package/dist/cli/smoke-provider-SKUFMZXU.js +218 -0
- package/dist/cli/snapshot-EGXEQ5PR.js +120 -0
- package/dist/cli/src-LYLXHXHH.js +80 -0
- package/dist/cli/start-6DXOCCKL.js +68 -0
- package/dist/cli/stats-UVUQEGYC.js +96 -0
- package/dist/cli/status-XLKYLN42.js +157 -0
- package/dist/cli/sticky-VSTQ2I2O.js +264 -0
- package/dist/cli/sticky-XZXZDCFW.js +339 -0
- package/dist/cli/stop-VNOAFWNB.js +43 -0
- package/dist/cli/sync-YYPARW3A.js +155 -0
- package/dist/cli/tasks-C24KHTFF.js +1118 -0
- package/dist/cli/tasks-LBJC7CZV.js +175 -0
- package/dist/cli/telemetry-CU7W5WAY.js +120 -0
- package/dist/cli/templates-G42JBUY4.js +609 -0
- package/dist/cli/testing-HSRITHEY.js +147 -0
- package/dist/cli/token-J74E7TSU.js +221 -0
- package/dist/cli/tools-BI74W7VE.js +652 -0
- package/dist/cli/transcript-RGK7RSGQ.js +440 -0
- package/dist/cli/tui-BPUFHYKK.js +51 -0
- package/dist/cli/update-2KQWA27S.js +478 -0
- package/dist/cli/update-check-entry.js +124 -0
- package/dist/cli/update-notice-6SQ6WPQG.js +68 -0
- package/dist/cli/upgrade-E2MJAPC7.js +136 -0
- package/dist/cli/upgrade-XRSQ4RWH.js +243 -0
- package/dist/cli/verify-WASRGDBA.js +191 -0
- package/dist/cli/web-NJ3P67EU.js +275 -0
- package/dist/cli/workgraph-OHJ2VKJD.js +232 -0
- package/dist/cli/worktree-FVQLORFY.js +371 -0
- package/dist/cli/worktree-ZJ6JTQNG.js +287 -0
- package/package.json +13 -13
- package/studio-dist/client/_app/immutable/chunks/{DMj27Pxj.js → AH7dIemv.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{Dc2owyvE.js → BDgH40i3.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/BXDCSJ7U.js +1 -0
- package/studio-dist/client/_app/immutable/chunks/{qq3pe1aT.js → Gg4iYl59.js} +1 -1
- package/studio-dist/client/_app/immutable/entry/{app.CHWXLeE9.js → app.DUDNK-37.js} +2 -2
- package/studio-dist/client/_app/immutable/entry/start.DNmZ0pA4.js +1 -0
- package/studio-dist/client/_app/immutable/nodes/{0.DmKQGvFh.js → 0.DWqP3ail.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{1.DqJk_REO.js → 1.CZGVUP5B.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{15.GUy6kdW1.js → 15.DGaflZRS.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{16.CcnKZ8f9.js → 16.uYlarGXl.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{17.DAlQF3lQ.js → 17.CZMR0E47.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{18.vQFr-vFj.js → 18.CBC-AKH_.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{20.GVOj5j_r.js → 20.BGi43MvQ.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{24.2-wC6DOh.js → 24.Dv8ftCyR.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/25.DQPVlTDQ.js +39 -0
- package/studio-dist/client/_app/immutable/nodes/{26.C3rNqzZF.js → 26.Cl800304.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{3.b-7pzc3M.js → 3.D_fQKj9f.js} +1 -1
- package/studio-dist/client/_app/version.json +1 -1
- package/studio-dist/server/chunks/{0-BaCce-O1.js → 0-BpOagOst.js} +3 -3
- package/studio-dist/server/chunks/1-D0oRGR-C.js +9 -0
- package/studio-dist/server/chunks/{15-DRMOSIC9.js → 15-BcjHz7Tv.js} +3 -3
- package/studio-dist/server/chunks/{16-BulXhoZZ.js → 16-CXm8TUk7.js} +3 -3
- package/studio-dist/server/chunks/{17-DUEOCM0H.js → 17-mSgUK-cp.js} +3 -3
- package/studio-dist/server/chunks/{18-DP7Q8zPs.js → 18-BtfnIw1d.js} +3 -3
- package/studio-dist/server/chunks/{20-9ta6MI7q.js → 20-By1e4QDS.js} +3 -3
- package/studio-dist/server/chunks/{24-DysdL1ab.js → 24-0i2YLVxG.js} +3 -3
- package/studio-dist/server/chunks/{dist-CdoCt9zT.js → 25-DPsrqbrh.js} +797 -10736
- package/studio-dist/server/chunks/{26-Df4YXgg0.js → 26-P0XkOibm.js} +3 -3
- package/studio-dist/server/chunks/{3-BEhOhYpL.js → 3-WudjUK7e.js} +3 -3
- package/studio-dist/server/chunks/{_layout.svelte-CnLcXYG-.js → _layout.svelte-D9m81Rle.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-DGhXqeRc.js → _page.svelte-2PDLOF83.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-Dv8tmDEC.js → _page.svelte-BjE3jm2K.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-C0qgUvzA.js → _page.svelte-Clc0vmiZ.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-ui7LnWkL.js → _page.svelte-DABdRT3h.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-HUqTICJR.js → _page.svelte-DG3PjiHj.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-DzcZljiy.js → _page.svelte-Edy9CaE8.js} +20 -7
- package/studio-dist/server/chunks/{_page.svelte-DOl0DGOO.js → _page.svelte-Hrf3-ZR8.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-Da4q5l93.js → _page.svelte-VB4O4Nl5.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-CbyEPj2j.js → _page.svelte-d3jEgjsI.js} +3 -3
- package/studio-dist/server/chunks/{_server.ts-P4wVVksg.js → _server.ts-BcRFsyo3.js} +4 -5
- package/studio-dist/server/chunks/{_server.ts-Cr57EKWf.js → _server.ts-CEWpIFrj.js} +6 -5
- package/studio-dist/server/chunks/{_server.ts-CnKVmf_s.js → _server.ts-CLVdVIF9.js} +2 -2
- package/studio-dist/server/chunks/{_server.ts-C0evMKCk.js → _server.ts-D_j7aSy5.js} +6 -5
- package/studio-dist/server/chunks/{_server.ts-2BazvYRP.js → _server.ts-QEZF8h2q.js} +4 -5
- package/studio-dist/server/chunks/{client-CPM4LrO2.js → client-Kp1dP1od.js} +2 -2
- package/studio-dist/server/chunks/{error.svelte-ShcZo43D.js → error.svelte-WOCioJVX.js} +3 -3
- package/studio-dist/server/chunks/{hooks.server-D2qbf3Zp.js → hooks.server-DH9zkIrJ.js} +3 -1
- package/studio-dist/server/chunks/{http-BiQjEmVU.js → http-DT5kxaWk.js} +5 -4
- package/studio-dist/server/chunks/{internal-Cgsrya1j.js → internal-z0vqd5_u.js} +3 -3
- package/studio-dist/server/chunks/operations-registry-DdzmYzqX.js +10584 -0
- package/studio-dist/server/chunks/{stores-BGrpEDMK.js → stores-s2kaL315.js} +2 -2
- package/studio-dist/server/index.js +1 -1
- package/studio-dist/server/manifest.js +17 -17
- package/studio-dist/client/_app/immutable/chunks/Bw6J8NDM.js +0 -1
- package/studio-dist/client/_app/immutable/entry/start.C9bwPpvc.js +0 -1
- package/studio-dist/client/_app/immutable/nodes/25.D1vYaH8g.js +0 -39
- package/studio-dist/server/chunks/1-CVo7Nk6d.js +0 -9
- package/studio-dist/server/chunks/25-CYsps38R.js +0 -366
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
(() => {
|
|
2
|
+
const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
|
|
3
|
+
if (globalThis[_installed]) return;
|
|
4
|
+
globalThis[_installed] = true;
|
|
5
|
+
const _origEmitWarning = process.emitWarning;
|
|
6
|
+
process.emitWarning = function(warning, type, code, ctor) {
|
|
7
|
+
if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
return _origEmitWarning.call(process, warning, type, code, ctor);
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
import {
|
|
17
|
+
dispatchMeta,
|
|
18
|
+
handleErrorResult,
|
|
19
|
+
unsupportedOp
|
|
20
|
+
} from "./chunk-XHRZ7OYZ.js";
|
|
21
|
+
|
|
22
|
+
// packages/cleo/src/dispatch/domains/upgrade.ts
|
|
23
|
+
import { getLogger, getProjectRoot, getWorkflowTemplatesDir } from "@cleocode/core";
|
|
24
|
+
import { upgradeWorkflows } from "@cleocode/core/internal";
|
|
25
|
+
var log = getLogger("domain:upgrade");
|
|
26
|
+
function resolveTemplatesDir() {
|
|
27
|
+
return getWorkflowTemplatesDir();
|
|
28
|
+
}
|
|
29
|
+
function toDispatchData(result) {
|
|
30
|
+
return {
|
|
31
|
+
outcomes: result.outcomes.map((o) => ({
|
|
32
|
+
template: o.template,
|
|
33
|
+
targetPath: o.targetPath,
|
|
34
|
+
status: o.status,
|
|
35
|
+
overrideDeclared: o.overrideDeclared
|
|
36
|
+
})),
|
|
37
|
+
resolvedTools: result.resolvedTools,
|
|
38
|
+
hasDrift: result.hasDrift
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
var UpgradeHandler = class {
|
|
42
|
+
/**
|
|
43
|
+
* Handle read-only upgrade queries.
|
|
44
|
+
*
|
|
45
|
+
* Supported operations:
|
|
46
|
+
* - `workflows` — drift detection only; never writes to disk.
|
|
47
|
+
* Effectively forces `dryRun=true` at the query gateway.
|
|
48
|
+
*/
|
|
49
|
+
async query(operation, params) {
|
|
50
|
+
const startTime = Date.now();
|
|
51
|
+
try {
|
|
52
|
+
switch (operation) {
|
|
53
|
+
case "workflows": {
|
|
54
|
+
const includeRendered = params?.["includeRendered"] === true;
|
|
55
|
+
const result = await upgradeWorkflows({
|
|
56
|
+
projectRoot: getProjectRoot(),
|
|
57
|
+
templatesDir: resolveTemplatesDir(),
|
|
58
|
+
dryRun: true
|
|
59
|
+
});
|
|
60
|
+
const data = toDispatchData(result);
|
|
61
|
+
return {
|
|
62
|
+
meta: dispatchMeta("query", "upgrade", operation, startTime),
|
|
63
|
+
success: true,
|
|
64
|
+
data: includeRendered ? {
|
|
65
|
+
...data,
|
|
66
|
+
rendered: result.outcomes.map((o) => ({
|
|
67
|
+
template: o.template,
|
|
68
|
+
rendered: o.rendered
|
|
69
|
+
}))
|
|
70
|
+
} : data
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
default:
|
|
74
|
+
return unsupportedOp("query", "upgrade", operation, startTime);
|
|
75
|
+
}
|
|
76
|
+
} catch (err) {
|
|
77
|
+
log.error({ err, operation }, "UpgradeHandler query error");
|
|
78
|
+
return handleErrorResult("query", "upgrade", operation, err, startTime);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Handle upgrade mutations.
|
|
83
|
+
*
|
|
84
|
+
* Supported operations:
|
|
85
|
+
* - `workflows` — re-render + (optionally) re-write drifted files.
|
|
86
|
+
* Params: `{ force?, dryRun? }`. Returns the per-template
|
|
87
|
+
* outcomes plus the `hasDrift` flag the CLI uses to drive
|
|
88
|
+
* the `--check` exit-code contract.
|
|
89
|
+
*/
|
|
90
|
+
async mutate(operation, params) {
|
|
91
|
+
const startTime = Date.now();
|
|
92
|
+
try {
|
|
93
|
+
switch (operation) {
|
|
94
|
+
case "workflows": {
|
|
95
|
+
const force = params?.["force"] === true;
|
|
96
|
+
const dryRun = params?.["dryRun"] === true;
|
|
97
|
+
const includeRendered = params?.["includeRendered"] === true;
|
|
98
|
+
const result = await upgradeWorkflows({
|
|
99
|
+
projectRoot: getProjectRoot(),
|
|
100
|
+
templatesDir: resolveTemplatesDir(),
|
|
101
|
+
force,
|
|
102
|
+
dryRun
|
|
103
|
+
});
|
|
104
|
+
const data = toDispatchData(result);
|
|
105
|
+
return {
|
|
106
|
+
meta: dispatchMeta("mutate", "upgrade", operation, startTime),
|
|
107
|
+
success: true,
|
|
108
|
+
data: includeRendered ? {
|
|
109
|
+
...data,
|
|
110
|
+
rendered: result.outcomes.map((o) => ({
|
|
111
|
+
template: o.template,
|
|
112
|
+
rendered: o.rendered
|
|
113
|
+
}))
|
|
114
|
+
} : data
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
default:
|
|
118
|
+
return unsupportedOp("mutate", "upgrade", operation, startTime);
|
|
119
|
+
}
|
|
120
|
+
} catch (err) {
|
|
121
|
+
log.error({ err, operation }, "UpgradeHandler mutate error");
|
|
122
|
+
return handleErrorResult("mutate", "upgrade", operation, err, startTime);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/** Declared operations for introspection and validation. */
|
|
126
|
+
getSupportedOperations() {
|
|
127
|
+
return {
|
|
128
|
+
query: ["workflows"],
|
|
129
|
+
mutate: ["workflows"]
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
export {
|
|
134
|
+
UpgradeHandler
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=upgrade-E2MJAPC7.js.map
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
(() => {
|
|
2
|
+
const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
|
|
3
|
+
if (globalThis[_installed]) return;
|
|
4
|
+
globalThis[_installed] = true;
|
|
5
|
+
const _origEmitWarning = process.emitWarning;
|
|
6
|
+
process.emitWarning = function(warning, type, code, ctor) {
|
|
7
|
+
if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
return _origEmitWarning.call(process, warning, type, code, ctor);
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
import {
|
|
17
|
+
getWorkflowTemplatesDir
|
|
18
|
+
} from "./chunk-EIUXVHNF.js";
|
|
19
|
+
import {
|
|
20
|
+
createUpgradeProgress
|
|
21
|
+
} from "./chunk-W3JLYKKY.js";
|
|
22
|
+
import "./chunk-UWCZY52R.js";
|
|
23
|
+
import "./chunk-GZFVDR44.js";
|
|
24
|
+
import "./chunk-GRU74UE4.js";
|
|
25
|
+
import {
|
|
26
|
+
negatedFlag
|
|
27
|
+
} from "./chunk-47JYZAMS.js";
|
|
28
|
+
import "./chunk-C3B7C43W.js";
|
|
29
|
+
import {
|
|
30
|
+
defineCommand
|
|
31
|
+
} from "./chunk-PKKZPOOP.js";
|
|
32
|
+
import {
|
|
33
|
+
cliError,
|
|
34
|
+
cliOutput
|
|
35
|
+
} from "./chunk-4RGSNUUP.js";
|
|
36
|
+
import "./chunk-6JSJNYH2.js";
|
|
37
|
+
|
|
38
|
+
// packages/cleo/src/cli/commands/upgrade.ts
|
|
39
|
+
import { resolve } from "node:path";
|
|
40
|
+
import { CleoError, diagnoseUpgrade, runUpgrade, upgradeWorkflows } from "@cleocode/core/internal";
|
|
41
|
+
var workflowsSubcommand = defineCommand({
|
|
42
|
+
meta: {
|
|
43
|
+
name: "workflows",
|
|
44
|
+
description: "Re-render the four release-pipeline workflow templates and report drift (T9536)."
|
|
45
|
+
},
|
|
46
|
+
args: {
|
|
47
|
+
"dry-run": {
|
|
48
|
+
type: "boolean",
|
|
49
|
+
description: "Print the per-template diff without writing.",
|
|
50
|
+
default: false
|
|
51
|
+
},
|
|
52
|
+
check: {
|
|
53
|
+
type: "boolean",
|
|
54
|
+
description: "Exit 1 if drift is detected. Implies --dry-run for write semantics.",
|
|
55
|
+
default: false
|
|
56
|
+
},
|
|
57
|
+
force: {
|
|
58
|
+
type: "boolean",
|
|
59
|
+
description: "Overwrite drifted files (excluding `.workflow-overrides.yml` keys).",
|
|
60
|
+
default: false
|
|
61
|
+
},
|
|
62
|
+
json: { type: "boolean", description: "Output as JSON" },
|
|
63
|
+
human: { type: "boolean", description: "Force human-readable output" },
|
|
64
|
+
quiet: { type: "boolean", description: "Suppress non-essential output" }
|
|
65
|
+
},
|
|
66
|
+
async run({ args }) {
|
|
67
|
+
try {
|
|
68
|
+
const dryRun = args["dry-run"] === true || args.check === true;
|
|
69
|
+
const force = args.force === true && !dryRun;
|
|
70
|
+
const result = await upgradeWorkflows({
|
|
71
|
+
projectRoot: resolve(process.cwd()),
|
|
72
|
+
templatesDir: getWorkflowTemplatesDir(),
|
|
73
|
+
dryRun,
|
|
74
|
+
force
|
|
75
|
+
});
|
|
76
|
+
cliOutput(
|
|
77
|
+
{
|
|
78
|
+
outcomes: result.outcomes.map((o) => ({
|
|
79
|
+
template: o.template,
|
|
80
|
+
targetPath: o.targetPath,
|
|
81
|
+
status: o.status,
|
|
82
|
+
overrideDeclared: o.overrideDeclared
|
|
83
|
+
})),
|
|
84
|
+
resolvedTools: result.resolvedTools,
|
|
85
|
+
hasDrift: result.hasDrift,
|
|
86
|
+
...dryRun ? {
|
|
87
|
+
rendered: result.outcomes.map((o) => ({
|
|
88
|
+
template: o.template,
|
|
89
|
+
rendered: o.rendered
|
|
90
|
+
}))
|
|
91
|
+
} : {}
|
|
92
|
+
},
|
|
93
|
+
{ command: "upgrade", operation: "upgrade.workflows" }
|
|
94
|
+
);
|
|
95
|
+
if (args.check === true && result.hasDrift) {
|
|
96
|
+
process.exit(1);
|
|
97
|
+
}
|
|
98
|
+
} catch (err) {
|
|
99
|
+
if (err instanceof CleoError) {
|
|
100
|
+
cliError(err.message, err.code, { name: "CleoError", fix: err.fix });
|
|
101
|
+
process.exit(err.code);
|
|
102
|
+
}
|
|
103
|
+
throw err;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
var upgradeCommand = defineCommand({
|
|
108
|
+
meta: {
|
|
109
|
+
name: "upgrade",
|
|
110
|
+
description: "Unified project maintenance (storage migration, schema repair, structural fixes, doc refresh)"
|
|
111
|
+
},
|
|
112
|
+
subCommands: {
|
|
113
|
+
workflows: workflowsSubcommand
|
|
114
|
+
},
|
|
115
|
+
args: {
|
|
116
|
+
status: {
|
|
117
|
+
type: "boolean",
|
|
118
|
+
description: "Show what needs updating without making changes"
|
|
119
|
+
},
|
|
120
|
+
"dry-run": {
|
|
121
|
+
type: "boolean",
|
|
122
|
+
description: "Preview changes without applying"
|
|
123
|
+
},
|
|
124
|
+
diagnose: {
|
|
125
|
+
type: "boolean",
|
|
126
|
+
description: "Deep inspection of schema, columns, and migration journals"
|
|
127
|
+
},
|
|
128
|
+
"include-global": {
|
|
129
|
+
type: "boolean",
|
|
130
|
+
description: "Also check global ~/.cleo data"
|
|
131
|
+
},
|
|
132
|
+
"no-auto-migrate": {
|
|
133
|
+
type: "boolean",
|
|
134
|
+
description: "Skip automatic JSON->SQLite migration"
|
|
135
|
+
},
|
|
136
|
+
detect: {
|
|
137
|
+
type: "boolean",
|
|
138
|
+
description: "Force re-detection of project type (ignores staleness)"
|
|
139
|
+
},
|
|
140
|
+
"map-codebase": {
|
|
141
|
+
type: "boolean",
|
|
142
|
+
description: "Run full codebase analysis and store findings to brain.db"
|
|
143
|
+
},
|
|
144
|
+
name: {
|
|
145
|
+
type: "string",
|
|
146
|
+
description: "Update project name in project-info and nexus registry"
|
|
147
|
+
},
|
|
148
|
+
// Global output format flags — read directly from args (no optsWithGlobals in citty)
|
|
149
|
+
json: {
|
|
150
|
+
type: "boolean",
|
|
151
|
+
description: "Output as JSON"
|
|
152
|
+
},
|
|
153
|
+
human: {
|
|
154
|
+
type: "boolean",
|
|
155
|
+
description: "Force human-readable output"
|
|
156
|
+
},
|
|
157
|
+
quiet: {
|
|
158
|
+
type: "boolean",
|
|
159
|
+
description: "Suppress non-essential output"
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
async run({ args, cmd, rawArgs }) {
|
|
163
|
+
const firstPositional = rawArgs?.find((a) => !a.startsWith("-"));
|
|
164
|
+
if (firstPositional && cmd.subCommands && firstPositional in cmd.subCommands) return;
|
|
165
|
+
const isHuman = args.human === true || !!process.stdout.isTTY && args.json !== true;
|
|
166
|
+
const progress = createUpgradeProgress(isHuman);
|
|
167
|
+
try {
|
|
168
|
+
if (args.diagnose) {
|
|
169
|
+
progress.start();
|
|
170
|
+
progress.step(0, "Running deep schema/migration diagnostics");
|
|
171
|
+
const result2 = await diagnoseUpgrade();
|
|
172
|
+
progress.step(4, "Diagnostics complete");
|
|
173
|
+
cliOutput(result2, { command: "upgrade", operation: "upgrade.diagnose" });
|
|
174
|
+
if (!result2.success) {
|
|
175
|
+
progress.error(`${result2.summary.errors} error(s) found`);
|
|
176
|
+
process.exit(1);
|
|
177
|
+
}
|
|
178
|
+
progress.complete(
|
|
179
|
+
`Diagnostics complete: ${result2.summary.ok} ok, ${result2.summary.warnings} warning(s), ${result2.summary.errors} error(s)`
|
|
180
|
+
);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
const isDryRun = !!args["dry-run"] || !!args.status;
|
|
184
|
+
const includeGlobal = !!args["include-global"];
|
|
185
|
+
const autoMigrate = !negatedFlag(args, "auto-migrate");
|
|
186
|
+
const forceDetect = !!args.detect;
|
|
187
|
+
const mapCodebase = !!args["map-codebase"];
|
|
188
|
+
const projectName = args.name;
|
|
189
|
+
progress.start();
|
|
190
|
+
progress.step(0, "Analyzing current state");
|
|
191
|
+
if (includeGlobal) {
|
|
192
|
+
progress.step(1, "Checking global ~/.cleo data");
|
|
193
|
+
} else {
|
|
194
|
+
progress.step(1, "Checking storage migration needs");
|
|
195
|
+
}
|
|
196
|
+
progress.step(2, "Validating schemas");
|
|
197
|
+
progress.step(3, isDryRun ? "Previewing changes" : "Applying fixes");
|
|
198
|
+
const result = await runUpgrade({
|
|
199
|
+
dryRun: isDryRun,
|
|
200
|
+
includeGlobal,
|
|
201
|
+
autoMigrate,
|
|
202
|
+
forceDetect,
|
|
203
|
+
mapCodebase,
|
|
204
|
+
projectName
|
|
205
|
+
});
|
|
206
|
+
progress.step(4, "Verifying results");
|
|
207
|
+
cliOutput(
|
|
208
|
+
{
|
|
209
|
+
upToDate: result.upToDate,
|
|
210
|
+
dryRun: result.dryRun,
|
|
211
|
+
actions: result.actions,
|
|
212
|
+
applied: result.applied,
|
|
213
|
+
errors: result.errors.length > 0 ? result.errors : void 0,
|
|
214
|
+
summary: result.summary,
|
|
215
|
+
storageMigration: result.storageMigration
|
|
216
|
+
},
|
|
217
|
+
{ command: "upgrade" }
|
|
218
|
+
);
|
|
219
|
+
if (!result.success) {
|
|
220
|
+
progress.error("Upgrade failed with errors");
|
|
221
|
+
process.exit(1);
|
|
222
|
+
}
|
|
223
|
+
progress.complete(isDryRun ? "Preview complete" : "Upgrade complete");
|
|
224
|
+
} catch (err) {
|
|
225
|
+
if (err instanceof CleoError) {
|
|
226
|
+
progress.error(err.message);
|
|
227
|
+
cliError(
|
|
228
|
+
err.message,
|
|
229
|
+
err.code,
|
|
230
|
+
{ name: "CleoError", fix: err.fix },
|
|
231
|
+
{ operation: "upgrade" }
|
|
232
|
+
);
|
|
233
|
+
process.exit(err.code);
|
|
234
|
+
}
|
|
235
|
+
progress.error("Unexpected error during upgrade");
|
|
236
|
+
throw err;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
export {
|
|
241
|
+
upgradeCommand
|
|
242
|
+
};
|
|
243
|
+
//# sourceMappingURL=upgrade-XRSQ4RWH.js.map
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
(() => {
|
|
2
|
+
const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
|
|
3
|
+
if (globalThis[_installed]) return;
|
|
4
|
+
globalThis[_installed] = true;
|
|
5
|
+
const _origEmitWarning = process.emitWarning;
|
|
6
|
+
process.emitWarning = function(warning, type, code, ctor) {
|
|
7
|
+
if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
return _origEmitWarning.call(process, warning, type, code, ctor);
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
import {
|
|
17
|
+
negatedFlag
|
|
18
|
+
} from "./chunk-47JYZAMS.js";
|
|
19
|
+
import {
|
|
20
|
+
dispatchFromCli
|
|
21
|
+
} from "./chunk-L7ONYSV6.js";
|
|
22
|
+
import "./chunk-6N6WGLXE.js";
|
|
23
|
+
import "./chunk-4VASFLUW.js";
|
|
24
|
+
import {
|
|
25
|
+
defineCommand,
|
|
26
|
+
showUsage
|
|
27
|
+
} from "./chunk-PKKZPOOP.js";
|
|
28
|
+
import "./chunk-QKMBWYAS.js";
|
|
29
|
+
import {
|
|
30
|
+
cliError,
|
|
31
|
+
cliOutput
|
|
32
|
+
} from "./chunk-4RGSNUUP.js";
|
|
33
|
+
import "./chunk-6JSJNYH2.js";
|
|
34
|
+
import "./chunk-D7BAQNV2.js";
|
|
35
|
+
import "./chunk-TYC7G5LF.js";
|
|
36
|
+
|
|
37
|
+
// packages/cleo/src/cli/commands/verify.ts
|
|
38
|
+
import { ExitCode } from "@cleocode/contracts";
|
|
39
|
+
var verifyCommand = defineCommand({
|
|
40
|
+
meta: { name: "verify", description: "View or modify verification gates for a task" },
|
|
41
|
+
args: {
|
|
42
|
+
taskId: {
|
|
43
|
+
type: "positional",
|
|
44
|
+
description: "Task ID to inspect or update",
|
|
45
|
+
required: false
|
|
46
|
+
},
|
|
47
|
+
gate: {
|
|
48
|
+
type: "string",
|
|
49
|
+
description: "Set a specific gate by name"
|
|
50
|
+
},
|
|
51
|
+
value: {
|
|
52
|
+
type: "string",
|
|
53
|
+
description: "Gate value: true or false",
|
|
54
|
+
default: "true"
|
|
55
|
+
},
|
|
56
|
+
agent: {
|
|
57
|
+
type: "string",
|
|
58
|
+
description: "Agent setting the gate"
|
|
59
|
+
},
|
|
60
|
+
all: {
|
|
61
|
+
type: "boolean",
|
|
62
|
+
description: "Mark all required gates as passed"
|
|
63
|
+
},
|
|
64
|
+
reset: {
|
|
65
|
+
type: "boolean",
|
|
66
|
+
description: "Reset verification to initial state"
|
|
67
|
+
},
|
|
68
|
+
evidence: {
|
|
69
|
+
type: "string",
|
|
70
|
+
description: `Evidence for the gate (T832/ADR-051). Semicolon-separated atoms: 'commit:<sha>', 'files:<p1,p2>', 'test-run:<report.json>' (a runner's JSON report with test counts: vitest --reporter=json / jest --json numTotalTests,numPassedTests,numFailedTests; or a runner's summary {total,passed,failed,skipped}, e.g. {"total":43,"passed":42,"failed":0,"skipped":1}; or node --test {tests,pass,fail,skipped}; counts must be non-negative integers that add up to the total, and any failure refuses. It proves only what the file says: tool:test or ci:<pr> prove the run), 'tool:<name>' (e.g. tool:test, tool:test-affected, tool:lint), 'url:<url>', 'note:<text>', 'ci:<pr>' (required CI green on the merged PR's merge commit; testsPassed/qaPassed, opt-in via evidence.ciSatisfies).`
|
|
71
|
+
},
|
|
72
|
+
explain: {
|
|
73
|
+
type: "boolean",
|
|
74
|
+
description: "Enrich read-only view with per-gate evidence breakdown, re-validation status, and blockers[] preventing `cleo complete` (T1013 / ADR-051)."
|
|
75
|
+
},
|
|
76
|
+
run: {
|
|
77
|
+
type: "boolean",
|
|
78
|
+
description: "Execute the task's typed acceptance gates and report the results. Records no verification, so use `--evidence` to attest (T12308); passing results are cached so the attesting write reuses them instead of re-running (T12621). With a write, `--no-run` executes no typed gate and uses only cached passes, refusing with E_GATE_NOT_CACHED when one is missing."
|
|
79
|
+
},
|
|
80
|
+
auto: {
|
|
81
|
+
type: "boolean",
|
|
82
|
+
description: "Derive the evidence and record every required gate in one write, exactly as `cleo done` does, without completing the task (T12625). Takes --satisfies and --pr."
|
|
83
|
+
},
|
|
84
|
+
satisfies: {
|
|
85
|
+
type: "string",
|
|
86
|
+
description: 'With --auto: criteria this work satisfies, e.g. "AC1,AC3" or "all"'
|
|
87
|
+
},
|
|
88
|
+
pr: {
|
|
89
|
+
type: "string",
|
|
90
|
+
description: "With --auto: the merged PR that implements the task"
|
|
91
|
+
},
|
|
92
|
+
fresh: {
|
|
93
|
+
type: "boolean",
|
|
94
|
+
description: "Bypass the ADR-061 tool cache and re-run every tool: atom (same as CLEO_EVIDENCE_FRESH=1, which still works). Use only when a cached result is suspect, e.g. after adding an untracked file (T12964)."
|
|
95
|
+
},
|
|
96
|
+
"shared-evidence": {
|
|
97
|
+
type: "boolean",
|
|
98
|
+
description: "Acknowledge that the same evidence atom is applied to >3 distinct tasks in this session (T1502 / ADR-059). Without this flag, such reuse triggers a warning; in strict mode (CLEO_STRICT_EVIDENCE=1) it is a hard reject."
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
async run({ args, cmd }) {
|
|
102
|
+
if (!args.taskId) {
|
|
103
|
+
await showUsage(cmd);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const isWrite = !!(args.gate || args.all || args.reset);
|
|
107
|
+
const priorFresh = process.env["CLEO_EVIDENCE_FRESH"];
|
|
108
|
+
if (args.fresh === true) process.env["CLEO_EVIDENCE_FRESH"] = "1";
|
|
109
|
+
try {
|
|
110
|
+
if (args.auto === true) {
|
|
111
|
+
if (isWrite || args.evidence || args.run === true) {
|
|
112
|
+
cliError(
|
|
113
|
+
"--auto derives its own evidence; drop --gate/--all/--reset/--evidence/--run",
|
|
114
|
+
"E_INVALID_INPUT"
|
|
115
|
+
);
|
|
116
|
+
process.exitCode = ExitCode.VALIDATION_ERROR;
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
const { parseDoneOptions } = await import("@cleocode/core/tasks/done-plan.js");
|
|
120
|
+
const parsed = parseDoneOptions(args.satisfies, args.pr);
|
|
121
|
+
if (!parsed.ok) {
|
|
122
|
+
cliError(parsed.message, "E_INVALID_INPUT");
|
|
123
|
+
process.exitCode = ExitCode.VALIDATION_ERROR;
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const { recordTaskDone } = await import("@cleocode/core/tasks/done-record.js");
|
|
127
|
+
const { getProjectRoot } = await import("@cleocode/core/paths.js");
|
|
128
|
+
const r = await recordTaskDone(args.taskId, {
|
|
129
|
+
projectRoot: getProjectRoot(),
|
|
130
|
+
...parsed.options,
|
|
131
|
+
...args.agent ? { agent: args.agent } : {}
|
|
132
|
+
});
|
|
133
|
+
if (!r.success) {
|
|
134
|
+
cliError(r.error.message, r.error.code, { fix: r.error.fix, details: r.error.details });
|
|
135
|
+
process.exitCode = r.error.exitCode ?? 1;
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
const { plan: _plan, ...summary } = r.data;
|
|
139
|
+
cliOutput(summary, { command: "verify", operation: "check.gate.auto" });
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
if (args.satisfies !== void 0 || args.pr !== void 0) {
|
|
143
|
+
cliError("--satisfies and --pr apply only with --auto (or cleo done)", "E_INVALID_INPUT");
|
|
144
|
+
process.exitCode = ExitCode.VALIDATION_ERROR;
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
if (args.run === true && isWrite) {
|
|
148
|
+
cliError(
|
|
149
|
+
"--run reports typed gate results and records nothing; it cannot be combined with --gate/--all/--reset.",
|
|
150
|
+
ExitCode.VALIDATION_ERROR,
|
|
151
|
+
{
|
|
152
|
+
name: "E_VALIDATION",
|
|
153
|
+
fix: "Run `cleo verify <id> --run` first, then attest with `cleo verify <id> --gate <name> --evidence <atoms>`"
|
|
154
|
+
},
|
|
155
|
+
{ operation: "check.gate.run" }
|
|
156
|
+
);
|
|
157
|
+
process.exitCode = ExitCode.VALIDATION_ERROR;
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
const useExplain = !isWrite && args.explain === true;
|
|
161
|
+
const operation = isWrite ? "gate.set" : args.run === true ? "gate.run" : useExplain ? "verify.explain" : "gate.status";
|
|
162
|
+
await dispatchFromCli(
|
|
163
|
+
isWrite ? "mutate" : "query",
|
|
164
|
+
"check",
|
|
165
|
+
operation,
|
|
166
|
+
{
|
|
167
|
+
taskId: args.taskId,
|
|
168
|
+
gate: args.gate,
|
|
169
|
+
value: args.value === "false" ? false : args.gate ? true : void 0,
|
|
170
|
+
agent: args.agent,
|
|
171
|
+
all: args.all,
|
|
172
|
+
reset: args.reset,
|
|
173
|
+
evidence: args.evidence,
|
|
174
|
+
sharedEvidence: args["shared-evidence"] ?? false,
|
|
175
|
+
// T12621: citty turns `--no-run` into `run: false`; read it through the helper.
|
|
176
|
+
...isWrite && negatedFlag(args, "run") ? { noRun: true } : {}
|
|
177
|
+
},
|
|
178
|
+
{ command: "verify" }
|
|
179
|
+
);
|
|
180
|
+
} finally {
|
|
181
|
+
if (args.fresh === true) {
|
|
182
|
+
if (priorFresh === void 0) delete process.env["CLEO_EVIDENCE_FRESH"];
|
|
183
|
+
else process.env["CLEO_EVIDENCE_FRESH"] = priorFresh;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
export {
|
|
189
|
+
verifyCommand
|
|
190
|
+
};
|
|
191
|
+
//# sourceMappingURL=verify-WASRGDBA.js.map
|