@canonry/canonry 7.67.0 → 7.68.1

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 (138) hide show
  1. package/README.md +2 -0
  2. package/assets/agent-workspace/skills/aero/references/seo-analysis.md +10 -2
  3. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +5 -1
  4. package/assets/assets/{AgentSetupPage-ORsy3QEa.js → AgentSetupPage-DyssdZ1J.js} +3 -3
  5. package/assets/assets/{AuditHistoryPanel-vTHZDbfs.js → AuditHistoryPanel-Bma4Q6p0.js} +1 -1
  6. package/assets/assets/{BacklinksPage-FqADB5sO.js → BacklinksPage-C3GoO2Wf.js} +1 -1
  7. package/assets/assets/{HistoryPage-C4l5Toqa.js → HistoryPage-6iYvYCL7.js} +1 -1
  8. package/assets/assets/MeasurementPropertyPage-CjI5eB3b.js +4 -0
  9. package/assets/assets/ProjectPage-GYIgNPxn.js +9 -0
  10. package/assets/assets/{RunsPage-oyhhwAPq.js → RunsPage-Cw0GTxgx.js} +1 -1
  11. package/assets/assets/{SettingsPage-DJc4Di1M.js → SettingsPage-Cvg8BvZn.js} +1 -1
  12. package/assets/assets/SiteHealthSection-vejp2Igj.js +2 -0
  13. package/assets/assets/ToneBadge-c2bgjqqz.js +60 -0
  14. package/assets/assets/{TrafficPage-DAD0FFkL.js → TrafficPage-BUb0xr-b.js} +1 -1
  15. package/assets/assets/{TrafficSourceDetailPage-BBEzbawh.js → TrafficSourceDetailPage-DmrtEYs8.js} +1 -1
  16. package/assets/assets/{account-context-DMHOefRt.js → account-context-qhg8esXw.js} +1 -1
  17. package/assets/assets/{card-Brp6fFNG.js → card-BNthgfAY.js} +1 -1
  18. package/assets/assets/{extract-error-message-5QpQCsGb.js → extract-error-message-DuYEL09s.js} +1 -1
  19. package/assets/assets/{format-helpers-BFM0FRjT.js → format-helpers-6v-a8B3S.js} +1 -1
  20. package/assets/assets/index-BUigRGam.js +60 -0
  21. package/assets/assets/{index-C6U4u18w.css → index-CqNwsqjm.css} +1 -1
  22. package/assets/assets/{query-client-BMTW-xss.js → query-client-COFiuVJB.js} +1 -1
  23. package/assets/assets/react-query-ZdpN7cFt.js +1 -0
  24. package/assets/assets/{react-sigma_core.esm.min-C0VjhgDo.js → react-sigma_core.esm.min-EbeNATny.js} +1 -1
  25. package/assets/assets/{service-DW9u_0aZ.js → service-DGFjEsYR.js} +1 -1
  26. package/assets/index.html +8 -8
  27. package/dist/{ads-BXGEL4WI.js → ads-AHM5LMVT.js} +3 -3
  28. package/dist/{agent-LFX7GHWD.js → agent-2FSGY7SD.js} +7 -7
  29. package/dist/{agent-ask-QJV225AT.js → agent-ask-GIK7T2HD.js} +3 -3
  30. package/dist/{agent-conversations-2TZDIGA6.js → agent-conversations-JEIFZHT3.js} +3 -3
  31. package/dist/{agent-memory-XCY3ZG5C.js → agent-memory-JC3JJXON.js} +3 -3
  32. package/dist/{agent-providers-VS6PH55Y.js → agent-providers-JRL3VZA7.js} +3 -3
  33. package/dist/{agent-transcript-BUUHOTZM.js → agent-transcript-ZQDNW3IE.js} +3 -3
  34. package/dist/{analytics-YWJWPUNF.js → analytics-HMYE6EIX.js} +3 -3
  35. package/dist/{apply-BMCYFBEJ.js → apply-F5CHVFC3.js} +3 -3
  36. package/dist/{backfill-YBOKT5LT.js → backfill-JZDQKZHY.js} +9 -9
  37. package/dist/{backlinks-QNNABB4N.js → backlinks-L7XEHBAP.js} +3 -3
  38. package/dist/{bing-KEMXBABP.js → bing-XTMKLVRJ.js} +3 -3
  39. package/dist/{bootstrap-X2AADK4M.js → bootstrap-AEHBYC77.js} +10 -10
  40. package/dist/{cdp-WVYUEV4U.js → cdp-SSIHU3PU.js} +7 -7
  41. package/dist/{chunk-MLOGEXIO.js → chunk-2D7O5UHJ.js} +1 -1
  42. package/dist/{chunk-MD5PHJBX.js → chunk-33LH4ZGF.js} +2 -1
  43. package/dist/{chunk-VR4MYSEH.js → chunk-4KMUJOYL.js} +4 -4
  44. package/dist/{chunk-WSYLDPYF.js → chunk-5SK27UE7.js} +1 -1
  45. package/dist/{chunk-AVISYPUU.js → chunk-6W3ENB2X.js} +61 -7
  46. package/dist/{chunk-ZGUR4AZM.js → chunk-7AXVACK6.js} +2 -2
  47. package/dist/{chunk-WZ4LUM26.js → chunk-7NMCRHQL.js} +3 -3
  48. package/dist/{chunk-UXTNDZKM.js → chunk-7SGZHGZ2.js} +1 -1
  49. package/dist/{chunk-6DJN7HCK.js → chunk-ARIYTYOM.js} +1 -1
  50. package/dist/{chunk-XMIKSCAO.js → chunk-ARYBII44.js} +1 -1
  51. package/dist/{chunk-CBYKQRDH.js → chunk-CZUPNWLH.js} +2 -2
  52. package/dist/{chunk-AFRCTLUL.js → chunk-F4KTLNW3.js} +404 -340
  53. package/dist/{chunk-XEPEMON2.js → chunk-FDRZQH3Y.js} +14 -2
  54. package/dist/{chunk-5DMESZDF.js → chunk-IVBJEVHS.js} +2 -2
  55. package/dist/{chunk-HX3WLTZU.js → chunk-J4CNNYRQ.js} +1 -1
  56. package/dist/{chunk-Y54PMWBH.js → chunk-JPVG5LIE.js} +3 -3
  57. package/dist/{chunk-EKSXR7RJ.js → chunk-K2P2XO6P.js} +1 -1
  58. package/dist/{chunk-IEBMODUI.js → chunk-KGJ7NDUY.js} +20 -20
  59. package/dist/{chunk-KJLICF53.js → chunk-LO2EII7V.js} +4 -4
  60. package/dist/{chunk-YP743QX5.js → chunk-LTMQ4MHF.js} +1 -1
  61. package/dist/{chunk-UNCOK6DA.js → chunk-MVRPFLEL.js} +1 -1
  62. package/dist/{chunk-LU3M54IY.js → chunk-PAVSKSKA.js} +1 -1
  63. package/dist/{chunk-G6PZEDTH.js → chunk-R42VEDCB.js} +3 -3
  64. package/dist/{chunk-P74TPIWZ.js → chunk-RNA6ZCM6.js} +2 -2
  65. package/dist/{chunk-32BTTG5N.js → chunk-U3EJ5RW7.js} +12 -6
  66. package/dist/{chunk-GTPGYFZ4.js → chunk-V6ALEP33.js} +2 -2
  67. package/dist/{chunk-XEGYSZEV.js → chunk-VPZMSV3Q.js} +235 -6
  68. package/dist/{chunk-XIA6NWIF.js → chunk-W7PA35VJ.js} +4 -4
  69. package/dist/{chunk-NHHZQWMI.js → chunk-XMXYUP7X.js} +1 -1
  70. package/dist/{chunk-2X7DFLMD.js → chunk-Y42G2YKT.js} +8 -8
  71. package/dist/{chunk-37R6GTU7.js → chunk-YIIIYNPW.js} +22 -4
  72. package/dist/{chunk-MOJ2XZXK.js → chunk-ZD5G5QEV.js} +1 -1
  73. package/dist/{chunk-UHLWNU6I.js → chunk-ZU6X4SN2.js} +5 -5
  74. package/dist/{chunk-RRS7U6HQ.js → chunk-ZUXFHO4T.js} +4 -4
  75. package/dist/{citations-ZSI5BOGD.js → citations-NIFKIG6Y.js} +3 -3
  76. package/dist/{cli-catalog-J2HUCGJL.js → cli-catalog-ONYERYPV.js} +3 -3
  77. package/dist/{cli-commands-XFMVFREG.js → cli-commands-3RTJR7FD.js} +7 -7
  78. package/dist/cli.js +13 -13
  79. package/dist/{competitor-WJDN3DLP.js → competitor-NSUSTLNW.js} +3 -3
  80. package/dist/{content-K52YV4BK.js → content-W5VYYMAW.js} +3 -3
  81. package/dist/{dashboard-L6RKTP35.js → dashboard-NNA3P645.js} +6 -6
  82. package/dist/{demo-Y7XRD4X4.js → demo-5M4YGVV4.js} +1 -1
  83. package/dist/{demo-server-QNQX5CNP.js → demo-server-FDR4RKLM.js} +12 -11
  84. package/dist/{discover-UO5M7HQZ.js → discover-VCKMXFOR.js} +3 -3
  85. package/dist/{discover-eval-DN4PS6VN.js → discover-eval-CPVP7EK5.js} +3 -3
  86. package/dist/{doctor-7UYUXG7J.js → doctor-EVCP6PDM.js} +3 -3
  87. package/dist/{evidence-DGKN5SGQ.js → evidence-ZWRGNZWN.js} +3 -3
  88. package/dist/{export-cmd-QAQWWIRL.js → export-cmd-AM6SIRUW.js} +3 -3
  89. package/dist/{ga-4LGTEA6J.js → ga-6J67NDMZ.js} +3 -3
  90. package/dist/{gbp-XOLYZ4XC.js → gbp-ERTWK26L.js} +3 -3
  91. package/dist/{google-CAQDCFA6.js → google-O6VQFK4L.js} +4 -4
  92. package/dist/{google-marketing-HU5I3XPP.js → google-marketing-OEW2YGUR.js} +1 -1
  93. package/dist/{health-cmd-3PEB3M45.js → health-cmd-OPGK37MK.js} +3 -3
  94. package/dist/{history-UGUWYPOY.js → history-WTU4ETCU.js} +3 -3
  95. package/dist/index.d.ts +65 -65
  96. package/dist/index.js +24 -24
  97. package/dist/{init-DEW65BLN.js → init-XDFRSNJ6.js} +11 -11
  98. package/dist/{insights-ZC3R4ZYG.js → insights-LPEDLSEV.js} +3 -3
  99. package/dist/intelligence-service-4OO2VQ2I.js +15 -0
  100. package/dist/{journeys-W6F4BCXF.js → journeys-TWVQNRLT.js} +3 -3
  101. package/dist/{keys-ME7VRF73.js → keys-C6FPREBZ.js} +3 -3
  102. package/dist/{keyword-R3PLGSO5.js → keyword-PBSE65DK.js} +3 -3
  103. package/dist/{logs-UM7CWHYB.js → logs-62RUOAKT.js} +3 -3
  104. package/dist/{mcp-BUPP5HC6.js → mcp-P4LNENKX.js} +2 -2
  105. package/dist/mcp.js +9 -9
  106. package/dist/{measurement-plan-R4KZHJII.js → measurement-plan-HKW3IVIE.js} +5 -5
  107. package/dist/{notify-4C26D2MY.js → notify-A3I3G7NK.js} +3 -3
  108. package/dist/{organic-evidence-SLIISYHW.js → organic-evidence-OFUJBDCK.js} +3 -3
  109. package/dist/{overview-JJZZOYQU.js → overview-NSRODN2X.js} +4 -4
  110. package/dist/{project-XJH2OECP.js → project-B5G2HEAB.js} +3 -3
  111. package/dist/{query-ZWAIWIYB.js → query-UQHJVYUJ.js} +3 -3
  112. package/dist/{research-GTVWVZBI.js → research-ZWBJDLJY.js} +3 -3
  113. package/dist/{results-export-CPAWO5AV.js → results-export-FOJYT4MK.js} +3 -3
  114. package/dist/{run-RI2BMD7U.js → run-ZIUQ2TNN.js} +4 -4
  115. package/dist/{schedule-HDDWULBX.js → schedule-B5CORKGT.js} +3 -3
  116. package/dist/{search-TT3Q2BBP.js → search-2XCZKP6A.js} +3 -3
  117. package/dist/{serve-6JYPUU24.js → serve-RR6YYFKA.js} +25 -25
  118. package/dist/{session-DDESFV3N.js → session-PILSYOTX.js} +12 -12
  119. package/dist/{settings-4AYXYJVA.js → settings-Y3LVGZH4.js} +3 -3
  120. package/dist/{skills-UFMLMMY5.js → skills-6E3RVQAQ.js} +2 -2
  121. package/dist/{snapshot-KLWQGZB6.js → snapshot-RAV2HCL7.js} +3 -3
  122. package/dist/{src-6IHGEMT2.js → src-VUD6WO5N.js} +2 -2
  123. package/dist/{status-HRIUPGUM.js → status-2WCUV6C2.js} +4 -4
  124. package/dist/{technical-aeo-HKJQHMMS.js → technical-aeo-2TJEHHBR.js} +3 -3
  125. package/dist/{telemetry-IS6KZK32.js → telemetry-LQAD26UJ.js} +4 -4
  126. package/dist/{tools-ZNVQFEAX.js → tools-U6VGYZV2.js} +11 -11
  127. package/dist/{traffic-PFHFGN44.js → traffic-3TBXSHPV.js} +5 -5
  128. package/dist/{users-BSLUSU6W.js → users-2HDDA5GT.js} +3 -3
  129. package/dist/{visibility-stats-MPRNHPZW.js → visibility-stats-HSGT3OL3.js} +3 -3
  130. package/dist/{wordpress-U5XKHURL.js → wordpress-ALODIEFK.js} +3 -3
  131. package/package.json +1 -1
  132. package/assets/assets/MeasurementPropertyPage-x8f7xanT.js +0 -4
  133. package/assets/assets/ProjectPage-CG9I2-B4.js +0 -9
  134. package/assets/assets/SiteHealthSection-BvqFg3rG.js +0 -2
  135. package/assets/assets/ToneBadge-CTWpeKu8.js +0 -60
  136. package/assets/assets/index-BBNs-RhI.js +0 -60
  137. package/assets/assets/react-query-DGmY6hJa.js +0 -1
  138. package/dist/intelligence-service-XRJVXZYI.js +0 -15
@@ -17,7 +17,7 @@ import {
17
17
  showMeasurementProperty,
18
18
  showMeasurementPropertyEvidence,
19
19
  showMeasurementReport
20
- } from "./chunk-G6PZEDTH.js";
20
+ } from "./chunk-R42VEDCB.js";
21
21
  import {
22
22
  listMcpClientIds
23
23
  } from "./chunk-VJWDBFSL.js";
@@ -26,11 +26,11 @@ import {
26
26
  } from "./chunk-TSENU4GG.js";
27
27
  import {
28
28
  createApiClient
29
- } from "./chunk-XEPEMON2.js";
29
+ } from "./chunk-FDRZQH3Y.js";
30
30
  import {
31
31
  getConfigDir,
32
32
  loadConfig
33
- } from "./chunk-UNCOK6DA.js";
33
+ } from "./chunk-MVRPFLEL.js";
34
34
  import {
35
35
  getBoolean,
36
36
  getString,
@@ -43,7 +43,7 @@ import {
43
43
  resolveCliAccess,
44
44
  stringOption,
45
45
  unknownSubcommand
46
- } from "./chunk-MD5PHJBX.js";
46
+ } from "./chunk-33LH4ZGF.js";
47
47
  import {
48
48
  emitJsonl
49
49
  } from "./chunk-Z7IUAJOF.js";
@@ -60,7 +60,7 @@ import {
60
60
  OperationAccesses,
61
61
  RatioUnits,
62
62
  SITE_AUDIT_MAX_PAGE_LIMIT,
63
- SeoMarketRankingSearchStatuses,
63
+ SeoMarketRankingOutcomes,
64
64
  WINDOW_SETS,
65
65
  agentConversationListQuerySchema,
66
66
  agentTurnLimitsSchema,
@@ -77,6 +77,7 @@ import {
77
77
  formatPercent,
78
78
  gbpNegativeReviewMaxStarsSchema,
79
79
  isRetiredAgentProviderId,
80
+ marketRankingBands,
80
81
  parseOrganicEvidencePeriod,
81
82
  parseWindowIn,
82
83
  providerDispatchModeSchema,
@@ -90,6 +91,7 @@ import {
90
91
  sentimentSummaryRequestSchema,
91
92
  seoEvidenceQuerySchema,
92
93
  seoMarketRankingQuerySchema,
94
+ seoMarketRankingSummaryQuerySchema,
93
95
  seoProfileInputSchema,
94
96
  seoReconcileInputSchema,
95
97
  seoSyncInputSchema,
@@ -98,7 +100,7 @@ import {
98
100
  snapshotProviderModeSchema,
99
101
  visibilityCompareSelectionSchema,
100
102
  winnabilityClassSchema
101
- } from "./chunk-XEGYSZEV.js";
103
+ } from "./chunk-VPZMSV3Q.js";
102
104
 
103
105
  // src/cli-commands/sentiment.ts
104
106
  import "zod";
@@ -525,11 +527,51 @@ async function showSeoMarketRankings(project3, query, format) {
525
527
  if (printSeoJson(value, format)) return;
526
528
  console.log(`Market rankings \xB7 run ${value.runId ?? "none"} \xB7 ${value.items.length} of ${value.total} rows \xB7 offset ${value.offset}`);
527
529
  for (const row of value.items) {
528
- const rank = row.searchStatus === SeoMarketRankingSearchStatuses.failed ? "Search failed" : row.searchStatus === SeoMarketRankingSearchStatuses.cancelled ? "Not searched" : row.rankOrganic === null ? `Not in the top ${row.depth}${row.searchStatus === SeoMarketRankingSearchStatuses.partial ? " (partial results)" : ""}` : `Google rank ${row.rankOrganic}`;
530
+ const rival = row.competitors[0];
531
+ const rivalText = row.outcome === SeoMarketRankingOutcomes.failed || row.outcome === SeoMarketRankingOutcomes.cancelled ? "No result" : rival ? `Top rival ${rival.domain} #${rival.rankOrganic}${row.rivalAhead ? " (ahead)" : ""}` : "No tracked rival in the results";
529
532
  const source = row.provenance ? ` \xB7 ${row.provenance.device} \xB7 ${row.provenance.collectedAt}` : "";
530
- console.log(`${row.marketLabel} ${row.queryText} ${rank} ${row.url ?? "No ranking page"} Searched as "${row.searchText}" from ${row.locationLabel}${source}`);
533
+ console.log(`${row.marketLabel} ${row.queryText} ${rankText(row)} ${row.url ?? "No ranking page"} ${rivalText} Searched as "${row.searchText}" from ${row.locationLabel}${source}`);
531
534
  }
532
535
  }
536
+ function rankText(row) {
537
+ switch (row.outcome) {
538
+ case SeoMarketRankingOutcomes.failed:
539
+ return "Search failed";
540
+ case SeoMarketRankingOutcomes.cancelled:
541
+ return "Not searched";
542
+ case SeoMarketRankingOutcomes["partly-checked"]:
543
+ return `Not in the top ${row.depth} (partial results)`;
544
+ case SeoMarketRankingOutcomes["not-ranked"]:
545
+ return `Not in the top ${row.depth}`;
546
+ case SeoMarketRankingOutcomes["page-1"]:
547
+ case SeoMarketRankingOutcomes["ranks-11-20"]:
548
+ case SeoMarketRankingOutcomes["ranks-21-plus"]:
549
+ return `Google rank ${row.rankOrganic}`;
550
+ default: {
551
+ const unknown = row.outcome;
552
+ return unknown;
553
+ }
554
+ }
555
+ }
556
+ function countsText(counts, depth, totals) {
557
+ return [
558
+ ...marketRankingBands(depth, totals).map((band) => `${band.label} ${counts[band.count]}`),
559
+ `Partly checked ${counts.partlyChecked}`,
560
+ `Failed ${counts.failed}`,
561
+ `Not searched ${counts.cancelled}`,
562
+ `Needs work ${counts.needsWork}`,
563
+ `Rival ahead ${counts.rivalAhead}`
564
+ ].join(" \xB7 ");
565
+ }
566
+ async function showSeoMarketSummary(project3, query, format) {
567
+ const value = await createApiClient().getSeoMarketRankingSummary(project3, query);
568
+ if (printSeoJson(value, format)) return;
569
+ const scope = [value.regionKey === null ? null : `region ${value.regionLabel ?? value.regionKey}`, value.marketKey === null ? null : `market ${value.marketLabel ?? value.marketKey}`].filter((part) => part !== null).join(" \xB7 ") || "all markets";
570
+ const queries = (count) => `${count} ${count === 1 ? "query" : "queries"}`;
571
+ console.log(`Market rankings summary \xB7 run ${value.runId ?? "none"} \xB7 ${scope} \xB7 ${queries(value.totals.queries)}`);
572
+ console.log(countsText(value.totals, value.depth, value.totals));
573
+ for (const group of value.groups) console.log(`${group.label} ${group.kind} ${queries(group.counts.queries)} ${countsText(group.counts, value.depth, value.totals)}`);
574
+ }
533
575
 
534
576
  // src/cli-commands/seo.ts
535
577
  var selectionOptions2 = { "profile-id": stringOption(), "run-id": stringOption(), limit: stringOption(), offset: stringOption() };
@@ -544,11 +586,25 @@ function selection2(input) {
544
586
  if (!result.success) throw usageError(result.error.issues.map((issue) => `${issue.path.join(".")}: ${issue.message}`).join("; "));
545
587
  return result.data;
546
588
  }
547
- var rankingOptions = { ...selectionOptions2, market: stringOption(), region: stringOption() };
589
+ var rankingOptions = { ...selectionOptions2, market: stringOption(), region: stringOption(), outcome: stringOption(), search: stringOption(), sort: stringOption() };
548
590
  function rankingSelection(input) {
549
591
  const result = seoMarketRankingQuerySchema.safeParse({
550
592
  ...selection2(input),
551
593
  marketKey: getString(input.values, "market"),
594
+ regionKey: getString(input.values, "region"),
595
+ outcome: getString(input.values, "outcome"),
596
+ q: getString(input.values, "search"),
597
+ sort: getString(input.values, "sort")
598
+ });
599
+ if (!result.success) throw usageError(result.error.issues.map((issue) => `${issue.path.join(".")}: ${issue.message}`).join("; "));
600
+ return result.data;
601
+ }
602
+ var summaryOptions = { "profile-id": stringOption(), "run-id": stringOption(), market: stringOption(), region: stringOption() };
603
+ function summarySelection(input) {
604
+ const result = seoMarketRankingSummaryQuerySchema.safeParse({
605
+ profileId: getString(input.values, "profile-id"),
606
+ runId: getString(input.values, "run-id"),
607
+ marketKey: getString(input.values, "market"),
552
608
  regionKey: getString(input.values, "region")
553
609
  });
554
610
  if (!result.success) throw usageError(result.error.issues.map((issue) => `${issue.path.join(".")}: ${issue.message}`).join("; "));
@@ -616,11 +672,19 @@ var SEO_CLI_COMMANDS = [
616
672
  { path: ["seo", "ranked-keywords"], usage: "canonry seo ranked-keywords <project> [--profile-id <id>] [--run-id <id>] [--limit <n>] [--offset <n>] [--format json]", access: "stored", options: selectionOptions2, help: evidenceHelp, run: (input) => showSeoRankedKeywords(project2(input), selection2(input), input.format) },
617
673
  {
618
674
  path: ["seo", "market-rankings"],
619
- usage: "canonry seo market-rankings <project> [--profile-id <id>] [--run-id <id>] [--market <key>] [--region <key>] [--limit <n>] [--offset <n>] [--format json]",
675
+ usage: "canonry seo market-rankings <project> [--profile-id <id>] [--run-id <id>] [--market <key>] [--region <key>] [--outcome needs-work|page-1|ranks-11-20|ranks-21-plus|not-ranked|partly-checked|rival-ahead|failed|cancelled] [--search <text>] [--sort=market|rank|-rank|query|-query] [--limit <n>] [--offset <n>] [--format json]",
620
676
  access: "stored",
621
677
  options: rankingOptions,
622
- help: "Read saved market rankings only: the site's Google position for each tracked non-brand query in each market, searched from that market's location. A rank past the checked results reads as not ranked. --market and --region narrow the rows; preserve --run-id when paging.",
678
+ help: "Read saved market rankings only: the site's Google position for each tracked non-brand query in each market, searched from that market's location. A rank past the checked results reads as not ranked; a search that failed or was cancelled still has a row. --market, --region, --outcome and --search narrow the rows; --sort=rank puts the closest to page 1 first and --sort=-rank the furthest (keep the = for an order that starts with a dash). Preserve --run-id when paging.",
623
679
  run: (input) => showSeoMarketRankings(project2(input), rankingSelection(input), input.format)
680
+ },
681
+ {
682
+ path: ["seo", "market-summary"],
683
+ usage: "canonry seo market-summary <project> [--profile-id <id>] [--run-id <id>] [--region <key>] [--market <key>] [--format json]",
684
+ access: "stored",
685
+ options: summaryOptions,
686
+ help: "Read saved market rankings counted by outcome: page 1, ranks 11-20, 21 and deeper, not ranked, partly checked (only part of the results came back), failed, cancelled, needs work and rival ahead, for the whole profile with a row per region, for one region with a row per market, or for one market.",
687
+ run: (input) => showSeoMarketSummary(project2(input), summarySelection(input), input.format)
624
688
  }
625
689
  ];
626
690
 
@@ -632,7 +696,7 @@ var DEMO_CLI_COMMANDS = [{
632
696
  options: { host: stringOption(), port: stringOption(), "trust-proxy": multiStringOption() },
633
697
  allowPositionals: false,
634
698
  run: async (input) => {
635
- const { demoCommand } = await import("./demo-Y7XRD4X4.js");
699
+ const { demoCommand } = await import("./demo-5M4YGVV4.js");
636
700
  await demoCommand({
637
701
  host: getString(input.values, "host"),
638
702
  port: getString(input.values, "port"),
@@ -653,7 +717,7 @@ var BACKFILL_CLI_COMMANDS = [
653
717
  allowPositionals: false,
654
718
  supportsDryRun: true,
655
719
  run: async (input) => {
656
- const { backfillAnswerVisibilityCommand } = await import("./backfill-YBOKT5LT.js");
720
+ const { backfillAnswerVisibilityCommand } = await import("./backfill-JZDQKZHY.js");
657
721
  await backfillAnswerVisibilityCommand({
658
722
  project: getString(input.values, "project"),
659
723
  dryRun: input.dryRun,
@@ -670,7 +734,7 @@ var BACKFILL_CLI_COMMANDS = [
670
734
  allowPositionals: false,
671
735
  supportsDryRun: true,
672
736
  run: async (input) => {
673
- const { backfillAnswerMentionsCommand } = await import("./backfill-YBOKT5LT.js");
737
+ const { backfillAnswerMentionsCommand } = await import("./backfill-JZDQKZHY.js");
674
738
  await backfillAnswerMentionsCommand({
675
739
  project: getString(input.values, "project"),
676
740
  dryRun: input.dryRun,
@@ -688,7 +752,7 @@ var BACKFILL_CLI_COMMANDS = [
688
752
  },
689
753
  supportsDryRun: true,
690
754
  run: async (input) => {
691
- const { backfillInsightsCommand } = await import("./backfill-YBOKT5LT.js");
755
+ const { backfillInsightsCommand } = await import("./backfill-JZDQKZHY.js");
692
756
  const usage = "canonry backfill insights <project> [--from-run <id>] [--to-run <id>] [--since <date>] [--dry-run] [--format json]";
693
757
  const project3 = requireProject(input, "backfill insights", usage);
694
758
  await backfillInsightsCommand(project3, {
@@ -708,7 +772,7 @@ var BACKFILL_CLI_COMMANDS = [
708
772
  },
709
773
  allowPositionals: false,
710
774
  run: async (input) => {
711
- const { backfillNormalizedPathsCommand } = await import("./backfill-YBOKT5LT.js");
775
+ const { backfillNormalizedPathsCommand } = await import("./backfill-JZDQKZHY.js");
712
776
  await backfillNormalizedPathsCommand({
713
777
  project: getString(input.values, "project"),
714
778
  format: input.format
@@ -723,7 +787,7 @@ var BACKFILL_CLI_COMMANDS = [
723
787
  },
724
788
  allowPositionals: false,
725
789
  run: async (input) => {
726
- const { backfillAiReferralPathsCommand } = await import("./backfill-YBOKT5LT.js");
790
+ const { backfillAiReferralPathsCommand } = await import("./backfill-JZDQKZHY.js");
727
791
  await backfillAiReferralPathsCommand({
728
792
  project: getString(input.values, "project"),
729
793
  format: input.format
@@ -735,7 +799,7 @@ var BACKFILL_CLI_COMMANDS = [
735
799
  usage: "canonry backfill snapshot-attribution <project> [--dry-run] [--format json]",
736
800
  supportsDryRun: true,
737
801
  run: async (input) => {
738
- const { backfillSnapshotAttributionCommand } = await import("./backfill-YBOKT5LT.js");
802
+ const { backfillSnapshotAttributionCommand } = await import("./backfill-JZDQKZHY.js");
739
803
  const usage = "canonry backfill snapshot-attribution <project> [--dry-run] [--format json]";
740
804
  const project3 = requireProject(input, "backfill snapshot-attribution", usage);
741
805
  await backfillSnapshotAttributionCommand({
@@ -754,7 +818,7 @@ var BACKFILL_CLI_COMMANDS = [
754
818
  allowPositionals: false,
755
819
  supportsDryRun: true,
756
820
  run: async (input) => {
757
- const { backfillTrafficClassificationCommand } = await import("./backfill-YBOKT5LT.js");
821
+ const { backfillTrafficClassificationCommand } = await import("./backfill-JZDQKZHY.js");
758
822
  await backfillTrafficClassificationCommand({
759
823
  project: getString(input.values, "project"),
760
824
  dryRun: input.dryRun,
@@ -782,7 +846,7 @@ var BACKLINKS_CLI_COMMANDS = [
782
846
  usage: "canonry backlinks install [--format json]",
783
847
  options: {},
784
848
  run: async (input) => {
785
- const { backlinksInstall } = await import("./backlinks-QNNABB4N.js");
849
+ const { backlinksInstall } = await import("./backlinks-L7XEHBAP.js");
786
850
  await backlinksInstall({ format: input.format });
787
851
  }
788
852
  },
@@ -791,7 +855,7 @@ var BACKLINKS_CLI_COMMANDS = [
791
855
  usage: "canonry backlinks doctor [--format json]",
792
856
  options: {},
793
857
  run: async (input) => {
794
- const { backlinksDoctor } = await import("./backlinks-QNNABB4N.js");
858
+ const { backlinksDoctor } = await import("./backlinks-L7XEHBAP.js");
795
859
  await backlinksDoctor({ format: input.format });
796
860
  }
797
861
  },
@@ -803,7 +867,7 @@ var BACKLINKS_CLI_COMMANDS = [
803
867
  wait: { type: "boolean" }
804
868
  },
805
869
  run: async (input) => {
806
- const { backlinksSync } = await import("./backlinks-QNNABB4N.js");
870
+ const { backlinksSync } = await import("./backlinks-L7XEHBAP.js");
807
871
  await backlinksSync({
808
872
  release: getString(input.values, "release"),
809
873
  wait: getBoolean(input.values, "wait"),
@@ -816,7 +880,7 @@ var BACKLINKS_CLI_COMMANDS = [
816
880
  usage: "canonry backlinks status [--format json]",
817
881
  options: {},
818
882
  run: async (input) => {
819
- const { backlinksStatus } = await import("./backlinks-QNNABB4N.js");
883
+ const { backlinksStatus } = await import("./backlinks-L7XEHBAP.js");
820
884
  await backlinksStatus({ format: input.format });
821
885
  }
822
886
  },
@@ -830,7 +894,7 @@ var BACKLINKS_CLI_COMMANDS = [
830
894
  "exclude-crawlers": { type: "boolean" }
831
895
  },
832
896
  run: async (input) => {
833
- const { backlinksList, parseSourceFlag } = await import("./backlinks-QNNABB4N.js");
897
+ const { backlinksList, parseSourceFlag } = await import("./backlinks-L7XEHBAP.js");
834
898
  const project3 = requireProject(
835
899
  input,
836
900
  "backlinks list",
@@ -858,7 +922,7 @@ var BACKLINKS_CLI_COMMANDS = [
858
922
  "exclude-crawlers": { type: "boolean" }
859
923
  },
860
924
  run: async (input) => {
861
- const { backlinksSources } = await import("./backlinks-QNNABB4N.js");
925
+ const { backlinksSources } = await import("./backlinks-L7XEHBAP.js");
862
926
  const project3 = requireProject(
863
927
  input,
864
928
  "backlinks sources",
@@ -876,7 +940,7 @@ var BACKLINKS_CLI_COMMANDS = [
876
940
  usage: "canonry backlinks releases [--format json]",
877
941
  options: {},
878
942
  run: async (input) => {
879
- const { backlinksReleases } = await import("./backlinks-QNNABB4N.js");
943
+ const { backlinksReleases } = await import("./backlinks-L7XEHBAP.js");
880
944
  await backlinksReleases({ format: input.format });
881
945
  }
882
946
  },
@@ -885,7 +949,7 @@ var BACKLINKS_CLI_COMMANDS = [
885
949
  usage: "canonry backlinks releases latest [--format json]",
886
950
  options: {},
887
951
  run: async (input) => {
888
- const { backlinksLatestRelease } = await import("./backlinks-QNNABB4N.js");
952
+ const { backlinksLatestRelease } = await import("./backlinks-L7XEHBAP.js");
889
953
  await backlinksLatestRelease({ format: input.format });
890
954
  }
891
955
  },
@@ -897,7 +961,7 @@ var BACKLINKS_CLI_COMMANDS = [
897
961
  wait: { type: "boolean" }
898
962
  },
899
963
  run: async (input) => {
900
- const { backlinksExtract } = await import("./backlinks-QNNABB4N.js");
964
+ const { backlinksExtract } = await import("./backlinks-L7XEHBAP.js");
901
965
  const project3 = requireProject(
902
966
  input,
903
967
  "backlinks extract",
@@ -918,7 +982,7 @@ var BACKLINKS_CLI_COMMANDS = [
918
982
  release: stringOption()
919
983
  },
920
984
  run: async (input) => {
921
- const { backlinksCachePrune } = await import("./backlinks-QNNABB4N.js");
985
+ const { backlinksCachePrune } = await import("./backlinks-L7XEHBAP.js");
922
986
  const release = requireStringOption(input, "release", {
923
987
  message: "--release is required",
924
988
  usage: "canonry backlinks cache prune --release <id>",
@@ -941,7 +1005,7 @@ var BING_CLI_COMMANDS = [
941
1005
  "api-key": stringOption()
942
1006
  },
943
1007
  run: async (input) => {
944
- const { bingConnect } = await import("./bing-KEMXBABP.js");
1008
+ const { bingConnect } = await import("./bing-XTMKLVRJ.js");
945
1009
  const project3 = requireProject(input, "bing.connect", "canonry bing connect <project> [--api-key <key>] [--format json]");
946
1010
  await bingConnect(project3, {
947
1011
  apiKey: getString(input.values, "api-key"),
@@ -953,7 +1017,7 @@ var BING_CLI_COMMANDS = [
953
1017
  path: ["bing", "disconnect"],
954
1018
  usage: "canonry bing disconnect <project> [--format json]",
955
1019
  run: async (input) => {
956
- const { bingDisconnect } = await import("./bing-KEMXBABP.js");
1020
+ const { bingDisconnect } = await import("./bing-XTMKLVRJ.js");
957
1021
  const project3 = requireProject(input, "bing.disconnect", "canonry bing disconnect <project> [--format json]");
958
1022
  await bingDisconnect(project3, input.format);
959
1023
  }
@@ -962,7 +1026,7 @@ var BING_CLI_COMMANDS = [
962
1026
  path: ["bing", "status"],
963
1027
  usage: "canonry bing status <project> [--format json]",
964
1028
  run: async (input) => {
965
- const { bingStatus } = await import("./bing-KEMXBABP.js");
1029
+ const { bingStatus } = await import("./bing-XTMKLVRJ.js");
966
1030
  const project3 = requireProject(input, "bing.status", "canonry bing status <project> [--format json]");
967
1031
  await bingStatus(project3, input.format);
968
1032
  }
@@ -971,7 +1035,7 @@ var BING_CLI_COMMANDS = [
971
1035
  path: ["bing", "sites"],
972
1036
  usage: "canonry bing sites <project> [--format json]",
973
1037
  run: async (input) => {
974
- const { bingSites } = await import("./bing-KEMXBABP.js");
1038
+ const { bingSites } = await import("./bing-XTMKLVRJ.js");
975
1039
  const project3 = requireProject(input, "bing.sites", "canonry bing sites <project> [--format json]");
976
1040
  await bingSites(project3, input.format);
977
1041
  }
@@ -980,7 +1044,7 @@ var BING_CLI_COMMANDS = [
980
1044
  path: ["bing", "set-site"],
981
1045
  usage: "canonry bing set-site <project> <url> [--format json]",
982
1046
  run: async (input) => {
983
- const { bingSetSite } = await import("./bing-KEMXBABP.js");
1047
+ const { bingSetSite } = await import("./bing-XTMKLVRJ.js");
984
1048
  const project3 = requireProject(input, "bing.set-site", "canonry bing set-site <project> <url> [--format json]");
985
1049
  const siteUrl = requirePositional(input, 1, {
986
1050
  command: "bing.set-site",
@@ -995,7 +1059,7 @@ var BING_CLI_COMMANDS = [
995
1059
  usage: "canonry bing coverage-history <project> [--limit <n>] [--format json]",
996
1060
  options: { limit: stringOption() },
997
1061
  run: async (input) => {
998
- const { bingCoverageHistory } = await import("./bing-KEMXBABP.js");
1062
+ const { bingCoverageHistory } = await import("./bing-XTMKLVRJ.js");
999
1063
  const project3 = requireProject(input, "bing.coverage-history", "canonry bing coverage-history <project> [--limit <n>] [--format json]");
1000
1064
  await bingCoverageHistory(project3, {
1001
1065
  limit: parseIntegerOption(input, "limit", {
@@ -1011,7 +1075,7 @@ var BING_CLI_COMMANDS = [
1011
1075
  path: ["bing", "coverage"],
1012
1076
  usage: "canonry bing coverage <project> [--format json]",
1013
1077
  run: async (input) => {
1014
- const { bingCoverage } = await import("./bing-KEMXBABP.js");
1078
+ const { bingCoverage } = await import("./bing-XTMKLVRJ.js");
1015
1079
  const project3 = requireProject(input, "bing.coverage", "canonry bing coverage <project> [--format json]");
1016
1080
  await bingCoverage(project3, input.format);
1017
1081
  }
@@ -1020,7 +1084,7 @@ var BING_CLI_COMMANDS = [
1020
1084
  path: ["bing", "inspect"],
1021
1085
  usage: "canonry bing inspect <project> <url> [--format json]",
1022
1086
  run: async (input) => {
1023
- const { bingInspect } = await import("./bing-KEMXBABP.js");
1087
+ const { bingInspect } = await import("./bing-XTMKLVRJ.js");
1024
1088
  const project3 = requireProject(input, "bing.inspect", "canonry bing inspect <project> <url> [--format json]");
1025
1089
  const url = requirePositional(input, 1, {
1026
1090
  command: "bing.inspect",
@@ -1037,7 +1101,7 @@ var BING_CLI_COMMANDS = [
1037
1101
  url: stringOption()
1038
1102
  },
1039
1103
  run: async (input) => {
1040
- const { bingInspections } = await import("./bing-KEMXBABP.js");
1104
+ const { bingInspections } = await import("./bing-XTMKLVRJ.js");
1041
1105
  const project3 = requireProject(input, "bing.inspections", "canonry bing inspections <project> [--url <url>] [--format json]");
1042
1106
  await bingInspections(project3, {
1043
1107
  url: getString(input.values, "url"),
@@ -1053,7 +1117,7 @@ var BING_CLI_COMMANDS = [
1053
1117
  wait: { type: "boolean", default: false }
1054
1118
  },
1055
1119
  run: async (input) => {
1056
- const { bingInspectSitemap } = await import("./bing-KEMXBABP.js");
1120
+ const { bingInspectSitemap } = await import("./bing-XTMKLVRJ.js");
1057
1121
  const project3 = requireProject(input, "bing.inspect-sitemap", "canonry bing inspect-sitemap <project> [--sitemap-url <url>] [--wait] [--format json]");
1058
1122
  await bingInspectSitemap(project3, {
1059
1123
  sitemapUrl: getString(input.values, "sitemap-url"),
@@ -1069,7 +1133,7 @@ var BING_CLI_COMMANDS = [
1069
1133
  "all-unindexed": { type: "boolean", default: false }
1070
1134
  },
1071
1135
  run: async (input) => {
1072
- const { bingRequestIndexing } = await import("./bing-KEMXBABP.js");
1136
+ const { bingRequestIndexing } = await import("./bing-XTMKLVRJ.js");
1073
1137
  const project3 = requireProject(input, "bing.request-indexing", "canonry bing request-indexing <project> [url] [--all-unindexed] [--format json]");
1074
1138
  const url = input.positionals[1];
1075
1139
  const allUnindexed = getBoolean(input.values, "all-unindexed");
@@ -1093,7 +1157,7 @@ var BING_CLI_COMMANDS = [
1093
1157
  path: ["bing", "performance"],
1094
1158
  usage: "canonry bing performance <project> [--format json]",
1095
1159
  run: async (input) => {
1096
- const { bingPerformance } = await import("./bing-KEMXBABP.js");
1160
+ const { bingPerformance } = await import("./bing-XTMKLVRJ.js");
1097
1161
  const project3 = requireProject(input, "bing.performance", "canonry bing performance <project> [--format json]");
1098
1162
  await bingPerformance(project3, input.format);
1099
1163
  }
@@ -1102,7 +1166,7 @@ var BING_CLI_COMMANDS = [
1102
1166
  path: ["bing", "refresh"],
1103
1167
  usage: "canonry bing refresh <project> [--format json]",
1104
1168
  run: async (input) => {
1105
- const { bingRefresh } = await import("./bing-KEMXBABP.js");
1169
+ const { bingRefresh } = await import("./bing-XTMKLVRJ.js");
1106
1170
  const project3 = requireProject(input, "bing.refresh", "canonry bing refresh <project> [--format json]");
1107
1171
  await bingRefresh(project3, input.format);
1108
1172
  }
@@ -1131,7 +1195,7 @@ var CDP_CLI_COMMANDS = [
1131
1195
  },
1132
1196
  allowPositionals: false,
1133
1197
  run: async (input) => {
1134
- const { cdpConnect } = await import("./cdp-WVYUEV4U.js");
1198
+ const { cdpConnect } = await import("./cdp-SSIHU3PU.js");
1135
1199
  await cdpConnect({
1136
1200
  host: getString(input.values, "host"),
1137
1201
  port: getString(input.values, "port"),
@@ -1144,7 +1208,7 @@ var CDP_CLI_COMMANDS = [
1144
1208
  usage: "canonry cdp status [--format json]",
1145
1209
  allowPositionals: false,
1146
1210
  run: async (input) => {
1147
- const { cdpStatus } = await import("./cdp-WVYUEV4U.js");
1211
+ const { cdpStatus } = await import("./cdp-SSIHU3PU.js");
1148
1212
  await cdpStatus(input.format);
1149
1213
  }
1150
1214
  },
@@ -1153,7 +1217,7 @@ var CDP_CLI_COMMANDS = [
1153
1217
  usage: "canonry cdp targets [--format json]",
1154
1218
  allowPositionals: false,
1155
1219
  run: async (input) => {
1156
- const { cdpTargets } = await import("./cdp-WVYUEV4U.js");
1220
+ const { cdpTargets } = await import("./cdp-SSIHU3PU.js");
1157
1221
  await cdpTargets(input.format);
1158
1222
  }
1159
1223
  },
@@ -1164,7 +1228,7 @@ var CDP_CLI_COMMANDS = [
1164
1228
  targets: stringOption()
1165
1229
  },
1166
1230
  run: async (input) => {
1167
- const { cdpScreenshot } = await import("./cdp-WVYUEV4U.js");
1231
+ const { cdpScreenshot } = await import("./cdp-SSIHU3PU.js");
1168
1232
  const query = requirePositional(input, 0, {
1169
1233
  command: "cdp.screenshot",
1170
1234
  usage: "canonry cdp screenshot <query> [--targets <list>] [--format json]",
@@ -1196,7 +1260,7 @@ var DASHBOARD_CLI_COMMANDS = [
1196
1260
  usage: "canonry dashboard reset-password [--format json]",
1197
1261
  help: "Clears the dashboard password from config.yaml, so the dashboard asks for a new one after a restart.\nLocal only: it edits the config file under CANONRY_CONFIG_DIR and does not call the server.",
1198
1262
  run: async (input) => {
1199
- const { resetDashboardPassword } = await import("./dashboard-L6RKTP35.js");
1263
+ const { resetDashboardPassword } = await import("./dashboard-NNA3P645.js");
1200
1264
  await resetDashboardPassword({ format: input.format });
1201
1265
  }
1202
1266
  },
@@ -1312,7 +1376,7 @@ var DISCOVER_CLI_COMMANDS = [
1312
1376
  wait: { type: "boolean", default: false }
1313
1377
  },
1314
1378
  run: async (input) => {
1315
- const { discoverRun } = await import("./discover-UO5M7HQZ.js");
1379
+ const { discoverRun } = await import("./discover-VCKMXFOR.js");
1316
1380
  const usage = 'canonry discover run <project> [--icp "..."] [--buyer "..."] [--seed-provider gemini --seed-provider openai] [--icp-angle "..."] [--locations michigan,florida] [--dedup-threshold 0.95] [--max-probes 100] [--probe-concurrency 3] [--wait] [--format json]';
1317
1381
  const project3 = requireProject(input, "discover.run", usage);
1318
1382
  await discoverRun(project3, {
@@ -1349,7 +1413,7 @@ var DISCOVER_CLI_COMMANDS = [
1349
1413
  "probe-concurrency": stringOption()
1350
1414
  },
1351
1415
  run: async (input) => {
1352
- const { discoverEval } = await import("./discover-eval-DN4PS6VN.js");
1416
+ const { discoverEval } = await import("./discover-eval-CPVP7EK5.js");
1353
1417
  const usage = "canonry discover eval [--baseline <path>] [--update-baseline] [--shape eval-b2b-saas ...] [--seed-provider gemini --seed-provider openai] [--max-probes 2] [--probe-concurrency 2] [--format json]";
1354
1418
  await discoverEval({
1355
1419
  baseline: getString(input.values, "baseline"),
@@ -1385,7 +1449,7 @@ var DISCOVER_CLI_COMMANDS = [
1385
1449
  wait: { type: "boolean", default: false }
1386
1450
  },
1387
1451
  run: async (input) => {
1388
- const { discoverSeed } = await import("./discover-UO5M7HQZ.js");
1452
+ const { discoverSeed } = await import("./discover-VCKMXFOR.js");
1389
1453
  const usage = 'canonry discover seed <project> [--icp "..."] [--buyer "..."] [--seed-provider gemini --seed-provider openai] [--icp-angle "..."] [--locations michigan,florida] [--dedup-threshold 0.95] [--max-probes 100] [--probe-concurrency 3] [--wait] [--format json]';
1390
1454
  const project3 = requireProject(input, "discover.seed", usage);
1391
1455
  await discoverSeed(project3, {
@@ -1414,7 +1478,7 @@ var DISCOVER_CLI_COMMANDS = [
1414
1478
  path: ["discover", "probe"],
1415
1479
  usage: "canonry discover probe <project> <session-id> [--format json]",
1416
1480
  run: async (input) => {
1417
- const { discoverProbe } = await import("./discover-UO5M7HQZ.js");
1481
+ const { discoverProbe } = await import("./discover-VCKMXFOR.js");
1418
1482
  const project3 = requireProject(
1419
1483
  input,
1420
1484
  "discover.probe",
@@ -1435,7 +1499,7 @@ var DISCOVER_CLI_COMMANDS = [
1435
1499
  limit: stringOption()
1436
1500
  },
1437
1501
  run: async (input) => {
1438
- const { discoverList } = await import("./discover-UO5M7HQZ.js");
1502
+ const { discoverList } = await import("./discover-VCKMXFOR.js");
1439
1503
  const project3 = requireProject(
1440
1504
  input,
1441
1505
  "discover.list",
@@ -1455,7 +1519,7 @@ var DISCOVER_CLI_COMMANDS = [
1455
1519
  path: ["discover", "show"],
1456
1520
  usage: "canonry discover show <project> <session-id> [--format json]",
1457
1521
  run: async (input) => {
1458
- const { discoverShow } = await import("./discover-UO5M7HQZ.js");
1522
+ const { discoverShow } = await import("./discover-VCKMXFOR.js");
1459
1523
  const project3 = requireProject(
1460
1524
  input,
1461
1525
  "discover.show",
@@ -1478,7 +1542,7 @@ var DISCOVER_CLI_COMMANDS = [
1478
1542
  "no-competitors": { type: "boolean", default: false }
1479
1543
  },
1480
1544
  run: async (input) => {
1481
- const { discoverPromote } = await import("./discover-UO5M7HQZ.js");
1545
+ const { discoverPromote } = await import("./discover-VCKMXFOR.js");
1482
1546
  const usage = "canonry discover promote <project> <session-id> [--bucket cited,aspirational,wasted-surface] [--competitor-types direct-competitor,editorial-media] [--no-competitors] [--format json]";
1483
1547
  const project3 = requireProject(input, "discover.promote", usage);
1484
1548
  const sessionId = requirePositional(input, 1, {
@@ -1502,7 +1566,7 @@ var DISCOVER_CLI_COMMANDS = [
1502
1566
  "no-anchor": { type: "boolean", default: false }
1503
1567
  },
1504
1568
  run: async (input) => {
1505
- const { discoverHarvest } = await import("./discover-UO5M7HQZ.js");
1569
+ const { discoverHarvest } = await import("./discover-VCKMXFOR.js");
1506
1570
  const usage = "canonry discover harvest <project> <session-id> [--min-probe-hits <n>] [--no-anchor] [--format json|jsonl]";
1507
1571
  const project3 = requireProject(input, "discover.harvest", usage);
1508
1572
  const sessionId = requirePositional(input, 1, {
@@ -1525,7 +1589,7 @@ var DISCOVER_CLI_COMMANDS = [
1525
1589
  path: ["discover", "promote", "preview"],
1526
1590
  usage: "canonry discover promote preview <project> <session-id> [--format json]",
1527
1591
  run: async (input) => {
1528
- const { discoverPromotePreview } = await import("./discover-UO5M7HQZ.js");
1592
+ const { discoverPromotePreview } = await import("./discover-VCKMXFOR.js");
1529
1593
  const project3 = requireProject(
1530
1594
  input,
1531
1595
  "discover.promote.preview",
@@ -1626,7 +1690,7 @@ var RESEARCH_CLI_COMMANDS = [
1626
1690
  usage: BATCH_USAGE,
1627
1691
  options: { wait: { type: "boolean", default: false } },
1628
1692
  run: async (input) => {
1629
- const { researchBatch } = await import("./research-GTVWVZBI.js");
1693
+ const { researchBatch } = await import("./research-ZWBJDLJY.js");
1630
1694
  const project3 = requireProject(input, "research.batch", BATCH_USAGE);
1631
1695
  const source = requirePositional(input, 1, {
1632
1696
  command: "research.batch",
@@ -1653,7 +1717,7 @@ var RESEARCH_CLI_COMMANDS = [
1653
1717
  wait: { type: "boolean", default: false }
1654
1718
  },
1655
1719
  run: async (input) => {
1656
- const { researchRun } = await import("./research-GTVWVZBI.js");
1720
+ const { researchRun } = await import("./research-ZWBJDLJY.js");
1657
1721
  const project3 = requireProject(input, "research.run", RUN_USAGE);
1658
1722
  const provider = getString(input.values, "provider")?.trim() || void 0;
1659
1723
  const model = getString(input.values, "model")?.trim() || void 0;
@@ -1682,7 +1746,7 @@ Usage: ${RUN_USAGE}`, {
1682
1746
  usage: "canonry research list <project> [--limit <n>] [--cursor <cursor>] [--format json|jsonl]",
1683
1747
  options: { limit: stringOption(), cursor: stringOption() },
1684
1748
  run: async (input) => {
1685
- const { researchList } = await import("./research-GTVWVZBI.js");
1749
+ const { researchList } = await import("./research-ZWBJDLJY.js");
1686
1750
  const usage = "canonry research list <project> [--limit <n>] [--cursor <cursor>] [--format json|jsonl]";
1687
1751
  const project3 = requireProject(input, "research.list", usage);
1688
1752
  await researchList(project3, {
@@ -1696,7 +1760,7 @@ Usage: ${RUN_USAGE}`, {
1696
1760
  path: ["research", "show"],
1697
1761
  usage: "canonry research show <project> <run-id> [--format json|jsonl]",
1698
1762
  run: async (input) => {
1699
- const { researchShow } = await import("./research-GTVWVZBI.js");
1763
+ const { researchShow } = await import("./research-ZWBJDLJY.js");
1700
1764
  const usage = "canonry research show <project> <run-id> [--format json|jsonl]";
1701
1765
  const project3 = requireProject(input, "research.show", usage);
1702
1766
  const runId = requirePositional(input, 1, { command: "research.show", usage, message: "research run ID is required" });
@@ -1719,7 +1783,7 @@ var DOCTOR_CLI_COMMANDS = [
1719
1783
  },
1720
1784
  allowPositionals: false,
1721
1785
  run: async (input) => {
1722
- const { doctorCommand } = await import("./doctor-7UYUXG7J.js");
1786
+ const { doctorCommand } = await import("./doctor-EVCP6PDM.js");
1723
1787
  await doctorCommand({
1724
1788
  project: getString(input.values, "project"),
1725
1789
  reportMonth: getString(input.values, "report-month"),
@@ -1740,7 +1804,7 @@ var ADS_CLI_COMMANDS = [
1740
1804
  "api-key": stringOption()
1741
1805
  },
1742
1806
  run: async (input) => {
1743
- const { adsConnect } = await import("./ads-BXGEL4WI.js");
1807
+ const { adsConnect } = await import("./ads-AHM5LMVT.js");
1744
1808
  const project3 = requireProject(input, "ads.connect", "canonry ads connect <project> --api-key <sdk-key> [--format json]");
1745
1809
  await adsConnect(project3, {
1746
1810
  apiKey: getString(input.values, "api-key"),
@@ -1752,7 +1816,7 @@ var ADS_CLI_COMMANDS = [
1752
1816
  path: ["ads", "disconnect"],
1753
1817
  usage: "canonry ads disconnect <project> [--format json]",
1754
1818
  run: async (input) => {
1755
- const { adsDisconnect } = await import("./ads-BXGEL4WI.js");
1819
+ const { adsDisconnect } = await import("./ads-AHM5LMVT.js");
1756
1820
  const project3 = requireProject(input, "ads.disconnect", "canonry ads disconnect <project> [--format json]");
1757
1821
  await adsDisconnect(project3, { format: input.format });
1758
1822
  }
@@ -1761,7 +1825,7 @@ var ADS_CLI_COMMANDS = [
1761
1825
  path: ["ads", "status"],
1762
1826
  usage: "canonry ads status <project> [--format json]",
1763
1827
  run: async (input) => {
1764
- const { adsStatus } = await import("./ads-BXGEL4WI.js");
1828
+ const { adsStatus } = await import("./ads-AHM5LMVT.js");
1765
1829
  const project3 = requireProject(input, "ads.status", "canonry ads status <project> [--format json]");
1766
1830
  await adsStatus(project3, { format: input.format });
1767
1831
  }
@@ -1770,7 +1834,7 @@ var ADS_CLI_COMMANDS = [
1770
1834
  path: ["ads", "account"],
1771
1835
  usage: "canonry ads account <project> [--format json]",
1772
1836
  run: async (input) => {
1773
- const { adsAccount } = await import("./ads-BXGEL4WI.js");
1837
+ const { adsAccount } = await import("./ads-AHM5LMVT.js");
1774
1838
  const project3 = requireProject(input, "ads.account", "canonry ads account <project> [--format json]");
1775
1839
  await adsAccount(project3, { format: input.format });
1776
1840
  }
@@ -1783,7 +1847,7 @@ var ADS_CLI_COMMANDS = [
1783
1847
  limit: stringOption()
1784
1848
  },
1785
1849
  run: async (input) => {
1786
- const { adsGeoSearch } = await import("./ads-BXGEL4WI.js");
1850
+ const { adsGeoSearch } = await import("./ads-AHM5LMVT.js");
1787
1851
  const usage = "canonry ads geo search <project> --query <text> [--limit <n>] [--format json|jsonl]";
1788
1852
  const project3 = requireProject(input, "ads.geo.search", usage);
1789
1853
  await adsGeoSearch(project3, {
@@ -1801,7 +1865,7 @@ var ADS_CLI_COMMANDS = [
1801
1865
  path: ["ads", "conversions", "pixels"],
1802
1866
  usage: "canonry ads conversions pixels <project> [--format json|jsonl]",
1803
1867
  run: async (input) => {
1804
- const { adsConversionPixels } = await import("./ads-BXGEL4WI.js");
1868
+ const { adsConversionPixels } = await import("./ads-AHM5LMVT.js");
1805
1869
  const project3 = requireProject(input, "ads.conversions.pixels", "canonry ads conversions pixels <project> [--format json|jsonl]");
1806
1870
  await adsConversionPixels(project3, { format: input.format });
1807
1871
  }
@@ -1810,7 +1874,7 @@ var ADS_CLI_COMMANDS = [
1810
1874
  path: ["ads", "conversions", "event-settings"],
1811
1875
  usage: "canonry ads conversions event-settings <project> [--format json|jsonl]",
1812
1876
  run: async (input) => {
1813
- const { adsConversionEventSettings } = await import("./ads-BXGEL4WI.js");
1877
+ const { adsConversionEventSettings } = await import("./ads-AHM5LMVT.js");
1814
1878
  const project3 = requireProject(input, "ads.conversions.event-settings", "canonry ads conversions event-settings <project> [--format json|jsonl]");
1815
1879
  await adsConversionEventSettings(project3, { format: input.format });
1816
1880
  }
@@ -1824,7 +1888,7 @@ var ADS_CLI_COMMANDS = [
1824
1888
  cursor: stringOption()
1825
1889
  },
1826
1890
  run: async (input) => {
1827
- const { adsOperationsUnresolved } = await import("./ads-BXGEL4WI.js");
1891
+ const { adsOperationsUnresolved } = await import("./ads-AHM5LMVT.js");
1828
1892
  const usage = "canonry ads operations unresolved <project> [--state <csv>] [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
1829
1893
  const project3 = requireProject(
1830
1894
  input,
@@ -1856,7 +1920,7 @@ Usage: ${usage}`, {
1856
1920
  path: ["ads", "operation"],
1857
1921
  usage: "canonry ads operation <project> <operation-key> [--format json]",
1858
1922
  run: async (input) => {
1859
- const { adsOperationGet } = await import("./ads-BXGEL4WI.js");
1923
+ const { adsOperationGet } = await import("./ads-AHM5LMVT.js");
1860
1924
  const usage = "canonry ads operation <project> <operation-key> [--format json]";
1861
1925
  const project3 = requireProject(input, "ads.operation", usage);
1862
1926
  const operationKey = requirePositional(input, 1, {
@@ -1874,7 +1938,7 @@ Usage: ${usage}`, {
1874
1938
  "operation-key": stringOption()
1875
1939
  },
1876
1940
  run: async (input) => {
1877
- const { adsOperationReconcile } = await import("./ads-BXGEL4WI.js");
1941
+ const { adsOperationReconcile } = await import("./ads-AHM5LMVT.js");
1878
1942
  const usage = "canonry ads operation reconcile <project> --operation-key <key> [--format json]";
1879
1943
  const project3 = requireProject(input, "ads.operation.reconcile", usage);
1880
1944
  const operationKey = requireStringOption(input, "operation-key", {
@@ -1893,7 +1957,7 @@ Usage: ${usage}`, {
1893
1957
  usage: "canonry ads operation resume-activation <project> --operation-key <key> [--format json]",
1894
1958
  options: { "operation-key": stringOption() },
1895
1959
  run: async (input) => {
1896
- const { adsOperationResumeActivation } = await import("./ads-BXGEL4WI.js");
1960
+ const { adsOperationResumeActivation } = await import("./ads-AHM5LMVT.js");
1897
1961
  const usage = "canonry ads operation resume-activation <project> --operation-key <key> [--format json]";
1898
1962
  const project3 = requireProject(input, "ads.operation.resume-activation", usage);
1899
1963
  await adsOperationResumeActivation(project3, {
@@ -1911,7 +1975,7 @@ Usage: ${usage}`, {
1911
1975
  usage: "canonry ads activation-grant create <project> --input <json-file|-> [--format json]",
1912
1976
  options: { input: stringOption() },
1913
1977
  run: async (input) => {
1914
- const { adsActivationGrantCreate } = await import("./ads-BXGEL4WI.js");
1978
+ const { adsActivationGrantCreate } = await import("./ads-AHM5LMVT.js");
1915
1979
  const usage = "canonry ads activation-grant create <project> --input <json-file|-> [--format json]";
1916
1980
  const project3 = requireProject(input, "ads.activation-grant.create", usage);
1917
1981
  await adsActivationGrantCreate(project3, {
@@ -1924,7 +1988,7 @@ Usage: ${usage}`, {
1924
1988
  path: ["ads", "activation-grant", "revoke"],
1925
1989
  usage: "canonry ads activation-grant revoke <project> <grant-id> [--format json]",
1926
1990
  run: async (input) => {
1927
- const { adsActivationGrantRevoke } = await import("./ads-BXGEL4WI.js");
1991
+ const { adsActivationGrantRevoke } = await import("./ads-AHM5LMVT.js");
1928
1992
  const usage = "canonry ads activation-grant revoke <project> <grant-id> [--format json]";
1929
1993
  const project3 = requireProject(input, "ads.activation-grant.revoke", usage);
1930
1994
  const grantId = requirePositional(input, 1, {
@@ -1940,7 +2004,7 @@ Usage: ${usage}`, {
1940
2004
  usage: "canonry ads image upload <project> --input <json-file|-> [--format json]",
1941
2005
  options: { input: stringOption() },
1942
2006
  run: async (input) => {
1943
- const { adsImageUpload } = await import("./ads-BXGEL4WI.js");
2007
+ const { adsImageUpload } = await import("./ads-AHM5LMVT.js");
1944
2008
  const project3 = requireProject(input, "ads.image.upload", "canonry ads image upload <project> --input <json-file|-> [--format json]");
1945
2009
  await adsImageUpload(project3, { input: getString(input.values, "input"), format: input.format });
1946
2010
  }
@@ -1950,7 +2014,7 @@ Usage: ${usage}`, {
1950
2014
  usage: "canonry ads campaign create <project> --input <json-file|-> [--format json]",
1951
2015
  options: { input: stringOption() },
1952
2016
  run: async (input) => {
1953
- const { adsCampaignCreate } = await import("./ads-BXGEL4WI.js");
2017
+ const { adsCampaignCreate } = await import("./ads-AHM5LMVT.js");
1954
2018
  const project3 = requireProject(input, "ads.campaign.create", "canonry ads campaign create <project> --input <json-file|-> [--format json]");
1955
2019
  await adsCampaignCreate(project3, { input: getString(input.values, "input"), format: input.format });
1956
2020
  }
@@ -1960,7 +2024,7 @@ Usage: ${usage}`, {
1960
2024
  usage: "canonry ads campaign update <project> <campaign-id> --input <json-file|-> [--format json]",
1961
2025
  options: { input: stringOption() },
1962
2026
  run: async (input) => {
1963
- const { adsCampaignUpdate } = await import("./ads-BXGEL4WI.js");
2027
+ const { adsCampaignUpdate } = await import("./ads-AHM5LMVT.js");
1964
2028
  const usage = "canonry ads campaign update <project> <campaign-id> --input <json-file|-> [--format json]";
1965
2029
  const project3 = requireProject(input, "ads.campaign.update", usage);
1966
2030
  const id2 = requirePositional(input, 1, { command: "ads.campaign.update", usage, message: "campaign id is required" });
@@ -1972,7 +2036,7 @@ Usage: ${usage}`, {
1972
2036
  usage: "canonry ads campaign activate-tree <project> <campaign-id> --input <json-file|-> [--format json]",
1973
2037
  options: { input: stringOption() },
1974
2038
  run: async (input) => {
1975
- const { adsCampaignActivateTree } = await import("./ads-BXGEL4WI.js");
2039
+ const { adsCampaignActivateTree } = await import("./ads-AHM5LMVT.js");
1976
2040
  const usage = "canonry ads campaign activate-tree <project> <campaign-id> --input <json-file|-> [--format json]";
1977
2041
  const project3 = requireProject(input, "ads.campaign.activate-tree", usage);
1978
2042
  const id2 = requirePositional(input, 1, {
@@ -1991,7 +2055,7 @@ Usage: ${usage}`, {
1991
2055
  usage: "canonry ads campaign pause <project> <campaign-id> --input <json-file|-> [--format json]",
1992
2056
  options: { input: stringOption() },
1993
2057
  run: async (input) => {
1994
- const { adsCampaignPause } = await import("./ads-BXGEL4WI.js");
2058
+ const { adsCampaignPause } = await import("./ads-AHM5LMVT.js");
1995
2059
  const usage = "canonry ads campaign pause <project> <campaign-id> --input <json-file|-> [--format json]";
1996
2060
  const project3 = requireProject(input, "ads.campaign.pause", usage);
1997
2061
  const id2 = requirePositional(input, 1, { command: "ads.campaign.pause", usage, message: "campaign id is required" });
@@ -2003,7 +2067,7 @@ Usage: ${usage}`, {
2003
2067
  usage: "canonry ads ad-group create <project> --input <json-file|-> [--format json]",
2004
2068
  options: { input: stringOption() },
2005
2069
  run: async (input) => {
2006
- const { adsAdGroupCreate } = await import("./ads-BXGEL4WI.js");
2070
+ const { adsAdGroupCreate } = await import("./ads-AHM5LMVT.js");
2007
2071
  const project3 = requireProject(input, "ads.ad-group.create", "canonry ads ad-group create <project> --input <json-file|-> [--format json]");
2008
2072
  await adsAdGroupCreate(project3, { input: getString(input.values, "input"), format: input.format });
2009
2073
  }
@@ -2013,7 +2077,7 @@ Usage: ${usage}`, {
2013
2077
  usage: "canonry ads ad-group update <project> <ad-group-id> --input <json-file|-> [--format json]",
2014
2078
  options: { input: stringOption() },
2015
2079
  run: async (input) => {
2016
- const { adsAdGroupUpdate } = await import("./ads-BXGEL4WI.js");
2080
+ const { adsAdGroupUpdate } = await import("./ads-AHM5LMVT.js");
2017
2081
  const usage = "canonry ads ad-group update <project> <ad-group-id> --input <json-file|-> [--format json]";
2018
2082
  const project3 = requireProject(input, "ads.ad-group.update", usage);
2019
2083
  const id2 = requirePositional(input, 1, { command: "ads.ad-group.update", usage, message: "ad group id is required" });
@@ -2025,7 +2089,7 @@ Usage: ${usage}`, {
2025
2089
  usage: "canonry ads ad-group pause <project> <ad-group-id> --input <json-file|-> [--format json]",
2026
2090
  options: { input: stringOption() },
2027
2091
  run: async (input) => {
2028
- const { adsAdGroupPause } = await import("./ads-BXGEL4WI.js");
2092
+ const { adsAdGroupPause } = await import("./ads-AHM5LMVT.js");
2029
2093
  const usage = "canonry ads ad-group pause <project> <ad-group-id> --input <json-file|-> [--format json]";
2030
2094
  const project3 = requireProject(input, "ads.ad-group.pause", usage);
2031
2095
  const id2 = requirePositional(input, 1, { command: "ads.ad-group.pause", usage, message: "ad group id is required" });
@@ -2037,7 +2101,7 @@ Usage: ${usage}`, {
2037
2101
  usage: "canonry ads ad create <project> --input <json-file|-> [--format json]",
2038
2102
  options: { input: stringOption() },
2039
2103
  run: async (input) => {
2040
- const { adsAdCreate } = await import("./ads-BXGEL4WI.js");
2104
+ const { adsAdCreate } = await import("./ads-AHM5LMVT.js");
2041
2105
  const project3 = requireProject(input, "ads.ad.create", "canonry ads ad create <project> --input <json-file|-> [--format json]");
2042
2106
  await adsAdCreate(project3, { input: getString(input.values, "input"), format: input.format });
2043
2107
  }
@@ -2047,7 +2111,7 @@ Usage: ${usage}`, {
2047
2111
  usage: "canonry ads ad update <project> <ad-id> --input <json-file|-> [--format json]",
2048
2112
  options: { input: stringOption() },
2049
2113
  run: async (input) => {
2050
- const { adsAdUpdate } = await import("./ads-BXGEL4WI.js");
2114
+ const { adsAdUpdate } = await import("./ads-AHM5LMVT.js");
2051
2115
  const usage = "canonry ads ad update <project> <ad-id> --input <json-file|-> [--format json]";
2052
2116
  const project3 = requireProject(input, "ads.ad.update", usage);
2053
2117
  const id2 = requirePositional(input, 1, { command: "ads.ad.update", usage, message: "ad id is required" });
@@ -2059,7 +2123,7 @@ Usage: ${usage}`, {
2059
2123
  usage: "canonry ads ad pause <project> <ad-id> --input <json-file|-> [--format json]",
2060
2124
  options: { input: stringOption() },
2061
2125
  run: async (input) => {
2062
- const { adsAdPause } = await import("./ads-BXGEL4WI.js");
2126
+ const { adsAdPause } = await import("./ads-AHM5LMVT.js");
2063
2127
  const usage = "canonry ads ad pause <project> <ad-id> --input <json-file|-> [--format json]";
2064
2128
  const project3 = requireProject(input, "ads.ad.pause", usage);
2065
2129
  const id2 = requirePositional(input, 1, { command: "ads.ad.pause", usage, message: "ad id is required" });
@@ -2070,7 +2134,7 @@ Usage: ${usage}`, {
2070
2134
  path: ["ads", "sync"],
2071
2135
  usage: "canonry ads sync <project> [--format json]",
2072
2136
  run: async (input) => {
2073
- const { adsSync } = await import("./ads-BXGEL4WI.js");
2137
+ const { adsSync } = await import("./ads-AHM5LMVT.js");
2074
2138
  const project3 = requireProject(input, "ads.sync", "canonry ads sync <project> [--format json]");
2075
2139
  await adsSync(project3, { format: input.format });
2076
2140
  }
@@ -2079,7 +2143,7 @@ Usage: ${usage}`, {
2079
2143
  path: ["ads", "campaigns"],
2080
2144
  usage: "canonry ads campaigns <project> [--format json|jsonl]",
2081
2145
  run: async (input) => {
2082
- const { adsCampaigns } = await import("./ads-BXGEL4WI.js");
2146
+ const { adsCampaigns } = await import("./ads-AHM5LMVT.js");
2083
2147
  const project3 = requireProject(input, "ads.campaigns", "canonry ads campaigns <project> [--format json|jsonl]");
2084
2148
  await adsCampaigns(project3, { format: input.format });
2085
2149
  }
@@ -2095,7 +2159,7 @@ Usage: ${usage}`, {
2095
2159
  to: stringOption()
2096
2160
  },
2097
2161
  run: async (input) => {
2098
- const { adsInsights } = await import("./ads-BXGEL4WI.js");
2162
+ const { adsInsights } = await import("./ads-AHM5LMVT.js");
2099
2163
  const project3 = requireProject(input, "ads.insights", "canonry ads insights <project> [--level <level>] [--entity <id>] [--from <date>] [--to <date>] [--format json|jsonl]");
2100
2164
  await adsInsights(project3, {
2101
2165
  level: getString(input.values, "level"),
@@ -2110,7 +2174,7 @@ Usage: ${usage}`, {
2110
2174
  path: ["ads", "summary"],
2111
2175
  usage: "canonry ads summary <project> [--format json]",
2112
2176
  run: async (input) => {
2113
- const { adsSummary } = await import("./ads-BXGEL4WI.js");
2177
+ const { adsSummary } = await import("./ads-AHM5LMVT.js");
2114
2178
  const project3 = requireProject(input, "ads.summary", "canonry ads summary <project> [--format json]");
2115
2179
  await adsSummary(project3, { format: input.format });
2116
2180
  }
@@ -2123,7 +2187,7 @@ Usage: ${usage}`, {
2123
2187
  "lookback-days": stringOption()
2124
2188
  },
2125
2189
  run: async (input) => {
2126
- const { adsLiveDelivery } = await import("./ads-BXGEL4WI.js");
2190
+ const { adsLiveDelivery } = await import("./ads-AHM5LMVT.js");
2127
2191
  const usage = "canonry ads live-delivery <project> [--campaign <id>] [--lookback-days <n>] [--format json]";
2128
2192
  const project3 = requireProject(input, "ads.live-delivery", usage);
2129
2193
  await adsLiveDelivery(project3, {
@@ -2141,7 +2205,7 @@ Usage: ${usage}`, {
2141
2205
  path: ["ads", "delivery-diagnostics"],
2142
2206
  usage: "canonry ads delivery-diagnostics <project> [--format json]",
2143
2207
  run: async (input) => {
2144
- const { adsDeliveryDiagnostics } = await import("./ads-BXGEL4WI.js");
2208
+ const { adsDeliveryDiagnostics } = await import("./ads-AHM5LMVT.js");
2145
2209
  const project3 = requireProject(input, "ads.delivery-diagnostics", "canonry ads delivery-diagnostics <project> [--format json]");
2146
2210
  await adsDeliveryDiagnostics(project3, { format: input.format });
2147
2211
  }
@@ -2170,7 +2234,7 @@ var GA_CLI_COMMANDS = [
2170
2234
  help: "Stored GA4 sessions only, with filtered totals independent of grouping and paging. Never calls Google. Meaningful page query parameters remain distinct.",
2171
2235
  options: { ...RANGE_OPTIONS, channel: stringOption(), source: stringOption(), medium: stringOption(), host: stringOption(), "landing-page": stringOption(), "path-prefix": stringOption(), "group-by": stringOption(), limit: stringOption(), offset: stringOption() },
2172
2236
  run: async (input) => {
2173
- const { gaAcquisition } = await import("./ga-4LGTEA6J.js");
2237
+ const { gaAcquisition } = await import("./ga-6J67NDMZ.js");
2174
2238
  const project3 = requireProject(input, "ga.acquisition", "canonry ga acquisition <project>");
2175
2239
  const aliases = { channel: "channelGroup", host: "hostName", "landing-page": "landingPage" };
2176
2240
  const groupBy = getString(input.values, "group-by")?.split(",").map((key) => aliases[key.trim()] ?? key.trim()).join(",");
@@ -2187,7 +2251,7 @@ var GA_CLI_COMMANDS = [
2187
2251
  "key-json": stringOption()
2188
2252
  },
2189
2253
  run: async (input) => {
2190
- const { gaConnect } = await import("./ga-4LGTEA6J.js");
2254
+ const { gaConnect } = await import("./ga-6J67NDMZ.js");
2191
2255
  const project3 = requireProject(input, "ga.connect", "canonry ga connect <project> --property-id <id> [--key-file <path>]");
2192
2256
  const propertyId = getString(input.values, "property-id");
2193
2257
  if (!propertyId) {
@@ -2205,7 +2269,7 @@ var GA_CLI_COMMANDS = [
2205
2269
  path: ["ga", "disconnect"],
2206
2270
  usage: "canonry ga disconnect <project> [--format json]",
2207
2271
  run: async (input) => {
2208
- const { gaDisconnect } = await import("./ga-4LGTEA6J.js");
2272
+ const { gaDisconnect } = await import("./ga-6J67NDMZ.js");
2209
2273
  const project3 = requireProject(input, "ga.disconnect", "canonry ga disconnect <project> [--format json]");
2210
2274
  await gaDisconnect(project3, input.format);
2211
2275
  }
@@ -2214,7 +2278,7 @@ var GA_CLI_COMMANDS = [
2214
2278
  path: ["ga", "properties"],
2215
2279
  usage: "canonry ga properties <project> [--format json]",
2216
2280
  run: async (input) => {
2217
- const { gaProperties } = await import("./ga-4LGTEA6J.js");
2281
+ const { gaProperties } = await import("./ga-6J67NDMZ.js");
2218
2282
  const project3 = requireProject(input, "ga.properties", "canonry ga properties <project> [--format json]");
2219
2283
  await gaProperties(project3, input.format);
2220
2284
  }
@@ -2223,7 +2287,7 @@ var GA_CLI_COMMANDS = [
2223
2287
  path: ["ga", "status"],
2224
2288
  usage: "canonry ga status <project> [--format json]",
2225
2289
  run: async (input) => {
2226
- const { gaStatus } = await import("./ga-4LGTEA6J.js");
2290
+ const { gaStatus } = await import("./ga-6J67NDMZ.js");
2227
2291
  const project3 = requireProject(input, "ga.status", "canonry ga status <project> [--format json]");
2228
2292
  await gaStatus(project3, input.format);
2229
2293
  }
@@ -2236,7 +2300,7 @@ var GA_CLI_COMMANDS = [
2236
2300
  only: stringOption()
2237
2301
  },
2238
2302
  run: async (input) => {
2239
- const { gaSync } = await import("./ga-4LGTEA6J.js");
2303
+ const { gaSync } = await import("./ga-6J67NDMZ.js");
2240
2304
  const project3 = requireProject(input, "ga.sync", "canonry ga sync <project> [--days 30] [--only traffic|ai|social|search-landing] [--format json]");
2241
2305
  const daysStr = getString(input.values, "days");
2242
2306
  const days = daysStr ? parseInt(daysStr, 10) : void 0;
@@ -2259,7 +2323,7 @@ var GA_CLI_COMMANDS = [
2259
2323
  limit: stringOption()
2260
2324
  },
2261
2325
  run: async (input) => {
2262
- const { gaMeasurementAnalysis } = await import("./ga-4LGTEA6J.js");
2326
+ const { gaMeasurementAnalysis } = await import("./ga-6J67NDMZ.js");
2263
2327
  const project3 = requireProject(input, "ga.measurement-analysis", "canonry ga measurement-analysis <project> [--window 30d|60d|90d] [--format json]");
2264
2328
  const limitValue = getString(input.values, "limit");
2265
2329
  await gaMeasurementAnalysis(project3, {
@@ -2281,7 +2345,7 @@ var GA_CLI_COMMANDS = [
2281
2345
  offset: stringOption()
2282
2346
  },
2283
2347
  run: async (input) => {
2284
- const { gaSearchLandingPages } = await import("./ga-4LGTEA6J.js");
2348
+ const { gaSearchLandingPages } = await import("./ga-6J67NDMZ.js");
2285
2349
  const project3 = requireProject(input, "ga.search-landing-pages", "canonry ga search-landing-pages <project> [--window 7d|28d|90d] [--limit 50] [--offset 0] [--format json|jsonl]");
2286
2350
  await gaSearchLandingPages(project3, {
2287
2351
  window: getString(input.values, "window"),
@@ -2300,7 +2364,7 @@ var GA_CLI_COMMANDS = [
2300
2364
  ...RANGE_OPTIONS
2301
2365
  },
2302
2366
  run: async (input) => {
2303
- const { gaTraffic } = await import("./ga-4LGTEA6J.js");
2367
+ const { gaTraffic } = await import("./ga-6J67NDMZ.js");
2304
2368
  const project3 = requireProject(input, "ga.traffic", `canonry ga traffic <project> [--limit 50] ${RANGE_USAGE} [--format json]`);
2305
2369
  const limitStr = getString(input.values, "limit");
2306
2370
  const limit = limitStr ? parseInt(limitStr, 10) : void 0;
@@ -2315,7 +2379,7 @@ var GA_CLI_COMMANDS = [
2315
2379
  path: ["ga", "coverage"],
2316
2380
  usage: "canonry ga coverage <project> [--format json]",
2317
2381
  run: async (input) => {
2318
- const { gaCoverage } = await import("./ga-4LGTEA6J.js");
2382
+ const { gaCoverage } = await import("./ga-6J67NDMZ.js");
2319
2383
  const project3 = requireProject(input, "ga.coverage", "canonry ga coverage <project> [--format json]");
2320
2384
  await gaCoverage(project3, input.format);
2321
2385
  }
@@ -2326,7 +2390,7 @@ var GA_CLI_COMMANDS = [
2326
2390
  usage: `canonry ga ai-referral-history <project> ${RANGE_USAGE} [--format json]`,
2327
2391
  options: { ...RANGE_OPTIONS },
2328
2392
  run: async (input) => {
2329
- const { gaAiReferralHistory } = await import("./ga-4LGTEA6J.js");
2393
+ const { gaAiReferralHistory } = await import("./ga-6J67NDMZ.js");
2330
2394
  const project3 = requireProject(input, "ga.ai-referral-history", `canonry ga ai-referral-history <project> ${RANGE_USAGE} [--format json]`);
2331
2395
  await gaAiReferralHistory(project3, {
2332
2396
  ...rangeValues(input.values),
@@ -2340,7 +2404,7 @@ var GA_CLI_COMMANDS = [
2340
2404
  usage: `canonry ga ai-referral-daily <project> ${RANGE_USAGE} [--format json]`,
2341
2405
  options: { ...RANGE_OPTIONS },
2342
2406
  run: async (input) => {
2343
- const { gaAiReferralDaily } = await import("./ga-4LGTEA6J.js");
2407
+ const { gaAiReferralDaily } = await import("./ga-6J67NDMZ.js");
2344
2408
  const project3 = requireProject(input, "ga.ai-referral-daily", `canonry ga ai-referral-daily <project> ${RANGE_USAGE} [--format json]`);
2345
2409
  await gaAiReferralDaily(project3, {
2346
2410
  ...rangeValues(input.values),
@@ -2354,7 +2418,7 @@ var GA_CLI_COMMANDS = [
2354
2418
  usage: `canonry ga social-referral-history <project> ${RANGE_USAGE} [--format json]`,
2355
2419
  options: { ...RANGE_OPTIONS },
2356
2420
  run: async (input) => {
2357
- const { gaSocialReferralHistory } = await import("./ga-4LGTEA6J.js");
2421
+ const { gaSocialReferralHistory } = await import("./ga-6J67NDMZ.js");
2358
2422
  const project3 = requireProject(input, "ga.social-referral-history", `canonry ga social-referral-history <project> ${RANGE_USAGE} [--format json]`);
2359
2423
  await gaSocialReferralHistory(project3, {
2360
2424
  ...rangeValues(input.values),
@@ -2367,7 +2431,7 @@ var GA_CLI_COMMANDS = [
2367
2431
  windows: WINDOW_SETS.gaOverview,
2368
2432
  usage: "canonry ga overview <project> [--window 7d|30d|90d] [--format json]",
2369
2433
  run: async (input) => {
2370
- const { gaOverview } = await import("./ga-4LGTEA6J.js");
2434
+ const { gaOverview } = await import("./ga-6J67NDMZ.js");
2371
2435
  const project3 = requireProject(input, "ga.overview", "canonry ga overview <project> [--window 7d|30d|90d] [--format json]");
2372
2436
  await gaOverview(project3, {
2373
2437
  window: typeof input.values.window === "string" ? input.values.window : void 0,
@@ -2381,7 +2445,7 @@ var GA_CLI_COMMANDS = [
2381
2445
  usage: `canonry ga session-history <project> ${RANGE_USAGE} [--format json]`,
2382
2446
  options: { ...RANGE_OPTIONS },
2383
2447
  run: async (input) => {
2384
- const { gaSessionHistory } = await import("./ga-4LGTEA6J.js");
2448
+ const { gaSessionHistory } = await import("./ga-6J67NDMZ.js");
2385
2449
  const project3 = requireProject(input, "ga.session-history", `canonry ga session-history <project> ${RANGE_USAGE} [--format json]`);
2386
2450
  await gaSessionHistory(project3, {
2387
2451
  ...rangeValues(input.values),
@@ -2396,7 +2460,7 @@ var GA_CLI_COMMANDS = [
2396
2460
  trend: { type: "boolean", default: false }
2397
2461
  },
2398
2462
  run: async (input) => {
2399
- const { gaSocialReferralSummary } = await import("./ga-4LGTEA6J.js");
2463
+ const { gaSocialReferralSummary } = await import("./ga-6J67NDMZ.js");
2400
2464
  const project3 = requireProject(input, "ga.social-referral-summary", "canonry ga social-referral-summary <project> [--trend] [--format json]");
2401
2465
  await gaSocialReferralSummary(project3, {
2402
2466
  trend: input.values.trend === true,
@@ -2411,7 +2475,7 @@ var GA_CLI_COMMANDS = [
2411
2475
  trend: { type: "boolean", default: false }
2412
2476
  },
2413
2477
  run: async (input) => {
2414
- const { gaAttribution } = await import("./ga-4LGTEA6J.js");
2478
+ const { gaAttribution } = await import("./ga-6J67NDMZ.js");
2415
2479
  const project3 = requireProject(input, "ga.attribution", "canonry ga attribution <project> [--trend] [--format json]");
2416
2480
  await gaAttribution(project3, {
2417
2481
  trend: input.values.trend === true,
@@ -2440,7 +2504,7 @@ var GBP_CLI_COMMANDS = [
2440
2504
  usage: "canonry gbp posts attempt <project> --attempt UUID --package SHA256 [--format json]",
2441
2505
  options: { attempt: stringOption(), package: stringOption() },
2442
2506
  run: async (input) => {
2443
- const { gbpLocalPosts } = await import("./gbp-XOLYZ4XC.js");
2507
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2444
2508
  await gbpLocalPosts(requireProject(input, "gbp.posts.attempt", "canonry gbp posts attempt <project>"), "attempt", { attempt: getString(input.values, "attempt"), package: getString(input.values, "package") });
2445
2509
  }
2446
2510
  },
@@ -2450,7 +2514,7 @@ var GBP_CLI_COMMANDS = [
2450
2514
  usage: "canonry gbp posts list <project> --account accounts/id --location locations/id [--page-token token] [--format json]",
2451
2515
  options: { account: stringOption(), location: stringOption(), "page-token": stringOption() },
2452
2516
  run: async (input) => {
2453
- const { gbpLocalPosts } = await import("./gbp-XOLYZ4XC.js");
2517
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2454
2518
  await gbpLocalPosts(requireProject(input, "gbp.posts.list", "canonry gbp posts list <project>"), "list", { account: getString(input.values, "account"), location: getString(input.values, "location"), pageToken: getString(input.values, "page-token") });
2455
2519
  }
2456
2520
  },
@@ -2460,7 +2524,7 @@ var GBP_CLI_COMMANDS = [
2460
2524
  usage: "canonry gbp posts get <project> --post resource [--format json]",
2461
2525
  options: { post: stringOption() },
2462
2526
  run: async (input) => {
2463
- const { gbpLocalPosts } = await import("./gbp-XOLYZ4XC.js");
2527
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2464
2528
  await gbpLocalPosts(requireProject(input, "gbp.posts.get", "canonry gbp posts get <project>"), "get", { post: getString(input.values, "post") });
2465
2529
  }
2466
2530
  },
@@ -2470,7 +2534,7 @@ var GBP_CLI_COMMANDS = [
2470
2534
  usage: "canonry gbp posts create <project> --request file [--format json]",
2471
2535
  options: { request: stringOption() },
2472
2536
  run: async (input) => {
2473
- const { gbpLocalPosts } = await import("./gbp-XOLYZ4XC.js");
2537
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2474
2538
  await gbpLocalPosts(requireProject(input, "gbp.posts.create", "canonry gbp posts create <project>"), "create", { request: getString(input.values, "request") });
2475
2539
  }
2476
2540
  },
@@ -2480,7 +2544,7 @@ var GBP_CLI_COMMANDS = [
2480
2544
  usage: "canonry gbp reviews live <project> --account accounts/id --location locations/id [--format json]",
2481
2545
  options: { account: stringOption(), location: stringOption() },
2482
2546
  run: async (input) => {
2483
- const { gbpLocalPosts } = await import("./gbp-XOLYZ4XC.js");
2547
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2484
2548
  await gbpLocalPosts(requireProject(input, "gbp.reviews.live", "canonry gbp reviews live <project>"), "reviews", { account: getString(input.values, "account"), location: getString(input.values, "location") });
2485
2549
  }
2486
2550
  },
@@ -2491,7 +2555,7 @@ var GBP_CLI_COMMANDS = [
2491
2555
  "public-url": stringOption()
2492
2556
  },
2493
2557
  run: async (input) => {
2494
- const { gbpConnect } = await import("./gbp-XOLYZ4XC.js");
2558
+ const { gbpConnect } = await import("./gbp-ERTWK26L.js");
2495
2559
  const project3 = requireProject(input, "gbp.connect", "canonry gbp connect <project> [--public-url <url>] [--format json]");
2496
2560
  await gbpConnect(project3, {
2497
2561
  publicUrl: getString(input.values, "public-url"),
@@ -2503,7 +2567,7 @@ var GBP_CLI_COMMANDS = [
2503
2567
  path: ["gbp", "disconnect"],
2504
2568
  usage: "canonry gbp disconnect <project> [--format json]",
2505
2569
  run: async (input) => {
2506
- const { gbpDisconnect } = await import("./gbp-XOLYZ4XC.js");
2570
+ const { gbpDisconnect } = await import("./gbp-ERTWK26L.js");
2507
2571
  const project3 = requireProject(input, "gbp.disconnect", "canonry gbp disconnect <project> [--format json]");
2508
2572
  await gbpDisconnect(project3, { format: input.format });
2509
2573
  }
@@ -2515,7 +2579,7 @@ var GBP_CLI_COMMANDS = [
2515
2579
  "selected-only": { type: "boolean" }
2516
2580
  },
2517
2581
  run: async (input) => {
2518
- const { gbpLocationsList } = await import("./gbp-XOLYZ4XC.js");
2582
+ const { gbpLocationsList } = await import("./gbp-ERTWK26L.js");
2519
2583
  const project3 = requireProject(input, "gbp.locations", "canonry gbp locations <project> [--selected-only] [--format json]");
2520
2584
  await gbpLocationsList(project3, {
2521
2585
  format: input.format,
@@ -2527,7 +2591,7 @@ var GBP_CLI_COMMANDS = [
2527
2591
  path: ["gbp", "accounts"],
2528
2592
  usage: "canonry gbp accounts <project> [--format json]",
2529
2593
  run: async (input) => {
2530
- const { gbpAccounts } = await import("./gbp-XOLYZ4XC.js");
2594
+ const { gbpAccounts } = await import("./gbp-ERTWK26L.js");
2531
2595
  const project3 = requireProject(input, "gbp.accounts", "canonry gbp accounts <project> [--format json]");
2532
2596
  await gbpAccounts(project3, { format: input.format });
2533
2597
  }
@@ -2541,7 +2605,7 @@ var GBP_CLI_COMMANDS = [
2541
2605
  "switch-account": { type: "boolean" }
2542
2606
  },
2543
2607
  run: async (input) => {
2544
- const { gbpLocationsDiscover } = await import("./gbp-XOLYZ4XC.js");
2608
+ const { gbpLocationsDiscover } = await import("./gbp-ERTWK26L.js");
2545
2609
  const project3 = requireProject(input, "gbp.locations.discover", "canonry gbp locations discover <project> [--account <accounts/{n}>] [--switch-account] [--no-select-new] [--format json]");
2546
2610
  const noSelectNew = getBoolean(input.values, "no-select-new") ?? false;
2547
2611
  await gbpLocationsDiscover(project3, {
@@ -2559,7 +2623,7 @@ var GBP_CLI_COMMANDS = [
2559
2623
  location: stringOption()
2560
2624
  },
2561
2625
  run: async (input) => {
2562
- const { gbpLocationSelect } = await import("./gbp-XOLYZ4XC.js");
2626
+ const { gbpLocationSelect } = await import("./gbp-ERTWK26L.js");
2563
2627
  const project3 = requireProject(input, "gbp.locations.select", "canonry gbp locations select <project> --location <name> [--format json]");
2564
2628
  const location = getString(input.values, "location");
2565
2629
  if (!location) throw usageError("canonry gbp locations select <project> --location <locations/{n}>: --location is required");
@@ -2573,7 +2637,7 @@ var GBP_CLI_COMMANDS = [
2573
2637
  location: stringOption()
2574
2638
  },
2575
2639
  run: async (input) => {
2576
- const { gbpLocationDeselect } = await import("./gbp-XOLYZ4XC.js");
2640
+ const { gbpLocationDeselect } = await import("./gbp-ERTWK26L.js");
2577
2641
  const project3 = requireProject(input, "gbp.locations.deselect", "canonry gbp locations deselect <project> --location <name> [--format json]");
2578
2642
  const location = getString(input.values, "location");
2579
2643
  if (!location) throw usageError("canonry gbp locations deselect <project> --location <locations/{n}>: --location is required");
@@ -2590,7 +2654,7 @@ var GBP_CLI_COMMANDS = [
2590
2654
  wait: { type: "boolean" }
2591
2655
  },
2592
2656
  run: async (input) => {
2593
- const { gbpSync } = await import("./gbp-XOLYZ4XC.js");
2657
+ const { gbpSync } = await import("./gbp-ERTWK26L.js");
2594
2658
  const project3 = requireProject(input, "gbp.sync", "canonry gbp sync <project> [--location <name>] [--days N] [--months N] [--wait] [--format json]");
2595
2659
  await gbpSync(project3, {
2596
2660
  location: getString(input.values, "location"),
@@ -2609,7 +2673,7 @@ var GBP_CLI_COMMANDS = [
2609
2673
  metric: stringOption()
2610
2674
  },
2611
2675
  run: async (input) => {
2612
- const { gbpMetrics } = await import("./gbp-XOLYZ4XC.js");
2676
+ const { gbpMetrics } = await import("./gbp-ERTWK26L.js");
2613
2677
  const project3 = requireProject(input, "gbp.metrics", "canonry gbp metrics <project> [--location <name>] [--metric <DailyMetric>] [--format json]");
2614
2678
  await gbpMetrics(project3, {
2615
2679
  location: getString(input.values, "location"),
@@ -2625,7 +2689,7 @@ var GBP_CLI_COMMANDS = [
2625
2689
  location: stringOption()
2626
2690
  },
2627
2691
  run: async (input) => {
2628
- const { gbpKeywords } = await import("./gbp-XOLYZ4XC.js");
2692
+ const { gbpKeywords } = await import("./gbp-ERTWK26L.js");
2629
2693
  const project3 = requireProject(input, "gbp.keywords", "canonry gbp keywords <project> [--location <name>] [--format json]");
2630
2694
  await gbpKeywords(project3, {
2631
2695
  location: getString(input.values, "location"),
@@ -2640,7 +2704,7 @@ var GBP_CLI_COMMANDS = [
2640
2704
  location: stringOption()
2641
2705
  },
2642
2706
  run: async (input) => {
2643
- const { gbpPlaceActions } = await import("./gbp-XOLYZ4XC.js");
2707
+ const { gbpPlaceActions } = await import("./gbp-ERTWK26L.js");
2644
2708
  const project3 = requireProject(input, "gbp.place-actions", "canonry gbp place-actions <project> [--location <name>] [--format json]");
2645
2709
  await gbpPlaceActions(project3, { location: getString(input.values, "location"), format: input.format });
2646
2710
  }
@@ -2652,7 +2716,7 @@ var GBP_CLI_COMMANDS = [
2652
2716
  location: stringOption()
2653
2717
  },
2654
2718
  run: async (input) => {
2655
- const { gbpLodging } = await import("./gbp-XOLYZ4XC.js");
2719
+ const { gbpLodging } = await import("./gbp-ERTWK26L.js");
2656
2720
  const project3 = requireProject(input, "gbp.lodging", "canonry gbp lodging <project> [--location <name>] [--format json]");
2657
2721
  await gbpLodging(project3, { location: getString(input.values, "location"), format: input.format });
2658
2722
  }
@@ -2664,7 +2728,7 @@ var GBP_CLI_COMMANDS = [
2664
2728
  location: stringOption()
2665
2729
  },
2666
2730
  run: async (input) => {
2667
- const { gbpAttributes } = await import("./gbp-XOLYZ4XC.js");
2731
+ const { gbpAttributes } = await import("./gbp-ERTWK26L.js");
2668
2732
  const project3 = requireProject(input, "gbp.attributes", "canonry gbp attributes <project> [--location <name>] [--format json]");
2669
2733
  await gbpAttributes(project3, { location: getString(input.values, "location"), format: input.format });
2670
2734
  }
@@ -2676,7 +2740,7 @@ var GBP_CLI_COMMANDS = [
2676
2740
  location: stringOption()
2677
2741
  },
2678
2742
  run: async (input) => {
2679
- const { gbpPlaces } = await import("./gbp-XOLYZ4XC.js");
2743
+ const { gbpPlaces } = await import("./gbp-ERTWK26L.js");
2680
2744
  const project3 = requireProject(input, "gbp.places", "canonry gbp places <project> [--location <name>] [--format json]");
2681
2745
  await gbpPlaces(project3, { location: getString(input.values, "location"), format: input.format });
2682
2746
  }
@@ -2690,7 +2754,7 @@ var GBP_CLI_COMMANDS = [
2690
2754
  limit: stringOption()
2691
2755
  },
2692
2756
  run: async (input) => {
2693
- const { gbpReviews } = await import("./gbp-XOLYZ4XC.js");
2757
+ const { gbpReviews } = await import("./gbp-ERTWK26L.js");
2694
2758
  const usage = "canonry gbp reviews <project> [--location <name>] [--negative] [--limit N] [--format json]";
2695
2759
  const project3 = requireProject(input, "gbp.reviews", usage);
2696
2760
  await gbpReviews(project3, {
@@ -2708,7 +2772,7 @@ var GBP_CLI_COMMANDS = [
2708
2772
  location: stringOption()
2709
2773
  },
2710
2774
  run: async (input) => {
2711
- const { gbpSummary } = await import("./gbp-XOLYZ4XC.js");
2775
+ const { gbpSummary } = await import("./gbp-ERTWK26L.js");
2712
2776
  const project3 = requireProject(input, "gbp.summary", "canonry gbp summary <project> [--location <name>] [--format json]");
2713
2777
  await gbpSummary(project3, { location: getString(input.values, "location"), format: input.format });
2714
2778
  }
@@ -2747,7 +2811,7 @@ function createGoogleMarketingCliCommands(createClient) {
2747
2811
  path: ["google-ads", "disconnect"],
2748
2812
  usage: "canonry google-ads disconnect <project> [--format json]",
2749
2813
  run: async (input) => {
2750
- const { googleAdsDisconnect } = await import("./google-marketing-HU5I3XPP.js");
2814
+ const { googleAdsDisconnect } = await import("./google-marketing-OEW2YGUR.js");
2751
2815
  const usage = "canonry google-ads disconnect <project> [--format json]";
2752
2816
  await googleAdsDisconnect(createClient(), requireProject(input, "google-ads.disconnect", usage), { format: input.format });
2753
2817
  }
@@ -2756,7 +2820,7 @@ function createGoogleMarketingCliCommands(createClient) {
2756
2820
  path: ["google-ads", "status"],
2757
2821
  usage: "canonry google-ads status <project> [--format json]",
2758
2822
  run: async (input) => {
2759
- const { googleAdsStatus } = await import("./google-marketing-HU5I3XPP.js");
2823
+ const { googleAdsStatus } = await import("./google-marketing-OEW2YGUR.js");
2760
2824
  const usage = "canonry google-ads status <project> [--format json]";
2761
2825
  await googleAdsStatus(createClient(), requireProject(input, "google-ads.status", usage), { format: input.format });
2762
2826
  }
@@ -2765,7 +2829,7 @@ function createGoogleMarketingCliCommands(createClient) {
2765
2829
  path: ["google-ads", "customers"],
2766
2830
  usage: "canonry google-ads customers <project> [--format json|jsonl]",
2767
2831
  run: async (input) => {
2768
- const { googleAdsCustomers } = await import("./google-marketing-HU5I3XPP.js");
2832
+ const { googleAdsCustomers } = await import("./google-marketing-OEW2YGUR.js");
2769
2833
  const usage = "canonry google-ads customers <project> [--format json|jsonl]";
2770
2834
  await googleAdsCustomers(createClient(), requireProject(input, "google-ads.customers", usage), { format: input.format });
2771
2835
  }
@@ -2775,7 +2839,7 @@ function createGoogleMarketingCliCommands(createClient) {
2775
2839
  usage: "canonry google-ads select <project> --customer <customer-id> [--login-customer <manager-id>] [--format json]",
2776
2840
  options: { customer: stringOption(), "login-customer": stringOption() },
2777
2841
  run: async (input) => {
2778
- const { googleAdsSelect } = await import("./google-marketing-HU5I3XPP.js");
2842
+ const { googleAdsSelect } = await import("./google-marketing-OEW2YGUR.js");
2779
2843
  const usage = "canonry google-ads select <project> --customer <customer-id> [--login-customer <manager-id>] [--format json]";
2780
2844
  const project3 = requireProject(input, "google-ads.select", usage);
2781
2845
  const customerId = requireStringOption(input, "customer", {
@@ -2793,7 +2857,7 @@ function createGoogleMarketingCliCommands(createClient) {
2793
2857
  path: ["google-ads", "sync"],
2794
2858
  usage: "canonry google-ads sync <project> [--format json]",
2795
2859
  run: async (input) => {
2796
- const { googleAdsSync } = await import("./google-marketing-HU5I3XPP.js");
2860
+ const { googleAdsSync } = await import("./google-marketing-OEW2YGUR.js");
2797
2861
  const usage = "canonry google-ads sync <project> [--format json]";
2798
2862
  await googleAdsSync(createClient(), requireProject(input, "google-ads.sync", usage), { format: input.format });
2799
2863
  }
@@ -2804,7 +2868,7 @@ function createGoogleMarketingCliCommands(createClient) {
2804
2868
  usage: "canonry google-ads performance <project> [--window 7d|14d|30d] [--format json]",
2805
2869
  options: { window: stringOption() },
2806
2870
  run: async (input) => {
2807
- const { googleAdsPerformance } = await import("./google-marketing-HU5I3XPP.js");
2871
+ const { googleAdsPerformance } = await import("./google-marketing-OEW2YGUR.js");
2808
2872
  const usage = "canonry google-ads performance <project> [--window 7d|14d|30d] [--format json]";
2809
2873
  const project3 = requireProject(input, "google-ads.performance", usage);
2810
2874
  const window = performanceWindow(input, usage);
@@ -2819,7 +2883,7 @@ function createGoogleMarketingCliCommands(createClient) {
2819
2883
  usage: "canonry google-ads snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]",
2820
2884
  options: { limit: stringOption(), cursor: stringOption() },
2821
2885
  run: async (input) => {
2822
- const { googleAdsSnapshots } = await import("./google-marketing-HU5I3XPP.js");
2886
+ const { googleAdsSnapshots } = await import("./google-marketing-OEW2YGUR.js");
2823
2887
  const usage = "canonry google-ads snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
2824
2888
  await googleAdsSnapshots(createClient(), requireProject(input, "google-ads.snapshots", usage), {
2825
2889
  limit: snapshotLimit(input, "google-ads.snapshots", usage),
@@ -2832,7 +2896,7 @@ function createGoogleMarketingCliCommands(createClient) {
2832
2896
  path: ["google-ads", "snapshot"],
2833
2897
  usage: "canonry google-ads snapshot <project> <snapshot-id> [--format json]",
2834
2898
  run: async (input) => {
2835
- const { googleAdsSnapshot } = await import("./google-marketing-HU5I3XPP.js");
2899
+ const { googleAdsSnapshot } = await import("./google-marketing-OEW2YGUR.js");
2836
2900
  const usage = "canonry google-ads snapshot <project> <snapshot-id> [--format json]";
2837
2901
  const project3 = requireProject(input, "google-ads.snapshot", usage);
2838
2902
  await googleAdsSnapshot(createClient(), project3, requirePositional(input, 1, {
@@ -2846,7 +2910,7 @@ function createGoogleMarketingCliCommands(createClient) {
2846
2910
  path: ["gtm", "disconnect"],
2847
2911
  usage: "canonry gtm disconnect <project> [--format json]",
2848
2912
  run: async (input) => {
2849
- const { gtmDisconnect } = await import("./google-marketing-HU5I3XPP.js");
2913
+ const { gtmDisconnect } = await import("./google-marketing-OEW2YGUR.js");
2850
2914
  const usage = "canonry gtm disconnect <project> [--format json]";
2851
2915
  await gtmDisconnect(createClient(), requireProject(input, "gtm.disconnect", usage), { format: input.format });
2852
2916
  }
@@ -2855,7 +2919,7 @@ function createGoogleMarketingCliCommands(createClient) {
2855
2919
  path: ["gtm", "status"],
2856
2920
  usage: "canonry gtm status <project> [--format json]",
2857
2921
  run: async (input) => {
2858
- const { gtmStatus } = await import("./google-marketing-HU5I3XPP.js");
2922
+ const { gtmStatus } = await import("./google-marketing-OEW2YGUR.js");
2859
2923
  const usage = "canonry gtm status <project> [--format json]";
2860
2924
  await gtmStatus(createClient(), requireProject(input, "gtm.status", usage), { format: input.format });
2861
2925
  }
@@ -2864,7 +2928,7 @@ function createGoogleMarketingCliCommands(createClient) {
2864
2928
  path: ["gtm", "accounts"],
2865
2929
  usage: "canonry gtm accounts <project> [--format json|jsonl]",
2866
2930
  run: async (input) => {
2867
- const { gtmAccounts } = await import("./google-marketing-HU5I3XPP.js");
2931
+ const { gtmAccounts } = await import("./google-marketing-OEW2YGUR.js");
2868
2932
  const usage = "canonry gtm accounts <project> [--format json|jsonl]";
2869
2933
  await gtmAccounts(createClient(), requireProject(input, "gtm.accounts", usage), { format: input.format });
2870
2934
  }
@@ -2874,7 +2938,7 @@ function createGoogleMarketingCliCommands(createClient) {
2874
2938
  usage: "canonry gtm containers <project> --account <account-id> [--format json|jsonl]",
2875
2939
  options: { account: stringOption() },
2876
2940
  run: async (input) => {
2877
- const { gtmContainers } = await import("./google-marketing-HU5I3XPP.js");
2941
+ const { gtmContainers } = await import("./google-marketing-OEW2YGUR.js");
2878
2942
  const usage = "canonry gtm containers <project> --account <account-id> [--format json|jsonl]";
2879
2943
  const project3 = requireProject(input, "gtm.containers", usage);
2880
2944
  await gtmContainers(createClient(), project3, requireStringOption(input, "account", {
@@ -2889,7 +2953,7 @@ function createGoogleMarketingCliCommands(createClient) {
2889
2953
  usage: "canonry gtm workspaces <project> --account <account-id> --container <container-id> [--format json|jsonl]",
2890
2954
  options: { account: stringOption(), container: stringOption() },
2891
2955
  run: async (input) => {
2892
- const { gtmWorkspaces } = await import("./google-marketing-HU5I3XPP.js");
2956
+ const { gtmWorkspaces } = await import("./google-marketing-OEW2YGUR.js");
2893
2957
  const usage = "canonry gtm workspaces <project> --account <account-id> --container <container-id> [--format json|jsonl]";
2894
2958
  const project3 = requireProject(input, "gtm.workspaces", usage);
2895
2959
  const accountId = requireStringOption(input, "account", { command: "gtm.workspaces", usage, message: "--account is required" });
@@ -2902,7 +2966,7 @@ function createGoogleMarketingCliCommands(createClient) {
2902
2966
  usage: "canonry gtm select <project> --account <account-id> --container <container-id> [--workspace <workspace-id>] [--format json]",
2903
2967
  options: { account: stringOption(), container: stringOption(), workspace: stringOption() },
2904
2968
  run: async (input) => {
2905
- const { gtmSelect } = await import("./google-marketing-HU5I3XPP.js");
2969
+ const { gtmSelect } = await import("./google-marketing-OEW2YGUR.js");
2906
2970
  const usage = "canonry gtm select <project> --account <account-id> --container <container-id> [--workspace <workspace-id>] [--format json]";
2907
2971
  const project3 = requireProject(input, "gtm.select", usage);
2908
2972
  const accountId = requireStringOption(input, "account", { command: "gtm.select", usage, message: "--account is required" });
@@ -2919,7 +2983,7 @@ function createGoogleMarketingCliCommands(createClient) {
2919
2983
  path: ["gtm", "sync"],
2920
2984
  usage: "canonry gtm sync <project> [--format json]",
2921
2985
  run: async (input) => {
2922
- const { gtmSync } = await import("./google-marketing-HU5I3XPP.js");
2986
+ const { gtmSync } = await import("./google-marketing-OEW2YGUR.js");
2923
2987
  const usage = "canonry gtm sync <project> [--format json]";
2924
2988
  await gtmSync(createClient(), requireProject(input, "gtm.sync", usage), { format: input.format });
2925
2989
  }
@@ -2929,7 +2993,7 @@ function createGoogleMarketingCliCommands(createClient) {
2929
2993
  usage: "canonry gtm snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]",
2930
2994
  options: { limit: stringOption(), cursor: stringOption() },
2931
2995
  run: async (input) => {
2932
- const { gtmSnapshots } = await import("./google-marketing-HU5I3XPP.js");
2996
+ const { gtmSnapshots } = await import("./google-marketing-OEW2YGUR.js");
2933
2997
  const usage = "canonry gtm snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
2934
2998
  await gtmSnapshots(createClient(), requireProject(input, "gtm.snapshots", usage), {
2935
2999
  limit: snapshotLimit(input, "gtm.snapshots", usage),
@@ -2942,7 +3006,7 @@ function createGoogleMarketingCliCommands(createClient) {
2942
3006
  path: ["gtm", "snapshot"],
2943
3007
  usage: "canonry gtm snapshot <project> <snapshot-id> [--format json]",
2944
3008
  run: async (input) => {
2945
- const { gtmSnapshot } = await import("./google-marketing-HU5I3XPP.js");
3009
+ const { gtmSnapshot } = await import("./google-marketing-OEW2YGUR.js");
2946
3010
  const usage = "canonry gtm snapshot <project> <snapshot-id> [--format json]";
2947
3011
  const project3 = requireProject(input, "gtm.snapshot", usage);
2948
3012
  await gtmSnapshot(createClient(), project3, requirePositional(input, 1, {
@@ -2956,7 +3020,7 @@ function createGoogleMarketingCliCommands(createClient) {
2956
3020
  path: ["conversion-tracking", "contracts"],
2957
3021
  usage: "canonry conversion-tracking contracts <project> [--format json|jsonl]",
2958
3022
  run: async (input) => {
2959
- const { conversionTrackingContracts } = await import("./google-marketing-HU5I3XPP.js");
3023
+ const { conversionTrackingContracts } = await import("./google-marketing-OEW2YGUR.js");
2960
3024
  const usage = "canonry conversion-tracking contracts <project> [--format json|jsonl]";
2961
3025
  await conversionTrackingContracts(createClient(), requireProject(input, "conversion-tracking.contracts", usage), { format: input.format });
2962
3026
  }
@@ -2965,7 +3029,7 @@ function createGoogleMarketingCliCommands(createClient) {
2965
3029
  path: ["conversion-tracking", "contracts", "get"],
2966
3030
  usage: "canonry conversion-tracking contracts get <project> <contract-id> [--format json]",
2967
3031
  run: async (input) => {
2968
- const { conversionTrackingContract } = await import("./google-marketing-HU5I3XPP.js");
3032
+ const { conversionTrackingContract } = await import("./google-marketing-OEW2YGUR.js");
2969
3033
  const usage = "canonry conversion-tracking contracts get <project> <contract-id> [--format json]";
2970
3034
  const project3 = requireProject(input, "conversion-tracking.contracts.get", usage);
2971
3035
  await conversionTrackingContract(createClient(), project3, requirePositional(input, 1, {
@@ -2980,7 +3044,7 @@ function createGoogleMarketingCliCommands(createClient) {
2980
3044
  usage: "canonry conversion-tracking contracts create <project> --input <json-file|-> [--format json]",
2981
3045
  options: { input: stringOption() },
2982
3046
  run: async (input) => {
2983
- const { conversionTrackingCreate, readConversionTrackingContractInput } = await import("./google-marketing-HU5I3XPP.js");
3047
+ const { conversionTrackingCreate, readConversionTrackingContractInput } = await import("./google-marketing-OEW2YGUR.js");
2984
3048
  const usage = "canonry conversion-tracking contracts create <project> --input <json-file|-> [--format json]";
2985
3049
  await conversionTrackingCreate(createClient(), requireProject(input, "conversion-tracking.contracts.create", usage), readConversionTrackingContractInput(getString(input.values, "input")), { format: input.format });
2986
3050
  }
@@ -2990,7 +3054,7 @@ function createGoogleMarketingCliCommands(createClient) {
2990
3054
  usage: "canonry conversion-tracking contracts update <project> <contract-id> --input <json-file|-> [--format json]",
2991
3055
  options: { input: stringOption() },
2992
3056
  run: async (input) => {
2993
- const { conversionTrackingUpdate, readConversionTrackingContractInput } = await import("./google-marketing-HU5I3XPP.js");
3057
+ const { conversionTrackingUpdate, readConversionTrackingContractInput } = await import("./google-marketing-OEW2YGUR.js");
2994
3058
  const usage = "canonry conversion-tracking contracts update <project> <contract-id> --input <json-file|-> [--format json]";
2995
3059
  const project3 = requireProject(input, "conversion-tracking.contracts.update", usage);
2996
3060
  const contractId = requirePositional(input, 1, { command: "conversion-tracking.contracts.update", usage, message: "contract id is required" });
@@ -3001,7 +3065,7 @@ function createGoogleMarketingCliCommands(createClient) {
3001
3065
  path: ["conversion-tracking", "contracts", "delete"],
3002
3066
  usage: "canonry conversion-tracking contracts delete <project> <contract-id> [--format json]",
3003
3067
  run: async (input) => {
3004
- const { conversionTrackingDelete } = await import("./google-marketing-HU5I3XPP.js");
3068
+ const { conversionTrackingDelete } = await import("./google-marketing-OEW2YGUR.js");
3005
3069
  const usage = "canonry conversion-tracking contracts delete <project> <contract-id> [--format json]";
3006
3070
  const project3 = requireProject(input, "conversion-tracking.contracts.delete", usage);
3007
3071
  await conversionTrackingDelete(createClient(), project3, requirePositional(input, 1, {
@@ -3015,7 +3079,7 @@ function createGoogleMarketingCliCommands(createClient) {
3015
3079
  path: ["conversion-tracking", "contracts", "integrity"],
3016
3080
  usage: "canonry conversion-tracking contracts integrity <project> <contract-id> [--format json|jsonl]",
3017
3081
  run: async (input) => {
3018
- const { conversionTrackingIntegrity } = await import("./google-marketing-HU5I3XPP.js");
3082
+ const { conversionTrackingIntegrity } = await import("./google-marketing-OEW2YGUR.js");
3019
3083
  const usage = "canonry conversion-tracking contracts integrity <project> <contract-id> [--format json|jsonl]";
3020
3084
  const project3 = requireProject(input, "conversion-tracking.contracts.integrity", usage);
3021
3085
  await conversionTrackingIntegrity(createClient(), project3, requirePositional(input, 1, {
@@ -3141,7 +3205,7 @@ var TRAFFIC_CLI_COMMANDS = [
3141
3205
  help: "Complete stored traffic totals and breakdowns for the selected window. Project-wide for Simple and Advanced portfolios; no provider calls or sync.",
3142
3206
  options: { period: stringOption() },
3143
3207
  run: async (input) => {
3144
- const { trafficAnalytics } = await import("./traffic-PFHFGN44.js");
3208
+ const { trafficAnalytics } = await import("./traffic-3TBXSHPV.js");
3145
3209
  const project3 = requireProject(input, "traffic.analytics", "canonry traffic analytics <project> [--period 7|14|30|90]");
3146
3210
  await trafficAnalytics(project3, { period: getString(input.values, "window") ?? getString(input.values, "period"), format: input.format });
3147
3211
  }
@@ -3153,7 +3217,7 @@ var TRAFFIC_CLI_COMMANDS = [
3153
3217
  help: "DB-only diagnostic. Raw headlines stay unchanged. Candidate bursts are not confirmed automation; adjusted counts are estimates. Property, Target and market attribution are unavailable. The observed GA quotient has unknown comparable coverage.",
3154
3218
  options: { "start-date": stringOption(), "end-date": stringOption(), source: stringOption(), "burst-threshold": stringOption(), "ratio-threshold": stringOption(), limit: stringOption() },
3155
3219
  run: async (input) => {
3156
- const { trafficReferralAssessment } = await import("./traffic-PFHFGN44.js");
3220
+ const { trafficReferralAssessment } = await import("./traffic-3TBXSHPV.js");
3157
3221
  const project3 = requireProject(input, "traffic.referral-assessment", "canonry traffic referral-assessment <project> --start-date YYYY-MM-DD --end-date YYYY-MM-DD");
3158
3222
  await trafficReferralAssessment(project3, {
3159
3223
  startDate: getString(input.values, "start") ?? getString(input.values, "start-date"),
@@ -3186,7 +3250,7 @@ var TRAFFIC_CLI_COMMANDS = [
3186
3250
  "confirm-fail-open": { type: "boolean" }
3187
3251
  },
3188
3252
  run: async (input) => {
3189
- const { trafficConnectCloudflare, DEFAULT_CLOUDFLARE_QUEUE_RETENTION_SECONDS } = await import("./traffic-PFHFGN44.js");
3253
+ const { trafficConnectCloudflare, DEFAULT_CLOUDFLARE_QUEUE_RETENTION_SECONDS } = await import("./traffic-3TBXSHPV.js");
3190
3254
  const forwardPageViews = getBoolean(input.values, "forward-page-views");
3191
3255
  const noForwardPageViews = getBoolean(input.values, "no-forward-page-views");
3192
3256
  if (forwardPageViews && noForwardPageViews) {
@@ -3239,7 +3303,7 @@ var TRAFFIC_CLI_COMMANDS = [
3239
3303
  "display-name": stringOption()
3240
3304
  },
3241
3305
  run: async (input) => {
3242
- const { trafficConnectCloudRun } = await import("./traffic-PFHFGN44.js");
3306
+ const { trafficConnectCloudRun } = await import("./traffic-3TBXSHPV.js");
3243
3307
  const project3 = requireProject(
3244
3308
  input,
3245
3309
  "traffic.connect.cloud-run",
@@ -3270,7 +3334,7 @@ var TRAFFIC_CLI_COMMANDS = [
3270
3334
  "display-name": stringOption()
3271
3335
  },
3272
3336
  run: async (input) => {
3273
- const { trafficConnectWordpress } = await import("./traffic-PFHFGN44.js");
3337
+ const { trafficConnectWordpress } = await import("./traffic-3TBXSHPV.js");
3274
3338
  const project3 = requireProject(
3275
3339
  input,
3276
3340
  "traffic.connect.wordpress",
@@ -3302,7 +3366,7 @@ var TRAFFIC_CLI_COMMANDS = [
3302
3366
  "display-name": stringOption()
3303
3367
  },
3304
3368
  run: async (input) => {
3305
- const { trafficConnectVercel } = await import("./traffic-PFHFGN44.js");
3369
+ const { trafficConnectVercel } = await import("./traffic-3TBXSHPV.js");
3306
3370
  const project3 = requireProject(
3307
3371
  input,
3308
3372
  "traffic.connect.vercel",
@@ -3341,7 +3405,7 @@ var TRAFFIC_CLI_COMMANDS = [
3341
3405
  source: stringOption()
3342
3406
  },
3343
3407
  run: async (input) => {
3344
- const { trafficActivate } = await import("./traffic-PFHFGN44.js");
3408
+ const { trafficActivate } = await import("./traffic-3TBXSHPV.js");
3345
3409
  const project3 = requireProject(
3346
3410
  input,
3347
3411
  "traffic.activate",
@@ -3360,7 +3424,7 @@ var TRAFFIC_CLI_COMMANDS = [
3360
3424
  "since-minutes": stringOption()
3361
3425
  },
3362
3426
  run: async (input) => {
3363
- const { trafficSync } = await import("./traffic-PFHFGN44.js");
3427
+ const { trafficSync } = await import("./traffic-3TBXSHPV.js");
3364
3428
  const project3 = requireProject(
3365
3429
  input,
3366
3430
  "traffic.sync",
@@ -3389,7 +3453,7 @@ var TRAFFIC_CLI_COMMANDS = [
3389
3453
  wait: { type: "boolean" }
3390
3454
  },
3391
3455
  run: async (input) => {
3392
- const { trafficBackfill } = await import("./traffic-PFHFGN44.js");
3456
+ const { trafficBackfill } = await import("./traffic-3TBXSHPV.js");
3393
3457
  const project3 = requireProject(
3394
3458
  input,
3395
3459
  "traffic.backfill",
@@ -3418,7 +3482,7 @@ var TRAFFIC_CLI_COMMANDS = [
3418
3482
  "advance-to-now": { type: "boolean" }
3419
3483
  },
3420
3484
  run: async (input) => {
3421
- const { trafficReset } = await import("./traffic-PFHFGN44.js");
3485
+ const { trafficReset } = await import("./traffic-3TBXSHPV.js");
3422
3486
  const project3 = requireProject(
3423
3487
  input,
3424
3488
  "traffic.reset",
@@ -3440,7 +3504,7 @@ var TRAFFIC_CLI_COMMANDS = [
3440
3504
  source: stringOption()
3441
3505
  },
3442
3506
  run: async (input) => {
3443
- const { trafficDeclareGap } = await import("./traffic-PFHFGN44.js");
3507
+ const { trafficDeclareGap } = await import("./traffic-3TBXSHPV.js");
3444
3508
  const project3 = requireProject(
3445
3509
  input,
3446
3510
  "traffic.declare-gap",
@@ -3455,7 +3519,7 @@ var TRAFFIC_CLI_COMMANDS = [
3455
3519
  path: ["traffic", "sources"],
3456
3520
  usage: "canonry traffic sources <project> [--format json]",
3457
3521
  run: async (input) => {
3458
- const { trafficSources } = await import("./traffic-PFHFGN44.js");
3522
+ const { trafficSources } = await import("./traffic-3TBXSHPV.js");
3459
3523
  const project3 = requireProject(
3460
3524
  input,
3461
3525
  "traffic.sources",
@@ -3468,7 +3532,7 @@ var TRAFFIC_CLI_COMMANDS = [
3468
3532
  path: ["traffic", "status"],
3469
3533
  usage: "canonry traffic status <project> [--format json]",
3470
3534
  run: async (input) => {
3471
- const { trafficStatus } = await import("./traffic-PFHFGN44.js");
3535
+ const { trafficStatus } = await import("./traffic-3TBXSHPV.js");
3472
3536
  const project3 = requireProject(
3473
3537
  input,
3474
3538
  "traffic.status",
@@ -3483,7 +3547,7 @@ var TRAFFIC_CLI_COMMANDS = [
3483
3547
  help: "Stored sampled tail with 30-day retention, not visits. Unknown traffic is excluded by default. No provider calls.",
3484
3548
  options: { kind: stringOption(), source: stringOption(), since: stringOption(), until: stringOption(), "since-minutes": stringOption(), path: stringOption(), limit: stringOption(), offset: stringOption() },
3485
3549
  run: async (input) => {
3486
- const { trafficSamples } = await import("./traffic-PFHFGN44.js");
3550
+ const { trafficSamples } = await import("./traffic-3TBXSHPV.js");
3487
3551
  const project3 = requireProject(input, "traffic.samples", "canonry traffic samples <project>");
3488
3552
  const integer = (name) => parseIntegerOption(input, name, { command: "traffic.samples", usage: "canonry traffic samples <project>", message: `--${name} must be an integer` });
3489
3553
  await trafficSamples(project3, { kind: getString(input.values, "kind"), sourceId: getString(input.values, "source"), since: getString(input.values, "since"), until: getString(input.values, "until"), sinceMinutes: integer("since-minutes"), path: getString(input.values, "path"), limit: integer("limit"), offset: integer("offset"), format: input.format });
@@ -3502,7 +3566,7 @@ var TRAFFIC_CLI_COMMANDS = [
3502
3566
  granularity: stringOption()
3503
3567
  },
3504
3568
  run: async (input) => {
3505
- const { trafficEvents } = await import("./traffic-PFHFGN44.js");
3569
+ const { trafficEvents } = await import("./traffic-3TBXSHPV.js");
3506
3570
  const project3 = requireProject(
3507
3571
  input,
3508
3572
  "traffic.events",
@@ -3565,7 +3629,7 @@ var JOURNEYS_CLI_COMMANDS = [
3565
3629
  help: "Stored AI visitor journeys: visitors whose first AI visit fell in the window and how many came back. No provider calls.",
3566
3630
  options: { since: stringOption(), until: stringOption() },
3567
3631
  run: async (input) => {
3568
- const { journeysSummary } = await import("./journeys-W6F4BCXF.js");
3632
+ const { journeysSummary } = await import("./journeys-TWVQNRLT.js");
3569
3633
  const project3 = requireProject(input, "journeys.summary", SUMMARY_USAGE);
3570
3634
  await journeysSummary(project3, { since: getString(input.values, "since"), until: getString(input.values, "until"), format: input.format });
3571
3635
  }
@@ -3576,7 +3640,7 @@ var JOURNEYS_CLI_COMMANDS = [
3576
3640
  help: "Stored AI visitors, newest first AI visit first, with their visits. No provider calls.",
3577
3641
  options: { since: stringOption(), until: stringOption(), engine: stringOption(), returned: stringOption(), limit: stringOption(), offset: stringOption() },
3578
3642
  run: async (input) => {
3579
- const { journeysList } = await import("./journeys-W6F4BCXF.js");
3643
+ const { journeysList } = await import("./journeys-TWVQNRLT.js");
3580
3644
  const project3 = requireProject(input, "journeys.list", LIST_USAGE);
3581
3645
  const integer = (name) => parseIntegerOption(input, name, { command: "journeys.list", usage: LIST_USAGE, message: `--${name} must be an integer` });
3582
3646
  await journeysList(project3, {
@@ -3596,7 +3660,7 @@ var JOURNEYS_CLI_COMMANDS = [
3596
3660
  help: "Stored visits and requests for one AI visitor, a page at a time. No provider calls.",
3597
3661
  options: { limit: stringOption(), offset: stringOption() },
3598
3662
  run: async (input) => {
3599
- const { journeyShow } = await import("./journeys-W6F4BCXF.js");
3663
+ const { journeyShow } = await import("./journeys-TWVQNRLT.js");
3600
3664
  const project3 = requireProject(input, "journeys.show", SHOW_USAGE);
3601
3665
  const visitorKey = requirePositional(input, 1, { command: "journeys.show", usage: SHOW_USAGE, message: "visitor key is required" });
3602
3666
  const integer = (name) => parseIntegerOption(input, name, { command: "journeys.show", usage: SHOW_USAGE, message: `--${name} must be an integer` });
@@ -3647,7 +3711,7 @@ var COMPETITOR_CLI_COMMANDS = [
3647
3711
  supportsDryRun: true,
3648
3712
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3649
3713
  run: async (input) => {
3650
- const { addCompetitors } = await import("./competitor-WJDN3DLP.js");
3714
+ const { addCompetitors } = await import("./competitor-NSUSTLNW.js");
3651
3715
  const project3 = requireProject(input, "competitor.add", ADD_USAGE);
3652
3716
  const domains = input.positionals.slice(1);
3653
3717
  if (domains.length === 0) {
@@ -3676,7 +3740,7 @@ Usage: ${ADD_USAGE}`, {
3676
3740
  usage: IMPORT_USAGE,
3677
3741
  options: { "acknowledge-bulk-add": { type: "boolean" }, ...WAIT_OPTIONS },
3678
3742
  run: async (input) => {
3679
- const { importCompetitors } = await import("./competitor-WJDN3DLP.js");
3743
+ const { importCompetitors } = await import("./competitor-NSUSTLNW.js");
3680
3744
  const project3 = requireProject(input, "competitor.import", IMPORT_USAGE);
3681
3745
  const file = requirePositional(input, 1, { command: "competitor.import", usage: IMPORT_USAGE, message: "input file is required" });
3682
3746
  await importCompetitors(project3, file, input.format, { acknowledgeBulkAdd: getBoolean(input.values, "acknowledge-bulk-add"), wait: getBoolean(input.values, "wait"), waitTimeout: getString(input.values, "wait-timeout") });
@@ -3694,7 +3758,7 @@ Usage: ${ADD_USAGE}`, {
3694
3758
  supportsDryRun: true,
3695
3759
  accessFor: ({ values }) => getBoolean(values, "apply") ? OperationAccesses.write : OperationAccesses.stored,
3696
3760
  run: async (input) => {
3697
- const { detectCompetitorAutoAliases } = await import("./competitor-WJDN3DLP.js");
3761
+ const { detectCompetitorAutoAliases } = await import("./competitor-NSUSTLNW.js");
3698
3762
  const project3 = requireProject(input, "competitor.aliases.detect", DETECT_USAGE);
3699
3763
  await detectCompetitorAutoAliases(project3, { apply: getBoolean(input.values, "apply"), ...input.dryRun ? { dryRun: true } : {}, format: input.format });
3700
3764
  }
@@ -3717,7 +3781,7 @@ Usage: ${ADD_USAGE}`, {
3717
3781
  return mutating && !dryRun ? OperationAccesses.write : OperationAccesses.stored;
3718
3782
  },
3719
3783
  run: async (input) => {
3720
- const { competitorAliases } = await import("./competitor-WJDN3DLP.js");
3784
+ const { competitorAliases } = await import("./competitor-NSUSTLNW.js");
3721
3785
  const project3 = requireProject(input, "competitor.aliases", ALIASES_USAGE);
3722
3786
  const domain = requirePositional(input, 1, {
3723
3787
  command: "competitor.aliases",
@@ -3754,7 +3818,7 @@ Usage: ${ALIASES_USAGE}`, {
3754
3818
  usage: "canonry competitor remove <project> <domain...> [--dry-run] [--format json]",
3755
3819
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3756
3820
  run: async (input) => {
3757
- const { removeCompetitors } = await import("./competitor-WJDN3DLP.js");
3821
+ const { removeCompetitors } = await import("./competitor-NSUSTLNW.js");
3758
3822
  const project3 = requireProject(input, "competitor.remove", "canonry competitor remove <project> <domain...> [--dry-run] [--format json]");
3759
3823
  const domains = input.positionals.slice(1);
3760
3824
  if (domains.length === 0) {
@@ -3775,7 +3839,7 @@ Usage: ${ALIASES_USAGE}`, {
3775
3839
  usage: "canonry competitor delete <project> <domain...> [--dry-run] [--format json]",
3776
3840
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3777
3841
  run: async (input) => {
3778
- const { removeCompetitors } = await import("./competitor-WJDN3DLP.js");
3842
+ const { removeCompetitors } = await import("./competitor-NSUSTLNW.js");
3779
3843
  const project3 = requireProject(input, "competitor.delete", "canonry competitor delete <project> <domain...> [--dry-run] [--format json]");
3780
3844
  const domains = input.positionals.slice(1);
3781
3845
  if (domains.length === 0) {
@@ -3794,7 +3858,7 @@ Usage: ${ALIASES_USAGE}`, {
3794
3858
  path: ["competitor", "list"],
3795
3859
  usage: "canonry competitor list <project> [--format json]",
3796
3860
  run: async (input) => {
3797
- const { listCompetitors } = await import("./competitor-WJDN3DLP.js");
3861
+ const { listCompetitors } = await import("./competitor-NSUSTLNW.js");
3798
3862
  const project3 = requireProject(input, "competitor.list", "canonry competitor list <project>");
3799
3863
  await listCompetitors(project3, input.format);
3800
3864
  }
@@ -3816,7 +3880,7 @@ Usage: ${ALIASES_USAGE}`, {
3816
3880
  answers: stringOption()
3817
3881
  },
3818
3882
  run: async (input) => {
3819
- const { showCompetitorLandscape } = await import("./competitor-WJDN3DLP.js");
3883
+ const { showCompetitorLandscape } = await import("./competitor-NSUSTLNW.js");
3820
3884
  const project3 = requireProject(input, "competitor.landscape", LANDSCAPE_USAGE);
3821
3885
  const scope = parseLandscapeScope(getString(input.values, "scope"));
3822
3886
  const groupKey = getString(input.values, "group-key");
@@ -3863,7 +3927,7 @@ Usage: ${ALIASES_USAGE}`, {
3863
3927
  limit: stringOption()
3864
3928
  },
3865
3929
  run: async (input) => {
3866
- const { suggestCompetitors } = await import("./competitor-WJDN3DLP.js");
3930
+ const { suggestCompetitors } = await import("./competitor-NSUSTLNW.js");
3867
3931
  const project3 = requireProject(input, "competitor.suggest", SUGGEST_USAGE);
3868
3932
  const minAnswers = parseIntegerOption(input, "min-answers", {
3869
3933
  command: "competitor.suggest",
@@ -3914,7 +3978,7 @@ var GOOGLE_CLI_COMMANDS = [
3914
3978
  "public-url": stringOption()
3915
3979
  },
3916
3980
  run: async (input) => {
3917
- const { googleConnect } = await import("./google-CAQDCFA6.js");
3981
+ const { googleConnect } = await import("./google-O6VQFK4L.js");
3918
3982
  const project3 = requireProject(input, "google.connect", "canonry google connect <project> [--type gsc|ga4] [--public-url <url>] [--format json]");
3919
3983
  await googleConnect(project3, {
3920
3984
  type: getString(input.values, "type") ?? "gsc",
@@ -3930,7 +3994,7 @@ var GOOGLE_CLI_COMMANDS = [
3930
3994
  type: stringOption()
3931
3995
  },
3932
3996
  run: async (input) => {
3933
- const { googleDisconnect } = await import("./google-CAQDCFA6.js");
3997
+ const { googleDisconnect } = await import("./google-O6VQFK4L.js");
3934
3998
  const project3 = requireProject(input, "google.disconnect", "canonry google disconnect <project> [--type gsc|ga4] [--format json]");
3935
3999
  await googleDisconnect(project3, {
3936
4000
  type: getString(input.values, "type") ?? "gsc",
@@ -3942,7 +4006,7 @@ var GOOGLE_CLI_COMMANDS = [
3942
4006
  path: ["google", "status"],
3943
4007
  usage: "canonry google status <project> [--format json]",
3944
4008
  run: async (input) => {
3945
- const { googleStatus } = await import("./google-CAQDCFA6.js");
4009
+ const { googleStatus } = await import("./google-O6VQFK4L.js");
3946
4010
  const project3 = requireProject(input, "google.status", "canonry google status <project> [--format json]");
3947
4011
  await googleStatus(project3, input.format);
3948
4012
  }
@@ -3951,7 +4015,7 @@ var GOOGLE_CLI_COMMANDS = [
3951
4015
  path: ["google", "properties"],
3952
4016
  usage: "canonry google properties <project> [--format json]",
3953
4017
  run: async (input) => {
3954
- const { googleProperties } = await import("./google-CAQDCFA6.js");
4018
+ const { googleProperties } = await import("./google-O6VQFK4L.js");
3955
4019
  const project3 = requireProject(input, "google.properties", "canonry google properties <project> [--format json]");
3956
4020
  await googleProperties(project3, input.format);
3957
4021
  }
@@ -3960,7 +4024,7 @@ var GOOGLE_CLI_COMMANDS = [
3960
4024
  path: ["google", "set-property"],
3961
4025
  usage: "canonry google set-property <project> <url> [--format json]",
3962
4026
  run: async (input) => {
3963
- const { googleSetProperty } = await import("./google-CAQDCFA6.js");
4027
+ const { googleSetProperty } = await import("./google-O6VQFK4L.js");
3964
4028
  const project3 = requireProject(input, "google.set-property", "canonry google set-property <project> <url> [--format json]");
3965
4029
  const propertyUrl = requirePositional(input, 1, {
3966
4030
  command: "google.set-property",
@@ -3974,7 +4038,7 @@ var GOOGLE_CLI_COMMANDS = [
3974
4038
  path: ["google", "set-sitemap"],
3975
4039
  usage: "canonry google set-sitemap <project> <url> [--format json]",
3976
4040
  run: async (input) => {
3977
- const { googleSetSitemap } = await import("./google-CAQDCFA6.js");
4041
+ const { googleSetSitemap } = await import("./google-O6VQFK4L.js");
3978
4042
  const project3 = requireProject(input, "google.set-sitemap", "canonry google set-sitemap <project> <url> [--format json]");
3979
4043
  const sitemapUrl = requirePositional(input, 1, {
3980
4044
  command: "google.set-sitemap",
@@ -3988,7 +4052,7 @@ var GOOGLE_CLI_COMMANDS = [
3988
4052
  path: ["google", "list-sitemaps"],
3989
4053
  usage: "canonry google list-sitemaps <project> [--format json]",
3990
4054
  run: async (input) => {
3991
- const { googleListSitemaps } = await import("./google-CAQDCFA6.js");
4055
+ const { googleListSitemaps } = await import("./google-O6VQFK4L.js");
3992
4056
  const project3 = requireProject(input, "google.list-sitemaps", "canonry google list-sitemaps <project> [--format json]");
3993
4057
  await googleListSitemaps(project3, { format: input.format });
3994
4058
  }
@@ -4002,7 +4066,7 @@ var GOOGLE_CLI_COMMANDS = [
4002
4066
  "all-files": { type: "boolean", default: false }
4003
4067
  },
4004
4068
  run: async (input) => {
4005
- const { googleSubmitSitemaps } = await import("./google-CAQDCFA6.js");
4069
+ const { googleSubmitSitemaps } = await import("./google-O6VQFK4L.js");
4006
4070
  const project3 = requireProject(input, "google.submit-sitemap", "canonry google submit-sitemap <project> [url...] [--configured|--all|--all-files] [--format json|jsonl]");
4007
4071
  const sitemapUrls = input.positionals.slice(1);
4008
4072
  const configured = getBoolean(input.values, "configured");
@@ -4036,7 +4100,7 @@ var GOOGLE_CLI_COMMANDS = [
4036
4100
  wait: { type: "boolean", default: false }
4037
4101
  },
4038
4102
  run: async (input) => {
4039
- const { googleSync } = await import("./google-CAQDCFA6.js");
4103
+ const { googleSync } = await import("./google-O6VQFK4L.js");
4040
4104
  const project3 = requireProject(input, "google.sync", "canonry google sync <project> [--type gsc|ga4] [--days <n>] [--full] [--wait] [--format json]");
4041
4105
  await googleSync(project3, {
4042
4106
  type: getString(input.values, "type") ?? "gsc",
@@ -4066,7 +4130,7 @@ var GOOGLE_CLI_COMMANDS = [
4066
4130
  "order-by": stringOption()
4067
4131
  },
4068
4132
  run: async (input) => {
4069
- const { googlePerformance } = await import("./google-CAQDCFA6.js");
4133
+ const { googlePerformance } = await import("./google-O6VQFK4L.js");
4070
4134
  const project3 = requireProject(input, "google.performance", GOOGLE_PERFORMANCE_USAGE);
4071
4135
  const startDate = getString(input.values, "start");
4072
4136
  const endDate = getString(input.values, "end");
@@ -4117,7 +4181,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4117
4181
  end: stringOption()
4118
4182
  },
4119
4183
  run: async (input) => {
4120
- const { googlePerformanceDaily } = await import("./google-CAQDCFA6.js");
4184
+ const { googlePerformanceDaily } = await import("./google-O6VQFK4L.js");
4121
4185
  const project3 = requireProject(input, "google.performance-daily", "canonry google performance-daily <project> [--window 7d|30d|90d|all] [--start <YYYY-MM-DD>] [--end <YYYY-MM-DD>] [--format json]");
4122
4186
  await googlePerformanceDaily(project3, {
4123
4187
  window: getString(input.values, "window"),
@@ -4138,7 +4202,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4138
4202
  limit: stringOption()
4139
4203
  },
4140
4204
  run: async (input) => {
4141
- const { googleTopPages } = await import("./google-CAQDCFA6.js");
4205
+ const { googleTopPages } = await import("./google-O6VQFK4L.js");
4142
4206
  const usage = "canonry google top-pages <project> [--window 7d|30d|90d|all] [--start <YYYY-MM-DD>] [--end <YYYY-MM-DD>] [--limit <n>] [--format json]";
4143
4207
  const project3 = requireProject(input, "google.top-pages", usage);
4144
4208
  await googleTopPages(project3, {
@@ -4166,7 +4230,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4166
4230
  offset: stringOption()
4167
4231
  },
4168
4232
  run: async (input) => {
4169
- const { googleQueryTotals } = await import("./google-CAQDCFA6.js");
4233
+ const { googleQueryTotals } = await import("./google-O6VQFK4L.js");
4170
4234
  const project3 = requireProject(input, "google.query-totals", GOOGLE_QUERY_TOTALS_USAGE);
4171
4235
  await googleQueryTotals(project3, {
4172
4236
  window: getString(input.values, "window"),
@@ -4190,7 +4254,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4190
4254
  path: ["google", "inspect"],
4191
4255
  usage: "canonry google inspect <project> <url> [--format json]",
4192
4256
  run: async (input) => {
4193
- const { googleInspect } = await import("./google-CAQDCFA6.js");
4257
+ const { googleInspect } = await import("./google-O6VQFK4L.js");
4194
4258
  const project3 = requireProject(input, "google.inspect", "canonry google inspect <project> <url> [--format json]");
4195
4259
  const url = requirePositional(input, 1, {
4196
4260
  command: "google.inspect",
@@ -4207,7 +4271,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4207
4271
  url: stringOption()
4208
4272
  },
4209
4273
  run: async (input) => {
4210
- const { googleInspections } = await import("./google-CAQDCFA6.js");
4274
+ const { googleInspections } = await import("./google-O6VQFK4L.js");
4211
4275
  const project3 = requireProject(input, "google.inspections", "canonry google inspections <project> [--url <url>] [--format json]");
4212
4276
  await googleInspections(project3, {
4213
4277
  url: getString(input.values, "url"),
@@ -4223,7 +4287,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4223
4287
  wait: { type: "boolean", default: false }
4224
4288
  },
4225
4289
  run: async (input) => {
4226
- const { googleInspectSitemap } = await import("./google-CAQDCFA6.js");
4290
+ const { googleInspectSitemap } = await import("./google-O6VQFK4L.js");
4227
4291
  const project3 = requireProject(input, "google.inspect-sitemap", "canonry google inspect-sitemap <project> [--sitemap-url <url>] [--wait] [--format json]");
4228
4292
  await googleInspectSitemap(project3, {
4229
4293
  sitemapUrl: getString(input.values, "sitemap-url"),
@@ -4236,7 +4300,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4236
4300
  path: ["google", "coverage"],
4237
4301
  usage: "canonry google coverage <project> [--format json]",
4238
4302
  run: async (input) => {
4239
- const { googleCoverage } = await import("./google-CAQDCFA6.js");
4303
+ const { googleCoverage } = await import("./google-O6VQFK4L.js");
4240
4304
  const project3 = requireProject(input, "google.coverage", "canonry google coverage <project> [--format json]");
4241
4305
  await googleCoverage(project3, input.format);
4242
4306
  }
@@ -4248,7 +4312,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4248
4312
  limit: stringOption()
4249
4313
  },
4250
4314
  run: async (input) => {
4251
- const { googleCoverageHistory } = await import("./google-CAQDCFA6.js");
4315
+ const { googleCoverageHistory } = await import("./google-O6VQFK4L.js");
4252
4316
  const project3 = requireProject(input, "google.coverage-history", "canonry google coverage-history <project> [--limit <n>] [--format json]");
4253
4317
  await googleCoverageHistory(project3, {
4254
4318
  limit: parseIntegerOption(input, "limit", {
@@ -4264,7 +4328,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4264
4328
  path: ["google", "deindexed"],
4265
4329
  usage: "canonry google deindexed <project> [--format json]",
4266
4330
  run: async (input) => {
4267
- const { googleDeindexed } = await import("./google-CAQDCFA6.js");
4331
+ const { googleDeindexed } = await import("./google-O6VQFK4L.js");
4268
4332
  const project3 = requireProject(input, "google.deindexed", "canonry google deindexed <project> [--format json]");
4269
4333
  await googleDeindexed(project3, input.format);
4270
4334
  }
@@ -4276,7 +4340,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4276
4340
  wait: { type: "boolean", default: false }
4277
4341
  },
4278
4342
  run: async (input) => {
4279
- const { googleDiscoverSitemaps } = await import("./google-CAQDCFA6.js");
4343
+ const { googleDiscoverSitemaps } = await import("./google-O6VQFK4L.js");
4280
4344
  const project3 = requireProject(input, "google.discover-sitemaps", "canonry google discover-sitemaps <project> [--wait] [--format json]");
4281
4345
  await googleDiscoverSitemaps(project3, {
4282
4346
  wait: getBoolean(input.values, "wait"),
@@ -4292,7 +4356,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4292
4356
  wait: { type: "boolean", default: false }
4293
4357
  },
4294
4358
  run: async (input) => {
4295
- const { googleRequestIndexing } = await import("./google-CAQDCFA6.js");
4359
+ const { googleRequestIndexing } = await import("./google-O6VQFK4L.js");
4296
4360
  const project3 = requireProject(input, "google.request-indexing", "canonry google request-indexing <project> [url] [--all-unindexed] [--wait] [--format json]");
4297
4361
  const url = input.positionals[1];
4298
4362
  const allUnindexed = getBoolean(input.values, "all-unindexed");
@@ -4317,7 +4381,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4317
4381
  path: ["google", "refresh"],
4318
4382
  usage: "canonry google refresh <project> [--format json]",
4319
4383
  run: async (input) => {
4320
- const { googleRefresh } = await import("./google-CAQDCFA6.js");
4384
+ const { googleRefresh } = await import("./google-O6VQFK4L.js");
4321
4385
  const project3 = requireProject(input, "google.refresh", "canonry google refresh <project> [--format json]");
4322
4386
  await googleRefresh(project3, input.format);
4323
4387
  }
@@ -4341,7 +4405,7 @@ var KEYS_CLI_COMMANDS = [
4341
4405
  path: ["key", "list"],
4342
4406
  usage: "canonry key list [--format json|jsonl]",
4343
4407
  run: async (input) => {
4344
- const { listApiKeys } = await import("./keys-ME7VRF73.js");
4408
+ const { listApiKeys } = await import("./keys-C6FPREBZ.js");
4345
4409
  await listApiKeys(input.format);
4346
4410
  }
4347
4411
  },
@@ -4355,7 +4419,7 @@ var KEYS_CLI_COMMANDS = [
4355
4419
  project: stringOption()
4356
4420
  },
4357
4421
  run: async (input) => {
4358
- const { createApiKey } = await import("./keys-ME7VRF73.js");
4422
+ const { createApiKey } = await import("./keys-C6FPREBZ.js");
4359
4423
  const name = requireStringOption(input, "name", {
4360
4424
  command: "key.create",
4361
4425
  usage: "canonry key create --name <name> [--read-only | --scope <s> ...] [--project <name>] [--format json]",
@@ -4376,7 +4440,7 @@ var KEYS_CLI_COMMANDS = [
4376
4440
  path: ["key", "whoami"],
4377
4441
  usage: "canonry key whoami [--format json]",
4378
4442
  run: async (input) => {
4379
- const { showApiKeySelf } = await import("./keys-ME7VRF73.js");
4443
+ const { showApiKeySelf } = await import("./keys-C6FPREBZ.js");
4380
4444
  await showApiKeySelf(input.format);
4381
4445
  }
4382
4446
  },
@@ -4384,7 +4448,7 @@ var KEYS_CLI_COMMANDS = [
4384
4448
  path: ["key", "revoke"],
4385
4449
  usage: "canonry key revoke <id> [--format json]",
4386
4450
  run: async (input) => {
4387
- const { revokeApiKey } = await import("./keys-ME7VRF73.js");
4451
+ const { revokeApiKey } = await import("./keys-C6FPREBZ.js");
4388
4452
  const id2 = requirePositional(input, 0, {
4389
4453
  command: "key.revoke",
4390
4454
  usage: "canonry key revoke <id> [--format json]",
@@ -4413,7 +4477,7 @@ var USERS_CLI_COMMANDS = [
4413
4477
  path: ["user", "list"],
4414
4478
  usage: "canonry user list [--format json|jsonl]",
4415
4479
  run: async (input) => {
4416
- const { listUsers } = await import("./users-BSLUSU6W.js");
4480
+ const { listUsers } = await import("./users-2HDDA5GT.js");
4417
4481
  await listUsers(input.format);
4418
4482
  }
4419
4483
  },
@@ -4428,7 +4492,7 @@ var USERS_CLI_COMMANDS = [
4428
4492
  "password-stdin": { type: "boolean" }
4429
4493
  },
4430
4494
  run: async (input) => {
4431
- const { createUser } = await import("./users-BSLUSU6W.js");
4495
+ const { createUser } = await import("./users-2HDDA5GT.js");
4432
4496
  const name = requireStringOption(input, "name", {
4433
4497
  command: "user.create",
4434
4498
  usage: CREATE_USAGE,
@@ -4451,7 +4515,7 @@ var USERS_CLI_COMMANDS = [
4451
4515
  path: ["user", "delete"],
4452
4516
  usage: "canonry user delete <name> [--format json]",
4453
4517
  run: async (input) => {
4454
- const { deleteUser } = await import("./users-BSLUSU6W.js");
4518
+ const { deleteUser } = await import("./users-2HDDA5GT.js");
4455
4519
  const name = requirePositional(input, 0, {
4456
4520
  command: "user.delete",
4457
4521
  usage: "canonry user delete <name> [--format json]",
@@ -4479,7 +4543,7 @@ var KEYWORD_CLI_COMMANDS = [
4479
4543
  path: ["keyword", "add"],
4480
4544
  usage: "canonry keyword add <project> <kw...> [--format json]",
4481
4545
  run: async (input) => {
4482
- const { addKeywords } = await import("./keyword-R3PLGSO5.js");
4546
+ const { addKeywords } = await import("./keyword-PBSE65DK.js");
4483
4547
  const project3 = requireProject(input, "keyword.add", "canonry keyword add <project> <kw...> [--format json]");
4484
4548
  const keywords = input.positionals.slice(1);
4485
4549
  if (keywords.length === 0) {
@@ -4498,7 +4562,7 @@ var KEYWORD_CLI_COMMANDS = [
4498
4562
  path: ["keyword", "replace"],
4499
4563
  usage: "canonry keyword replace <project> <kw...> [--format json]",
4500
4564
  run: async (input) => {
4501
- const { replaceKeywords } = await import("./keyword-R3PLGSO5.js");
4565
+ const { replaceKeywords } = await import("./keyword-PBSE65DK.js");
4502
4566
  const project3 = requireProject(input, "keyword.replace", "canonry keyword replace <project> <kw...> [--format json]");
4503
4567
  const keywords = input.positionals.slice(1);
4504
4568
  if (keywords.length === 0) {
@@ -4517,7 +4581,7 @@ var KEYWORD_CLI_COMMANDS = [
4517
4581
  path: ["keyword", "remove"],
4518
4582
  usage: "canonry keyword remove <project> <kw...> [--format json]",
4519
4583
  run: async (input) => {
4520
- const { removeKeywords } = await import("./keyword-R3PLGSO5.js");
4584
+ const { removeKeywords } = await import("./keyword-PBSE65DK.js");
4521
4585
  const project3 = requireProject(input, "keyword.remove", "canonry keyword remove <project> <kw...> [--format json]");
4522
4586
  const keywords = input.positionals.slice(1);
4523
4587
  if (keywords.length === 0) {
@@ -4536,7 +4600,7 @@ var KEYWORD_CLI_COMMANDS = [
4536
4600
  path: ["keyword", "delete"],
4537
4601
  usage: "canonry keyword delete <project> <kw...> [--format json]",
4538
4602
  run: async (input) => {
4539
- const { removeKeywords } = await import("./keyword-R3PLGSO5.js");
4603
+ const { removeKeywords } = await import("./keyword-PBSE65DK.js");
4540
4604
  const project3 = requireProject(input, "keyword.delete", "canonry keyword delete <project> <kw...> [--format json]");
4541
4605
  const keywords = input.positionals.slice(1);
4542
4606
  if (keywords.length === 0) {
@@ -4555,7 +4619,7 @@ var KEYWORD_CLI_COMMANDS = [
4555
4619
  path: ["keyword", "list"],
4556
4620
  usage: "canonry keyword list <project> [--format json]",
4557
4621
  run: async (input) => {
4558
- const { listKeywords } = await import("./keyword-R3PLGSO5.js");
4622
+ const { listKeywords } = await import("./keyword-PBSE65DK.js");
4559
4623
  const project3 = requireProject(input, "keyword.list", "canonry keyword list <project> [--format json]");
4560
4624
  await listKeywords(project3, input.format);
4561
4625
  }
@@ -4564,7 +4628,7 @@ var KEYWORD_CLI_COMMANDS = [
4564
4628
  path: ["keyword", "import"],
4565
4629
  usage: "canonry keyword import <project> <file> [--format json]",
4566
4630
  run: async (input) => {
4567
- const { importKeywords } = await import("./keyword-R3PLGSO5.js");
4631
+ const { importKeywords } = await import("./keyword-PBSE65DK.js");
4568
4632
  const project3 = requireProject(input, "keyword.import", "canonry keyword import <project> <file> [--format json]");
4569
4633
  const filePath = requirePositional(input, 1, {
4570
4634
  command: "keyword.import",
@@ -4583,7 +4647,7 @@ var KEYWORD_CLI_COMMANDS = [
4583
4647
  save: { type: "boolean", default: false }
4584
4648
  },
4585
4649
  run: async (input) => {
4586
- const { generateKeywords } = await import("./keyword-R3PLGSO5.js");
4650
+ const { generateKeywords } = await import("./keyword-PBSE65DK.js");
4587
4651
  const project3 = requireProject(
4588
4652
  input,
4589
4653
  "keyword.generate",
@@ -4624,7 +4688,7 @@ var QUERY_CLI_COMMANDS = [
4624
4688
  path: ["query", action],
4625
4689
  usage: `canonry query ${action} <project>${action === "workspace" ? "" : " <json|->"} [--format json]`,
4626
4690
  run: async (input) => {
4627
- const { runAdvancedMeasurementOperation: runAdvancedMeasurementOperation2 } = await import("./measurement-plan-R4KZHJII.js");
4691
+ const { runAdvancedMeasurementOperation: runAdvancedMeasurementOperation2 } = await import("./measurement-plan-HKW3IVIE.js");
4628
4692
  const usage = `canonry query ${action} <project>${action === "workspace" ? "" : " <json|->"} [--format json]`;
4629
4693
  const project3 = requireProject(input, `query.${action}`, usage);
4630
4694
  const source = action === "workspace" ? void 0 : requirePositional(input, 1, {
@@ -4639,7 +4703,7 @@ var QUERY_CLI_COMMANDS = [
4639
4703
  path: ["query", "add"],
4640
4704
  usage: "canonry query add <project> <query...> [--format json]",
4641
4705
  run: async (input) => {
4642
- const { addQueries } = await import("./query-ZWAIWIYB.js");
4706
+ const { addQueries } = await import("./query-UQHJVYUJ.js");
4643
4707
  const project3 = requireProject(input, "query.add", "canonry query add <project> <query...> [--format json]");
4644
4708
  const queries = input.positionals.slice(1);
4645
4709
  if (queries.length === 0) {
@@ -4659,7 +4723,7 @@ var QUERY_CLI_COMMANDS = [
4659
4723
  usage: "canonry query replace <project> <query...> [--dry-run] [--format json]",
4660
4724
  supportsDryRun: true,
4661
4725
  run: async (input) => {
4662
- const { replaceQueries } = await import("./query-ZWAIWIYB.js");
4726
+ const { replaceQueries } = await import("./query-UQHJVYUJ.js");
4663
4727
  const project3 = requireProject(input, "query.replace", "canonry query replace <project> <query...> [--dry-run] [--format json]");
4664
4728
  const queries = input.positionals.slice(1);
4665
4729
  if (queries.length === 0) {
@@ -4678,7 +4742,7 @@ var QUERY_CLI_COMMANDS = [
4678
4742
  path: ["query", "remove"],
4679
4743
  usage: "canonry query remove <project> <query...> [--format json]",
4680
4744
  run: async (input) => {
4681
- const { removeQueries } = await import("./query-ZWAIWIYB.js");
4745
+ const { removeQueries } = await import("./query-UQHJVYUJ.js");
4682
4746
  const project3 = requireProject(input, "query.remove", "canonry query remove <project> <query...> [--format json]");
4683
4747
  const queries = input.positionals.slice(1);
4684
4748
  if (queries.length === 0) {
@@ -4697,7 +4761,7 @@ var QUERY_CLI_COMMANDS = [
4697
4761
  path: ["query", "delete"],
4698
4762
  usage: "canonry query delete <project> <query...> [--format json]",
4699
4763
  run: async (input) => {
4700
- const { removeQueries } = await import("./query-ZWAIWIYB.js");
4764
+ const { removeQueries } = await import("./query-UQHJVYUJ.js");
4701
4765
  const project3 = requireProject(input, "query.delete", "canonry query delete <project> <query...> [--format json]");
4702
4766
  const queries = input.positionals.slice(1);
4703
4767
  if (queries.length === 0) {
@@ -4716,7 +4780,7 @@ var QUERY_CLI_COMMANDS = [
4716
4780
  path: ["query", "list"],
4717
4781
  usage: "canonry query list <project> [--format json]",
4718
4782
  run: async (input) => {
4719
- const { listQueries } = await import("./query-ZWAIWIYB.js");
4783
+ const { listQueries } = await import("./query-UQHJVYUJ.js");
4720
4784
  const project3 = requireProject(input, "query.list", "canonry query list <project> [--format json]");
4721
4785
  await listQueries(project3, input.format);
4722
4786
  }
@@ -4725,7 +4789,7 @@ var QUERY_CLI_COMMANDS = [
4725
4789
  path: ["query", "import"],
4726
4790
  usage: "canonry query import <project> <file> [--format json]",
4727
4791
  run: async (input) => {
4728
- const { importQueries } = await import("./query-ZWAIWIYB.js");
4792
+ const { importQueries } = await import("./query-UQHJVYUJ.js");
4729
4793
  const project3 = requireProject(input, "query.import", "canonry query import <project> <file> [--format json]");
4730
4794
  const filePath = requirePositional(input, 1, {
4731
4795
  command: "query.import",
@@ -4744,7 +4808,7 @@ var QUERY_CLI_COMMANDS = [
4744
4808
  save: { type: "boolean", default: false }
4745
4809
  },
4746
4810
  run: async (input) => {
4747
- const { generateQueries } = await import("./query-ZWAIWIYB.js");
4811
+ const { generateQueries } = await import("./query-UQHJVYUJ.js");
4748
4812
  const project3 = requireProject(
4749
4813
  input,
4750
4814
  "query.generate",
@@ -4794,7 +4858,7 @@ var MCP_CLI_COMMANDS = [
4794
4858
  "config-path": stringOption()
4795
4859
  },
4796
4860
  run: async (input) => {
4797
- const { installMcp } = await import("./mcp-BUPP5HC6.js");
4861
+ const { installMcp } = await import("./mcp-P4LNENKX.js");
4798
4862
  const usage = `canonry mcp install --client ${CLIENT_LIST} [--name <server>] [--read-only] [--dry-run] [--config-path <path>] [--format json]`;
4799
4863
  const client = requireStringOption(input, "client", {
4800
4864
  command: "mcp.install",
@@ -4821,7 +4885,7 @@ var MCP_CLI_COMMANDS = [
4821
4885
  "read-only": { type: "boolean" }
4822
4886
  },
4823
4887
  run: async (input) => {
4824
- const { printMcpConfig } = await import("./mcp-BUPP5HC6.js");
4888
+ const { printMcpConfig } = await import("./mcp-P4LNENKX.js");
4825
4889
  const usage = `canonry mcp config --client ${CLIENT_LIST} [--name <server>] [--read-only] [--format json]`;
4826
4890
  const client = requireStringOption(input, "client", {
4827
4891
  command: "mcp.config",
@@ -4857,7 +4921,7 @@ var NOTIFY_CLI_COMMANDS = [
4857
4921
  usage: "canonry notify events [--target local|server] [--format json|jsonl]",
4858
4922
  options: { target: stringOption() },
4859
4923
  run: async (input) => {
4860
- const { listEvents } = await import("./notify-4C26D2MY.js");
4924
+ const { listEvents } = await import("./notify-A3I3G7NK.js");
4861
4925
  await listEvents(input.format, getString(input.values, "target"));
4862
4926
  }
4863
4927
  },
@@ -4869,7 +4933,7 @@ var NOTIFY_CLI_COMMANDS = [
4869
4933
  events: stringOption()
4870
4934
  },
4871
4935
  run: async (input) => {
4872
- const { addNotification } = await import("./notify-4C26D2MY.js");
4936
+ const { addNotification } = await import("./notify-A3I3G7NK.js");
4873
4937
  const project3 = requireProject(input, "notify.add", "canonry notify add <project> --webhook <url> --events <list> [--format json]");
4874
4938
  const webhook = requireStringOption(input, "webhook", {
4875
4939
  command: "notify.add",
@@ -4892,7 +4956,7 @@ var NOTIFY_CLI_COMMANDS = [
4892
4956
  path: ["notify", "list"],
4893
4957
  usage: "canonry notify list <project> [--format json]",
4894
4958
  run: async (input) => {
4895
- const { listNotifications } = await import("./notify-4C26D2MY.js");
4959
+ const { listNotifications } = await import("./notify-A3I3G7NK.js");
4896
4960
  const project3 = requireProject(input, "notify.list", "canonry notify list <project> [--format json]");
4897
4961
  await listNotifications(project3, input.format);
4898
4962
  }
@@ -4901,7 +4965,7 @@ var NOTIFY_CLI_COMMANDS = [
4901
4965
  path: ["notify", "remove"],
4902
4966
  usage: "canonry notify remove <project> <id> [--format json]",
4903
4967
  run: async (input) => {
4904
- const { removeNotification } = await import("./notify-4C26D2MY.js");
4968
+ const { removeNotification } = await import("./notify-A3I3G7NK.js");
4905
4969
  const project3 = requireProject(input, "notify.remove", "canonry notify remove <project> <id> [--format json]");
4906
4970
  const id2 = requirePositional(input, 1, {
4907
4971
  command: "notify.remove",
@@ -4915,7 +4979,7 @@ var NOTIFY_CLI_COMMANDS = [
4915
4979
  path: ["notify", "test"],
4916
4980
  usage: "canonry notify test <project> <id> [--format json]",
4917
4981
  run: async (input) => {
4918
- const { testNotification } = await import("./notify-4C26D2MY.js");
4982
+ const { testNotification } = await import("./notify-A3I3G7NK.js");
4919
4983
  const project3 = requireProject(input, "notify.test", "canonry notify test <project> <id> [--format json]");
4920
4984
  const id2 = requirePositional(input, 1, {
4921
4985
  command: "notify.test",
@@ -5079,7 +5143,7 @@ var OPERATOR_CLI_COMMANDS = [
5079
5143
  usage: RESULTS_CLEAR_USAGE,
5080
5144
  options: { run: multiStringOption(), "research-run": multiStringOption(), confirm: { type: "boolean", default: false } },
5081
5145
  run: async (input) => {
5082
- const { clearResults } = await import("./history-UGUWYPOY.js");
5146
+ const { clearResults } = await import("./history-WTU4ETCU.js");
5083
5147
  await clearResults(requireProject(input, "results.clear", RESULTS_CLEAR_USAGE), {
5084
5148
  runIds: getStringArray(input.values, "run") ?? [],
5085
5149
  researchRunIds: getStringArray(input.values, "research-run") ?? [],
@@ -5098,7 +5162,7 @@ var OPERATOR_CLI_COMMANDS = [
5098
5162
  output: { type: "string", short: "o" }
5099
5163
  },
5100
5164
  run: async (input) => {
5101
- const { exportResults } = await import("./results-export-CPAWO5AV.js");
5165
+ const { exportResults } = await import("./results-export-FOJYT4MK.js");
5102
5166
  const project3 = requireProject(input, "results export", RESULTS_EXPORT_USAGE);
5103
5167
  await exportResults(project3, {
5104
5168
  format: parseResultsExportFormat(getString(input.values, "format")),
@@ -5114,7 +5178,7 @@ var OPERATOR_CLI_COMMANDS = [
5114
5178
  usage: "canonry status <project>|--all [--problems] [--format json|jsonl]",
5115
5179
  options: { all: { type: "boolean", default: false }, problems: { type: "boolean", default: false } },
5116
5180
  run: async (input) => {
5117
- const { showStatus } = await import("./status-HRIUPGUM.js");
5181
+ const { showStatus } = await import("./status-2WCUV6C2.js");
5118
5182
  const all = getBoolean(input.values, "all");
5119
5183
  const usage = "canonry status <project>|--all [--problems] [--format json|jsonl]";
5120
5184
  const project3 = all ? void 0 : requireProject(input, "status", usage);
@@ -5125,7 +5189,7 @@ var OPERATOR_CLI_COMMANDS = [
5125
5189
  path: ["evidence"],
5126
5190
  usage: "canonry evidence <project> [--format json]",
5127
5191
  run: async (input) => {
5128
- const { showEvidence } = await import("./evidence-DGKN5SGQ.js");
5192
+ const { showEvidence } = await import("./evidence-ZWRGNZWN.js");
5129
5193
  const project3 = requireProject(input, "evidence", "canonry evidence <project> [--format json]");
5130
5194
  await showEvidence(project3, input.format);
5131
5195
  }
@@ -5147,7 +5211,7 @@ var OPERATOR_CLI_COMMANDS = [
5147
5211
  "entity-type": stringOption()
5148
5212
  },
5149
5213
  run: async (input) => {
5150
- const { showHistory } = await import("./history-UGUWYPOY.js");
5214
+ const { showHistory } = await import("./history-WTU4ETCU.js");
5151
5215
  const usage = "canonry history <project> [--limit <1..500>] [--offset <n>] [--since <ISO>] [--until <ISO>] [--action <action>] [--action-prefix <prefix>] [--actor <actor>] [--entity-type <type>] [--exclude-entity-type <type>]... [--entity-id <id>] [--format json|jsonl]\n canonry history --all [same filters]";
5152
5216
  if (getBoolean(input.values, "all") && input.positionals.length > 0) throw usageError("Use a project or --all, not both.");
5153
5217
  const project3 = getBoolean(input.values, "all") ? void 0 : requireProject(input, "history", usage);
@@ -5173,7 +5237,7 @@ var OPERATOR_CLI_COMMANDS = [
5173
5237
  "include-secrets": { type: "boolean", default: false }
5174
5238
  },
5175
5239
  run: async (input) => {
5176
- const { exportProject } = await import("./export-cmd-QAQWWIRL.js");
5240
+ const { exportProject } = await import("./export-cmd-AM6SIRUW.js");
5177
5241
  const project3 = requireProject(input, "export", "canonry export <project> [--include-results] [--include-secrets] [--format json]");
5178
5242
  await exportProject(project3, {
5179
5243
  includeResults: getBoolean(input.values, "include-results"),
@@ -5192,7 +5256,7 @@ var OPERATOR_CLI_COMMANDS = [
5192
5256
  "query-class": stringOption()
5193
5257
  },
5194
5258
  run: async (input) => {
5195
- const { ANALYTICS_USAGE, parseAnalyticsQueryClass, showAnalytics } = await import("./analytics-YWJWPUNF.js");
5259
+ const { ANALYTICS_USAGE, parseAnalyticsQueryClass, showAnalytics } = await import("./analytics-HMYE6EIX.js");
5196
5260
  const project3 = requireProject(input, "analytics", ANALYTICS_USAGE);
5197
5261
  await showAnalytics(project3, {
5198
5262
  feature: getString(input.values, "feature"),
@@ -5239,7 +5303,7 @@ var OPERATOR_CLI_COMMANDS = [
5239
5303
  usage: "canonry apply <file...> [--dry-run] [--format json]",
5240
5304
  supportsDryRun: true,
5241
5305
  run: async (input) => {
5242
- const { applyConfigs } = await import("./apply-BMCYFBEJ.js");
5306
+ const { applyConfigs } = await import("./apply-F5CHVFC3.js");
5243
5307
  if (input.positionals.length === 0) {
5244
5308
  throw usageError("Error: at least one file path is required\nUsage: canonry apply <file...> [--format json]", {
5245
5309
  message: "at least one file path is required",
@@ -5274,7 +5338,7 @@ var PROJECT_CLI_COMMANDS = [
5274
5338
  "site-audit-max-pages": stringOption()
5275
5339
  },
5276
5340
  run: async (input) => {
5277
- const { createProject } = await import("./project-XJH2OECP.js");
5341
+ const { createProject } = await import("./project-B5G2HEAB.js");
5278
5342
  const name = requireProject(
5279
5343
  input,
5280
5344
  "project.create",
@@ -5337,7 +5401,7 @@ var PROJECT_CLI_COMMANDS = [
5337
5401
  "remove-marketing-host": multiStringOption()
5338
5402
  },
5339
5403
  run: async (input) => {
5340
- const { updateProjectSettings } = await import("./project-XJH2OECP.js");
5404
+ const { updateProjectSettings } = await import("./project-B5G2HEAB.js");
5341
5405
  const name = requireProject(
5342
5406
  input,
5343
5407
  "project.update",
@@ -5394,7 +5458,7 @@ var PROJECT_CLI_COMMANDS = [
5394
5458
  usage: "canonry project list [--format json]",
5395
5459
  allowPositionals: false,
5396
5460
  run: async (input) => {
5397
- const { listProjects } = await import("./project-XJH2OECP.js");
5461
+ const { listProjects } = await import("./project-B5G2HEAB.js");
5398
5462
  await listProjects(input.format);
5399
5463
  }
5400
5464
  },
@@ -5402,7 +5466,7 @@ var PROJECT_CLI_COMMANDS = [
5402
5466
  path: ["project", "show"],
5403
5467
  usage: "canonry project show <name> [--format json]",
5404
5468
  run: async (input) => {
5405
- const { showProject } = await import("./project-XJH2OECP.js");
5469
+ const { showProject } = await import("./project-B5G2HEAB.js");
5406
5470
  const name = requireProject(input, "project.show", "canonry project show <name>");
5407
5471
  await showProject(name, input.format);
5408
5472
  }
@@ -5412,7 +5476,7 @@ var PROJECT_CLI_COMMANDS = [
5412
5476
  usage: "canonry project delete <name> [--dry-run] [--format json]",
5413
5477
  supportsDryRun: true,
5414
5478
  run: async (input) => {
5415
- const { deleteProject } = await import("./project-XJH2OECP.js");
5479
+ const { deleteProject } = await import("./project-B5G2HEAB.js");
5416
5480
  const name = requireProject(input, "project.delete", "canonry project delete <name> [--dry-run] [--format json]");
5417
5481
  await deleteProject(name, { dryRun: input.dryRun, format: input.format });
5418
5482
  }
@@ -5428,7 +5492,7 @@ var PROJECT_CLI_COMMANDS = [
5428
5492
  timezone: stringOption()
5429
5493
  },
5430
5494
  run: async (input) => {
5431
- const { addLocation } = await import("./project-XJH2OECP.js");
5495
+ const { addLocation } = await import("./project-B5G2HEAB.js");
5432
5496
  const name = requireProject(
5433
5497
  input,
5434
5498
  "project.add-location",
@@ -5462,7 +5526,7 @@ var PROJECT_CLI_COMMANDS = [
5462
5526
  path: ["project", "locations"],
5463
5527
  usage: "canonry project locations <name> [--format json]",
5464
5528
  run: async (input) => {
5465
- const { listLocations } = await import("./project-XJH2OECP.js");
5529
+ const { listLocations } = await import("./project-B5G2HEAB.js");
5466
5530
  const name = requireProject(input, "project.locations", "canonry project locations <name> [--format json]");
5467
5531
  await listLocations(name, input.format);
5468
5532
  }
@@ -5471,7 +5535,7 @@ var PROJECT_CLI_COMMANDS = [
5471
5535
  path: ["project", "remove-location"],
5472
5536
  usage: "canonry project remove-location <name> <label> [--format json]",
5473
5537
  run: async (input) => {
5474
- const { removeLocation } = await import("./project-XJH2OECP.js");
5538
+ const { removeLocation } = await import("./project-B5G2HEAB.js");
5475
5539
  const name = requireProject(input, "project.remove-location", "canonry project remove-location <name> <label> [--format json]");
5476
5540
  const label = requirePositional(input, 1, {
5477
5541
  command: "project.remove-location",
@@ -5485,7 +5549,7 @@ var PROJECT_CLI_COMMANDS = [
5485
5549
  path: ["project", "set-default-location"],
5486
5550
  usage: "canonry project set-default-location <name> <label> [--format json]",
5487
5551
  run: async (input) => {
5488
- const { setDefaultLocation } = await import("./project-XJH2OECP.js");
5552
+ const { setDefaultLocation } = await import("./project-B5G2HEAB.js");
5489
5553
  const name = requireProject(input, "project.set-default-location", "canonry project set-default-location <name> <label> [--format json]");
5490
5554
  const label = requirePositional(input, 1, {
5491
5555
  command: "project.set-default-location",
@@ -5616,7 +5680,7 @@ var ORGANIC_EVIDENCE_CLI_COMMANDS = [
5616
5680
  usage: USAGE3,
5617
5681
  options: { period: stringOption() },
5618
5682
  run: async (input) => {
5619
- const { showOrganicEvidence } = await import("./organic-evidence-SLIISYHW.js");
5683
+ const { showOrganicEvidence } = await import("./organic-evidence-OFUJBDCK.js");
5620
5684
  const project3 = requireProject(input, "organic-evidence", USAGE3);
5621
5685
  await showOrganicEvidence(project3, {
5622
5686
  period: parsePeriod(getString(input.values, "window") ?? getString(input.values, "period")),
@@ -5641,7 +5705,7 @@ var RUN_LIST_OPTIONS = {
5641
5705
  since: stringOption()
5642
5706
  };
5643
5707
  async function listRunsCommand(input) {
5644
- const { listRuns } = await import("./run-RI2BMD7U.js");
5708
+ const { listRuns } = await import("./run-ZIUQ2TNN.js");
5645
5709
  const project3 = requireProject(input, "runs", RUNS_USAGE);
5646
5710
  await listRuns(project3, {
5647
5711
  format: input.format,
@@ -5687,7 +5751,7 @@ function parseDispatchMode(value, command, usage) {
5687
5751
  });
5688
5752
  }
5689
5753
  async function triggerRunCommand(input, command) {
5690
- const { triggerRun, triggerRunAll } = await import("./run-RI2BMD7U.js");
5754
+ const { triggerRun, triggerRunAll } = await import("./run-ZIUQ2TNN.js");
5691
5755
  const groups = getStringArray(input.values, "group") ?? [];
5692
5756
  const targets = getStringArray(input.values, "target") ?? [];
5693
5757
  const queries = getStringArray(input.values, "query") ?? [];
@@ -5761,7 +5825,7 @@ var RUN_CLI_COMMANDS = [
5761
5825
  path: ["run", "show"],
5762
5826
  usage: "canonry run show <id> [--format json]",
5763
5827
  run: async (input) => {
5764
- const { showRun } = await import("./run-RI2BMD7U.js");
5828
+ const { showRun } = await import("./run-ZIUQ2TNN.js");
5765
5829
  const id2 = requirePositional(input, 0, {
5766
5830
  command: "run.show",
5767
5831
  usage: "canonry run show <id> [--format json]",
@@ -5779,7 +5843,7 @@ var RUN_CLI_COMMANDS = [
5779
5843
  },
5780
5844
  supportsDryRun: true,
5781
5845
  run: async (input) => {
5782
- const { fillRun } = await import("./run-RI2BMD7U.js");
5846
+ const { fillRun } = await import("./run-ZIUQ2TNN.js");
5783
5847
  if (input.positionals.length === 0 && !input.dryRun) return triggerRunCommand({ ...input, positionals: ["fill"] }, "run");
5784
5848
  const runId = requirePositional(input, 0, {
5785
5849
  command: "run.fill",
@@ -5799,7 +5863,7 @@ var RUN_CLI_COMMANDS = [
5799
5863
  path: ["run", "completeness"],
5800
5864
  usage: "canonry run completeness <run-id> [--format json]",
5801
5865
  run: async (input) => {
5802
- const { showRunCompleteness } = await import("./run-RI2BMD7U.js");
5866
+ const { showRunCompleteness } = await import("./run-ZIUQ2TNN.js");
5803
5867
  if (input.positionals.length === 0) return triggerRunCommand({ ...input, positionals: ["completeness"] }, "run");
5804
5868
  const runId = requirePositional(input, 0, {
5805
5869
  command: "run.completeness",
@@ -5813,7 +5877,7 @@ var RUN_CLI_COMMANDS = [
5813
5877
  path: ["run", "cancel"],
5814
5878
  usage: "canonry run cancel <project> [run-id] [--format json]",
5815
5879
  run: async (input) => {
5816
- const { cancelRun } = await import("./run-RI2BMD7U.js");
5880
+ const { cancelRun } = await import("./run-ZIUQ2TNN.js");
5817
5881
  const project3 = requireProject(input, "run.cancel", "canonry run cancel <project> [run-id] [--format json]");
5818
5882
  await cancelRun(project3, input.positionals[1], input.format);
5819
5883
  }
@@ -5860,7 +5924,7 @@ var SCHEDULE_CLI_COMMANDS = [
5860
5924
  path: ["schedule", "list"],
5861
5925
  usage: "canonry schedule list <project> [--format json|jsonl]",
5862
5926
  run: async (input) => {
5863
- const { listSchedules } = await import("./schedule-HDDWULBX.js");
5927
+ const { listSchedules } = await import("./schedule-B5CORKGT.js");
5864
5928
  await listSchedules(requireProject(input, "schedule.list", "canonry schedule list <project>"), input.format);
5865
5929
  }
5866
5930
  },
@@ -5879,7 +5943,7 @@ var SCHEDULE_CLI_COMMANDS = [
5879
5943
  provider: multiStringOption()
5880
5944
  },
5881
5945
  run: async (input) => {
5882
- const { setSchedule } = await import("./schedule-HDDWULBX.js");
5946
+ const { setSchedule } = await import("./schedule-B5CORKGT.js");
5883
5947
  const usage = "canonry schedule set <project> (--preset <preset> | --cron <expr> | --every-days <n> --start-date <YYYY-MM-DD> --at <HH:mm>) [--kind answer-visibility|traffic-sync|gbp-sync|data-refresh|backlinks-sync|site-audit|ads-sync|doctor|seo-sync] [--source <id>] [--timezone <tz>] [--provider <name>...] [--format json]";
5884
5948
  const project3 = requireProject(input, "schedule.set", usage);
5885
5949
  const preset = getString(input.values, "preset");
@@ -5920,7 +5984,7 @@ var SCHEDULE_CLI_COMMANDS = [
5920
5984
  usage: "canonry schedule show <project> [--kind answer-visibility|traffic-sync|gbp-sync|data-refresh|backlinks-sync|site-audit|ads-sync|doctor|seo-sync] [--format json]",
5921
5985
  options: { kind: stringOption() },
5922
5986
  run: async (input) => {
5923
- const { showSchedule } = await import("./schedule-HDDWULBX.js");
5987
+ const { showSchedule } = await import("./schedule-B5CORKGT.js");
5924
5988
  const project3 = requireProject(input, "schedule.show", "canonry schedule show <project> [--kind ...]");
5925
5989
  await showSchedule(project3, input.format, getString(input.values, "kind"));
5926
5990
  }
@@ -5930,7 +5994,7 @@ var SCHEDULE_CLI_COMMANDS = [
5930
5994
  usage: "canonry schedule enable <project> [--kind answer-visibility|traffic-sync|gbp-sync|data-refresh|backlinks-sync|site-audit|ads-sync|doctor|seo-sync] [--format json]",
5931
5995
  options: { kind: stringOption() },
5932
5996
  run: async (input) => {
5933
- const { enableSchedule } = await import("./schedule-HDDWULBX.js");
5997
+ const { enableSchedule } = await import("./schedule-B5CORKGT.js");
5934
5998
  const project3 = requireProject(input, "schedule.enable", "canonry schedule enable <project> [--kind ...]");
5935
5999
  await enableSchedule(project3, input.format, getString(input.values, "kind"));
5936
6000
  }
@@ -5940,7 +6004,7 @@ var SCHEDULE_CLI_COMMANDS = [
5940
6004
  usage: "canonry schedule disable <project> [--kind answer-visibility|traffic-sync|gbp-sync|data-refresh|backlinks-sync|site-audit|ads-sync|doctor|seo-sync] [--format json]",
5941
6005
  options: { kind: stringOption() },
5942
6006
  run: async (input) => {
5943
- const { disableSchedule } = await import("./schedule-HDDWULBX.js");
6007
+ const { disableSchedule } = await import("./schedule-B5CORKGT.js");
5944
6008
  const project3 = requireProject(input, "schedule.disable", "canonry schedule disable <project> [--kind ...]");
5945
6009
  await disableSchedule(project3, input.format, getString(input.values, "kind"));
5946
6010
  }
@@ -5950,7 +6014,7 @@ var SCHEDULE_CLI_COMMANDS = [
5950
6014
  usage: "canonry schedule remove <project> [--kind answer-visibility|traffic-sync|gbp-sync|data-refresh|backlinks-sync|site-audit|ads-sync|doctor|seo-sync] [--format json]",
5951
6015
  options: { kind: stringOption() },
5952
6016
  run: async (input) => {
5953
- const { removeSchedule } = await import("./schedule-HDDWULBX.js");
6017
+ const { removeSchedule } = await import("./schedule-B5CORKGT.js");
5954
6018
  const project3 = requireProject(input, "schedule.remove", "canonry schedule remove <project> [--kind ...]");
5955
6019
  await removeSchedule(project3, input.format, getString(input.values, "kind"));
5956
6020
  }
@@ -5974,7 +6038,7 @@ var SETTINGS_CLI_COMMANDS = [
5974
6038
  path: ["settings", "reload-providers"],
5975
6039
  usage: "canonry settings reload-providers [--format json]",
5976
6040
  run: async (input) => {
5977
- const { reloadProviders } = await import("./settings-4AYXYJVA.js");
6041
+ const { reloadProviders } = await import("./settings-Y3LVGZH4.js");
5978
6042
  return reloadProviders(input.format);
5979
6043
  }
5980
6044
  },
@@ -5990,7 +6054,7 @@ var SETTINGS_CLI_COMMANDS = [
5990
6054
  "max-per-day": stringOption()
5991
6055
  },
5992
6056
  run: async (input) => {
5993
- const { setProvider } = await import("./settings-4AYXYJVA.js");
6057
+ const { setProvider } = await import("./settings-Y3LVGZH4.js");
5994
6058
  const name = requirePositional(input, 0, {
5995
6059
  command: "settings.provider",
5996
6060
  usage: "canonry settings provider <name> [--api-key <key>] [--base-url <url>] [--model <model>] [--max-concurrent <n>] [--max-per-minute <n>] [--max-per-day <n>] [--format json]",
@@ -6066,7 +6130,7 @@ Usage: canonry settings provider ${name} --api-key <key> [--model <model>] [--ma
6066
6130
  target: stringOption()
6067
6131
  },
6068
6132
  run: async (input) => {
6069
- const { setGoogleAuth } = await import("./settings-4AYXYJVA.js");
6133
+ const { setGoogleAuth } = await import("./settings-Y3LVGZH4.js");
6070
6134
  const clientId = getString(input.values, "client-id");
6071
6135
  const clientSecret = getString(input.values, "client-secret");
6072
6136
  if (!clientId || !clientSecret) {
@@ -6109,7 +6173,7 @@ Usage: canonry settings provider ${name} --api-key <key> [--model <model>] [--ma
6109
6173
  path: ["settings"],
6110
6174
  usage: "canonry settings [provider|reload-providers|google] [args]",
6111
6175
  run: async (input) => {
6112
- const { showSettings } = await import("./settings-4AYXYJVA.js");
6176
+ const { showSettings } = await import("./settings-Y3LVGZH4.js");
6113
6177
  const subcommand = input.positionals[0];
6114
6178
  if (!subcommand) {
6115
6179
  await showSettings(input.format);
@@ -6130,7 +6194,7 @@ var SKILLS_CLI_COMMANDS = [
6130
6194
  path: ["skills", "list"],
6131
6195
  usage: "canonry skills list [--format json]",
6132
6196
  run: async (input) => {
6133
- const { listSkills } = await import("./skills-UFMLMMY5.js");
6197
+ const { listSkills } = await import("./skills-6E3RVQAQ.js");
6134
6198
  await listSkills({ format: input.format });
6135
6199
  }
6136
6200
  },
@@ -6145,7 +6209,7 @@ var SKILLS_CLI_COMMANDS = [
6145
6209
  },
6146
6210
  allowPositionals: true,
6147
6211
  run: async (input) => {
6148
- const { emitInstallSummary, installSkills, parseSkillsClient } = await import("./skills-UFMLMMY5.js");
6212
+ const { emitInstallSummary, installSkills, parseSkillsClient } = await import("./skills-6E3RVQAQ.js");
6149
6213
  const summary = await installSkills({
6150
6214
  dir: getString(input.values, "dir"),
6151
6215
  user: getBoolean(input.values, "user"),
@@ -6192,7 +6256,7 @@ var SNAPSHOT_CLI_COMMANDS = [
6192
6256
  output: stringOption()
6193
6257
  },
6194
6258
  run: async (input) => {
6195
- const { createSnapshotReport } = await import("./snapshot-KLWQGZB6.js");
6259
+ const { createSnapshotReport } = await import("./snapshot-RAV2HCL7.js");
6196
6260
  const usage = SNAPSHOT_USAGE;
6197
6261
  const companyName = requirePositional(input, 0, {
6198
6262
  command: "snapshot",
@@ -6245,7 +6309,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6245
6309
  limit: { type: "string" }
6246
6310
  },
6247
6311
  run: async (input) => {
6248
- const { listInsights } = await import("./insights-ZC3R4ZYG.js");
6312
+ const { listInsights } = await import("./insights-LPEDLSEV.js");
6249
6313
  const usage = "canonry insights <project> [--type <type|prefix*>] [--severity <low|medium|high|critical>] [--limit <n>] [--dismissed] [--run-id <id>] [--format json]";
6250
6314
  const project3 = requireProject(input, "insights", usage);
6251
6315
  const dismissed = input.values.dismissed === true;
@@ -6261,7 +6325,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6261
6325
  usage: "canonry insights dismiss <project> <id> [--format json]",
6262
6326
  options: {},
6263
6327
  run: async (input) => {
6264
- const { dismissInsight } = await import("./insights-ZC3R4ZYG.js");
6328
+ const { dismissInsight } = await import("./insights-LPEDLSEV.js");
6265
6329
  const usage = "canonry insights dismiss <project> <id> [--format json]";
6266
6330
  const project3 = requireProject(input, "insights dismiss", usage);
6267
6331
  const id2 = requirePositional(input, 1, { command: "insights dismiss", usage, message: "insight ID is required" });
@@ -6276,7 +6340,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6276
6340
  limit: { type: "string" }
6277
6341
  },
6278
6342
  run: async (input) => {
6279
- const { showHealth } = await import("./health-cmd-3PEB3M45.js");
6343
+ const { showHealth } = await import("./health-cmd-OPGK37MK.js");
6280
6344
  const usage = "canonry health <project> [--history] [--limit <n>] [--format json]";
6281
6345
  const project3 = requireProject(input, "health", usage);
6282
6346
  const history = input.values.history === true;
@@ -6298,7 +6362,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6298
6362
  },
6299
6363
  allowPositionals: true,
6300
6364
  run: async (input) => {
6301
- const { showAllOverviews, showOverview } = await import("./overview-JJZZOYQU.js");
6365
+ const { showAllOverviews, showOverview } = await import("./overview-NSRODN2X.js");
6302
6366
  const usage = "canonry overview <project>|--all [--location <label>] [--since <iso>] [--format json]";
6303
6367
  const all = getBoolean(input.values, "all");
6304
6368
  const location = getString(input.values, "location");
@@ -6318,7 +6382,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6318
6382
  limit: { type: "string" }
6319
6383
  },
6320
6384
  run: async (input) => {
6321
- const { searchProject } = await import("./search-TT3Q2BBP.js");
6385
+ const { searchProject } = await import("./search-2XCZKP6A.js");
6322
6386
  const usage = "canonry search <project> <query> [--limit <n>] [--format json]";
6323
6387
  const project3 = requireProject(input, "search", usage);
6324
6388
  const query = requirePositional(input, 1, { command: "search", usage, message: "query is required" });
@@ -6335,7 +6399,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6335
6399
  usage: "canonry citations visibility <project> [--format json]",
6336
6400
  options: {},
6337
6401
  run: async (input) => {
6338
- const { showCitationVisibility } = await import("./citations-ZSI5BOGD.js");
6402
+ const { showCitationVisibility } = await import("./citations-NIFKIG6Y.js");
6339
6403
  const usage = "canonry citations visibility <project> [--format json]";
6340
6404
  const project3 = requireProject(input, "citations visibility", usage);
6341
6405
  await showCitationVisibility(project3, { format: input.format });
@@ -6351,7 +6415,7 @@ var CONTENT_CLI_COMMANDS = [
6351
6415
  help: "List persisted addressed content targets, including those hidden from content targets.",
6352
6416
  options: {},
6353
6417
  run: async (input) => {
6354
- const { listContentDismissals } = await import("./content-K52YV4BK.js");
6418
+ const { listContentDismissals } = await import("./content-W5VYYMAW.js");
6355
6419
  const project3 = requireProject(input, "content dismissals", "canonry content dismissals <project> [--format json|jsonl]");
6356
6420
  await listContentDismissals(project3, { format: input.format });
6357
6421
  }
@@ -6362,7 +6426,7 @@ var CONTENT_CLI_COMMANDS = [
6362
6426
  help: "Mark a content target addressed. Restore it with content restore.",
6363
6427
  options: { "addressed-url": { type: "string" }, note: { type: "string" } },
6364
6428
  run: async (input) => {
6365
- const { dismissContentTarget } = await import("./content-K52YV4BK.js");
6429
+ const { dismissContentTarget } = await import("./content-W5VYYMAW.js");
6366
6430
  const usage = "canonry content dismiss <project> <targetRef> [--addressed-url <url>] [--note <text>] [--format json]";
6367
6431
  const project3 = requireProject(input, "content dismiss", usage);
6368
6432
  const targetRef = requirePositional(input, 1, { command: "content dismiss", usage, message: "targetRef is required (from content targets)" });
@@ -6375,7 +6439,7 @@ var CONTENT_CLI_COMMANDS = [
6375
6439
  help: "Remove a persisted dismissal so an eligible target can appear again.",
6376
6440
  options: {},
6377
6441
  run: async (input) => {
6378
- const { restoreContentTarget } = await import("./content-K52YV4BK.js");
6442
+ const { restoreContentTarget } = await import("./content-W5VYYMAW.js");
6379
6443
  const usage = "canonry content restore <project> <targetRef> [--format json]";
6380
6444
  const project3 = requireProject(input, "content restore", usage);
6381
6445
  const targetRef = requirePositional(input, 1, { command: "content restore", usage, message: "targetRef is required (from content dismissals)" });
@@ -6392,7 +6456,7 @@ var CONTENT_CLI_COMMANDS = [
6392
6456
  "winnability-class": { type: "string" }
6393
6457
  },
6394
6458
  run: async (input) => {
6395
- const { listContentTargets } = await import("./content-K52YV4BK.js");
6459
+ const { listContentTargets } = await import("./content-W5VYYMAW.js");
6396
6460
  const usage = "canonry content targets <project> [--limit <n>] [--include-in-progress] [--ownable] [--winnability-class <ownable|ceded>] [--format json]";
6397
6461
  const project3 = requireProject(input, "content targets", usage);
6398
6462
  const limit = parseIntegerOption(input, "limit", {
@@ -6423,7 +6487,7 @@ var CONTENT_CLI_COMMANDS = [
6423
6487
  usage: "canonry content sources <project> [--format json]",
6424
6488
  options: {},
6425
6489
  run: async (input) => {
6426
- const { listContentSources } = await import("./content-K52YV4BK.js");
6490
+ const { listContentSources } = await import("./content-W5VYYMAW.js");
6427
6491
  const usage = "canonry content sources <project> [--format json]";
6428
6492
  const project3 = requireProject(input, "content sources", usage);
6429
6493
  await listContentSources(project3, { format: input.format });
@@ -6434,7 +6498,7 @@ var CONTENT_CLI_COMMANDS = [
6434
6498
  usage: "canonry content gaps <project> [--format json]",
6435
6499
  options: {},
6436
6500
  run: async (input) => {
6437
- const { listContentGaps } = await import("./content-K52YV4BK.js");
6501
+ const { listContentGaps } = await import("./content-W5VYYMAW.js");
6438
6502
  const usage = "canonry content gaps <project> [--format json]";
6439
6503
  const project3 = requireProject(input, "content gaps", usage);
6440
6504
  await listContentGaps(project3, { format: input.format });
@@ -6449,7 +6513,7 @@ var CONTENT_CLI_COMMANDS = [
6449
6513
  force: { type: "boolean" }
6450
6514
  },
6451
6515
  run: async (input) => {
6452
- const { generateContentBrief } = await import("./content-K52YV4BK.js");
6516
+ const { generateContentBrief } = await import("./content-W5VYYMAW.js");
6453
6517
  const usage = "canonry content brief <project> <targetRef> [--provider <p>] [--model <m>] [--force] [--format json]";
6454
6518
  const project3 = requireProject(input, "content brief", usage);
6455
6519
  const targetRef = requirePositional(input, 1, {
@@ -6470,7 +6534,7 @@ var CONTENT_CLI_COMMANDS = [
6470
6534
  usage: "canonry content map <project> [--format json]",
6471
6535
  options: {},
6472
6536
  run: async (input) => {
6473
- const { contentMap } = await import("./content-K52YV4BK.js");
6537
+ const { contentMap } = await import("./content-W5VYYMAW.js");
6474
6538
  const usage = "canonry content map <project> [--format json]";
6475
6539
  const project3 = requireProject(input, "content map", usage);
6476
6540
  await contentMap(project3, { format: input.format });
@@ -6765,7 +6829,7 @@ var SYSTEM_CLI_COMMANDS = [
6765
6829
  options: { access: stringOption() },
6766
6830
  run: async (input) => {
6767
6831
  if (input.positionals.length > 1) throw usageError("Expected at most one command group");
6768
- const [{ printCliCatalog }, { REGISTERED_CLI_COMMANDS: REGISTERED_CLI_COMMANDS2 }] = await Promise.all([import("./cli-catalog-J2HUCGJL.js"), import("./cli-commands-XFMVFREG.js")]);
6832
+ const [{ printCliCatalog }, { REGISTERED_CLI_COMMANDS: REGISTERED_CLI_COMMANDS2 }] = await Promise.all([import("./cli-catalog-ONYERYPV.js"), import("./cli-commands-3RTJR7FD.js")]);
6769
6833
  printCliCatalog(REGISTERED_CLI_COMMANDS2, input.format, input.positionals[0], getString(input.values, "access"));
6770
6834
  }
6771
6835
  },
@@ -6776,7 +6840,7 @@ var SYSTEM_CLI_COMMANDS = [
6776
6840
  options: { level: stringOption(), module: stringOption(), "run-id": stringOption(), "project-id": stringOption(), actor: stringOption(), "request-id": stringOption(), since: stringOption(), until: stringOption(), limit: stringOption(), cursor: stringOption() },
6777
6841
  allowPositionals: false,
6778
6842
  run: async (input) => {
6779
- const { showOperationalLogs } = await import("./logs-UM7CWHYB.js");
6843
+ const { showOperationalLogs } = await import("./logs-62RUOAKT.js");
6780
6844
  return showOperationalLogs({
6781
6845
  level: getString(input.values, "level"),
6782
6846
  module: getString(input.values, "module"),
@@ -6814,7 +6878,7 @@ var SYSTEM_CLI_COMMANDS = [
6814
6878
  },
6815
6879
  allowPositionals: false,
6816
6880
  run: async (input) => {
6817
- const { initCommand } = await import("./init-DEW65BLN.js");
6881
+ const { initCommand } = await import("./init-XDFRSNJ6.js");
6818
6882
  await initCommand({
6819
6883
  force: getBoolean(input.values, "force"),
6820
6884
  ref: getString(input.values, "ref"),
@@ -6847,7 +6911,7 @@ var SYSTEM_CLI_COMMANDS = [
6847
6911
  },
6848
6912
  allowPositionals: false,
6849
6913
  run: async (input) => {
6850
- const { bootstrapCommand } = await import("./bootstrap-X2AADK4M.js");
6914
+ const { bootstrapCommand } = await import("./bootstrap-AEHBYC77.js");
6851
6915
  await bootstrapCommand({
6852
6916
  format: input.format,
6853
6917
  ref: getString(input.values, "ref")
@@ -6869,7 +6933,7 @@ var SYSTEM_CLI_COMMANDS = [
6869
6933
  allowPositionals: false,
6870
6934
  run: async (input) => {
6871
6935
  applyServerEnv(input.values);
6872
- const { serveCommand } = await import("./serve-6JYPUU24.js");
6936
+ const { serveCommand } = await import("./serve-RR6YYFKA.js");
6873
6937
  await serveCommand(input.format);
6874
6938
  }
6875
6939
  },
@@ -6939,7 +7003,7 @@ var SYSTEM_CLI_COMMANDS = [
6939
7003
  options: { target: stringOption() },
6940
7004
  allowPositionals: false,
6941
7005
  run: async (input) => {
6942
- const { telemetryCommand } = await import("./telemetry-IS6KZK32.js");
7006
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6943
7007
  await telemetryCommand("status", input.format, getString(input.values, "target"));
6944
7008
  }
6945
7009
  },
@@ -6949,7 +7013,7 @@ var SYSTEM_CLI_COMMANDS = [
6949
7013
  options: { target: stringOption() },
6950
7014
  allowPositionals: false,
6951
7015
  run: async (input) => {
6952
- const { telemetryCommand } = await import("./telemetry-IS6KZK32.js");
7016
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6953
7017
  await telemetryCommand("enable", input.format, getString(input.values, "target"));
6954
7018
  }
6955
7019
  },
@@ -6959,7 +7023,7 @@ var SYSTEM_CLI_COMMANDS = [
6959
7023
  options: { target: stringOption() },
6960
7024
  allowPositionals: false,
6961
7025
  run: async (input) => {
6962
- const { telemetryCommand } = await import("./telemetry-IS6KZK32.js");
7026
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6963
7027
  await telemetryCommand("disable", input.format, getString(input.values, "target"));
6964
7028
  }
6965
7029
  },
@@ -7017,7 +7081,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7017
7081
  access: "stored",
7018
7082
  options: { "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7019
7083
  run: async (input) => {
7020
- const { technicalAeoIssues } = await import("./technical-aeo-HKJQHMMS.js");
7084
+ const { technicalAeoIssues } = await import("./technical-aeo-2TJEHHBR.js");
7021
7085
  const usage = "canonry technical-aeo issues <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7022
7086
  const project3 = requireProject(input, "technical-aeo.issues", usage);
7023
7087
  await technicalAeoIssues(project3, {
@@ -7032,7 +7096,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7032
7096
  access: "stored",
7033
7097
  options: { "issue-id": stringOption(), "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7034
7098
  run: async (input) => {
7035
- const { technicalAeoIssuePages } = await import("./technical-aeo-HKJQHMMS.js");
7099
+ const { technicalAeoIssuePages } = await import("./technical-aeo-2TJEHHBR.js");
7036
7100
  const usage = "canonry technical-aeo issue-pages <project> --issue-id <id> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7037
7101
  const project3 = requireProject(input, "technical-aeo.issue-pages", usage);
7038
7102
  const issueId = requireStringOption(input, "issue-id", { command: "technical-aeo.issue-pages", usage, message: "--issue-id is required" });
@@ -7050,7 +7114,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7050
7114
  "run-id": stringOption()
7051
7115
  },
7052
7116
  run: async (input) => {
7053
- const { technicalAeoScore } = await import("./technical-aeo-HKJQHMMS.js");
7117
+ const { technicalAeoScore } = await import("./technical-aeo-2TJEHHBR.js");
7054
7118
  const project3 = requireProject(
7055
7119
  input,
7056
7120
  "technical-aeo.score",
@@ -7069,7 +7133,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7069
7133
  limit: stringOption()
7070
7134
  },
7071
7135
  run: async (input) => {
7072
- const { technicalAeoPages } = await import("./technical-aeo-HKJQHMMS.js");
7136
+ const { technicalAeoPages } = await import("./technical-aeo-2TJEHHBR.js");
7073
7137
  const usage = "canonry technical-aeo pages <project> [--run-id <id>] [--status success|error] [--sort score-asc|score-desc|url] [--limit <n>] [--format json|jsonl]";
7074
7138
  const project3 = requireProject(input, "technical-aeo.pages", usage);
7075
7139
  await technicalAeoPages(project3, {
@@ -7092,7 +7156,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7092
7156
  limit: stringOption()
7093
7157
  },
7094
7158
  run: async (input) => {
7095
- const { technicalAeoTrend } = await import("./technical-aeo-HKJQHMMS.js");
7159
+ const { technicalAeoTrend } = await import("./technical-aeo-2TJEHHBR.js");
7096
7160
  const usage = "canonry technical-aeo trend <project> [--limit <n>] [--format json|jsonl]";
7097
7161
  const project3 = requireProject(input, "technical-aeo.trend", usage);
7098
7162
  await technicalAeoTrend(project3, {
@@ -7122,7 +7186,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7122
7186
  wait: { type: "boolean", default: false }
7123
7187
  },
7124
7188
  run: async (input) => {
7125
- const { technicalAeoRun } = await import("./technical-aeo-HKJQHMMS.js");
7189
+ const { technicalAeoRun } = await import("./technical-aeo-2TJEHHBR.js");
7126
7190
  const usage = "canonry technical-aeo run <project> [--sitemap-url <url>] [--max-pages <n>] [--max-edges <n>] [--max-depth <n>] [--check-dead-links] [--include-geo] [--no-agent-skills] [--wait] [--format json]";
7127
7191
  const project3 = requireProject(input, "technical-aeo.run", usage);
7128
7192
  await technicalAeoRun(project3, {
@@ -7160,7 +7224,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7160
7224
  usage: "canonry technical-aeo crawl <project> [--run-id <id> | --date YYYY-MM-DD] [--format json]",
7161
7225
  options: { "run-id": stringOption(), date: stringOption() },
7162
7226
  run: async (input) => {
7163
- const { technicalAeoCrawl } = await import("./technical-aeo-HKJQHMMS.js");
7227
+ const { technicalAeoCrawl } = await import("./technical-aeo-2TJEHHBR.js");
7164
7228
  const usage = "canonry technical-aeo crawl <project> [--run-id <id> | --date YYYY-MM-DD] [--format json]";
7165
7229
  const project3 = requireProject(input, "technical-aeo.crawl", usage);
7166
7230
  await technicalAeoCrawl(project3, { runId: getString(input.values, "run-id"), date: getString(input.values, "date"), format: input.format });
@@ -7171,7 +7235,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7171
7235
  usage: "canonry technical-aeo progress <project> --run-id <id> [--format json]",
7172
7236
  options: { "run-id": stringOption() },
7173
7237
  run: async (input) => {
7174
- const { technicalAeoProgress } = await import("./technical-aeo-HKJQHMMS.js");
7238
+ const { technicalAeoProgress } = await import("./technical-aeo-2TJEHHBR.js");
7175
7239
  const usage = "canonry technical-aeo progress <project> --run-id <id> [--format json]";
7176
7240
  const project3 = requireProject(input, "technical-aeo.progress", usage);
7177
7241
  const runId = requireStringOption(input, "run-id", {
@@ -7194,7 +7258,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7194
7258
  "max-edges": stringOption()
7195
7259
  },
7196
7260
  run: async (input) => {
7197
- const { technicalAeoSubgraph } = await import("./technical-aeo-HKJQHMMS.js");
7261
+ const { technicalAeoSubgraph } = await import("./technical-aeo-2TJEHHBR.js");
7198
7262
  const usage = "canonry technical-aeo subgraph <project> [--run-id <id>] [--node-key <key>|--url <url>] [--hops <n>] [--max-nodes <n>] [--max-edges <n>] [--format json]";
7199
7263
  const project3 = requireProject(input, "technical-aeo.subgraph", usage);
7200
7264
  const nodeKey = getString(input.values, "node-key");
@@ -7229,7 +7293,7 @@ Usage: ${usage}`, {
7229
7293
  "max-depth": stringOption()
7230
7294
  },
7231
7295
  run: async (input) => {
7232
- const { technicalAeoPath } = await import("./technical-aeo-HKJQHMMS.js");
7296
+ const { technicalAeoPath } = await import("./technical-aeo-2TJEHHBR.js");
7233
7297
  const usage = "canonry technical-aeo path <project> (--to-node-key <key>|--to-url <url>) [--run-id <id>] [--from-node-key <key>|--from-url <url>] [--max-depth <n>] [--format json]";
7234
7298
  const project3 = requireProject(input, "technical-aeo.path", usage);
7235
7299
  const fromNodeKey = getString(input.values, "from-node-key");
@@ -7273,7 +7337,7 @@ Usage: ${usage}`, {
7273
7337
  limit: stringOption()
7274
7338
  },
7275
7339
  run: async (input) => {
7276
- const { technicalAeoChanges } = await import("./technical-aeo-HKJQHMMS.js");
7340
+ const { technicalAeoChanges } = await import("./technical-aeo-2TJEHHBR.js");
7277
7341
  const usage = "canonry technical-aeo changes <project> [--from-run-id <id>] [--to-run-id <id>] [--scope all|pages|links] [--change all|added|removed|changed] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7278
7342
  const project3 = requireProject(input, "technical-aeo.changes", usage);
7279
7343
  const fromRunId = getString(input.values, "from-run-id");
@@ -7320,7 +7384,7 @@ Usage: ${usage}`, {
7320
7384
  limit: stringOption()
7321
7385
  },
7322
7386
  run: async (input) => {
7323
- const { technicalAeoCrawlPages } = await import("./technical-aeo-HKJQHMMS.js");
7387
+ const { technicalAeoCrawlPages } = await import("./technical-aeo-2TJEHHBR.js");
7324
7388
  const usage = "canonry technical-aeo crawl-pages <project> [--run-id <id> | --date YYYY-MM-DD] [--inventory-eligible true|false] [--fetch-state <state>] [--indexability-state <state>] [--audit-state <state>] [--sort url|path|score-asc|score-desc] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7325
7389
  const project3 = requireProject(input, "technical-aeo.crawl-pages", usage);
7326
7390
  const sort = getString(input.values, "sort");
@@ -7350,7 +7414,7 @@ Usage: ${usage}`, {
7350
7414
  usage: "canonry technical-aeo page-audit <project> (--node-key <key>|--url <url>) [--run-id <id>] [--format json]",
7351
7415
  options: { "run-id": stringOption(), "node-key": stringOption(), url: stringOption() },
7352
7416
  run: async (input) => {
7353
- const { technicalAeoPageAudit } = await import("./technical-aeo-HKJQHMMS.js");
7417
+ const { technicalAeoPageAudit } = await import("./technical-aeo-2TJEHHBR.js");
7354
7418
  const usage = "canonry technical-aeo page-audit <project> (--node-key <key>|--url <url>) [--run-id <id>] [--format json]";
7355
7419
  const project3 = requireProject(input, "technical-aeo.page-audit", usage);
7356
7420
  const nodeKey = getString(input.values, "node-key");
@@ -7382,7 +7446,7 @@ Usage: ${usage}`, {
7382
7446
  usage: "canonry technical-aeo structure <project> [--run-id <id>] [--parent-path <path>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]",
7383
7447
  options: { "run-id": stringOption(), "parent-path": stringOption(), cursor: stringOption(), limit: stringOption() },
7384
7448
  run: async (input) => {
7385
- const { technicalAeoStructure } = await import("./technical-aeo-HKJQHMMS.js");
7449
+ const { technicalAeoStructure } = await import("./technical-aeo-2TJEHHBR.js");
7386
7450
  const usage = "canonry technical-aeo structure <project> [--run-id <id>] [--parent-path <path>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7387
7451
  const project3 = requireProject(input, "technical-aeo.structure", usage);
7388
7452
  await technicalAeoStructure(project3, {
@@ -7407,7 +7471,7 @@ Usage: ${usage}`, {
7407
7471
  limit: stringOption()
7408
7472
  },
7409
7473
  run: async (input) => {
7410
- const { technicalAeoInternalLinks } = await import("./technical-aeo-HKJQHMMS.js");
7474
+ const { technicalAeoInternalLinks } = await import("./technical-aeo-2TJEHHBR.js");
7411
7475
  const usage = "canonry technical-aeo links <project> [--run-id <id>] [--source-url <url>] [--target-url <url>] [--followable|--nofollow] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7412
7476
  const project3 = requireProject(input, "technical-aeo.links", usage);
7413
7477
  const followable = getBoolean(input.values, "followable");
@@ -7435,7 +7499,7 @@ Usage: ${usage}`, {
7435
7499
  usage: "canonry technical-aeo links neighbors <project> (--node-key <key>|--url <url>) [--run-id <id>] [--limit <n>] [--format json]",
7436
7500
  options: { "run-id": stringOption(), "node-key": stringOption(), url: stringOption(), limit: stringOption() },
7437
7501
  run: async (input) => {
7438
- const { technicalAeoLinkNeighbors } = await import("./technical-aeo-HKJQHMMS.js");
7502
+ const { technicalAeoLinkNeighbors } = await import("./technical-aeo-2TJEHHBR.js");
7439
7503
  const usage = "canonry technical-aeo links neighbors <project> (--node-key <key>|--url <url>) [--run-id <id>] [--limit <n>] [--format json]";
7440
7504
  const project3 = requireProject(input, "technical-aeo.links.neighbors", usage);
7441
7505
  const nodeKey = getString(input.values, "node-key");
@@ -7461,7 +7525,7 @@ Usage: ${usage}`, {
7461
7525
  usage: "canonry technical-aeo dead-links <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]",
7462
7526
  options: { "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7463
7527
  run: async (input) => {
7464
- const { technicalAeoDeadLinks } = await import("./technical-aeo-HKJQHMMS.js");
7528
+ const { technicalAeoDeadLinks } = await import("./technical-aeo-2TJEHHBR.js");
7465
7529
  const usage = "canonry technical-aeo dead-links <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7466
7530
  const project3 = requireProject(input, "technical-aeo.dead-links", usage);
7467
7531
  await technicalAeoDeadLinks(project3, {
@@ -7613,7 +7677,7 @@ var VISIBILITY_STATS_CLI_COMMANDS = [
7613
7677
  "query-class": stringOption()
7614
7678
  },
7615
7679
  run: async (input) => {
7616
- const { showVisibilityStats } = await import("./visibility-stats-MPRNHPZW.js");
7680
+ const { showVisibilityStats } = await import("./visibility-stats-HSGT3OL3.js");
7617
7681
  const project3 = requireProject(input, "visibility-stats", USAGE4);
7618
7682
  await showVisibilityStats(project3, {
7619
7683
  since: getString(input.values, "since"),
@@ -7644,7 +7708,7 @@ var VISIBILITY_STATS_CLI_COMMANDS = [
7644
7708
  location: stringOption()
7645
7709
  },
7646
7710
  run: async (input) => {
7647
- const { showVisibilityCompare } = await import("./visibility-stats-MPRNHPZW.js");
7711
+ const { showVisibilityCompare } = await import("./visibility-stats-HSGT3OL3.js");
7648
7712
  const project3 = requireProject(input, "visibility-compare", COMPARE_USAGE);
7649
7713
  await showVisibilityCompare(project3, {
7650
7714
  from: getString(input.values, "from"),
@@ -7727,7 +7791,7 @@ var WORDPRESS_CLI_COMMANDS = [
7727
7791
  "default-env": stringOption()
7728
7792
  },
7729
7793
  run: async (input) => {
7730
- const { wordpressConnect } = await import("./wordpress-U5XKHURL.js");
7794
+ const { wordpressConnect } = await import("./wordpress-ALODIEFK.js");
7731
7795
  const usage = "canonry wordpress connect <project> --url <url> --user <user> [--app-password <password>] [--staging-url <url>] [--default-env live|staging] [--format json]";
7732
7796
  const project3 = requireProject(input, "wordpress.connect", usage);
7733
7797
  const url = requireStringOption(input, "url", {
@@ -7761,7 +7825,7 @@ var WORDPRESS_CLI_COMMANDS = [
7761
7825
  path: ["wordpress", "disconnect"],
7762
7826
  usage: "canonry wordpress disconnect <project> [--format json]",
7763
7827
  run: async (input) => {
7764
- const { wordpressDisconnect } = await import("./wordpress-U5XKHURL.js");
7828
+ const { wordpressDisconnect } = await import("./wordpress-ALODIEFK.js");
7765
7829
  const project3 = requireProject(input, "wordpress.disconnect", "canonry wordpress disconnect <project> [--format json]");
7766
7830
  await wordpressDisconnect(project3, input.format);
7767
7831
  }
@@ -7770,7 +7834,7 @@ var WORDPRESS_CLI_COMMANDS = [
7770
7834
  path: ["wordpress", "status"],
7771
7835
  usage: "canonry wordpress status <project> [--format json]",
7772
7836
  run: async (input) => {
7773
- const { wordpressStatus } = await import("./wordpress-U5XKHURL.js");
7837
+ const { wordpressStatus } = await import("./wordpress-ALODIEFK.js");
7774
7838
  const project3 = requireProject(input, "wordpress.status", "canonry wordpress status <project> [--format json]");
7775
7839
  await wordpressStatus(project3, input.format);
7776
7840
  }
@@ -7780,7 +7844,7 @@ var WORDPRESS_CLI_COMMANDS = [
7780
7844
  usage: "canonry wordpress pages <project> [--live|--staging] [--format json]",
7781
7845
  options: envOptions,
7782
7846
  run: async (input) => {
7783
- const { wordpressPages } = await import("./wordpress-U5XKHURL.js");
7847
+ const { wordpressPages } = await import("./wordpress-ALODIEFK.js");
7784
7848
  const usage = "canonry wordpress pages <project> [--live|--staging] [--format json]";
7785
7849
  const project3 = requireProject(input, "wordpress.pages", usage);
7786
7850
  await wordpressPages(project3, {
@@ -7794,7 +7858,7 @@ var WORDPRESS_CLI_COMMANDS = [
7794
7858
  usage: "canonry wordpress page <project> <slug> [--live|--staging] [--format json]",
7795
7859
  options: envOptions,
7796
7860
  run: async (input) => {
7797
- const { wordpressPage } = await import("./wordpress-U5XKHURL.js");
7861
+ const { wordpressPage } = await import("./wordpress-ALODIEFK.js");
7798
7862
  const usage = "canonry wordpress page <project> <slug> [--live|--staging] [--format json]";
7799
7863
  const project3 = requireProject(input, "wordpress.page", usage);
7800
7864
  const slug = requirePositional(input, 1, {
@@ -7820,7 +7884,7 @@ var WORDPRESS_CLI_COMMANDS = [
7820
7884
  ...envOptions
7821
7885
  },
7822
7886
  run: async (input) => {
7823
- const { wordpressCreatePage } = await import("./wordpress-U5XKHURL.js");
7887
+ const { wordpressCreatePage } = await import("./wordpress-ALODIEFK.js");
7824
7888
  const usage = "canonry wordpress create-page <project> --title <title> --slug <slug> [--content <content>|--content-file <path>] [--status draft|publish] [--live|--staging] [--format json]";
7825
7889
  const project3 = requireProject(input, "wordpress.create-page", usage);
7826
7890
  await wordpressCreatePage(project3, {
@@ -7853,7 +7917,7 @@ var WORDPRESS_CLI_COMMANDS = [
7853
7917
  ...envOptions
7854
7918
  },
7855
7919
  run: async (input) => {
7856
- const { wordpressUpdatePage } = await import("./wordpress-U5XKHURL.js");
7920
+ const { wordpressUpdatePage } = await import("./wordpress-ALODIEFK.js");
7857
7921
  const usage = "canonry wordpress update-page <project> <slug> [--title <title>] [--slug <slug>] [--content <content>|--content-file <path>] [--status draft|publish] [--live|--staging] [--format json]";
7858
7922
  const project3 = requireProject(input, "wordpress.update-page", usage);
7859
7923
  const currentSlug = requirePositional(input, 1, {
@@ -7884,7 +7948,7 @@ var WORDPRESS_CLI_COMMANDS = [
7884
7948
  ...envOptions
7885
7949
  },
7886
7950
  run: async (input) => {
7887
- const { wordpressBulkSetMeta, wordpressSetMeta } = await import("./wordpress-U5XKHURL.js");
7951
+ const { wordpressBulkSetMeta, wordpressSetMeta } = await import("./wordpress-ALODIEFK.js");
7888
7952
  const fromFile = getString(input.values, "from");
7889
7953
  if (fromFile) {
7890
7954
  const usage2 = "canonry wordpress set-meta <project> --from <file> [--live|--staging] [--format json]";
@@ -7921,7 +7985,7 @@ var WORDPRESS_CLI_COMMANDS = [
7921
7985
  ...envOptions
7922
7986
  },
7923
7987
  run: async (input) => {
7924
- const { wordpressSchemaDeploy } = await import("./wordpress-U5XKHURL.js");
7988
+ const { wordpressSchemaDeploy } = await import("./wordpress-ALODIEFK.js");
7925
7989
  const usage = "canonry wordpress schema deploy <project> --profile <file> [--live|--staging] [--format json]";
7926
7990
  const project3 = requireProject(input, "wordpress.schema.deploy", usage);
7927
7991
  const profile = requireStringOption(input, "profile", {
@@ -7941,7 +8005,7 @@ var WORDPRESS_CLI_COMMANDS = [
7941
8005
  usage: "canonry wordpress schema status <project> [--live|--staging] [--format json]",
7942
8006
  options: envOptions,
7943
8007
  run: async (input) => {
7944
- const { wordpressSchemaStatus } = await import("./wordpress-U5XKHURL.js");
8008
+ const { wordpressSchemaStatus } = await import("./wordpress-ALODIEFK.js");
7945
8009
  const usage = "canonry wordpress schema status <project> [--live|--staging] [--format json]";
7946
8010
  const project3 = requireProject(input, "wordpress.schema.status", usage);
7947
8011
  await wordpressSchemaStatus(project3, {
@@ -7955,7 +8019,7 @@ var WORDPRESS_CLI_COMMANDS = [
7955
8019
  usage: "canonry wordpress schema <project> <slug> [--live|--staging] [--format json]",
7956
8020
  options: envOptions,
7957
8021
  run: async (input) => {
7958
- const { wordpressSchema } = await import("./wordpress-U5XKHURL.js");
8022
+ const { wordpressSchema } = await import("./wordpress-ALODIEFK.js");
7959
8023
  const usage = "canonry wordpress schema <project> <slug> [--live|--staging] [--format json]";
7960
8024
  const project3 = requireProject(input, "wordpress.schema", usage);
7961
8025
  const slug = requirePositional(input, 1, {
@@ -7978,7 +8042,7 @@ var WORDPRESS_CLI_COMMANDS = [
7978
8042
  ...envOptions
7979
8043
  },
7980
8044
  run: async (input) => {
7981
- const { wordpressSetSchema } = await import("./wordpress-U5XKHURL.js");
8045
+ const { wordpressSetSchema } = await import("./wordpress-ALODIEFK.js");
7982
8046
  const usage = "canonry wordpress set-schema <project> <slug> --json <json> [--type <type>] [--live|--staging] [--format json]";
7983
8047
  const project3 = requireProject(input, "wordpress.set-schema", usage);
7984
8048
  const slug = requirePositional(input, 1, {
@@ -8004,7 +8068,7 @@ var WORDPRESS_CLI_COMMANDS = [
8004
8068
  usage: "canonry wordpress llms-txt <project> [--live|--staging] [--format json]",
8005
8069
  options: envOptions,
8006
8070
  run: async (input) => {
8007
- const { wordpressLlmsTxt } = await import("./wordpress-U5XKHURL.js");
8071
+ const { wordpressLlmsTxt } = await import("./wordpress-ALODIEFK.js");
8008
8072
  const usage = "canonry wordpress llms-txt <project> [--live|--staging] [--format json]";
8009
8073
  const project3 = requireProject(input, "wordpress.llms-txt", usage);
8010
8074
  await wordpressLlmsTxt(project3, {
@@ -8021,7 +8085,7 @@ var WORDPRESS_CLI_COMMANDS = [
8021
8085
  ...envOptions
8022
8086
  },
8023
8087
  run: async (input) => {
8024
- const { wordpressSetLlmsTxt } = await import("./wordpress-U5XKHURL.js");
8088
+ const { wordpressSetLlmsTxt } = await import("./wordpress-ALODIEFK.js");
8025
8089
  const usage = "canonry wordpress set-llms-txt <project> --content <content> [--live|--staging] [--format json]";
8026
8090
  const project3 = requireProject(input, "wordpress.set-llms-txt", usage);
8027
8091
  await wordpressSetLlmsTxt(project3, {
@@ -8049,7 +8113,7 @@ var WORDPRESS_CLI_COMMANDS = [
8049
8113
  ...envOptions
8050
8114
  },
8051
8115
  run: async (input) => {
8052
- const { wordpressOnboard } = await import("./wordpress-U5XKHURL.js");
8116
+ const { wordpressOnboard } = await import("./wordpress-ALODIEFK.js");
8053
8117
  const usage = "canonry wordpress onboard <project> --url <url> --user <user> [--app-password <pw>] [--profile <file>] [--format json]";
8054
8118
  const project3 = requireProject(input, "wordpress.onboard", usage);
8055
8119
  const url = requireStringOption(input, "url", {
@@ -8080,7 +8144,7 @@ var WORDPRESS_CLI_COMMANDS = [
8080
8144
  usage: "canonry wordpress audit <project> [--live|--staging] [--format json]",
8081
8145
  options: envOptions,
8082
8146
  run: async (input) => {
8083
- const { wordpressAudit } = await import("./wordpress-U5XKHURL.js");
8147
+ const { wordpressAudit } = await import("./wordpress-ALODIEFK.js");
8084
8148
  const usage = "canonry wordpress audit <project> [--live|--staging] [--format json]";
8085
8149
  const project3 = requireProject(input, "wordpress.audit", usage);
8086
8150
  await wordpressAudit(project3, {
@@ -8093,7 +8157,7 @@ var WORDPRESS_CLI_COMMANDS = [
8093
8157
  path: ["wordpress", "diff"],
8094
8158
  usage: "canonry wordpress diff <project> <slug> [--format json]",
8095
8159
  run: async (input) => {
8096
- const { wordpressDiff } = await import("./wordpress-U5XKHURL.js");
8160
+ const { wordpressDiff } = await import("./wordpress-ALODIEFK.js");
8097
8161
  const usage = "canonry wordpress diff <project> <slug> [--format json]";
8098
8162
  const project3 = requireProject(input, "wordpress.diff", usage);
8099
8163
  const slug = requirePositional(input, 1, {
@@ -8108,7 +8172,7 @@ var WORDPRESS_CLI_COMMANDS = [
8108
8172
  path: ["wordpress", "staging", "status"],
8109
8173
  usage: "canonry wordpress staging status <project> [--format json]",
8110
8174
  run: async (input) => {
8111
- const { wordpressStagingStatus } = await import("./wordpress-U5XKHURL.js");
8175
+ const { wordpressStagingStatus } = await import("./wordpress-ALODIEFK.js");
8112
8176
  const project3 = requireProject(input, "wordpress.staging.status", "canonry wordpress staging status <project> [--format json]");
8113
8177
  await wordpressStagingStatus(project3, input.format);
8114
8178
  }
@@ -8117,7 +8181,7 @@ var WORDPRESS_CLI_COMMANDS = [
8117
8181
  path: ["wordpress", "staging", "push"],
8118
8182
  usage: "canonry wordpress staging push <project> [--format json]",
8119
8183
  run: async (input) => {
8120
- const { wordpressStagingPush } = await import("./wordpress-U5XKHURL.js");
8184
+ const { wordpressStagingPush } = await import("./wordpress-ALODIEFK.js");
8121
8185
  const project3 = requireProject(input, "wordpress.staging.push", "canonry wordpress staging push <project> [--format json]");
8122
8186
  await wordpressStagingPush(project3, input.format);
8123
8187
  }
@@ -8154,7 +8218,7 @@ var AGENT_CLI_COMMANDS = [
8154
8218
  usage: `canonry agent conversations ${action} <project> [--id <conversation-id>] [--offset <n>] [--limit <n>] [--format json]`,
8155
8219
  options: { id: stringOption(), offset: stringOption(), limit: stringOption() },
8156
8220
  run: async (input) => {
8157
- const { agentConversations } = await import("./agent-conversations-2TZDIGA6.js");
8221
+ const { agentConversations } = await import("./agent-conversations-JEIFZHT3.js");
8158
8222
  const usage = `canonry agent conversations ${action} <project>`;
8159
8223
  const project3 = requireProject(input, `agent.conversations.${action}`, usage);
8160
8224
  const id2 = action === "new" || action === "list" ? getString(input.values, "id") : requireStringOption(input, "id", { command: `agent.conversations.${action}`, usage, message: "--id is required" });
@@ -8177,9 +8241,9 @@ var AGENT_CLI_COMMANDS = [
8177
8241
  "timeout-ms": stringOption()
8178
8242
  },
8179
8243
  run: async (input) => {
8180
- const { coerceAgentProvider } = await import("./session-DDESFV3N.js");
8181
- const { AERO_TOOL_PROFILES, isAeroToolProfile } = await import("./tools-ZNVQFEAX.js");
8182
- const { agentAsk } = await import("./agent-ask-QJV225AT.js");
8244
+ const { coerceAgentProvider } = await import("./session-PILSYOTX.js");
8245
+ const { AERO_TOOL_PROFILES, isAeroToolProfile } = await import("./tools-U6VGYZV2.js");
8246
+ const { agentAsk } = await import("./agent-ask-GIK7T2HD.js");
8183
8247
  const usage = `canonry agent ask <project> "<prompt>" [--provider ${AGENT_PROVIDER_IDS.join("|")}] [--model <id>] [--scope all|read-only] [--profile default|ads-operator] [--context <json>] [--conversation <id>] [--max-tool-calls <n>] [--timeout-ms <ms>] [--format json]`;
8184
8248
  const project3 = requireProject(input, "agent.ask", usage);
8185
8249
  const prompt = input.positionals.slice(1).join(" ").trim();
@@ -8264,7 +8328,7 @@ Usage: ${usage}`, {
8264
8328
  usage: "canonry agent providers <project> [--format json]",
8265
8329
  options: {},
8266
8330
  run: async (input) => {
8267
- const { agentProviders } = await import("./agent-providers-VS6PH55Y.js");
8331
+ const { agentProviders } = await import("./agent-providers-JRL3VZA7.js");
8268
8332
  const project3 = requireProject(input, "agent.providers", "canonry agent providers <project> [--format json]");
8269
8333
  await agentProviders({ project: project3, format: input.format });
8270
8334
  }
@@ -8276,7 +8340,7 @@ Usage: ${usage}`, {
8276
8340
  url: stringOption()
8277
8341
  },
8278
8342
  run: async (input) => {
8279
- const { agentAttach } = await import("./agent-LFX7GHWD.js");
8343
+ const { agentAttach } = await import("./agent-2FSGY7SD.js");
8280
8344
  const usage = "canonry agent attach <project> --url <webhook-url> [--format json]";
8281
8345
  const project3 = requireProject(input, "agent.attach", usage);
8282
8346
  const url = requireStringOption(input, "url", {
@@ -8295,7 +8359,7 @@ Usage: ${usage}`, {
8295
8359
  usage: "canonry agent detach <project> [--format json]",
8296
8360
  options: {},
8297
8361
  run: async (input) => {
8298
- const { agentDetach } = await import("./agent-LFX7GHWD.js");
8362
+ const { agentDetach } = await import("./agent-2FSGY7SD.js");
8299
8363
  const project3 = requireProject(input, "agent.detach", "canonry agent detach <project> [--format json]");
8300
8364
  await agentDetach({ project: project3, format: input.format });
8301
8365
  }
@@ -8305,7 +8369,7 @@ Usage: ${usage}`, {
8305
8369
  usage: "canonry agent transcript <project> [--format json]",
8306
8370
  options: {},
8307
8371
  run: async (input) => {
8308
- const { agentTranscript } = await import("./agent-transcript-BUUHOTZM.js");
8372
+ const { agentTranscript } = await import("./agent-transcript-ZQDNW3IE.js");
8309
8373
  const project3 = requireProject(input, "agent.transcript", "canonry agent transcript <project> [--format json]");
8310
8374
  await agentTranscript({ project: project3, format: input.format });
8311
8375
  }
@@ -8315,7 +8379,7 @@ Usage: ${usage}`, {
8315
8379
  usage: "canonry agent reset <project> [--format json]",
8316
8380
  options: {},
8317
8381
  run: async (input) => {
8318
- const { agentTranscriptReset } = await import("./agent-transcript-BUUHOTZM.js");
8382
+ const { agentTranscriptReset } = await import("./agent-transcript-ZQDNW3IE.js");
8319
8383
  const project3 = requireProject(input, "agent.reset", "canonry agent reset <project> [--format json]");
8320
8384
  await agentTranscriptReset({ project: project3, format: input.format });
8321
8385
  }
@@ -8325,7 +8389,7 @@ Usage: ${usage}`, {
8325
8389
  usage: "canonry agent clear <project> [--format json]",
8326
8390
  options: {},
8327
8391
  run: async (input) => {
8328
- const { agentTranscriptReset } = await import("./agent-transcript-BUUHOTZM.js");
8392
+ const { agentTranscriptReset } = await import("./agent-transcript-ZQDNW3IE.js");
8329
8393
  const project3 = requireProject(input, "agent.clear", "canonry agent clear <project> [--format json]");
8330
8394
  await agentTranscriptReset({ project: project3, format: input.format });
8331
8395
  }
@@ -8335,7 +8399,7 @@ Usage: ${usage}`, {
8335
8399
  usage: "canonry agent memory list <project> [--format json]",
8336
8400
  options: {},
8337
8401
  run: async (input) => {
8338
- const { agentMemoryList } = await import("./agent-memory-XCY3ZG5C.js");
8402
+ const { agentMemoryList } = await import("./agent-memory-JC3JJXON.js");
8339
8403
  const usage = "canonry agent memory list <project> [--format json]";
8340
8404
  const project3 = requireProject(input, "agent.memory.list", usage);
8341
8405
  await agentMemoryList({ project: project3, format: input.format });
@@ -8349,7 +8413,7 @@ Usage: ${usage}`, {
8349
8413
  value: stringOption()
8350
8414
  },
8351
8415
  run: async (input) => {
8352
- const { agentMemorySet } = await import("./agent-memory-XCY3ZG5C.js");
8416
+ const { agentMemorySet } = await import("./agent-memory-JC3JJXON.js");
8353
8417
  const usage = "canonry agent memory set <project> --key <k> --value <v> [--format json]";
8354
8418
  const project3 = requireProject(input, "agent.memory.set", usage);
8355
8419
  const key = requireStringOption(input, "key", {
@@ -8378,7 +8442,7 @@ Usage: ${usage}`, {
8378
8442
  key: stringOption()
8379
8443
  },
8380
8444
  run: async (input) => {
8381
- const { agentMemoryForget } = await import("./agent-memory-XCY3ZG5C.js");
8445
+ const { agentMemoryForget } = await import("./agent-memory-JC3JJXON.js");
8382
8446
  const usage = "canonry agent memory forget <project> --key <k> [--format json]";
8383
8447
  const project3 = requireProject(input, "agent.memory.forget", usage);
8384
8448
  const key = requireStringOption(input, "key", {