@canonry/canonry 7.66.0 → 7.68.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/assets/agent-workspace/skills/aero/references/seo-analysis.md +12 -4
  2. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +2 -2
  3. package/assets/assets/{AgentSetupPage-DXFxOJ1W.js → AgentSetupPage-DyssdZ1J.js} +3 -3
  4. package/assets/assets/{AuditHistoryPanel-CS8UfTHc.js → AuditHistoryPanel-Bma4Q6p0.js} +1 -1
  5. package/assets/assets/{BacklinksPage-D5IA2tNY.js → BacklinksPage-C3GoO2Wf.js} +1 -1
  6. package/assets/assets/{HistoryPage-DsQAUkgR.js → HistoryPage-6iYvYCL7.js} +1 -1
  7. package/assets/assets/MeasurementPropertyPage-CjI5eB3b.js +4 -0
  8. package/assets/assets/ProjectPage-GYIgNPxn.js +9 -0
  9. package/assets/assets/{RunsPage-BgjN1N3t.js → RunsPage-Cw0GTxgx.js} +1 -1
  10. package/assets/assets/{SettingsPage-BQuqnEvm.js → SettingsPage-Cvg8BvZn.js} +1 -1
  11. package/assets/assets/SiteHealthSection-vejp2Igj.js +2 -0
  12. package/assets/assets/ToneBadge-c2bgjqqz.js +60 -0
  13. package/assets/assets/{TrafficPage-BBqpvwl5.js → TrafficPage-BUb0xr-b.js} +1 -1
  14. package/assets/assets/TrafficSourceDetailPage-DmrtEYs8.js +1 -0
  15. package/assets/assets/{account-context-wRthfm6K.js → account-context-qhg8esXw.js} +1 -1
  16. package/assets/assets/{card-Bq64-UB5.js → card-BNthgfAY.js} +1 -1
  17. package/assets/assets/{extract-error-message-BRDc8As2.js → extract-error-message-DuYEL09s.js} +1 -1
  18. package/assets/assets/{format-helpers-D5wFtgg2.js → format-helpers-6v-a8B3S.js} +1 -1
  19. package/assets/assets/index-BUigRGam.js +60 -0
  20. package/assets/assets/{index-C6U4u18w.css → index-CqNwsqjm.css} +1 -1
  21. package/assets/assets/{query-client-IopmAOx0.js → query-client-COFiuVJB.js} +1 -1
  22. package/assets/assets/react-query-ZdpN7cFt.js +1 -0
  23. package/assets/assets/{react-sigma_core.esm.min-d72rX0Uo.js → react-sigma_core.esm.min-EbeNATny.js} +1 -1
  24. package/assets/assets/service-DGFjEsYR.js +1 -0
  25. package/assets/index.html +8 -8
  26. package/dist/{ads-IFKZU7SC.js → ads-AHM5LMVT.js} +3 -3
  27. package/dist/{agent-3KMENHL3.js → agent-2FSGY7SD.js} +7 -7
  28. package/dist/{agent-ask-7WVQLLD5.js → agent-ask-GIK7T2HD.js} +3 -3
  29. package/dist/{agent-conversations-5LR67TBD.js → agent-conversations-JEIFZHT3.js} +3 -3
  30. package/dist/{agent-memory-GKUCCKVX.js → agent-memory-JC3JJXON.js} +3 -3
  31. package/dist/{agent-providers-TVCRM3YZ.js → agent-providers-JRL3VZA7.js} +3 -3
  32. package/dist/{agent-transcript-MUTCOOWG.js → agent-transcript-ZQDNW3IE.js} +3 -3
  33. package/dist/{analytics-2IXSG5ML.js → analytics-HMYE6EIX.js} +3 -3
  34. package/dist/{apply-7RIYK4VC.js → apply-F5CHVFC3.js} +3 -3
  35. package/dist/{backfill-VU3FV6DQ.js → backfill-JZDQKZHY.js} +9 -9
  36. package/dist/{backlinks-DLSRYEX2.js → backlinks-L7XEHBAP.js} +3 -3
  37. package/dist/{bing-4CXTZUH4.js → bing-XTMKLVRJ.js} +3 -3
  38. package/dist/{bootstrap-OOHSBSDQ.js → bootstrap-AEHBYC77.js} +10 -10
  39. package/dist/{cdp-Y53SRSRV.js → cdp-SSIHU3PU.js} +7 -7
  40. package/dist/{chunk-6ASEI24F.js → chunk-2D7O5UHJ.js} +1 -1
  41. package/dist/{chunk-LBRG6RKI.js → chunk-33LH4ZGF.js} +2 -1
  42. package/dist/{chunk-VGUZPC3I.js → chunk-4KMUJOYL.js} +4 -4
  43. package/dist/{chunk-2YBEI6LE.js → chunk-5SK27UE7.js} +1 -1
  44. package/dist/{chunk-JYOMHNRP.js → chunk-6W3ENB2X.js} +758 -467
  45. package/dist/{chunk-IHOVPHUW.js → chunk-7AXVACK6.js} +2 -2
  46. package/dist/{chunk-TJZLICMB.js → chunk-7NMCRHQL.js} +3 -3
  47. package/dist/{chunk-YRX5UOM3.js → chunk-7SGZHGZ2.js} +1 -1
  48. package/dist/{chunk-JALKQREN.js → chunk-ARIYTYOM.js} +83 -11
  49. package/dist/{chunk-PFKBQTYD.js → chunk-ARYBII44.js} +1 -1
  50. package/dist/{chunk-743NYXIK.js → chunk-CZUPNWLH.js} +2 -2
  51. package/dist/{chunk-EIMXB6UH.js → chunk-FDRZQH3Y.js} +14 -2
  52. package/dist/{chunk-OSF27DCY.js → chunk-IVBJEVHS.js} +2 -2
  53. package/dist/{chunk-BCRRAH5C.js → chunk-J4CNNYRQ.js} +1 -1
  54. package/dist/{chunk-DH5QRKFW.js → chunk-JPVG5LIE.js} +3 -3
  55. package/dist/{chunk-QRBZBJ4U.js → chunk-K2P2XO6P.js} +1 -1
  56. package/dist/{chunk-ZRSNMEB3.js → chunk-K54WGCZV.js} +409 -340
  57. package/dist/{chunk-L7DQYID4.js → chunk-LABVR6K7.js} +4 -4
  58. package/dist/{chunk-FNI3QSVD.js → chunk-LTMQ4MHF.js} +1 -1
  59. package/dist/{chunk-EYWC24VC.js → chunk-MVRPFLEL.js} +1 -1
  60. package/dist/{chunk-CKTA5374.js → chunk-PAVSKSKA.js} +1 -1
  61. package/dist/{chunk-AVQQRTMD.js → chunk-QXCQSRHL.js} +72 -33
  62. package/dist/{chunk-K2HDTMRI.js → chunk-R42VEDCB.js} +3 -3
  63. package/dist/{chunk-H37CDAZX.js → chunk-RNA6ZCM6.js} +2 -2
  64. package/dist/{chunk-FG7KMVA6.js → chunk-U3EJ5RW7.js} +12 -6
  65. package/dist/{chunk-DE2UI37M.js → chunk-V6ALEP33.js} +2 -2
  66. package/dist/{chunk-WNCOBSPN.js → chunk-VPZMSV3Q.js} +254 -9
  67. package/dist/{chunk-DVYS2RMM.js → chunk-W7PA35VJ.js} +4 -4
  68. package/dist/{chunk-YJYLFIVT.js → chunk-XMXYUP7X.js} +1 -1
  69. package/dist/{chunk-J5YZXRD5.js → chunk-Y42G2YKT.js} +8 -8
  70. package/dist/{chunk-ALQEGGYM.js → chunk-YIIIYNPW.js} +22 -4
  71. package/dist/{chunk-XC44Q5XR.js → chunk-ZD5G5QEV.js} +1 -1
  72. package/dist/{chunk-SGZWOUIZ.js → chunk-ZU6X4SN2.js} +5 -5
  73. package/dist/{chunk-IPF2S5G2.js → chunk-ZUXFHO4T.js} +4 -4
  74. package/dist/{citations-ZTQIYYDB.js → citations-NIFKIG6Y.js} +3 -3
  75. package/dist/{cli-catalog-IZJXAHFQ.js → cli-catalog-ONYERYPV.js} +3 -3
  76. package/dist/{cli-commands-XYM2VMAK.js → cli-commands-LWI2NEWW.js} +7 -7
  77. package/dist/cli.js +13 -13
  78. package/dist/{competitor-SIXAPHOM.js → competitor-NSUSTLNW.js} +3 -3
  79. package/dist/{content-XPS3D3Y6.js → content-W5VYYMAW.js} +3 -3
  80. package/dist/{dashboard-FMJDM5PA.js → dashboard-NNA3P645.js} +6 -6
  81. package/dist/{demo-QQKSHTPO.js → demo-5M4YGVV4.js} +1 -1
  82. package/dist/{demo-server-LQ3QXUAS.js → demo-server-FDR4RKLM.js} +14 -11
  83. package/dist/{discover-K5HFEU2T.js → discover-VCKMXFOR.js} +3 -3
  84. package/dist/{discover-eval-6536Z2YN.js → discover-eval-CPVP7EK5.js} +3 -3
  85. package/dist/{doctor-STNH3PHH.js → doctor-EVCP6PDM.js} +3 -3
  86. package/dist/{evidence-W2EWKBAV.js → evidence-ZWRGNZWN.js} +3 -3
  87. package/dist/{export-cmd-EGHMY3M6.js → export-cmd-AM6SIRUW.js} +3 -3
  88. package/dist/{ga-DVIG3PVW.js → ga-6J67NDMZ.js} +3 -3
  89. package/dist/{gbp-SNS4XZBO.js → gbp-ERTWK26L.js} +3 -3
  90. package/dist/{google-KGPHZG6E.js → google-O6VQFK4L.js} +4 -4
  91. package/dist/{google-marketing-VZR6W3L6.js → google-marketing-OEW2YGUR.js} +1 -1
  92. package/dist/{health-cmd-2KWO2GOM.js → health-cmd-OPGK37MK.js} +3 -3
  93. package/dist/{history-ZY27B7JE.js → history-WTU4ETCU.js} +3 -3
  94. package/dist/index.d.ts +114 -8
  95. package/dist/index.js +24 -24
  96. package/dist/{init-5TXIKII2.js → init-WTAVKFGR.js} +11 -11
  97. package/dist/{insights-MUYEOSOG.js → insights-LPEDLSEV.js} +3 -3
  98. package/dist/intelligence-service-4OO2VQ2I.js +15 -0
  99. package/dist/{journeys-YO54IRVC.js → journeys-TWVQNRLT.js} +3 -3
  100. package/dist/{keys-M4QZGYVJ.js → keys-C6FPREBZ.js} +3 -3
  101. package/dist/{keyword-MU62MGWT.js → keyword-PBSE65DK.js} +3 -3
  102. package/dist/{logs-BAQM334Q.js → logs-62RUOAKT.js} +3 -3
  103. package/dist/{mcp-LYS5P3PB.js → mcp-P4LNENKX.js} +2 -2
  104. package/dist/mcp.js +9 -9
  105. package/dist/{measurement-plan-HVSTZWTW.js → measurement-plan-HKW3IVIE.js} +5 -5
  106. package/dist/{notify-XSP5JXU3.js → notify-A3I3G7NK.js} +3 -3
  107. package/dist/{organic-evidence-4HYW4PVO.js → organic-evidence-OFUJBDCK.js} +3 -3
  108. package/dist/{overview-XH72WTZT.js → overview-NSRODN2X.js} +4 -4
  109. package/dist/{project-UKH7FTQX.js → project-B5G2HEAB.js} +3 -3
  110. package/dist/{query-RRD5M4QV.js → query-UQHJVYUJ.js} +3 -3
  111. package/dist/{research-V2IGDUKL.js → research-ZWBJDLJY.js} +3 -3
  112. package/dist/{results-export-5FC7ZT6O.js → results-export-FOJYT4MK.js} +3 -3
  113. package/dist/{run-B2A4LMWU.js → run-ZIUQ2TNN.js} +4 -4
  114. package/dist/{schedule-PLY6CHQT.js → schedule-B5CORKGT.js} +3 -3
  115. package/dist/{search-ACVK3WH5.js → search-2XCZKP6A.js} +3 -3
  116. package/dist/{serve-2LTQZPEK.js → serve-3BSLRICO.js} +25 -25
  117. package/dist/{session-IHXMPETX.js → session-PILSYOTX.js} +12 -12
  118. package/dist/{settings-ZHBNX2I5.js → settings-Y3LVGZH4.js} +3 -3
  119. package/dist/{skills-KWRTCXTF.js → skills-6E3RVQAQ.js} +2 -2
  120. package/dist/{snapshot-GBDCCV6L.js → snapshot-RAV2HCL7.js} +3 -3
  121. package/dist/{src-NOTQWGYV.js → src-VUD6WO5N.js} +6 -2
  122. package/dist/{status-FGDDGBMJ.js → status-2WCUV6C2.js} +4 -4
  123. package/dist/{technical-aeo-AK4QI63Q.js → technical-aeo-2TJEHHBR.js} +3 -3
  124. package/dist/{telemetry-6QPWYMCR.js → telemetry-LQAD26UJ.js} +4 -4
  125. package/dist/{tools-PBNTVVN7.js → tools-U6VGYZV2.js} +11 -11
  126. package/dist/{traffic-AS4PIOQL.js → traffic-3TBXSHPV.js} +5 -5
  127. package/dist/{users-BNYKF35J.js → users-2HDDA5GT.js} +3 -3
  128. package/dist/{visibility-stats-TWL3GJMD.js → visibility-stats-HSGT3OL3.js} +3 -3
  129. package/dist/{wordpress-XBWXAACD.js → wordpress-ALODIEFK.js} +3 -3
  130. package/package.json +1 -1
  131. package/assets/assets/MeasurementPropertyPage-CdCnjCaS.js +0 -4
  132. package/assets/assets/ProjectPage-D3oFKnBG.js +0 -9
  133. package/assets/assets/SiteHealthSection-C6QE9xNk.js +0 -2
  134. package/assets/assets/ToneBadge-DNva5_AM.js +0 -60
  135. package/assets/assets/TrafficSourceDetailPage-uxd0ojry.js +0 -1
  136. package/assets/assets/index-Ttz5_bL3.js +0 -60
  137. package/assets/assets/react-query-CISHjSch.js +0 -1
  138. package/assets/assets/service-DsDxSQuN.js +0 -1
  139. package/dist/intelligence-service-U4NSGZUH.js +0 -15
@@ -17,7 +17,7 @@ import {
17
17
  showMeasurementProperty,
18
18
  showMeasurementPropertyEvidence,
19
19
  showMeasurementReport
20
- } from "./chunk-K2HDTMRI.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-EIMXB6UH.js";
29
+ } from "./chunk-FDRZQH3Y.js";
30
30
  import {
31
31
  getConfigDir,
32
32
  loadConfig
33
- } from "./chunk-EYWC24VC.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-LBRG6RKI.js";
46
+ } from "./chunk-33LH4ZGF.js";
47
47
  import {
48
48
  emitJsonl
49
49
  } from "./chunk-Z7IUAJOF.js";
@@ -60,6 +60,7 @@ import {
60
60
  OperationAccesses,
61
61
  RatioUnits,
62
62
  SITE_AUDIT_MAX_PAGE_LIMIT,
63
+ SeoMarketRankingOutcomes,
63
64
  WINDOW_SETS,
64
65
  agentConversationListQuerySchema,
65
66
  agentTurnLimitsSchema,
@@ -76,6 +77,7 @@ import {
76
77
  formatPercent,
77
78
  gbpNegativeReviewMaxStarsSchema,
78
79
  isRetiredAgentProviderId,
80
+ marketRankingBands,
79
81
  parseOrganicEvidencePeriod,
80
82
  parseWindowIn,
81
83
  providerDispatchModeSchema,
@@ -89,6 +91,7 @@ import {
89
91
  sentimentSummaryRequestSchema,
90
92
  seoEvidenceQuerySchema,
91
93
  seoMarketRankingQuerySchema,
94
+ seoMarketRankingSummaryQuerySchema,
92
95
  seoProfileInputSchema,
93
96
  seoReconcileInputSchema,
94
97
  seoSyncInputSchema,
@@ -97,7 +100,7 @@ import {
97
100
  snapshotProviderModeSchema,
98
101
  visibilityCompareSelectionSchema,
99
102
  winnabilityClassSchema
100
- } from "./chunk-WNCOBSPN.js";
103
+ } from "./chunk-VPZMSV3Q.js";
101
104
 
102
105
  // src/cli-commands/sentiment.ts
103
106
  import "zod";
@@ -481,7 +484,10 @@ async function showSeoRun(project3, id2, format) {
481
484
  const value = await createApiClient().getSeoRun(project3, id2);
482
485
  if (printSeoJson(value, format)) return;
483
486
  printSeoRun(value);
484
- for (const task of value.tasks) console.log(` ${task.capability}${task.target ? ` \xB7 ${task.target.value}` : ""}: ${task.status}${task.error ? ` \xB7 ${task.error}` : ""}`);
487
+ for (const task of value.tasks) {
488
+ const subject = task.searchText !== null ? ` \xB7 "${task.searchText}" from ${task.locationLabel ?? "its market"}` : task.target ? ` \xB7 ${task.target.value}` : "";
489
+ console.log(` ${task.capability}${subject}${task.retried ? " \xB7 retried once" : ""}: ${task.status}${task.error ? ` \xB7 ${task.error}` : ""}`);
490
+ }
485
491
  if (value.resultsTruncated) console.log("Result preview is partial. Read the evidence commands with this run ID for all saved rows.");
486
492
  }
487
493
  async function cancelSeoRun(project3, id2, format) {
@@ -521,10 +527,51 @@ async function showSeoMarketRankings(project3, query, format) {
521
527
  if (printSeoJson(value, format)) return;
522
528
  console.log(`Market rankings \xB7 run ${value.runId ?? "none"} \xB7 ${value.items.length} of ${value.total} rows \xB7 offset ${value.offset}`);
523
529
  for (const row of value.items) {
524
- const rank = row.rankOrganic === null ? `Not in the top ${row.depth}` : `Google rank ${row.rankOrganic}`;
525
- console.log(`${row.marketLabel} ${row.queryText} ${rank} ${row.url ?? "No ranking page"} Searched as "${row.searchText}" from ${row.locationLabel} \xB7 ${row.provenance.device} \xB7 ${row.provenance.collectedAt}`);
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";
532
+ const source = row.provenance ? ` \xB7 ${row.provenance.device} \xB7 ${row.provenance.collectedAt}` : "";
533
+ console.log(`${row.marketLabel} ${row.queryText} ${rankText(row)} ${row.url ?? "No ranking page"} ${rivalText} Searched as "${row.searchText}" from ${row.locationLabel}${source}`);
526
534
  }
527
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
+ }
528
575
 
529
576
  // src/cli-commands/seo.ts
530
577
  var selectionOptions2 = { "profile-id": stringOption(), "run-id": stringOption(), limit: stringOption(), offset: stringOption() };
@@ -539,11 +586,25 @@ function selection2(input) {
539
586
  if (!result.success) throw usageError(result.error.issues.map((issue) => `${issue.path.join(".")}: ${issue.message}`).join("; "));
540
587
  return result.data;
541
588
  }
542
- var rankingOptions = { ...selectionOptions2, market: stringOption(), region: stringOption() };
589
+ var rankingOptions = { ...selectionOptions2, market: stringOption(), region: stringOption(), outcome: stringOption(), search: stringOption(), sort: stringOption() };
543
590
  function rankingSelection(input) {
544
591
  const result = seoMarketRankingQuerySchema.safeParse({
545
592
  ...selection2(input),
546
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"),
547
608
  regionKey: getString(input.values, "region")
548
609
  });
549
610
  if (!result.success) throw usageError(result.error.issues.map((issue) => `${issue.path.join(".")}: ${issue.message}`).join("; "));
@@ -611,11 +672,19 @@ var SEO_CLI_COMMANDS = [
611
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) },
612
673
  {
613
674
  path: ["seo", "market-rankings"],
614
- 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]",
615
676
  access: "stored",
616
677
  options: rankingOptions,
617
- 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.",
618
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)
619
688
  }
620
689
  ];
621
690
 
@@ -627,7 +696,7 @@ var DEMO_CLI_COMMANDS = [{
627
696
  options: { host: stringOption(), port: stringOption(), "trust-proxy": multiStringOption() },
628
697
  allowPositionals: false,
629
698
  run: async (input) => {
630
- const { demoCommand } = await import("./demo-QQKSHTPO.js");
699
+ const { demoCommand } = await import("./demo-5M4YGVV4.js");
631
700
  await demoCommand({
632
701
  host: getString(input.values, "host"),
633
702
  port: getString(input.values, "port"),
@@ -648,7 +717,7 @@ var BACKFILL_CLI_COMMANDS = [
648
717
  allowPositionals: false,
649
718
  supportsDryRun: true,
650
719
  run: async (input) => {
651
- const { backfillAnswerVisibilityCommand } = await import("./backfill-VU3FV6DQ.js");
720
+ const { backfillAnswerVisibilityCommand } = await import("./backfill-JZDQKZHY.js");
652
721
  await backfillAnswerVisibilityCommand({
653
722
  project: getString(input.values, "project"),
654
723
  dryRun: input.dryRun,
@@ -665,7 +734,7 @@ var BACKFILL_CLI_COMMANDS = [
665
734
  allowPositionals: false,
666
735
  supportsDryRun: true,
667
736
  run: async (input) => {
668
- const { backfillAnswerMentionsCommand } = await import("./backfill-VU3FV6DQ.js");
737
+ const { backfillAnswerMentionsCommand } = await import("./backfill-JZDQKZHY.js");
669
738
  await backfillAnswerMentionsCommand({
670
739
  project: getString(input.values, "project"),
671
740
  dryRun: input.dryRun,
@@ -683,7 +752,7 @@ var BACKFILL_CLI_COMMANDS = [
683
752
  },
684
753
  supportsDryRun: true,
685
754
  run: async (input) => {
686
- const { backfillInsightsCommand } = await import("./backfill-VU3FV6DQ.js");
755
+ const { backfillInsightsCommand } = await import("./backfill-JZDQKZHY.js");
687
756
  const usage = "canonry backfill insights <project> [--from-run <id>] [--to-run <id>] [--since <date>] [--dry-run] [--format json]";
688
757
  const project3 = requireProject(input, "backfill insights", usage);
689
758
  await backfillInsightsCommand(project3, {
@@ -703,7 +772,7 @@ var BACKFILL_CLI_COMMANDS = [
703
772
  },
704
773
  allowPositionals: false,
705
774
  run: async (input) => {
706
- const { backfillNormalizedPathsCommand } = await import("./backfill-VU3FV6DQ.js");
775
+ const { backfillNormalizedPathsCommand } = await import("./backfill-JZDQKZHY.js");
707
776
  await backfillNormalizedPathsCommand({
708
777
  project: getString(input.values, "project"),
709
778
  format: input.format
@@ -718,7 +787,7 @@ var BACKFILL_CLI_COMMANDS = [
718
787
  },
719
788
  allowPositionals: false,
720
789
  run: async (input) => {
721
- const { backfillAiReferralPathsCommand } = await import("./backfill-VU3FV6DQ.js");
790
+ const { backfillAiReferralPathsCommand } = await import("./backfill-JZDQKZHY.js");
722
791
  await backfillAiReferralPathsCommand({
723
792
  project: getString(input.values, "project"),
724
793
  format: input.format
@@ -730,7 +799,7 @@ var BACKFILL_CLI_COMMANDS = [
730
799
  usage: "canonry backfill snapshot-attribution <project> [--dry-run] [--format json]",
731
800
  supportsDryRun: true,
732
801
  run: async (input) => {
733
- const { backfillSnapshotAttributionCommand } = await import("./backfill-VU3FV6DQ.js");
802
+ const { backfillSnapshotAttributionCommand } = await import("./backfill-JZDQKZHY.js");
734
803
  const usage = "canonry backfill snapshot-attribution <project> [--dry-run] [--format json]";
735
804
  const project3 = requireProject(input, "backfill snapshot-attribution", usage);
736
805
  await backfillSnapshotAttributionCommand({
@@ -749,7 +818,7 @@ var BACKFILL_CLI_COMMANDS = [
749
818
  allowPositionals: false,
750
819
  supportsDryRun: true,
751
820
  run: async (input) => {
752
- const { backfillTrafficClassificationCommand } = await import("./backfill-VU3FV6DQ.js");
821
+ const { backfillTrafficClassificationCommand } = await import("./backfill-JZDQKZHY.js");
753
822
  await backfillTrafficClassificationCommand({
754
823
  project: getString(input.values, "project"),
755
824
  dryRun: input.dryRun,
@@ -777,7 +846,7 @@ var BACKLINKS_CLI_COMMANDS = [
777
846
  usage: "canonry backlinks install [--format json]",
778
847
  options: {},
779
848
  run: async (input) => {
780
- const { backlinksInstall } = await import("./backlinks-DLSRYEX2.js");
849
+ const { backlinksInstall } = await import("./backlinks-L7XEHBAP.js");
781
850
  await backlinksInstall({ format: input.format });
782
851
  }
783
852
  },
@@ -786,7 +855,7 @@ var BACKLINKS_CLI_COMMANDS = [
786
855
  usage: "canonry backlinks doctor [--format json]",
787
856
  options: {},
788
857
  run: async (input) => {
789
- const { backlinksDoctor } = await import("./backlinks-DLSRYEX2.js");
858
+ const { backlinksDoctor } = await import("./backlinks-L7XEHBAP.js");
790
859
  await backlinksDoctor({ format: input.format });
791
860
  }
792
861
  },
@@ -798,7 +867,7 @@ var BACKLINKS_CLI_COMMANDS = [
798
867
  wait: { type: "boolean" }
799
868
  },
800
869
  run: async (input) => {
801
- const { backlinksSync } = await import("./backlinks-DLSRYEX2.js");
870
+ const { backlinksSync } = await import("./backlinks-L7XEHBAP.js");
802
871
  await backlinksSync({
803
872
  release: getString(input.values, "release"),
804
873
  wait: getBoolean(input.values, "wait"),
@@ -811,7 +880,7 @@ var BACKLINKS_CLI_COMMANDS = [
811
880
  usage: "canonry backlinks status [--format json]",
812
881
  options: {},
813
882
  run: async (input) => {
814
- const { backlinksStatus } = await import("./backlinks-DLSRYEX2.js");
883
+ const { backlinksStatus } = await import("./backlinks-L7XEHBAP.js");
815
884
  await backlinksStatus({ format: input.format });
816
885
  }
817
886
  },
@@ -825,7 +894,7 @@ var BACKLINKS_CLI_COMMANDS = [
825
894
  "exclude-crawlers": { type: "boolean" }
826
895
  },
827
896
  run: async (input) => {
828
- const { backlinksList, parseSourceFlag } = await import("./backlinks-DLSRYEX2.js");
897
+ const { backlinksList, parseSourceFlag } = await import("./backlinks-L7XEHBAP.js");
829
898
  const project3 = requireProject(
830
899
  input,
831
900
  "backlinks list",
@@ -853,7 +922,7 @@ var BACKLINKS_CLI_COMMANDS = [
853
922
  "exclude-crawlers": { type: "boolean" }
854
923
  },
855
924
  run: async (input) => {
856
- const { backlinksSources } = await import("./backlinks-DLSRYEX2.js");
925
+ const { backlinksSources } = await import("./backlinks-L7XEHBAP.js");
857
926
  const project3 = requireProject(
858
927
  input,
859
928
  "backlinks sources",
@@ -871,7 +940,7 @@ var BACKLINKS_CLI_COMMANDS = [
871
940
  usage: "canonry backlinks releases [--format json]",
872
941
  options: {},
873
942
  run: async (input) => {
874
- const { backlinksReleases } = await import("./backlinks-DLSRYEX2.js");
943
+ const { backlinksReleases } = await import("./backlinks-L7XEHBAP.js");
875
944
  await backlinksReleases({ format: input.format });
876
945
  }
877
946
  },
@@ -880,7 +949,7 @@ var BACKLINKS_CLI_COMMANDS = [
880
949
  usage: "canonry backlinks releases latest [--format json]",
881
950
  options: {},
882
951
  run: async (input) => {
883
- const { backlinksLatestRelease } = await import("./backlinks-DLSRYEX2.js");
952
+ const { backlinksLatestRelease } = await import("./backlinks-L7XEHBAP.js");
884
953
  await backlinksLatestRelease({ format: input.format });
885
954
  }
886
955
  },
@@ -892,7 +961,7 @@ var BACKLINKS_CLI_COMMANDS = [
892
961
  wait: { type: "boolean" }
893
962
  },
894
963
  run: async (input) => {
895
- const { backlinksExtract } = await import("./backlinks-DLSRYEX2.js");
964
+ const { backlinksExtract } = await import("./backlinks-L7XEHBAP.js");
896
965
  const project3 = requireProject(
897
966
  input,
898
967
  "backlinks extract",
@@ -913,7 +982,7 @@ var BACKLINKS_CLI_COMMANDS = [
913
982
  release: stringOption()
914
983
  },
915
984
  run: async (input) => {
916
- const { backlinksCachePrune } = await import("./backlinks-DLSRYEX2.js");
985
+ const { backlinksCachePrune } = await import("./backlinks-L7XEHBAP.js");
917
986
  const release = requireStringOption(input, "release", {
918
987
  message: "--release is required",
919
988
  usage: "canonry backlinks cache prune --release <id>",
@@ -936,7 +1005,7 @@ var BING_CLI_COMMANDS = [
936
1005
  "api-key": stringOption()
937
1006
  },
938
1007
  run: async (input) => {
939
- const { bingConnect } = await import("./bing-4CXTZUH4.js");
1008
+ const { bingConnect } = await import("./bing-XTMKLVRJ.js");
940
1009
  const project3 = requireProject(input, "bing.connect", "canonry bing connect <project> [--api-key <key>] [--format json]");
941
1010
  await bingConnect(project3, {
942
1011
  apiKey: getString(input.values, "api-key"),
@@ -948,7 +1017,7 @@ var BING_CLI_COMMANDS = [
948
1017
  path: ["bing", "disconnect"],
949
1018
  usage: "canonry bing disconnect <project> [--format json]",
950
1019
  run: async (input) => {
951
- const { bingDisconnect } = await import("./bing-4CXTZUH4.js");
1020
+ const { bingDisconnect } = await import("./bing-XTMKLVRJ.js");
952
1021
  const project3 = requireProject(input, "bing.disconnect", "canonry bing disconnect <project> [--format json]");
953
1022
  await bingDisconnect(project3, input.format);
954
1023
  }
@@ -957,7 +1026,7 @@ var BING_CLI_COMMANDS = [
957
1026
  path: ["bing", "status"],
958
1027
  usage: "canonry bing status <project> [--format json]",
959
1028
  run: async (input) => {
960
- const { bingStatus } = await import("./bing-4CXTZUH4.js");
1029
+ const { bingStatus } = await import("./bing-XTMKLVRJ.js");
961
1030
  const project3 = requireProject(input, "bing.status", "canonry bing status <project> [--format json]");
962
1031
  await bingStatus(project3, input.format);
963
1032
  }
@@ -966,7 +1035,7 @@ var BING_CLI_COMMANDS = [
966
1035
  path: ["bing", "sites"],
967
1036
  usage: "canonry bing sites <project> [--format json]",
968
1037
  run: async (input) => {
969
- const { bingSites } = await import("./bing-4CXTZUH4.js");
1038
+ const { bingSites } = await import("./bing-XTMKLVRJ.js");
970
1039
  const project3 = requireProject(input, "bing.sites", "canonry bing sites <project> [--format json]");
971
1040
  await bingSites(project3, input.format);
972
1041
  }
@@ -975,7 +1044,7 @@ var BING_CLI_COMMANDS = [
975
1044
  path: ["bing", "set-site"],
976
1045
  usage: "canonry bing set-site <project> <url> [--format json]",
977
1046
  run: async (input) => {
978
- const { bingSetSite } = await import("./bing-4CXTZUH4.js");
1047
+ const { bingSetSite } = await import("./bing-XTMKLVRJ.js");
979
1048
  const project3 = requireProject(input, "bing.set-site", "canonry bing set-site <project> <url> [--format json]");
980
1049
  const siteUrl = requirePositional(input, 1, {
981
1050
  command: "bing.set-site",
@@ -990,7 +1059,7 @@ var BING_CLI_COMMANDS = [
990
1059
  usage: "canonry bing coverage-history <project> [--limit <n>] [--format json]",
991
1060
  options: { limit: stringOption() },
992
1061
  run: async (input) => {
993
- const { bingCoverageHistory } = await import("./bing-4CXTZUH4.js");
1062
+ const { bingCoverageHistory } = await import("./bing-XTMKLVRJ.js");
994
1063
  const project3 = requireProject(input, "bing.coverage-history", "canonry bing coverage-history <project> [--limit <n>] [--format json]");
995
1064
  await bingCoverageHistory(project3, {
996
1065
  limit: parseIntegerOption(input, "limit", {
@@ -1006,7 +1075,7 @@ var BING_CLI_COMMANDS = [
1006
1075
  path: ["bing", "coverage"],
1007
1076
  usage: "canonry bing coverage <project> [--format json]",
1008
1077
  run: async (input) => {
1009
- const { bingCoverage } = await import("./bing-4CXTZUH4.js");
1078
+ const { bingCoverage } = await import("./bing-XTMKLVRJ.js");
1010
1079
  const project3 = requireProject(input, "bing.coverage", "canonry bing coverage <project> [--format json]");
1011
1080
  await bingCoverage(project3, input.format);
1012
1081
  }
@@ -1015,7 +1084,7 @@ var BING_CLI_COMMANDS = [
1015
1084
  path: ["bing", "inspect"],
1016
1085
  usage: "canonry bing inspect <project> <url> [--format json]",
1017
1086
  run: async (input) => {
1018
- const { bingInspect } = await import("./bing-4CXTZUH4.js");
1087
+ const { bingInspect } = await import("./bing-XTMKLVRJ.js");
1019
1088
  const project3 = requireProject(input, "bing.inspect", "canonry bing inspect <project> <url> [--format json]");
1020
1089
  const url = requirePositional(input, 1, {
1021
1090
  command: "bing.inspect",
@@ -1032,7 +1101,7 @@ var BING_CLI_COMMANDS = [
1032
1101
  url: stringOption()
1033
1102
  },
1034
1103
  run: async (input) => {
1035
- const { bingInspections } = await import("./bing-4CXTZUH4.js");
1104
+ const { bingInspections } = await import("./bing-XTMKLVRJ.js");
1036
1105
  const project3 = requireProject(input, "bing.inspections", "canonry bing inspections <project> [--url <url>] [--format json]");
1037
1106
  await bingInspections(project3, {
1038
1107
  url: getString(input.values, "url"),
@@ -1048,7 +1117,7 @@ var BING_CLI_COMMANDS = [
1048
1117
  wait: { type: "boolean", default: false }
1049
1118
  },
1050
1119
  run: async (input) => {
1051
- const { bingInspectSitemap } = await import("./bing-4CXTZUH4.js");
1120
+ const { bingInspectSitemap } = await import("./bing-XTMKLVRJ.js");
1052
1121
  const project3 = requireProject(input, "bing.inspect-sitemap", "canonry bing inspect-sitemap <project> [--sitemap-url <url>] [--wait] [--format json]");
1053
1122
  await bingInspectSitemap(project3, {
1054
1123
  sitemapUrl: getString(input.values, "sitemap-url"),
@@ -1064,7 +1133,7 @@ var BING_CLI_COMMANDS = [
1064
1133
  "all-unindexed": { type: "boolean", default: false }
1065
1134
  },
1066
1135
  run: async (input) => {
1067
- const { bingRequestIndexing } = await import("./bing-4CXTZUH4.js");
1136
+ const { bingRequestIndexing } = await import("./bing-XTMKLVRJ.js");
1068
1137
  const project3 = requireProject(input, "bing.request-indexing", "canonry bing request-indexing <project> [url] [--all-unindexed] [--format json]");
1069
1138
  const url = input.positionals[1];
1070
1139
  const allUnindexed = getBoolean(input.values, "all-unindexed");
@@ -1088,7 +1157,7 @@ var BING_CLI_COMMANDS = [
1088
1157
  path: ["bing", "performance"],
1089
1158
  usage: "canonry bing performance <project> [--format json]",
1090
1159
  run: async (input) => {
1091
- const { bingPerformance } = await import("./bing-4CXTZUH4.js");
1160
+ const { bingPerformance } = await import("./bing-XTMKLVRJ.js");
1092
1161
  const project3 = requireProject(input, "bing.performance", "canonry bing performance <project> [--format json]");
1093
1162
  await bingPerformance(project3, input.format);
1094
1163
  }
@@ -1097,7 +1166,7 @@ var BING_CLI_COMMANDS = [
1097
1166
  path: ["bing", "refresh"],
1098
1167
  usage: "canonry bing refresh <project> [--format json]",
1099
1168
  run: async (input) => {
1100
- const { bingRefresh } = await import("./bing-4CXTZUH4.js");
1169
+ const { bingRefresh } = await import("./bing-XTMKLVRJ.js");
1101
1170
  const project3 = requireProject(input, "bing.refresh", "canonry bing refresh <project> [--format json]");
1102
1171
  await bingRefresh(project3, input.format);
1103
1172
  }
@@ -1126,7 +1195,7 @@ var CDP_CLI_COMMANDS = [
1126
1195
  },
1127
1196
  allowPositionals: false,
1128
1197
  run: async (input) => {
1129
- const { cdpConnect } = await import("./cdp-Y53SRSRV.js");
1198
+ const { cdpConnect } = await import("./cdp-SSIHU3PU.js");
1130
1199
  await cdpConnect({
1131
1200
  host: getString(input.values, "host"),
1132
1201
  port: getString(input.values, "port"),
@@ -1139,7 +1208,7 @@ var CDP_CLI_COMMANDS = [
1139
1208
  usage: "canonry cdp status [--format json]",
1140
1209
  allowPositionals: false,
1141
1210
  run: async (input) => {
1142
- const { cdpStatus } = await import("./cdp-Y53SRSRV.js");
1211
+ const { cdpStatus } = await import("./cdp-SSIHU3PU.js");
1143
1212
  await cdpStatus(input.format);
1144
1213
  }
1145
1214
  },
@@ -1148,7 +1217,7 @@ var CDP_CLI_COMMANDS = [
1148
1217
  usage: "canonry cdp targets [--format json]",
1149
1218
  allowPositionals: false,
1150
1219
  run: async (input) => {
1151
- const { cdpTargets } = await import("./cdp-Y53SRSRV.js");
1220
+ const { cdpTargets } = await import("./cdp-SSIHU3PU.js");
1152
1221
  await cdpTargets(input.format);
1153
1222
  }
1154
1223
  },
@@ -1159,7 +1228,7 @@ var CDP_CLI_COMMANDS = [
1159
1228
  targets: stringOption()
1160
1229
  },
1161
1230
  run: async (input) => {
1162
- const { cdpScreenshot } = await import("./cdp-Y53SRSRV.js");
1231
+ const { cdpScreenshot } = await import("./cdp-SSIHU3PU.js");
1163
1232
  const query = requirePositional(input, 0, {
1164
1233
  command: "cdp.screenshot",
1165
1234
  usage: "canonry cdp screenshot <query> [--targets <list>] [--format json]",
@@ -1191,7 +1260,7 @@ var DASHBOARD_CLI_COMMANDS = [
1191
1260
  usage: "canonry dashboard reset-password [--format json]",
1192
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.",
1193
1262
  run: async (input) => {
1194
- const { resetDashboardPassword } = await import("./dashboard-FMJDM5PA.js");
1263
+ const { resetDashboardPassword } = await import("./dashboard-NNA3P645.js");
1195
1264
  await resetDashboardPassword({ format: input.format });
1196
1265
  }
1197
1266
  },
@@ -1307,7 +1376,7 @@ var DISCOVER_CLI_COMMANDS = [
1307
1376
  wait: { type: "boolean", default: false }
1308
1377
  },
1309
1378
  run: async (input) => {
1310
- const { discoverRun } = await import("./discover-K5HFEU2T.js");
1379
+ const { discoverRun } = await import("./discover-VCKMXFOR.js");
1311
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]';
1312
1381
  const project3 = requireProject(input, "discover.run", usage);
1313
1382
  await discoverRun(project3, {
@@ -1344,7 +1413,7 @@ var DISCOVER_CLI_COMMANDS = [
1344
1413
  "probe-concurrency": stringOption()
1345
1414
  },
1346
1415
  run: async (input) => {
1347
- const { discoverEval } = await import("./discover-eval-6536Z2YN.js");
1416
+ const { discoverEval } = await import("./discover-eval-CPVP7EK5.js");
1348
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]";
1349
1418
  await discoverEval({
1350
1419
  baseline: getString(input.values, "baseline"),
@@ -1380,7 +1449,7 @@ var DISCOVER_CLI_COMMANDS = [
1380
1449
  wait: { type: "boolean", default: false }
1381
1450
  },
1382
1451
  run: async (input) => {
1383
- const { discoverSeed } = await import("./discover-K5HFEU2T.js");
1452
+ const { discoverSeed } = await import("./discover-VCKMXFOR.js");
1384
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]';
1385
1454
  const project3 = requireProject(input, "discover.seed", usage);
1386
1455
  await discoverSeed(project3, {
@@ -1409,7 +1478,7 @@ var DISCOVER_CLI_COMMANDS = [
1409
1478
  path: ["discover", "probe"],
1410
1479
  usage: "canonry discover probe <project> <session-id> [--format json]",
1411
1480
  run: async (input) => {
1412
- const { discoverProbe } = await import("./discover-K5HFEU2T.js");
1481
+ const { discoverProbe } = await import("./discover-VCKMXFOR.js");
1413
1482
  const project3 = requireProject(
1414
1483
  input,
1415
1484
  "discover.probe",
@@ -1430,7 +1499,7 @@ var DISCOVER_CLI_COMMANDS = [
1430
1499
  limit: stringOption()
1431
1500
  },
1432
1501
  run: async (input) => {
1433
- const { discoverList } = await import("./discover-K5HFEU2T.js");
1502
+ const { discoverList } = await import("./discover-VCKMXFOR.js");
1434
1503
  const project3 = requireProject(
1435
1504
  input,
1436
1505
  "discover.list",
@@ -1450,7 +1519,7 @@ var DISCOVER_CLI_COMMANDS = [
1450
1519
  path: ["discover", "show"],
1451
1520
  usage: "canonry discover show <project> <session-id> [--format json]",
1452
1521
  run: async (input) => {
1453
- const { discoverShow } = await import("./discover-K5HFEU2T.js");
1522
+ const { discoverShow } = await import("./discover-VCKMXFOR.js");
1454
1523
  const project3 = requireProject(
1455
1524
  input,
1456
1525
  "discover.show",
@@ -1473,7 +1542,7 @@ var DISCOVER_CLI_COMMANDS = [
1473
1542
  "no-competitors": { type: "boolean", default: false }
1474
1543
  },
1475
1544
  run: async (input) => {
1476
- const { discoverPromote } = await import("./discover-K5HFEU2T.js");
1545
+ const { discoverPromote } = await import("./discover-VCKMXFOR.js");
1477
1546
  const usage = "canonry discover promote <project> <session-id> [--bucket cited,aspirational,wasted-surface] [--competitor-types direct-competitor,editorial-media] [--no-competitors] [--format json]";
1478
1547
  const project3 = requireProject(input, "discover.promote", usage);
1479
1548
  const sessionId = requirePositional(input, 1, {
@@ -1497,7 +1566,7 @@ var DISCOVER_CLI_COMMANDS = [
1497
1566
  "no-anchor": { type: "boolean", default: false }
1498
1567
  },
1499
1568
  run: async (input) => {
1500
- const { discoverHarvest } = await import("./discover-K5HFEU2T.js");
1569
+ const { discoverHarvest } = await import("./discover-VCKMXFOR.js");
1501
1570
  const usage = "canonry discover harvest <project> <session-id> [--min-probe-hits <n>] [--no-anchor] [--format json|jsonl]";
1502
1571
  const project3 = requireProject(input, "discover.harvest", usage);
1503
1572
  const sessionId = requirePositional(input, 1, {
@@ -1520,7 +1589,7 @@ var DISCOVER_CLI_COMMANDS = [
1520
1589
  path: ["discover", "promote", "preview"],
1521
1590
  usage: "canonry discover promote preview <project> <session-id> [--format json]",
1522
1591
  run: async (input) => {
1523
- const { discoverPromotePreview } = await import("./discover-K5HFEU2T.js");
1592
+ const { discoverPromotePreview } = await import("./discover-VCKMXFOR.js");
1524
1593
  const project3 = requireProject(
1525
1594
  input,
1526
1595
  "discover.promote.preview",
@@ -1621,7 +1690,7 @@ var RESEARCH_CLI_COMMANDS = [
1621
1690
  usage: BATCH_USAGE,
1622
1691
  options: { wait: { type: "boolean", default: false } },
1623
1692
  run: async (input) => {
1624
- const { researchBatch } = await import("./research-V2IGDUKL.js");
1693
+ const { researchBatch } = await import("./research-ZWBJDLJY.js");
1625
1694
  const project3 = requireProject(input, "research.batch", BATCH_USAGE);
1626
1695
  const source = requirePositional(input, 1, {
1627
1696
  command: "research.batch",
@@ -1648,7 +1717,7 @@ var RESEARCH_CLI_COMMANDS = [
1648
1717
  wait: { type: "boolean", default: false }
1649
1718
  },
1650
1719
  run: async (input) => {
1651
- const { researchRun } = await import("./research-V2IGDUKL.js");
1720
+ const { researchRun } = await import("./research-ZWBJDLJY.js");
1652
1721
  const project3 = requireProject(input, "research.run", RUN_USAGE);
1653
1722
  const provider = getString(input.values, "provider")?.trim() || void 0;
1654
1723
  const model = getString(input.values, "model")?.trim() || void 0;
@@ -1677,7 +1746,7 @@ Usage: ${RUN_USAGE}`, {
1677
1746
  usage: "canonry research list <project> [--limit <n>] [--cursor <cursor>] [--format json|jsonl]",
1678
1747
  options: { limit: stringOption(), cursor: stringOption() },
1679
1748
  run: async (input) => {
1680
- const { researchList } = await import("./research-V2IGDUKL.js");
1749
+ const { researchList } = await import("./research-ZWBJDLJY.js");
1681
1750
  const usage = "canonry research list <project> [--limit <n>] [--cursor <cursor>] [--format json|jsonl]";
1682
1751
  const project3 = requireProject(input, "research.list", usage);
1683
1752
  await researchList(project3, {
@@ -1691,7 +1760,7 @@ Usage: ${RUN_USAGE}`, {
1691
1760
  path: ["research", "show"],
1692
1761
  usage: "canonry research show <project> <run-id> [--format json|jsonl]",
1693
1762
  run: async (input) => {
1694
- const { researchShow } = await import("./research-V2IGDUKL.js");
1763
+ const { researchShow } = await import("./research-ZWBJDLJY.js");
1695
1764
  const usage = "canonry research show <project> <run-id> [--format json|jsonl]";
1696
1765
  const project3 = requireProject(input, "research.show", usage);
1697
1766
  const runId = requirePositional(input, 1, { command: "research.show", usage, message: "research run ID is required" });
@@ -1714,7 +1783,7 @@ var DOCTOR_CLI_COMMANDS = [
1714
1783
  },
1715
1784
  allowPositionals: false,
1716
1785
  run: async (input) => {
1717
- const { doctorCommand } = await import("./doctor-STNH3PHH.js");
1786
+ const { doctorCommand } = await import("./doctor-EVCP6PDM.js");
1718
1787
  await doctorCommand({
1719
1788
  project: getString(input.values, "project"),
1720
1789
  reportMonth: getString(input.values, "report-month"),
@@ -1735,7 +1804,7 @@ var ADS_CLI_COMMANDS = [
1735
1804
  "api-key": stringOption()
1736
1805
  },
1737
1806
  run: async (input) => {
1738
- const { adsConnect } = await import("./ads-IFKZU7SC.js");
1807
+ const { adsConnect } = await import("./ads-AHM5LMVT.js");
1739
1808
  const project3 = requireProject(input, "ads.connect", "canonry ads connect <project> --api-key <sdk-key> [--format json]");
1740
1809
  await adsConnect(project3, {
1741
1810
  apiKey: getString(input.values, "api-key"),
@@ -1747,7 +1816,7 @@ var ADS_CLI_COMMANDS = [
1747
1816
  path: ["ads", "disconnect"],
1748
1817
  usage: "canonry ads disconnect <project> [--format json]",
1749
1818
  run: async (input) => {
1750
- const { adsDisconnect } = await import("./ads-IFKZU7SC.js");
1819
+ const { adsDisconnect } = await import("./ads-AHM5LMVT.js");
1751
1820
  const project3 = requireProject(input, "ads.disconnect", "canonry ads disconnect <project> [--format json]");
1752
1821
  await adsDisconnect(project3, { format: input.format });
1753
1822
  }
@@ -1756,7 +1825,7 @@ var ADS_CLI_COMMANDS = [
1756
1825
  path: ["ads", "status"],
1757
1826
  usage: "canonry ads status <project> [--format json]",
1758
1827
  run: async (input) => {
1759
- const { adsStatus } = await import("./ads-IFKZU7SC.js");
1828
+ const { adsStatus } = await import("./ads-AHM5LMVT.js");
1760
1829
  const project3 = requireProject(input, "ads.status", "canonry ads status <project> [--format json]");
1761
1830
  await adsStatus(project3, { format: input.format });
1762
1831
  }
@@ -1765,7 +1834,7 @@ var ADS_CLI_COMMANDS = [
1765
1834
  path: ["ads", "account"],
1766
1835
  usage: "canonry ads account <project> [--format json]",
1767
1836
  run: async (input) => {
1768
- const { adsAccount } = await import("./ads-IFKZU7SC.js");
1837
+ const { adsAccount } = await import("./ads-AHM5LMVT.js");
1769
1838
  const project3 = requireProject(input, "ads.account", "canonry ads account <project> [--format json]");
1770
1839
  await adsAccount(project3, { format: input.format });
1771
1840
  }
@@ -1778,7 +1847,7 @@ var ADS_CLI_COMMANDS = [
1778
1847
  limit: stringOption()
1779
1848
  },
1780
1849
  run: async (input) => {
1781
- const { adsGeoSearch } = await import("./ads-IFKZU7SC.js");
1850
+ const { adsGeoSearch } = await import("./ads-AHM5LMVT.js");
1782
1851
  const usage = "canonry ads geo search <project> --query <text> [--limit <n>] [--format json|jsonl]";
1783
1852
  const project3 = requireProject(input, "ads.geo.search", usage);
1784
1853
  await adsGeoSearch(project3, {
@@ -1796,7 +1865,7 @@ var ADS_CLI_COMMANDS = [
1796
1865
  path: ["ads", "conversions", "pixels"],
1797
1866
  usage: "canonry ads conversions pixels <project> [--format json|jsonl]",
1798
1867
  run: async (input) => {
1799
- const { adsConversionPixels } = await import("./ads-IFKZU7SC.js");
1868
+ const { adsConversionPixels } = await import("./ads-AHM5LMVT.js");
1800
1869
  const project3 = requireProject(input, "ads.conversions.pixels", "canonry ads conversions pixels <project> [--format json|jsonl]");
1801
1870
  await adsConversionPixels(project3, { format: input.format });
1802
1871
  }
@@ -1805,7 +1874,7 @@ var ADS_CLI_COMMANDS = [
1805
1874
  path: ["ads", "conversions", "event-settings"],
1806
1875
  usage: "canonry ads conversions event-settings <project> [--format json|jsonl]",
1807
1876
  run: async (input) => {
1808
- const { adsConversionEventSettings } = await import("./ads-IFKZU7SC.js");
1877
+ const { adsConversionEventSettings } = await import("./ads-AHM5LMVT.js");
1809
1878
  const project3 = requireProject(input, "ads.conversions.event-settings", "canonry ads conversions event-settings <project> [--format json|jsonl]");
1810
1879
  await adsConversionEventSettings(project3, { format: input.format });
1811
1880
  }
@@ -1819,7 +1888,7 @@ var ADS_CLI_COMMANDS = [
1819
1888
  cursor: stringOption()
1820
1889
  },
1821
1890
  run: async (input) => {
1822
- const { adsOperationsUnresolved } = await import("./ads-IFKZU7SC.js");
1891
+ const { adsOperationsUnresolved } = await import("./ads-AHM5LMVT.js");
1823
1892
  const usage = "canonry ads operations unresolved <project> [--state <csv>] [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
1824
1893
  const project3 = requireProject(
1825
1894
  input,
@@ -1851,7 +1920,7 @@ Usage: ${usage}`, {
1851
1920
  path: ["ads", "operation"],
1852
1921
  usage: "canonry ads operation <project> <operation-key> [--format json]",
1853
1922
  run: async (input) => {
1854
- const { adsOperationGet } = await import("./ads-IFKZU7SC.js");
1923
+ const { adsOperationGet } = await import("./ads-AHM5LMVT.js");
1855
1924
  const usage = "canonry ads operation <project> <operation-key> [--format json]";
1856
1925
  const project3 = requireProject(input, "ads.operation", usage);
1857
1926
  const operationKey = requirePositional(input, 1, {
@@ -1869,7 +1938,7 @@ Usage: ${usage}`, {
1869
1938
  "operation-key": stringOption()
1870
1939
  },
1871
1940
  run: async (input) => {
1872
- const { adsOperationReconcile } = await import("./ads-IFKZU7SC.js");
1941
+ const { adsOperationReconcile } = await import("./ads-AHM5LMVT.js");
1873
1942
  const usage = "canonry ads operation reconcile <project> --operation-key <key> [--format json]";
1874
1943
  const project3 = requireProject(input, "ads.operation.reconcile", usage);
1875
1944
  const operationKey = requireStringOption(input, "operation-key", {
@@ -1888,7 +1957,7 @@ Usage: ${usage}`, {
1888
1957
  usage: "canonry ads operation resume-activation <project> --operation-key <key> [--format json]",
1889
1958
  options: { "operation-key": stringOption() },
1890
1959
  run: async (input) => {
1891
- const { adsOperationResumeActivation } = await import("./ads-IFKZU7SC.js");
1960
+ const { adsOperationResumeActivation } = await import("./ads-AHM5LMVT.js");
1892
1961
  const usage = "canonry ads operation resume-activation <project> --operation-key <key> [--format json]";
1893
1962
  const project3 = requireProject(input, "ads.operation.resume-activation", usage);
1894
1963
  await adsOperationResumeActivation(project3, {
@@ -1906,7 +1975,7 @@ Usage: ${usage}`, {
1906
1975
  usage: "canonry ads activation-grant create <project> --input <json-file|-> [--format json]",
1907
1976
  options: { input: stringOption() },
1908
1977
  run: async (input) => {
1909
- const { adsActivationGrantCreate } = await import("./ads-IFKZU7SC.js");
1978
+ const { adsActivationGrantCreate } = await import("./ads-AHM5LMVT.js");
1910
1979
  const usage = "canonry ads activation-grant create <project> --input <json-file|-> [--format json]";
1911
1980
  const project3 = requireProject(input, "ads.activation-grant.create", usage);
1912
1981
  await adsActivationGrantCreate(project3, {
@@ -1919,7 +1988,7 @@ Usage: ${usage}`, {
1919
1988
  path: ["ads", "activation-grant", "revoke"],
1920
1989
  usage: "canonry ads activation-grant revoke <project> <grant-id> [--format json]",
1921
1990
  run: async (input) => {
1922
- const { adsActivationGrantRevoke } = await import("./ads-IFKZU7SC.js");
1991
+ const { adsActivationGrantRevoke } = await import("./ads-AHM5LMVT.js");
1923
1992
  const usage = "canonry ads activation-grant revoke <project> <grant-id> [--format json]";
1924
1993
  const project3 = requireProject(input, "ads.activation-grant.revoke", usage);
1925
1994
  const grantId = requirePositional(input, 1, {
@@ -1935,7 +2004,7 @@ Usage: ${usage}`, {
1935
2004
  usage: "canonry ads image upload <project> --input <json-file|-> [--format json]",
1936
2005
  options: { input: stringOption() },
1937
2006
  run: async (input) => {
1938
- const { adsImageUpload } = await import("./ads-IFKZU7SC.js");
2007
+ const { adsImageUpload } = await import("./ads-AHM5LMVT.js");
1939
2008
  const project3 = requireProject(input, "ads.image.upload", "canonry ads image upload <project> --input <json-file|-> [--format json]");
1940
2009
  await adsImageUpload(project3, { input: getString(input.values, "input"), format: input.format });
1941
2010
  }
@@ -1945,7 +2014,7 @@ Usage: ${usage}`, {
1945
2014
  usage: "canonry ads campaign create <project> --input <json-file|-> [--format json]",
1946
2015
  options: { input: stringOption() },
1947
2016
  run: async (input) => {
1948
- const { adsCampaignCreate } = await import("./ads-IFKZU7SC.js");
2017
+ const { adsCampaignCreate } = await import("./ads-AHM5LMVT.js");
1949
2018
  const project3 = requireProject(input, "ads.campaign.create", "canonry ads campaign create <project> --input <json-file|-> [--format json]");
1950
2019
  await adsCampaignCreate(project3, { input: getString(input.values, "input"), format: input.format });
1951
2020
  }
@@ -1955,7 +2024,7 @@ Usage: ${usage}`, {
1955
2024
  usage: "canonry ads campaign update <project> <campaign-id> --input <json-file|-> [--format json]",
1956
2025
  options: { input: stringOption() },
1957
2026
  run: async (input) => {
1958
- const { adsCampaignUpdate } = await import("./ads-IFKZU7SC.js");
2027
+ const { adsCampaignUpdate } = await import("./ads-AHM5LMVT.js");
1959
2028
  const usage = "canonry ads campaign update <project> <campaign-id> --input <json-file|-> [--format json]";
1960
2029
  const project3 = requireProject(input, "ads.campaign.update", usage);
1961
2030
  const id2 = requirePositional(input, 1, { command: "ads.campaign.update", usage, message: "campaign id is required" });
@@ -1967,7 +2036,7 @@ Usage: ${usage}`, {
1967
2036
  usage: "canonry ads campaign activate-tree <project> <campaign-id> --input <json-file|-> [--format json]",
1968
2037
  options: { input: stringOption() },
1969
2038
  run: async (input) => {
1970
- const { adsCampaignActivateTree } = await import("./ads-IFKZU7SC.js");
2039
+ const { adsCampaignActivateTree } = await import("./ads-AHM5LMVT.js");
1971
2040
  const usage = "canonry ads campaign activate-tree <project> <campaign-id> --input <json-file|-> [--format json]";
1972
2041
  const project3 = requireProject(input, "ads.campaign.activate-tree", usage);
1973
2042
  const id2 = requirePositional(input, 1, {
@@ -1986,7 +2055,7 @@ Usage: ${usage}`, {
1986
2055
  usage: "canonry ads campaign pause <project> <campaign-id> --input <json-file|-> [--format json]",
1987
2056
  options: { input: stringOption() },
1988
2057
  run: async (input) => {
1989
- const { adsCampaignPause } = await import("./ads-IFKZU7SC.js");
2058
+ const { adsCampaignPause } = await import("./ads-AHM5LMVT.js");
1990
2059
  const usage = "canonry ads campaign pause <project> <campaign-id> --input <json-file|-> [--format json]";
1991
2060
  const project3 = requireProject(input, "ads.campaign.pause", usage);
1992
2061
  const id2 = requirePositional(input, 1, { command: "ads.campaign.pause", usage, message: "campaign id is required" });
@@ -1998,7 +2067,7 @@ Usage: ${usage}`, {
1998
2067
  usage: "canonry ads ad-group create <project> --input <json-file|-> [--format json]",
1999
2068
  options: { input: stringOption() },
2000
2069
  run: async (input) => {
2001
- const { adsAdGroupCreate } = await import("./ads-IFKZU7SC.js");
2070
+ const { adsAdGroupCreate } = await import("./ads-AHM5LMVT.js");
2002
2071
  const project3 = requireProject(input, "ads.ad-group.create", "canonry ads ad-group create <project> --input <json-file|-> [--format json]");
2003
2072
  await adsAdGroupCreate(project3, { input: getString(input.values, "input"), format: input.format });
2004
2073
  }
@@ -2008,7 +2077,7 @@ Usage: ${usage}`, {
2008
2077
  usage: "canonry ads ad-group update <project> <ad-group-id> --input <json-file|-> [--format json]",
2009
2078
  options: { input: stringOption() },
2010
2079
  run: async (input) => {
2011
- const { adsAdGroupUpdate } = await import("./ads-IFKZU7SC.js");
2080
+ const { adsAdGroupUpdate } = await import("./ads-AHM5LMVT.js");
2012
2081
  const usage = "canonry ads ad-group update <project> <ad-group-id> --input <json-file|-> [--format json]";
2013
2082
  const project3 = requireProject(input, "ads.ad-group.update", usage);
2014
2083
  const id2 = requirePositional(input, 1, { command: "ads.ad-group.update", usage, message: "ad group id is required" });
@@ -2020,7 +2089,7 @@ Usage: ${usage}`, {
2020
2089
  usage: "canonry ads ad-group pause <project> <ad-group-id> --input <json-file|-> [--format json]",
2021
2090
  options: { input: stringOption() },
2022
2091
  run: async (input) => {
2023
- const { adsAdGroupPause } = await import("./ads-IFKZU7SC.js");
2092
+ const { adsAdGroupPause } = await import("./ads-AHM5LMVT.js");
2024
2093
  const usage = "canonry ads ad-group pause <project> <ad-group-id> --input <json-file|-> [--format json]";
2025
2094
  const project3 = requireProject(input, "ads.ad-group.pause", usage);
2026
2095
  const id2 = requirePositional(input, 1, { command: "ads.ad-group.pause", usage, message: "ad group id is required" });
@@ -2032,7 +2101,7 @@ Usage: ${usage}`, {
2032
2101
  usage: "canonry ads ad create <project> --input <json-file|-> [--format json]",
2033
2102
  options: { input: stringOption() },
2034
2103
  run: async (input) => {
2035
- const { adsAdCreate } = await import("./ads-IFKZU7SC.js");
2104
+ const { adsAdCreate } = await import("./ads-AHM5LMVT.js");
2036
2105
  const project3 = requireProject(input, "ads.ad.create", "canonry ads ad create <project> --input <json-file|-> [--format json]");
2037
2106
  await adsAdCreate(project3, { input: getString(input.values, "input"), format: input.format });
2038
2107
  }
@@ -2042,7 +2111,7 @@ Usage: ${usage}`, {
2042
2111
  usage: "canonry ads ad update <project> <ad-id> --input <json-file|-> [--format json]",
2043
2112
  options: { input: stringOption() },
2044
2113
  run: async (input) => {
2045
- const { adsAdUpdate } = await import("./ads-IFKZU7SC.js");
2114
+ const { adsAdUpdate } = await import("./ads-AHM5LMVT.js");
2046
2115
  const usage = "canonry ads ad update <project> <ad-id> --input <json-file|-> [--format json]";
2047
2116
  const project3 = requireProject(input, "ads.ad.update", usage);
2048
2117
  const id2 = requirePositional(input, 1, { command: "ads.ad.update", usage, message: "ad id is required" });
@@ -2054,7 +2123,7 @@ Usage: ${usage}`, {
2054
2123
  usage: "canonry ads ad pause <project> <ad-id> --input <json-file|-> [--format json]",
2055
2124
  options: { input: stringOption() },
2056
2125
  run: async (input) => {
2057
- const { adsAdPause } = await import("./ads-IFKZU7SC.js");
2126
+ const { adsAdPause } = await import("./ads-AHM5LMVT.js");
2058
2127
  const usage = "canonry ads ad pause <project> <ad-id> --input <json-file|-> [--format json]";
2059
2128
  const project3 = requireProject(input, "ads.ad.pause", usage);
2060
2129
  const id2 = requirePositional(input, 1, { command: "ads.ad.pause", usage, message: "ad id is required" });
@@ -2065,7 +2134,7 @@ Usage: ${usage}`, {
2065
2134
  path: ["ads", "sync"],
2066
2135
  usage: "canonry ads sync <project> [--format json]",
2067
2136
  run: async (input) => {
2068
- const { adsSync } = await import("./ads-IFKZU7SC.js");
2137
+ const { adsSync } = await import("./ads-AHM5LMVT.js");
2069
2138
  const project3 = requireProject(input, "ads.sync", "canonry ads sync <project> [--format json]");
2070
2139
  await adsSync(project3, { format: input.format });
2071
2140
  }
@@ -2074,7 +2143,7 @@ Usage: ${usage}`, {
2074
2143
  path: ["ads", "campaigns"],
2075
2144
  usage: "canonry ads campaigns <project> [--format json|jsonl]",
2076
2145
  run: async (input) => {
2077
- const { adsCampaigns } = await import("./ads-IFKZU7SC.js");
2146
+ const { adsCampaigns } = await import("./ads-AHM5LMVT.js");
2078
2147
  const project3 = requireProject(input, "ads.campaigns", "canonry ads campaigns <project> [--format json|jsonl]");
2079
2148
  await adsCampaigns(project3, { format: input.format });
2080
2149
  }
@@ -2090,7 +2159,7 @@ Usage: ${usage}`, {
2090
2159
  to: stringOption()
2091
2160
  },
2092
2161
  run: async (input) => {
2093
- const { adsInsights } = await import("./ads-IFKZU7SC.js");
2162
+ const { adsInsights } = await import("./ads-AHM5LMVT.js");
2094
2163
  const project3 = requireProject(input, "ads.insights", "canonry ads insights <project> [--level <level>] [--entity <id>] [--from <date>] [--to <date>] [--format json|jsonl]");
2095
2164
  await adsInsights(project3, {
2096
2165
  level: getString(input.values, "level"),
@@ -2105,7 +2174,7 @@ Usage: ${usage}`, {
2105
2174
  path: ["ads", "summary"],
2106
2175
  usage: "canonry ads summary <project> [--format json]",
2107
2176
  run: async (input) => {
2108
- const { adsSummary } = await import("./ads-IFKZU7SC.js");
2177
+ const { adsSummary } = await import("./ads-AHM5LMVT.js");
2109
2178
  const project3 = requireProject(input, "ads.summary", "canonry ads summary <project> [--format json]");
2110
2179
  await adsSummary(project3, { format: input.format });
2111
2180
  }
@@ -2118,7 +2187,7 @@ Usage: ${usage}`, {
2118
2187
  "lookback-days": stringOption()
2119
2188
  },
2120
2189
  run: async (input) => {
2121
- const { adsLiveDelivery } = await import("./ads-IFKZU7SC.js");
2190
+ const { adsLiveDelivery } = await import("./ads-AHM5LMVT.js");
2122
2191
  const usage = "canonry ads live-delivery <project> [--campaign <id>] [--lookback-days <n>] [--format json]";
2123
2192
  const project3 = requireProject(input, "ads.live-delivery", usage);
2124
2193
  await adsLiveDelivery(project3, {
@@ -2136,7 +2205,7 @@ Usage: ${usage}`, {
2136
2205
  path: ["ads", "delivery-diagnostics"],
2137
2206
  usage: "canonry ads delivery-diagnostics <project> [--format json]",
2138
2207
  run: async (input) => {
2139
- const { adsDeliveryDiagnostics } = await import("./ads-IFKZU7SC.js");
2208
+ const { adsDeliveryDiagnostics } = await import("./ads-AHM5LMVT.js");
2140
2209
  const project3 = requireProject(input, "ads.delivery-diagnostics", "canonry ads delivery-diagnostics <project> [--format json]");
2141
2210
  await adsDeliveryDiagnostics(project3, { format: input.format });
2142
2211
  }
@@ -2165,7 +2234,7 @@ var GA_CLI_COMMANDS = [
2165
2234
  help: "Stored GA4 sessions only, with filtered totals independent of grouping and paging. Never calls Google. Meaningful page query parameters remain distinct.",
2166
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() },
2167
2236
  run: async (input) => {
2168
- const { gaAcquisition } = await import("./ga-DVIG3PVW.js");
2237
+ const { gaAcquisition } = await import("./ga-6J67NDMZ.js");
2169
2238
  const project3 = requireProject(input, "ga.acquisition", "canonry ga acquisition <project>");
2170
2239
  const aliases = { channel: "channelGroup", host: "hostName", "landing-page": "landingPage" };
2171
2240
  const groupBy = getString(input.values, "group-by")?.split(",").map((key) => aliases[key.trim()] ?? key.trim()).join(",");
@@ -2182,7 +2251,7 @@ var GA_CLI_COMMANDS = [
2182
2251
  "key-json": stringOption()
2183
2252
  },
2184
2253
  run: async (input) => {
2185
- const { gaConnect } = await import("./ga-DVIG3PVW.js");
2254
+ const { gaConnect } = await import("./ga-6J67NDMZ.js");
2186
2255
  const project3 = requireProject(input, "ga.connect", "canonry ga connect <project> --property-id <id> [--key-file <path>]");
2187
2256
  const propertyId = getString(input.values, "property-id");
2188
2257
  if (!propertyId) {
@@ -2200,7 +2269,7 @@ var GA_CLI_COMMANDS = [
2200
2269
  path: ["ga", "disconnect"],
2201
2270
  usage: "canonry ga disconnect <project> [--format json]",
2202
2271
  run: async (input) => {
2203
- const { gaDisconnect } = await import("./ga-DVIG3PVW.js");
2272
+ const { gaDisconnect } = await import("./ga-6J67NDMZ.js");
2204
2273
  const project3 = requireProject(input, "ga.disconnect", "canonry ga disconnect <project> [--format json]");
2205
2274
  await gaDisconnect(project3, input.format);
2206
2275
  }
@@ -2209,7 +2278,7 @@ var GA_CLI_COMMANDS = [
2209
2278
  path: ["ga", "properties"],
2210
2279
  usage: "canonry ga properties <project> [--format json]",
2211
2280
  run: async (input) => {
2212
- const { gaProperties } = await import("./ga-DVIG3PVW.js");
2281
+ const { gaProperties } = await import("./ga-6J67NDMZ.js");
2213
2282
  const project3 = requireProject(input, "ga.properties", "canonry ga properties <project> [--format json]");
2214
2283
  await gaProperties(project3, input.format);
2215
2284
  }
@@ -2218,7 +2287,7 @@ var GA_CLI_COMMANDS = [
2218
2287
  path: ["ga", "status"],
2219
2288
  usage: "canonry ga status <project> [--format json]",
2220
2289
  run: async (input) => {
2221
- const { gaStatus } = await import("./ga-DVIG3PVW.js");
2290
+ const { gaStatus } = await import("./ga-6J67NDMZ.js");
2222
2291
  const project3 = requireProject(input, "ga.status", "canonry ga status <project> [--format json]");
2223
2292
  await gaStatus(project3, input.format);
2224
2293
  }
@@ -2231,7 +2300,7 @@ var GA_CLI_COMMANDS = [
2231
2300
  only: stringOption()
2232
2301
  },
2233
2302
  run: async (input) => {
2234
- const { gaSync } = await import("./ga-DVIG3PVW.js");
2303
+ const { gaSync } = await import("./ga-6J67NDMZ.js");
2235
2304
  const project3 = requireProject(input, "ga.sync", "canonry ga sync <project> [--days 30] [--only traffic|ai|social|search-landing] [--format json]");
2236
2305
  const daysStr = getString(input.values, "days");
2237
2306
  const days = daysStr ? parseInt(daysStr, 10) : void 0;
@@ -2254,7 +2323,7 @@ var GA_CLI_COMMANDS = [
2254
2323
  limit: stringOption()
2255
2324
  },
2256
2325
  run: async (input) => {
2257
- const { gaMeasurementAnalysis } = await import("./ga-DVIG3PVW.js");
2326
+ const { gaMeasurementAnalysis } = await import("./ga-6J67NDMZ.js");
2258
2327
  const project3 = requireProject(input, "ga.measurement-analysis", "canonry ga measurement-analysis <project> [--window 30d|60d|90d] [--format json]");
2259
2328
  const limitValue = getString(input.values, "limit");
2260
2329
  await gaMeasurementAnalysis(project3, {
@@ -2276,7 +2345,7 @@ var GA_CLI_COMMANDS = [
2276
2345
  offset: stringOption()
2277
2346
  },
2278
2347
  run: async (input) => {
2279
- const { gaSearchLandingPages } = await import("./ga-DVIG3PVW.js");
2348
+ const { gaSearchLandingPages } = await import("./ga-6J67NDMZ.js");
2280
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]");
2281
2350
  await gaSearchLandingPages(project3, {
2282
2351
  window: getString(input.values, "window"),
@@ -2295,7 +2364,7 @@ var GA_CLI_COMMANDS = [
2295
2364
  ...RANGE_OPTIONS
2296
2365
  },
2297
2366
  run: async (input) => {
2298
- const { gaTraffic } = await import("./ga-DVIG3PVW.js");
2367
+ const { gaTraffic } = await import("./ga-6J67NDMZ.js");
2299
2368
  const project3 = requireProject(input, "ga.traffic", `canonry ga traffic <project> [--limit 50] ${RANGE_USAGE} [--format json]`);
2300
2369
  const limitStr = getString(input.values, "limit");
2301
2370
  const limit = limitStr ? parseInt(limitStr, 10) : void 0;
@@ -2310,7 +2379,7 @@ var GA_CLI_COMMANDS = [
2310
2379
  path: ["ga", "coverage"],
2311
2380
  usage: "canonry ga coverage <project> [--format json]",
2312
2381
  run: async (input) => {
2313
- const { gaCoverage } = await import("./ga-DVIG3PVW.js");
2382
+ const { gaCoverage } = await import("./ga-6J67NDMZ.js");
2314
2383
  const project3 = requireProject(input, "ga.coverage", "canonry ga coverage <project> [--format json]");
2315
2384
  await gaCoverage(project3, input.format);
2316
2385
  }
@@ -2321,7 +2390,7 @@ var GA_CLI_COMMANDS = [
2321
2390
  usage: `canonry ga ai-referral-history <project> ${RANGE_USAGE} [--format json]`,
2322
2391
  options: { ...RANGE_OPTIONS },
2323
2392
  run: async (input) => {
2324
- const { gaAiReferralHistory } = await import("./ga-DVIG3PVW.js");
2393
+ const { gaAiReferralHistory } = await import("./ga-6J67NDMZ.js");
2325
2394
  const project3 = requireProject(input, "ga.ai-referral-history", `canonry ga ai-referral-history <project> ${RANGE_USAGE} [--format json]`);
2326
2395
  await gaAiReferralHistory(project3, {
2327
2396
  ...rangeValues(input.values),
@@ -2335,7 +2404,7 @@ var GA_CLI_COMMANDS = [
2335
2404
  usage: `canonry ga ai-referral-daily <project> ${RANGE_USAGE} [--format json]`,
2336
2405
  options: { ...RANGE_OPTIONS },
2337
2406
  run: async (input) => {
2338
- const { gaAiReferralDaily } = await import("./ga-DVIG3PVW.js");
2407
+ const { gaAiReferralDaily } = await import("./ga-6J67NDMZ.js");
2339
2408
  const project3 = requireProject(input, "ga.ai-referral-daily", `canonry ga ai-referral-daily <project> ${RANGE_USAGE} [--format json]`);
2340
2409
  await gaAiReferralDaily(project3, {
2341
2410
  ...rangeValues(input.values),
@@ -2349,7 +2418,7 @@ var GA_CLI_COMMANDS = [
2349
2418
  usage: `canonry ga social-referral-history <project> ${RANGE_USAGE} [--format json]`,
2350
2419
  options: { ...RANGE_OPTIONS },
2351
2420
  run: async (input) => {
2352
- const { gaSocialReferralHistory } = await import("./ga-DVIG3PVW.js");
2421
+ const { gaSocialReferralHistory } = await import("./ga-6J67NDMZ.js");
2353
2422
  const project3 = requireProject(input, "ga.social-referral-history", `canonry ga social-referral-history <project> ${RANGE_USAGE} [--format json]`);
2354
2423
  await gaSocialReferralHistory(project3, {
2355
2424
  ...rangeValues(input.values),
@@ -2362,7 +2431,7 @@ var GA_CLI_COMMANDS = [
2362
2431
  windows: WINDOW_SETS.gaOverview,
2363
2432
  usage: "canonry ga overview <project> [--window 7d|30d|90d] [--format json]",
2364
2433
  run: async (input) => {
2365
- const { gaOverview } = await import("./ga-DVIG3PVW.js");
2434
+ const { gaOverview } = await import("./ga-6J67NDMZ.js");
2366
2435
  const project3 = requireProject(input, "ga.overview", "canonry ga overview <project> [--window 7d|30d|90d] [--format json]");
2367
2436
  await gaOverview(project3, {
2368
2437
  window: typeof input.values.window === "string" ? input.values.window : void 0,
@@ -2376,7 +2445,7 @@ var GA_CLI_COMMANDS = [
2376
2445
  usage: `canonry ga session-history <project> ${RANGE_USAGE} [--format json]`,
2377
2446
  options: { ...RANGE_OPTIONS },
2378
2447
  run: async (input) => {
2379
- const { gaSessionHistory } = await import("./ga-DVIG3PVW.js");
2448
+ const { gaSessionHistory } = await import("./ga-6J67NDMZ.js");
2380
2449
  const project3 = requireProject(input, "ga.session-history", `canonry ga session-history <project> ${RANGE_USAGE} [--format json]`);
2381
2450
  await gaSessionHistory(project3, {
2382
2451
  ...rangeValues(input.values),
@@ -2391,7 +2460,7 @@ var GA_CLI_COMMANDS = [
2391
2460
  trend: { type: "boolean", default: false }
2392
2461
  },
2393
2462
  run: async (input) => {
2394
- const { gaSocialReferralSummary } = await import("./ga-DVIG3PVW.js");
2463
+ const { gaSocialReferralSummary } = await import("./ga-6J67NDMZ.js");
2395
2464
  const project3 = requireProject(input, "ga.social-referral-summary", "canonry ga social-referral-summary <project> [--trend] [--format json]");
2396
2465
  await gaSocialReferralSummary(project3, {
2397
2466
  trend: input.values.trend === true,
@@ -2406,7 +2475,7 @@ var GA_CLI_COMMANDS = [
2406
2475
  trend: { type: "boolean", default: false }
2407
2476
  },
2408
2477
  run: async (input) => {
2409
- const { gaAttribution } = await import("./ga-DVIG3PVW.js");
2478
+ const { gaAttribution } = await import("./ga-6J67NDMZ.js");
2410
2479
  const project3 = requireProject(input, "ga.attribution", "canonry ga attribution <project> [--trend] [--format json]");
2411
2480
  await gaAttribution(project3, {
2412
2481
  trend: input.values.trend === true,
@@ -2435,7 +2504,7 @@ var GBP_CLI_COMMANDS = [
2435
2504
  usage: "canonry gbp posts attempt <project> --attempt UUID --package SHA256 [--format json]",
2436
2505
  options: { attempt: stringOption(), package: stringOption() },
2437
2506
  run: async (input) => {
2438
- const { gbpLocalPosts } = await import("./gbp-SNS4XZBO.js");
2507
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2439
2508
  await gbpLocalPosts(requireProject(input, "gbp.posts.attempt", "canonry gbp posts attempt <project>"), "attempt", { attempt: getString(input.values, "attempt"), package: getString(input.values, "package") });
2440
2509
  }
2441
2510
  },
@@ -2445,7 +2514,7 @@ var GBP_CLI_COMMANDS = [
2445
2514
  usage: "canonry gbp posts list <project> --account accounts/id --location locations/id [--page-token token] [--format json]",
2446
2515
  options: { account: stringOption(), location: stringOption(), "page-token": stringOption() },
2447
2516
  run: async (input) => {
2448
- const { gbpLocalPosts } = await import("./gbp-SNS4XZBO.js");
2517
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2449
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") });
2450
2519
  }
2451
2520
  },
@@ -2455,7 +2524,7 @@ var GBP_CLI_COMMANDS = [
2455
2524
  usage: "canonry gbp posts get <project> --post resource [--format json]",
2456
2525
  options: { post: stringOption() },
2457
2526
  run: async (input) => {
2458
- const { gbpLocalPosts } = await import("./gbp-SNS4XZBO.js");
2527
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2459
2528
  await gbpLocalPosts(requireProject(input, "gbp.posts.get", "canonry gbp posts get <project>"), "get", { post: getString(input.values, "post") });
2460
2529
  }
2461
2530
  },
@@ -2465,7 +2534,7 @@ var GBP_CLI_COMMANDS = [
2465
2534
  usage: "canonry gbp posts create <project> --request file [--format json]",
2466
2535
  options: { request: stringOption() },
2467
2536
  run: async (input) => {
2468
- const { gbpLocalPosts } = await import("./gbp-SNS4XZBO.js");
2537
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2469
2538
  await gbpLocalPosts(requireProject(input, "gbp.posts.create", "canonry gbp posts create <project>"), "create", { request: getString(input.values, "request") });
2470
2539
  }
2471
2540
  },
@@ -2475,7 +2544,7 @@ var GBP_CLI_COMMANDS = [
2475
2544
  usage: "canonry gbp reviews live <project> --account accounts/id --location locations/id [--format json]",
2476
2545
  options: { account: stringOption(), location: stringOption() },
2477
2546
  run: async (input) => {
2478
- const { gbpLocalPosts } = await import("./gbp-SNS4XZBO.js");
2547
+ const { gbpLocalPosts } = await import("./gbp-ERTWK26L.js");
2479
2548
  await gbpLocalPosts(requireProject(input, "gbp.reviews.live", "canonry gbp reviews live <project>"), "reviews", { account: getString(input.values, "account"), location: getString(input.values, "location") });
2480
2549
  }
2481
2550
  },
@@ -2486,7 +2555,7 @@ var GBP_CLI_COMMANDS = [
2486
2555
  "public-url": stringOption()
2487
2556
  },
2488
2557
  run: async (input) => {
2489
- const { gbpConnect } = await import("./gbp-SNS4XZBO.js");
2558
+ const { gbpConnect } = await import("./gbp-ERTWK26L.js");
2490
2559
  const project3 = requireProject(input, "gbp.connect", "canonry gbp connect <project> [--public-url <url>] [--format json]");
2491
2560
  await gbpConnect(project3, {
2492
2561
  publicUrl: getString(input.values, "public-url"),
@@ -2498,7 +2567,7 @@ var GBP_CLI_COMMANDS = [
2498
2567
  path: ["gbp", "disconnect"],
2499
2568
  usage: "canonry gbp disconnect <project> [--format json]",
2500
2569
  run: async (input) => {
2501
- const { gbpDisconnect } = await import("./gbp-SNS4XZBO.js");
2570
+ const { gbpDisconnect } = await import("./gbp-ERTWK26L.js");
2502
2571
  const project3 = requireProject(input, "gbp.disconnect", "canonry gbp disconnect <project> [--format json]");
2503
2572
  await gbpDisconnect(project3, { format: input.format });
2504
2573
  }
@@ -2510,7 +2579,7 @@ var GBP_CLI_COMMANDS = [
2510
2579
  "selected-only": { type: "boolean" }
2511
2580
  },
2512
2581
  run: async (input) => {
2513
- const { gbpLocationsList } = await import("./gbp-SNS4XZBO.js");
2582
+ const { gbpLocationsList } = await import("./gbp-ERTWK26L.js");
2514
2583
  const project3 = requireProject(input, "gbp.locations", "canonry gbp locations <project> [--selected-only] [--format json]");
2515
2584
  await gbpLocationsList(project3, {
2516
2585
  format: input.format,
@@ -2522,7 +2591,7 @@ var GBP_CLI_COMMANDS = [
2522
2591
  path: ["gbp", "accounts"],
2523
2592
  usage: "canonry gbp accounts <project> [--format json]",
2524
2593
  run: async (input) => {
2525
- const { gbpAccounts } = await import("./gbp-SNS4XZBO.js");
2594
+ const { gbpAccounts } = await import("./gbp-ERTWK26L.js");
2526
2595
  const project3 = requireProject(input, "gbp.accounts", "canonry gbp accounts <project> [--format json]");
2527
2596
  await gbpAccounts(project3, { format: input.format });
2528
2597
  }
@@ -2536,7 +2605,7 @@ var GBP_CLI_COMMANDS = [
2536
2605
  "switch-account": { type: "boolean" }
2537
2606
  },
2538
2607
  run: async (input) => {
2539
- const { gbpLocationsDiscover } = await import("./gbp-SNS4XZBO.js");
2608
+ const { gbpLocationsDiscover } = await import("./gbp-ERTWK26L.js");
2540
2609
  const project3 = requireProject(input, "gbp.locations.discover", "canonry gbp locations discover <project> [--account <accounts/{n}>] [--switch-account] [--no-select-new] [--format json]");
2541
2610
  const noSelectNew = getBoolean(input.values, "no-select-new") ?? false;
2542
2611
  await gbpLocationsDiscover(project3, {
@@ -2554,7 +2623,7 @@ var GBP_CLI_COMMANDS = [
2554
2623
  location: stringOption()
2555
2624
  },
2556
2625
  run: async (input) => {
2557
- const { gbpLocationSelect } = await import("./gbp-SNS4XZBO.js");
2626
+ const { gbpLocationSelect } = await import("./gbp-ERTWK26L.js");
2558
2627
  const project3 = requireProject(input, "gbp.locations.select", "canonry gbp locations select <project> --location <name> [--format json]");
2559
2628
  const location = getString(input.values, "location");
2560
2629
  if (!location) throw usageError("canonry gbp locations select <project> --location <locations/{n}>: --location is required");
@@ -2568,7 +2637,7 @@ var GBP_CLI_COMMANDS = [
2568
2637
  location: stringOption()
2569
2638
  },
2570
2639
  run: async (input) => {
2571
- const { gbpLocationDeselect } = await import("./gbp-SNS4XZBO.js");
2640
+ const { gbpLocationDeselect } = await import("./gbp-ERTWK26L.js");
2572
2641
  const project3 = requireProject(input, "gbp.locations.deselect", "canonry gbp locations deselect <project> --location <name> [--format json]");
2573
2642
  const location = getString(input.values, "location");
2574
2643
  if (!location) throw usageError("canonry gbp locations deselect <project> --location <locations/{n}>: --location is required");
@@ -2585,7 +2654,7 @@ var GBP_CLI_COMMANDS = [
2585
2654
  wait: { type: "boolean" }
2586
2655
  },
2587
2656
  run: async (input) => {
2588
- const { gbpSync } = await import("./gbp-SNS4XZBO.js");
2657
+ const { gbpSync } = await import("./gbp-ERTWK26L.js");
2589
2658
  const project3 = requireProject(input, "gbp.sync", "canonry gbp sync <project> [--location <name>] [--days N] [--months N] [--wait] [--format json]");
2590
2659
  await gbpSync(project3, {
2591
2660
  location: getString(input.values, "location"),
@@ -2604,7 +2673,7 @@ var GBP_CLI_COMMANDS = [
2604
2673
  metric: stringOption()
2605
2674
  },
2606
2675
  run: async (input) => {
2607
- const { gbpMetrics } = await import("./gbp-SNS4XZBO.js");
2676
+ const { gbpMetrics } = await import("./gbp-ERTWK26L.js");
2608
2677
  const project3 = requireProject(input, "gbp.metrics", "canonry gbp metrics <project> [--location <name>] [--metric <DailyMetric>] [--format json]");
2609
2678
  await gbpMetrics(project3, {
2610
2679
  location: getString(input.values, "location"),
@@ -2620,7 +2689,7 @@ var GBP_CLI_COMMANDS = [
2620
2689
  location: stringOption()
2621
2690
  },
2622
2691
  run: async (input) => {
2623
- const { gbpKeywords } = await import("./gbp-SNS4XZBO.js");
2692
+ const { gbpKeywords } = await import("./gbp-ERTWK26L.js");
2624
2693
  const project3 = requireProject(input, "gbp.keywords", "canonry gbp keywords <project> [--location <name>] [--format json]");
2625
2694
  await gbpKeywords(project3, {
2626
2695
  location: getString(input.values, "location"),
@@ -2635,7 +2704,7 @@ var GBP_CLI_COMMANDS = [
2635
2704
  location: stringOption()
2636
2705
  },
2637
2706
  run: async (input) => {
2638
- const { gbpPlaceActions } = await import("./gbp-SNS4XZBO.js");
2707
+ const { gbpPlaceActions } = await import("./gbp-ERTWK26L.js");
2639
2708
  const project3 = requireProject(input, "gbp.place-actions", "canonry gbp place-actions <project> [--location <name>] [--format json]");
2640
2709
  await gbpPlaceActions(project3, { location: getString(input.values, "location"), format: input.format });
2641
2710
  }
@@ -2647,7 +2716,7 @@ var GBP_CLI_COMMANDS = [
2647
2716
  location: stringOption()
2648
2717
  },
2649
2718
  run: async (input) => {
2650
- const { gbpLodging } = await import("./gbp-SNS4XZBO.js");
2719
+ const { gbpLodging } = await import("./gbp-ERTWK26L.js");
2651
2720
  const project3 = requireProject(input, "gbp.lodging", "canonry gbp lodging <project> [--location <name>] [--format json]");
2652
2721
  await gbpLodging(project3, { location: getString(input.values, "location"), format: input.format });
2653
2722
  }
@@ -2659,7 +2728,7 @@ var GBP_CLI_COMMANDS = [
2659
2728
  location: stringOption()
2660
2729
  },
2661
2730
  run: async (input) => {
2662
- const { gbpAttributes } = await import("./gbp-SNS4XZBO.js");
2731
+ const { gbpAttributes } = await import("./gbp-ERTWK26L.js");
2663
2732
  const project3 = requireProject(input, "gbp.attributes", "canonry gbp attributes <project> [--location <name>] [--format json]");
2664
2733
  await gbpAttributes(project3, { location: getString(input.values, "location"), format: input.format });
2665
2734
  }
@@ -2671,7 +2740,7 @@ var GBP_CLI_COMMANDS = [
2671
2740
  location: stringOption()
2672
2741
  },
2673
2742
  run: async (input) => {
2674
- const { gbpPlaces } = await import("./gbp-SNS4XZBO.js");
2743
+ const { gbpPlaces } = await import("./gbp-ERTWK26L.js");
2675
2744
  const project3 = requireProject(input, "gbp.places", "canonry gbp places <project> [--location <name>] [--format json]");
2676
2745
  await gbpPlaces(project3, { location: getString(input.values, "location"), format: input.format });
2677
2746
  }
@@ -2685,7 +2754,7 @@ var GBP_CLI_COMMANDS = [
2685
2754
  limit: stringOption()
2686
2755
  },
2687
2756
  run: async (input) => {
2688
- const { gbpReviews } = await import("./gbp-SNS4XZBO.js");
2757
+ const { gbpReviews } = await import("./gbp-ERTWK26L.js");
2689
2758
  const usage = "canonry gbp reviews <project> [--location <name>] [--negative] [--limit N] [--format json]";
2690
2759
  const project3 = requireProject(input, "gbp.reviews", usage);
2691
2760
  await gbpReviews(project3, {
@@ -2703,7 +2772,7 @@ var GBP_CLI_COMMANDS = [
2703
2772
  location: stringOption()
2704
2773
  },
2705
2774
  run: async (input) => {
2706
- const { gbpSummary } = await import("./gbp-SNS4XZBO.js");
2775
+ const { gbpSummary } = await import("./gbp-ERTWK26L.js");
2707
2776
  const project3 = requireProject(input, "gbp.summary", "canonry gbp summary <project> [--location <name>] [--format json]");
2708
2777
  await gbpSummary(project3, { location: getString(input.values, "location"), format: input.format });
2709
2778
  }
@@ -2742,7 +2811,7 @@ function createGoogleMarketingCliCommands(createClient) {
2742
2811
  path: ["google-ads", "disconnect"],
2743
2812
  usage: "canonry google-ads disconnect <project> [--format json]",
2744
2813
  run: async (input) => {
2745
- const { googleAdsDisconnect } = await import("./google-marketing-VZR6W3L6.js");
2814
+ const { googleAdsDisconnect } = await import("./google-marketing-OEW2YGUR.js");
2746
2815
  const usage = "canonry google-ads disconnect <project> [--format json]";
2747
2816
  await googleAdsDisconnect(createClient(), requireProject(input, "google-ads.disconnect", usage), { format: input.format });
2748
2817
  }
@@ -2751,7 +2820,7 @@ function createGoogleMarketingCliCommands(createClient) {
2751
2820
  path: ["google-ads", "status"],
2752
2821
  usage: "canonry google-ads status <project> [--format json]",
2753
2822
  run: async (input) => {
2754
- const { googleAdsStatus } = await import("./google-marketing-VZR6W3L6.js");
2823
+ const { googleAdsStatus } = await import("./google-marketing-OEW2YGUR.js");
2755
2824
  const usage = "canonry google-ads status <project> [--format json]";
2756
2825
  await googleAdsStatus(createClient(), requireProject(input, "google-ads.status", usage), { format: input.format });
2757
2826
  }
@@ -2760,7 +2829,7 @@ function createGoogleMarketingCliCommands(createClient) {
2760
2829
  path: ["google-ads", "customers"],
2761
2830
  usage: "canonry google-ads customers <project> [--format json|jsonl]",
2762
2831
  run: async (input) => {
2763
- const { googleAdsCustomers } = await import("./google-marketing-VZR6W3L6.js");
2832
+ const { googleAdsCustomers } = await import("./google-marketing-OEW2YGUR.js");
2764
2833
  const usage = "canonry google-ads customers <project> [--format json|jsonl]";
2765
2834
  await googleAdsCustomers(createClient(), requireProject(input, "google-ads.customers", usage), { format: input.format });
2766
2835
  }
@@ -2770,7 +2839,7 @@ function createGoogleMarketingCliCommands(createClient) {
2770
2839
  usage: "canonry google-ads select <project> --customer <customer-id> [--login-customer <manager-id>] [--format json]",
2771
2840
  options: { customer: stringOption(), "login-customer": stringOption() },
2772
2841
  run: async (input) => {
2773
- const { googleAdsSelect } = await import("./google-marketing-VZR6W3L6.js");
2842
+ const { googleAdsSelect } = await import("./google-marketing-OEW2YGUR.js");
2774
2843
  const usage = "canonry google-ads select <project> --customer <customer-id> [--login-customer <manager-id>] [--format json]";
2775
2844
  const project3 = requireProject(input, "google-ads.select", usage);
2776
2845
  const customerId = requireStringOption(input, "customer", {
@@ -2788,7 +2857,7 @@ function createGoogleMarketingCliCommands(createClient) {
2788
2857
  path: ["google-ads", "sync"],
2789
2858
  usage: "canonry google-ads sync <project> [--format json]",
2790
2859
  run: async (input) => {
2791
- const { googleAdsSync } = await import("./google-marketing-VZR6W3L6.js");
2860
+ const { googleAdsSync } = await import("./google-marketing-OEW2YGUR.js");
2792
2861
  const usage = "canonry google-ads sync <project> [--format json]";
2793
2862
  await googleAdsSync(createClient(), requireProject(input, "google-ads.sync", usage), { format: input.format });
2794
2863
  }
@@ -2799,7 +2868,7 @@ function createGoogleMarketingCliCommands(createClient) {
2799
2868
  usage: "canonry google-ads performance <project> [--window 7d|14d|30d] [--format json]",
2800
2869
  options: { window: stringOption() },
2801
2870
  run: async (input) => {
2802
- const { googleAdsPerformance } = await import("./google-marketing-VZR6W3L6.js");
2871
+ const { googleAdsPerformance } = await import("./google-marketing-OEW2YGUR.js");
2803
2872
  const usage = "canonry google-ads performance <project> [--window 7d|14d|30d] [--format json]";
2804
2873
  const project3 = requireProject(input, "google-ads.performance", usage);
2805
2874
  const window = performanceWindow(input, usage);
@@ -2814,7 +2883,7 @@ function createGoogleMarketingCliCommands(createClient) {
2814
2883
  usage: "canonry google-ads snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]",
2815
2884
  options: { limit: stringOption(), cursor: stringOption() },
2816
2885
  run: async (input) => {
2817
- const { googleAdsSnapshots } = await import("./google-marketing-VZR6W3L6.js");
2886
+ const { googleAdsSnapshots } = await import("./google-marketing-OEW2YGUR.js");
2818
2887
  const usage = "canonry google-ads snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
2819
2888
  await googleAdsSnapshots(createClient(), requireProject(input, "google-ads.snapshots", usage), {
2820
2889
  limit: snapshotLimit(input, "google-ads.snapshots", usage),
@@ -2827,7 +2896,7 @@ function createGoogleMarketingCliCommands(createClient) {
2827
2896
  path: ["google-ads", "snapshot"],
2828
2897
  usage: "canonry google-ads snapshot <project> <snapshot-id> [--format json]",
2829
2898
  run: async (input) => {
2830
- const { googleAdsSnapshot } = await import("./google-marketing-VZR6W3L6.js");
2899
+ const { googleAdsSnapshot } = await import("./google-marketing-OEW2YGUR.js");
2831
2900
  const usage = "canonry google-ads snapshot <project> <snapshot-id> [--format json]";
2832
2901
  const project3 = requireProject(input, "google-ads.snapshot", usage);
2833
2902
  await googleAdsSnapshot(createClient(), project3, requirePositional(input, 1, {
@@ -2841,7 +2910,7 @@ function createGoogleMarketingCliCommands(createClient) {
2841
2910
  path: ["gtm", "disconnect"],
2842
2911
  usage: "canonry gtm disconnect <project> [--format json]",
2843
2912
  run: async (input) => {
2844
- const { gtmDisconnect } = await import("./google-marketing-VZR6W3L6.js");
2913
+ const { gtmDisconnect } = await import("./google-marketing-OEW2YGUR.js");
2845
2914
  const usage = "canonry gtm disconnect <project> [--format json]";
2846
2915
  await gtmDisconnect(createClient(), requireProject(input, "gtm.disconnect", usage), { format: input.format });
2847
2916
  }
@@ -2850,7 +2919,7 @@ function createGoogleMarketingCliCommands(createClient) {
2850
2919
  path: ["gtm", "status"],
2851
2920
  usage: "canonry gtm status <project> [--format json]",
2852
2921
  run: async (input) => {
2853
- const { gtmStatus } = await import("./google-marketing-VZR6W3L6.js");
2922
+ const { gtmStatus } = await import("./google-marketing-OEW2YGUR.js");
2854
2923
  const usage = "canonry gtm status <project> [--format json]";
2855
2924
  await gtmStatus(createClient(), requireProject(input, "gtm.status", usage), { format: input.format });
2856
2925
  }
@@ -2859,7 +2928,7 @@ function createGoogleMarketingCliCommands(createClient) {
2859
2928
  path: ["gtm", "accounts"],
2860
2929
  usage: "canonry gtm accounts <project> [--format json|jsonl]",
2861
2930
  run: async (input) => {
2862
- const { gtmAccounts } = await import("./google-marketing-VZR6W3L6.js");
2931
+ const { gtmAccounts } = await import("./google-marketing-OEW2YGUR.js");
2863
2932
  const usage = "canonry gtm accounts <project> [--format json|jsonl]";
2864
2933
  await gtmAccounts(createClient(), requireProject(input, "gtm.accounts", usage), { format: input.format });
2865
2934
  }
@@ -2869,7 +2938,7 @@ function createGoogleMarketingCliCommands(createClient) {
2869
2938
  usage: "canonry gtm containers <project> --account <account-id> [--format json|jsonl]",
2870
2939
  options: { account: stringOption() },
2871
2940
  run: async (input) => {
2872
- const { gtmContainers } = await import("./google-marketing-VZR6W3L6.js");
2941
+ const { gtmContainers } = await import("./google-marketing-OEW2YGUR.js");
2873
2942
  const usage = "canonry gtm containers <project> --account <account-id> [--format json|jsonl]";
2874
2943
  const project3 = requireProject(input, "gtm.containers", usage);
2875
2944
  await gtmContainers(createClient(), project3, requireStringOption(input, "account", {
@@ -2884,7 +2953,7 @@ function createGoogleMarketingCliCommands(createClient) {
2884
2953
  usage: "canonry gtm workspaces <project> --account <account-id> --container <container-id> [--format json|jsonl]",
2885
2954
  options: { account: stringOption(), container: stringOption() },
2886
2955
  run: async (input) => {
2887
- const { gtmWorkspaces } = await import("./google-marketing-VZR6W3L6.js");
2956
+ const { gtmWorkspaces } = await import("./google-marketing-OEW2YGUR.js");
2888
2957
  const usage = "canonry gtm workspaces <project> --account <account-id> --container <container-id> [--format json|jsonl]";
2889
2958
  const project3 = requireProject(input, "gtm.workspaces", usage);
2890
2959
  const accountId = requireStringOption(input, "account", { command: "gtm.workspaces", usage, message: "--account is required" });
@@ -2897,7 +2966,7 @@ function createGoogleMarketingCliCommands(createClient) {
2897
2966
  usage: "canonry gtm select <project> --account <account-id> --container <container-id> [--workspace <workspace-id>] [--format json]",
2898
2967
  options: { account: stringOption(), container: stringOption(), workspace: stringOption() },
2899
2968
  run: async (input) => {
2900
- const { gtmSelect } = await import("./google-marketing-VZR6W3L6.js");
2969
+ const { gtmSelect } = await import("./google-marketing-OEW2YGUR.js");
2901
2970
  const usage = "canonry gtm select <project> --account <account-id> --container <container-id> [--workspace <workspace-id>] [--format json]";
2902
2971
  const project3 = requireProject(input, "gtm.select", usage);
2903
2972
  const accountId = requireStringOption(input, "account", { command: "gtm.select", usage, message: "--account is required" });
@@ -2914,7 +2983,7 @@ function createGoogleMarketingCliCommands(createClient) {
2914
2983
  path: ["gtm", "sync"],
2915
2984
  usage: "canonry gtm sync <project> [--format json]",
2916
2985
  run: async (input) => {
2917
- const { gtmSync } = await import("./google-marketing-VZR6W3L6.js");
2986
+ const { gtmSync } = await import("./google-marketing-OEW2YGUR.js");
2918
2987
  const usage = "canonry gtm sync <project> [--format json]";
2919
2988
  await gtmSync(createClient(), requireProject(input, "gtm.sync", usage), { format: input.format });
2920
2989
  }
@@ -2924,7 +2993,7 @@ function createGoogleMarketingCliCommands(createClient) {
2924
2993
  usage: "canonry gtm snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]",
2925
2994
  options: { limit: stringOption(), cursor: stringOption() },
2926
2995
  run: async (input) => {
2927
- const { gtmSnapshots } = await import("./google-marketing-VZR6W3L6.js");
2996
+ const { gtmSnapshots } = await import("./google-marketing-OEW2YGUR.js");
2928
2997
  const usage = "canonry gtm snapshots <project> [--limit <n>] [--cursor <opaque>] [--format json|jsonl]";
2929
2998
  await gtmSnapshots(createClient(), requireProject(input, "gtm.snapshots", usage), {
2930
2999
  limit: snapshotLimit(input, "gtm.snapshots", usage),
@@ -2937,7 +3006,7 @@ function createGoogleMarketingCliCommands(createClient) {
2937
3006
  path: ["gtm", "snapshot"],
2938
3007
  usage: "canonry gtm snapshot <project> <snapshot-id> [--format json]",
2939
3008
  run: async (input) => {
2940
- const { gtmSnapshot } = await import("./google-marketing-VZR6W3L6.js");
3009
+ const { gtmSnapshot } = await import("./google-marketing-OEW2YGUR.js");
2941
3010
  const usage = "canonry gtm snapshot <project> <snapshot-id> [--format json]";
2942
3011
  const project3 = requireProject(input, "gtm.snapshot", usage);
2943
3012
  await gtmSnapshot(createClient(), project3, requirePositional(input, 1, {
@@ -2951,7 +3020,7 @@ function createGoogleMarketingCliCommands(createClient) {
2951
3020
  path: ["conversion-tracking", "contracts"],
2952
3021
  usage: "canonry conversion-tracking contracts <project> [--format json|jsonl]",
2953
3022
  run: async (input) => {
2954
- const { conversionTrackingContracts } = await import("./google-marketing-VZR6W3L6.js");
3023
+ const { conversionTrackingContracts } = await import("./google-marketing-OEW2YGUR.js");
2955
3024
  const usage = "canonry conversion-tracking contracts <project> [--format json|jsonl]";
2956
3025
  await conversionTrackingContracts(createClient(), requireProject(input, "conversion-tracking.contracts", usage), { format: input.format });
2957
3026
  }
@@ -2960,7 +3029,7 @@ function createGoogleMarketingCliCommands(createClient) {
2960
3029
  path: ["conversion-tracking", "contracts", "get"],
2961
3030
  usage: "canonry conversion-tracking contracts get <project> <contract-id> [--format json]",
2962
3031
  run: async (input) => {
2963
- const { conversionTrackingContract } = await import("./google-marketing-VZR6W3L6.js");
3032
+ const { conversionTrackingContract } = await import("./google-marketing-OEW2YGUR.js");
2964
3033
  const usage = "canonry conversion-tracking contracts get <project> <contract-id> [--format json]";
2965
3034
  const project3 = requireProject(input, "conversion-tracking.contracts.get", usage);
2966
3035
  await conversionTrackingContract(createClient(), project3, requirePositional(input, 1, {
@@ -2975,7 +3044,7 @@ function createGoogleMarketingCliCommands(createClient) {
2975
3044
  usage: "canonry conversion-tracking contracts create <project> --input <json-file|-> [--format json]",
2976
3045
  options: { input: stringOption() },
2977
3046
  run: async (input) => {
2978
- const { conversionTrackingCreate, readConversionTrackingContractInput } = await import("./google-marketing-VZR6W3L6.js");
3047
+ const { conversionTrackingCreate, readConversionTrackingContractInput } = await import("./google-marketing-OEW2YGUR.js");
2979
3048
  const usage = "canonry conversion-tracking contracts create <project> --input <json-file|-> [--format json]";
2980
3049
  await conversionTrackingCreate(createClient(), requireProject(input, "conversion-tracking.contracts.create", usage), readConversionTrackingContractInput(getString(input.values, "input")), { format: input.format });
2981
3050
  }
@@ -2985,7 +3054,7 @@ function createGoogleMarketingCliCommands(createClient) {
2985
3054
  usage: "canonry conversion-tracking contracts update <project> <contract-id> --input <json-file|-> [--format json]",
2986
3055
  options: { input: stringOption() },
2987
3056
  run: async (input) => {
2988
- const { conversionTrackingUpdate, readConversionTrackingContractInput } = await import("./google-marketing-VZR6W3L6.js");
3057
+ const { conversionTrackingUpdate, readConversionTrackingContractInput } = await import("./google-marketing-OEW2YGUR.js");
2989
3058
  const usage = "canonry conversion-tracking contracts update <project> <contract-id> --input <json-file|-> [--format json]";
2990
3059
  const project3 = requireProject(input, "conversion-tracking.contracts.update", usage);
2991
3060
  const contractId = requirePositional(input, 1, { command: "conversion-tracking.contracts.update", usage, message: "contract id is required" });
@@ -2996,7 +3065,7 @@ function createGoogleMarketingCliCommands(createClient) {
2996
3065
  path: ["conversion-tracking", "contracts", "delete"],
2997
3066
  usage: "canonry conversion-tracking contracts delete <project> <contract-id> [--format json]",
2998
3067
  run: async (input) => {
2999
- const { conversionTrackingDelete } = await import("./google-marketing-VZR6W3L6.js");
3068
+ const { conversionTrackingDelete } = await import("./google-marketing-OEW2YGUR.js");
3000
3069
  const usage = "canonry conversion-tracking contracts delete <project> <contract-id> [--format json]";
3001
3070
  const project3 = requireProject(input, "conversion-tracking.contracts.delete", usage);
3002
3071
  await conversionTrackingDelete(createClient(), project3, requirePositional(input, 1, {
@@ -3010,7 +3079,7 @@ function createGoogleMarketingCliCommands(createClient) {
3010
3079
  path: ["conversion-tracking", "contracts", "integrity"],
3011
3080
  usage: "canonry conversion-tracking contracts integrity <project> <contract-id> [--format json|jsonl]",
3012
3081
  run: async (input) => {
3013
- const { conversionTrackingIntegrity } = await import("./google-marketing-VZR6W3L6.js");
3082
+ const { conversionTrackingIntegrity } = await import("./google-marketing-OEW2YGUR.js");
3014
3083
  const usage = "canonry conversion-tracking contracts integrity <project> <contract-id> [--format json|jsonl]";
3015
3084
  const project3 = requireProject(input, "conversion-tracking.contracts.integrity", usage);
3016
3085
  await conversionTrackingIntegrity(createClient(), project3, requirePositional(input, 1, {
@@ -3136,7 +3205,7 @@ var TRAFFIC_CLI_COMMANDS = [
3136
3205
  help: "Complete stored traffic totals and breakdowns for the selected window. Project-wide for Simple and Advanced portfolios; no provider calls or sync.",
3137
3206
  options: { period: stringOption() },
3138
3207
  run: async (input) => {
3139
- const { trafficAnalytics } = await import("./traffic-AS4PIOQL.js");
3208
+ const { trafficAnalytics } = await import("./traffic-3TBXSHPV.js");
3140
3209
  const project3 = requireProject(input, "traffic.analytics", "canonry traffic analytics <project> [--period 7|14|30|90]");
3141
3210
  await trafficAnalytics(project3, { period: getString(input.values, "window") ?? getString(input.values, "period"), format: input.format });
3142
3211
  }
@@ -3148,7 +3217,7 @@ var TRAFFIC_CLI_COMMANDS = [
3148
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.",
3149
3218
  options: { "start-date": stringOption(), "end-date": stringOption(), source: stringOption(), "burst-threshold": stringOption(), "ratio-threshold": stringOption(), limit: stringOption() },
3150
3219
  run: async (input) => {
3151
- const { trafficReferralAssessment } = await import("./traffic-AS4PIOQL.js");
3220
+ const { trafficReferralAssessment } = await import("./traffic-3TBXSHPV.js");
3152
3221
  const project3 = requireProject(input, "traffic.referral-assessment", "canonry traffic referral-assessment <project> --start-date YYYY-MM-DD --end-date YYYY-MM-DD");
3153
3222
  await trafficReferralAssessment(project3, {
3154
3223
  startDate: getString(input.values, "start") ?? getString(input.values, "start-date"),
@@ -3181,7 +3250,7 @@ var TRAFFIC_CLI_COMMANDS = [
3181
3250
  "confirm-fail-open": { type: "boolean" }
3182
3251
  },
3183
3252
  run: async (input) => {
3184
- const { trafficConnectCloudflare, DEFAULT_CLOUDFLARE_QUEUE_RETENTION_SECONDS } = await import("./traffic-AS4PIOQL.js");
3253
+ const { trafficConnectCloudflare, DEFAULT_CLOUDFLARE_QUEUE_RETENTION_SECONDS } = await import("./traffic-3TBXSHPV.js");
3185
3254
  const forwardPageViews = getBoolean(input.values, "forward-page-views");
3186
3255
  const noForwardPageViews = getBoolean(input.values, "no-forward-page-views");
3187
3256
  if (forwardPageViews && noForwardPageViews) {
@@ -3234,7 +3303,7 @@ var TRAFFIC_CLI_COMMANDS = [
3234
3303
  "display-name": stringOption()
3235
3304
  },
3236
3305
  run: async (input) => {
3237
- const { trafficConnectCloudRun } = await import("./traffic-AS4PIOQL.js");
3306
+ const { trafficConnectCloudRun } = await import("./traffic-3TBXSHPV.js");
3238
3307
  const project3 = requireProject(
3239
3308
  input,
3240
3309
  "traffic.connect.cloud-run",
@@ -3265,7 +3334,7 @@ var TRAFFIC_CLI_COMMANDS = [
3265
3334
  "display-name": stringOption()
3266
3335
  },
3267
3336
  run: async (input) => {
3268
- const { trafficConnectWordpress } = await import("./traffic-AS4PIOQL.js");
3337
+ const { trafficConnectWordpress } = await import("./traffic-3TBXSHPV.js");
3269
3338
  const project3 = requireProject(
3270
3339
  input,
3271
3340
  "traffic.connect.wordpress",
@@ -3297,7 +3366,7 @@ var TRAFFIC_CLI_COMMANDS = [
3297
3366
  "display-name": stringOption()
3298
3367
  },
3299
3368
  run: async (input) => {
3300
- const { trafficConnectVercel } = await import("./traffic-AS4PIOQL.js");
3369
+ const { trafficConnectVercel } = await import("./traffic-3TBXSHPV.js");
3301
3370
  const project3 = requireProject(
3302
3371
  input,
3303
3372
  "traffic.connect.vercel",
@@ -3336,7 +3405,7 @@ var TRAFFIC_CLI_COMMANDS = [
3336
3405
  source: stringOption()
3337
3406
  },
3338
3407
  run: async (input) => {
3339
- const { trafficActivate } = await import("./traffic-AS4PIOQL.js");
3408
+ const { trafficActivate } = await import("./traffic-3TBXSHPV.js");
3340
3409
  const project3 = requireProject(
3341
3410
  input,
3342
3411
  "traffic.activate",
@@ -3355,7 +3424,7 @@ var TRAFFIC_CLI_COMMANDS = [
3355
3424
  "since-minutes": stringOption()
3356
3425
  },
3357
3426
  run: async (input) => {
3358
- const { trafficSync } = await import("./traffic-AS4PIOQL.js");
3427
+ const { trafficSync } = await import("./traffic-3TBXSHPV.js");
3359
3428
  const project3 = requireProject(
3360
3429
  input,
3361
3430
  "traffic.sync",
@@ -3384,7 +3453,7 @@ var TRAFFIC_CLI_COMMANDS = [
3384
3453
  wait: { type: "boolean" }
3385
3454
  },
3386
3455
  run: async (input) => {
3387
- const { trafficBackfill } = await import("./traffic-AS4PIOQL.js");
3456
+ const { trafficBackfill } = await import("./traffic-3TBXSHPV.js");
3388
3457
  const project3 = requireProject(
3389
3458
  input,
3390
3459
  "traffic.backfill",
@@ -3413,7 +3482,7 @@ var TRAFFIC_CLI_COMMANDS = [
3413
3482
  "advance-to-now": { type: "boolean" }
3414
3483
  },
3415
3484
  run: async (input) => {
3416
- const { trafficReset } = await import("./traffic-AS4PIOQL.js");
3485
+ const { trafficReset } = await import("./traffic-3TBXSHPV.js");
3417
3486
  const project3 = requireProject(
3418
3487
  input,
3419
3488
  "traffic.reset",
@@ -3435,7 +3504,7 @@ var TRAFFIC_CLI_COMMANDS = [
3435
3504
  source: stringOption()
3436
3505
  },
3437
3506
  run: async (input) => {
3438
- const { trafficDeclareGap } = await import("./traffic-AS4PIOQL.js");
3507
+ const { trafficDeclareGap } = await import("./traffic-3TBXSHPV.js");
3439
3508
  const project3 = requireProject(
3440
3509
  input,
3441
3510
  "traffic.declare-gap",
@@ -3450,7 +3519,7 @@ var TRAFFIC_CLI_COMMANDS = [
3450
3519
  path: ["traffic", "sources"],
3451
3520
  usage: "canonry traffic sources <project> [--format json]",
3452
3521
  run: async (input) => {
3453
- const { trafficSources } = await import("./traffic-AS4PIOQL.js");
3522
+ const { trafficSources } = await import("./traffic-3TBXSHPV.js");
3454
3523
  const project3 = requireProject(
3455
3524
  input,
3456
3525
  "traffic.sources",
@@ -3463,7 +3532,7 @@ var TRAFFIC_CLI_COMMANDS = [
3463
3532
  path: ["traffic", "status"],
3464
3533
  usage: "canonry traffic status <project> [--format json]",
3465
3534
  run: async (input) => {
3466
- const { trafficStatus } = await import("./traffic-AS4PIOQL.js");
3535
+ const { trafficStatus } = await import("./traffic-3TBXSHPV.js");
3467
3536
  const project3 = requireProject(
3468
3537
  input,
3469
3538
  "traffic.status",
@@ -3478,7 +3547,7 @@ var TRAFFIC_CLI_COMMANDS = [
3478
3547
  help: "Stored sampled tail with 30-day retention, not visits. Unknown traffic is excluded by default. No provider calls.",
3479
3548
  options: { kind: stringOption(), source: stringOption(), since: stringOption(), until: stringOption(), "since-minutes": stringOption(), path: stringOption(), limit: stringOption(), offset: stringOption() },
3480
3549
  run: async (input) => {
3481
- const { trafficSamples } = await import("./traffic-AS4PIOQL.js");
3550
+ const { trafficSamples } = await import("./traffic-3TBXSHPV.js");
3482
3551
  const project3 = requireProject(input, "traffic.samples", "canonry traffic samples <project>");
3483
3552
  const integer = (name) => parseIntegerOption(input, name, { command: "traffic.samples", usage: "canonry traffic samples <project>", message: `--${name} must be an integer` });
3484
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 });
@@ -3497,7 +3566,7 @@ var TRAFFIC_CLI_COMMANDS = [
3497
3566
  granularity: stringOption()
3498
3567
  },
3499
3568
  run: async (input) => {
3500
- const { trafficEvents } = await import("./traffic-AS4PIOQL.js");
3569
+ const { trafficEvents } = await import("./traffic-3TBXSHPV.js");
3501
3570
  const project3 = requireProject(
3502
3571
  input,
3503
3572
  "traffic.events",
@@ -3560,7 +3629,7 @@ var JOURNEYS_CLI_COMMANDS = [
3560
3629
  help: "Stored AI visitor journeys: visitors whose first AI visit fell in the window and how many came back. No provider calls.",
3561
3630
  options: { since: stringOption(), until: stringOption() },
3562
3631
  run: async (input) => {
3563
- const { journeysSummary } = await import("./journeys-YO54IRVC.js");
3632
+ const { journeysSummary } = await import("./journeys-TWVQNRLT.js");
3564
3633
  const project3 = requireProject(input, "journeys.summary", SUMMARY_USAGE);
3565
3634
  await journeysSummary(project3, { since: getString(input.values, "since"), until: getString(input.values, "until"), format: input.format });
3566
3635
  }
@@ -3571,7 +3640,7 @@ var JOURNEYS_CLI_COMMANDS = [
3571
3640
  help: "Stored AI visitors, newest first AI visit first, with their visits. No provider calls.",
3572
3641
  options: { since: stringOption(), until: stringOption(), engine: stringOption(), returned: stringOption(), limit: stringOption(), offset: stringOption() },
3573
3642
  run: async (input) => {
3574
- const { journeysList } = await import("./journeys-YO54IRVC.js");
3643
+ const { journeysList } = await import("./journeys-TWVQNRLT.js");
3575
3644
  const project3 = requireProject(input, "journeys.list", LIST_USAGE);
3576
3645
  const integer = (name) => parseIntegerOption(input, name, { command: "journeys.list", usage: LIST_USAGE, message: `--${name} must be an integer` });
3577
3646
  await journeysList(project3, {
@@ -3591,7 +3660,7 @@ var JOURNEYS_CLI_COMMANDS = [
3591
3660
  help: "Stored visits and requests for one AI visitor, a page at a time. No provider calls.",
3592
3661
  options: { limit: stringOption(), offset: stringOption() },
3593
3662
  run: async (input) => {
3594
- const { journeyShow } = await import("./journeys-YO54IRVC.js");
3663
+ const { journeyShow } = await import("./journeys-TWVQNRLT.js");
3595
3664
  const project3 = requireProject(input, "journeys.show", SHOW_USAGE);
3596
3665
  const visitorKey = requirePositional(input, 1, { command: "journeys.show", usage: SHOW_USAGE, message: "visitor key is required" });
3597
3666
  const integer = (name) => parseIntegerOption(input, name, { command: "journeys.show", usage: SHOW_USAGE, message: `--${name} must be an integer` });
@@ -3642,7 +3711,7 @@ var COMPETITOR_CLI_COMMANDS = [
3642
3711
  supportsDryRun: true,
3643
3712
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3644
3713
  run: async (input) => {
3645
- const { addCompetitors } = await import("./competitor-SIXAPHOM.js");
3714
+ const { addCompetitors } = await import("./competitor-NSUSTLNW.js");
3646
3715
  const project3 = requireProject(input, "competitor.add", ADD_USAGE);
3647
3716
  const domains = input.positionals.slice(1);
3648
3717
  if (domains.length === 0) {
@@ -3671,7 +3740,7 @@ Usage: ${ADD_USAGE}`, {
3671
3740
  usage: IMPORT_USAGE,
3672
3741
  options: { "acknowledge-bulk-add": { type: "boolean" }, ...WAIT_OPTIONS },
3673
3742
  run: async (input) => {
3674
- const { importCompetitors } = await import("./competitor-SIXAPHOM.js");
3743
+ const { importCompetitors } = await import("./competitor-NSUSTLNW.js");
3675
3744
  const project3 = requireProject(input, "competitor.import", IMPORT_USAGE);
3676
3745
  const file = requirePositional(input, 1, { command: "competitor.import", usage: IMPORT_USAGE, message: "input file is required" });
3677
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") });
@@ -3689,7 +3758,7 @@ Usage: ${ADD_USAGE}`, {
3689
3758
  supportsDryRun: true,
3690
3759
  accessFor: ({ values }) => getBoolean(values, "apply") ? OperationAccesses.write : OperationAccesses.stored,
3691
3760
  run: async (input) => {
3692
- const { detectCompetitorAutoAliases } = await import("./competitor-SIXAPHOM.js");
3761
+ const { detectCompetitorAutoAliases } = await import("./competitor-NSUSTLNW.js");
3693
3762
  const project3 = requireProject(input, "competitor.aliases.detect", DETECT_USAGE);
3694
3763
  await detectCompetitorAutoAliases(project3, { apply: getBoolean(input.values, "apply"), ...input.dryRun ? { dryRun: true } : {}, format: input.format });
3695
3764
  }
@@ -3712,7 +3781,7 @@ Usage: ${ADD_USAGE}`, {
3712
3781
  return mutating && !dryRun ? OperationAccesses.write : OperationAccesses.stored;
3713
3782
  },
3714
3783
  run: async (input) => {
3715
- const { competitorAliases } = await import("./competitor-SIXAPHOM.js");
3784
+ const { competitorAliases } = await import("./competitor-NSUSTLNW.js");
3716
3785
  const project3 = requireProject(input, "competitor.aliases", ALIASES_USAGE);
3717
3786
  const domain = requirePositional(input, 1, {
3718
3787
  command: "competitor.aliases",
@@ -3749,7 +3818,7 @@ Usage: ${ALIASES_USAGE}`, {
3749
3818
  usage: "canonry competitor remove <project> <domain...> [--dry-run] [--format json]",
3750
3819
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3751
3820
  run: async (input) => {
3752
- const { removeCompetitors } = await import("./competitor-SIXAPHOM.js");
3821
+ const { removeCompetitors } = await import("./competitor-NSUSTLNW.js");
3753
3822
  const project3 = requireProject(input, "competitor.remove", "canonry competitor remove <project> <domain...> [--dry-run] [--format json]");
3754
3823
  const domains = input.positionals.slice(1);
3755
3824
  if (domains.length === 0) {
@@ -3770,7 +3839,7 @@ Usage: ${ALIASES_USAGE}`, {
3770
3839
  usage: "canonry competitor delete <project> <domain...> [--dry-run] [--format json]",
3771
3840
  accessFor: ({ dryRun }) => dryRun ? OperationAccesses.stored : OperationAccesses.write,
3772
3841
  run: async (input) => {
3773
- const { removeCompetitors } = await import("./competitor-SIXAPHOM.js");
3842
+ const { removeCompetitors } = await import("./competitor-NSUSTLNW.js");
3774
3843
  const project3 = requireProject(input, "competitor.delete", "canonry competitor delete <project> <domain...> [--dry-run] [--format json]");
3775
3844
  const domains = input.positionals.slice(1);
3776
3845
  if (domains.length === 0) {
@@ -3789,7 +3858,7 @@ Usage: ${ALIASES_USAGE}`, {
3789
3858
  path: ["competitor", "list"],
3790
3859
  usage: "canonry competitor list <project> [--format json]",
3791
3860
  run: async (input) => {
3792
- const { listCompetitors } = await import("./competitor-SIXAPHOM.js");
3861
+ const { listCompetitors } = await import("./competitor-NSUSTLNW.js");
3793
3862
  const project3 = requireProject(input, "competitor.list", "canonry competitor list <project>");
3794
3863
  await listCompetitors(project3, input.format);
3795
3864
  }
@@ -3811,7 +3880,7 @@ Usage: ${ALIASES_USAGE}`, {
3811
3880
  answers: stringOption()
3812
3881
  },
3813
3882
  run: async (input) => {
3814
- const { showCompetitorLandscape } = await import("./competitor-SIXAPHOM.js");
3883
+ const { showCompetitorLandscape } = await import("./competitor-NSUSTLNW.js");
3815
3884
  const project3 = requireProject(input, "competitor.landscape", LANDSCAPE_USAGE);
3816
3885
  const scope = parseLandscapeScope(getString(input.values, "scope"));
3817
3886
  const groupKey = getString(input.values, "group-key");
@@ -3858,7 +3927,7 @@ Usage: ${ALIASES_USAGE}`, {
3858
3927
  limit: stringOption()
3859
3928
  },
3860
3929
  run: async (input) => {
3861
- const { suggestCompetitors } = await import("./competitor-SIXAPHOM.js");
3930
+ const { suggestCompetitors } = await import("./competitor-NSUSTLNW.js");
3862
3931
  const project3 = requireProject(input, "competitor.suggest", SUGGEST_USAGE);
3863
3932
  const minAnswers = parseIntegerOption(input, "min-answers", {
3864
3933
  command: "competitor.suggest",
@@ -3909,7 +3978,7 @@ var GOOGLE_CLI_COMMANDS = [
3909
3978
  "public-url": stringOption()
3910
3979
  },
3911
3980
  run: async (input) => {
3912
- const { googleConnect } = await import("./google-KGPHZG6E.js");
3981
+ const { googleConnect } = await import("./google-O6VQFK4L.js");
3913
3982
  const project3 = requireProject(input, "google.connect", "canonry google connect <project> [--type gsc|ga4] [--public-url <url>] [--format json]");
3914
3983
  await googleConnect(project3, {
3915
3984
  type: getString(input.values, "type") ?? "gsc",
@@ -3925,7 +3994,7 @@ var GOOGLE_CLI_COMMANDS = [
3925
3994
  type: stringOption()
3926
3995
  },
3927
3996
  run: async (input) => {
3928
- const { googleDisconnect } = await import("./google-KGPHZG6E.js");
3997
+ const { googleDisconnect } = await import("./google-O6VQFK4L.js");
3929
3998
  const project3 = requireProject(input, "google.disconnect", "canonry google disconnect <project> [--type gsc|ga4] [--format json]");
3930
3999
  await googleDisconnect(project3, {
3931
4000
  type: getString(input.values, "type") ?? "gsc",
@@ -3937,7 +4006,7 @@ var GOOGLE_CLI_COMMANDS = [
3937
4006
  path: ["google", "status"],
3938
4007
  usage: "canonry google status <project> [--format json]",
3939
4008
  run: async (input) => {
3940
- const { googleStatus } = await import("./google-KGPHZG6E.js");
4009
+ const { googleStatus } = await import("./google-O6VQFK4L.js");
3941
4010
  const project3 = requireProject(input, "google.status", "canonry google status <project> [--format json]");
3942
4011
  await googleStatus(project3, input.format);
3943
4012
  }
@@ -3946,7 +4015,7 @@ var GOOGLE_CLI_COMMANDS = [
3946
4015
  path: ["google", "properties"],
3947
4016
  usage: "canonry google properties <project> [--format json]",
3948
4017
  run: async (input) => {
3949
- const { googleProperties } = await import("./google-KGPHZG6E.js");
4018
+ const { googleProperties } = await import("./google-O6VQFK4L.js");
3950
4019
  const project3 = requireProject(input, "google.properties", "canonry google properties <project> [--format json]");
3951
4020
  await googleProperties(project3, input.format);
3952
4021
  }
@@ -3955,7 +4024,7 @@ var GOOGLE_CLI_COMMANDS = [
3955
4024
  path: ["google", "set-property"],
3956
4025
  usage: "canonry google set-property <project> <url> [--format json]",
3957
4026
  run: async (input) => {
3958
- const { googleSetProperty } = await import("./google-KGPHZG6E.js");
4027
+ const { googleSetProperty } = await import("./google-O6VQFK4L.js");
3959
4028
  const project3 = requireProject(input, "google.set-property", "canonry google set-property <project> <url> [--format json]");
3960
4029
  const propertyUrl = requirePositional(input, 1, {
3961
4030
  command: "google.set-property",
@@ -3969,7 +4038,7 @@ var GOOGLE_CLI_COMMANDS = [
3969
4038
  path: ["google", "set-sitemap"],
3970
4039
  usage: "canonry google set-sitemap <project> <url> [--format json]",
3971
4040
  run: async (input) => {
3972
- const { googleSetSitemap } = await import("./google-KGPHZG6E.js");
4041
+ const { googleSetSitemap } = await import("./google-O6VQFK4L.js");
3973
4042
  const project3 = requireProject(input, "google.set-sitemap", "canonry google set-sitemap <project> <url> [--format json]");
3974
4043
  const sitemapUrl = requirePositional(input, 1, {
3975
4044
  command: "google.set-sitemap",
@@ -3983,7 +4052,7 @@ var GOOGLE_CLI_COMMANDS = [
3983
4052
  path: ["google", "list-sitemaps"],
3984
4053
  usage: "canonry google list-sitemaps <project> [--format json]",
3985
4054
  run: async (input) => {
3986
- const { googleListSitemaps } = await import("./google-KGPHZG6E.js");
4055
+ const { googleListSitemaps } = await import("./google-O6VQFK4L.js");
3987
4056
  const project3 = requireProject(input, "google.list-sitemaps", "canonry google list-sitemaps <project> [--format json]");
3988
4057
  await googleListSitemaps(project3, { format: input.format });
3989
4058
  }
@@ -3997,7 +4066,7 @@ var GOOGLE_CLI_COMMANDS = [
3997
4066
  "all-files": { type: "boolean", default: false }
3998
4067
  },
3999
4068
  run: async (input) => {
4000
- const { googleSubmitSitemaps } = await import("./google-KGPHZG6E.js");
4069
+ const { googleSubmitSitemaps } = await import("./google-O6VQFK4L.js");
4001
4070
  const project3 = requireProject(input, "google.submit-sitemap", "canonry google submit-sitemap <project> [url...] [--configured|--all|--all-files] [--format json|jsonl]");
4002
4071
  const sitemapUrls = input.positionals.slice(1);
4003
4072
  const configured = getBoolean(input.values, "configured");
@@ -4031,7 +4100,7 @@ var GOOGLE_CLI_COMMANDS = [
4031
4100
  wait: { type: "boolean", default: false }
4032
4101
  },
4033
4102
  run: async (input) => {
4034
- const { googleSync } = await import("./google-KGPHZG6E.js");
4103
+ const { googleSync } = await import("./google-O6VQFK4L.js");
4035
4104
  const project3 = requireProject(input, "google.sync", "canonry google sync <project> [--type gsc|ga4] [--days <n>] [--full] [--wait] [--format json]");
4036
4105
  await googleSync(project3, {
4037
4106
  type: getString(input.values, "type") ?? "gsc",
@@ -4061,7 +4130,7 @@ var GOOGLE_CLI_COMMANDS = [
4061
4130
  "order-by": stringOption()
4062
4131
  },
4063
4132
  run: async (input) => {
4064
- const { googlePerformance } = await import("./google-KGPHZG6E.js");
4133
+ const { googlePerformance } = await import("./google-O6VQFK4L.js");
4065
4134
  const project3 = requireProject(input, "google.performance", GOOGLE_PERFORMANCE_USAGE);
4066
4135
  const startDate = getString(input.values, "start");
4067
4136
  const endDate = getString(input.values, "end");
@@ -4112,7 +4181,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4112
4181
  end: stringOption()
4113
4182
  },
4114
4183
  run: async (input) => {
4115
- const { googlePerformanceDaily } = await import("./google-KGPHZG6E.js");
4184
+ const { googlePerformanceDaily } = await import("./google-O6VQFK4L.js");
4116
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]");
4117
4186
  await googlePerformanceDaily(project3, {
4118
4187
  window: getString(input.values, "window"),
@@ -4133,7 +4202,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4133
4202
  limit: stringOption()
4134
4203
  },
4135
4204
  run: async (input) => {
4136
- const { googleTopPages } = await import("./google-KGPHZG6E.js");
4205
+ const { googleTopPages } = await import("./google-O6VQFK4L.js");
4137
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]";
4138
4207
  const project3 = requireProject(input, "google.top-pages", usage);
4139
4208
  await googleTopPages(project3, {
@@ -4161,7 +4230,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4161
4230
  offset: stringOption()
4162
4231
  },
4163
4232
  run: async (input) => {
4164
- const { googleQueryTotals } = await import("./google-KGPHZG6E.js");
4233
+ const { googleQueryTotals } = await import("./google-O6VQFK4L.js");
4165
4234
  const project3 = requireProject(input, "google.query-totals", GOOGLE_QUERY_TOTALS_USAGE);
4166
4235
  await googleQueryTotals(project3, {
4167
4236
  window: getString(input.values, "window"),
@@ -4185,7 +4254,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4185
4254
  path: ["google", "inspect"],
4186
4255
  usage: "canonry google inspect <project> <url> [--format json]",
4187
4256
  run: async (input) => {
4188
- const { googleInspect } = await import("./google-KGPHZG6E.js");
4257
+ const { googleInspect } = await import("./google-O6VQFK4L.js");
4189
4258
  const project3 = requireProject(input, "google.inspect", "canonry google inspect <project> <url> [--format json]");
4190
4259
  const url = requirePositional(input, 1, {
4191
4260
  command: "google.inspect",
@@ -4202,7 +4271,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4202
4271
  url: stringOption()
4203
4272
  },
4204
4273
  run: async (input) => {
4205
- const { googleInspections } = await import("./google-KGPHZG6E.js");
4274
+ const { googleInspections } = await import("./google-O6VQFK4L.js");
4206
4275
  const project3 = requireProject(input, "google.inspections", "canonry google inspections <project> [--url <url>] [--format json]");
4207
4276
  await googleInspections(project3, {
4208
4277
  url: getString(input.values, "url"),
@@ -4218,7 +4287,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4218
4287
  wait: { type: "boolean", default: false }
4219
4288
  },
4220
4289
  run: async (input) => {
4221
- const { googleInspectSitemap } = await import("./google-KGPHZG6E.js");
4290
+ const { googleInspectSitemap } = await import("./google-O6VQFK4L.js");
4222
4291
  const project3 = requireProject(input, "google.inspect-sitemap", "canonry google inspect-sitemap <project> [--sitemap-url <url>] [--wait] [--format json]");
4223
4292
  await googleInspectSitemap(project3, {
4224
4293
  sitemapUrl: getString(input.values, "sitemap-url"),
@@ -4231,7 +4300,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4231
4300
  path: ["google", "coverage"],
4232
4301
  usage: "canonry google coverage <project> [--format json]",
4233
4302
  run: async (input) => {
4234
- const { googleCoverage } = await import("./google-KGPHZG6E.js");
4303
+ const { googleCoverage } = await import("./google-O6VQFK4L.js");
4235
4304
  const project3 = requireProject(input, "google.coverage", "canonry google coverage <project> [--format json]");
4236
4305
  await googleCoverage(project3, input.format);
4237
4306
  }
@@ -4243,7 +4312,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4243
4312
  limit: stringOption()
4244
4313
  },
4245
4314
  run: async (input) => {
4246
- const { googleCoverageHistory } = await import("./google-KGPHZG6E.js");
4315
+ const { googleCoverageHistory } = await import("./google-O6VQFK4L.js");
4247
4316
  const project3 = requireProject(input, "google.coverage-history", "canonry google coverage-history <project> [--limit <n>] [--format json]");
4248
4317
  await googleCoverageHistory(project3, {
4249
4318
  limit: parseIntegerOption(input, "limit", {
@@ -4259,7 +4328,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4259
4328
  path: ["google", "deindexed"],
4260
4329
  usage: "canonry google deindexed <project> [--format json]",
4261
4330
  run: async (input) => {
4262
- const { googleDeindexed } = await import("./google-KGPHZG6E.js");
4331
+ const { googleDeindexed } = await import("./google-O6VQFK4L.js");
4263
4332
  const project3 = requireProject(input, "google.deindexed", "canonry google deindexed <project> [--format json]");
4264
4333
  await googleDeindexed(project3, input.format);
4265
4334
  }
@@ -4271,7 +4340,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4271
4340
  wait: { type: "boolean", default: false }
4272
4341
  },
4273
4342
  run: async (input) => {
4274
- const { googleDiscoverSitemaps } = await import("./google-KGPHZG6E.js");
4343
+ const { googleDiscoverSitemaps } = await import("./google-O6VQFK4L.js");
4275
4344
  const project3 = requireProject(input, "google.discover-sitemaps", "canonry google discover-sitemaps <project> [--wait] [--format json]");
4276
4345
  await googleDiscoverSitemaps(project3, {
4277
4346
  wait: getBoolean(input.values, "wait"),
@@ -4287,7 +4356,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4287
4356
  wait: { type: "boolean", default: false }
4288
4357
  },
4289
4358
  run: async (input) => {
4290
- const { googleRequestIndexing } = await import("./google-KGPHZG6E.js");
4359
+ const { googleRequestIndexing } = await import("./google-O6VQFK4L.js");
4291
4360
  const project3 = requireProject(input, "google.request-indexing", "canonry google request-indexing <project> [url] [--all-unindexed] [--wait] [--format json]");
4292
4361
  const url = input.positionals[1];
4293
4362
  const allUnindexed = getBoolean(input.values, "all-unindexed");
@@ -4312,7 +4381,7 @@ Usage: ${GOOGLE_PERFORMANCE_USAGE}`,
4312
4381
  path: ["google", "refresh"],
4313
4382
  usage: "canonry google refresh <project> [--format json]",
4314
4383
  run: async (input) => {
4315
- const { googleRefresh } = await import("./google-KGPHZG6E.js");
4384
+ const { googleRefresh } = await import("./google-O6VQFK4L.js");
4316
4385
  const project3 = requireProject(input, "google.refresh", "canonry google refresh <project> [--format json]");
4317
4386
  await googleRefresh(project3, input.format);
4318
4387
  }
@@ -4336,7 +4405,7 @@ var KEYS_CLI_COMMANDS = [
4336
4405
  path: ["key", "list"],
4337
4406
  usage: "canonry key list [--format json|jsonl]",
4338
4407
  run: async (input) => {
4339
- const { listApiKeys } = await import("./keys-M4QZGYVJ.js");
4408
+ const { listApiKeys } = await import("./keys-C6FPREBZ.js");
4340
4409
  await listApiKeys(input.format);
4341
4410
  }
4342
4411
  },
@@ -4350,7 +4419,7 @@ var KEYS_CLI_COMMANDS = [
4350
4419
  project: stringOption()
4351
4420
  },
4352
4421
  run: async (input) => {
4353
- const { createApiKey } = await import("./keys-M4QZGYVJ.js");
4422
+ const { createApiKey } = await import("./keys-C6FPREBZ.js");
4354
4423
  const name = requireStringOption(input, "name", {
4355
4424
  command: "key.create",
4356
4425
  usage: "canonry key create --name <name> [--read-only | --scope <s> ...] [--project <name>] [--format json]",
@@ -4371,7 +4440,7 @@ var KEYS_CLI_COMMANDS = [
4371
4440
  path: ["key", "whoami"],
4372
4441
  usage: "canonry key whoami [--format json]",
4373
4442
  run: async (input) => {
4374
- const { showApiKeySelf } = await import("./keys-M4QZGYVJ.js");
4443
+ const { showApiKeySelf } = await import("./keys-C6FPREBZ.js");
4375
4444
  await showApiKeySelf(input.format);
4376
4445
  }
4377
4446
  },
@@ -4379,7 +4448,7 @@ var KEYS_CLI_COMMANDS = [
4379
4448
  path: ["key", "revoke"],
4380
4449
  usage: "canonry key revoke <id> [--format json]",
4381
4450
  run: async (input) => {
4382
- const { revokeApiKey } = await import("./keys-M4QZGYVJ.js");
4451
+ const { revokeApiKey } = await import("./keys-C6FPREBZ.js");
4383
4452
  const id2 = requirePositional(input, 0, {
4384
4453
  command: "key.revoke",
4385
4454
  usage: "canonry key revoke <id> [--format json]",
@@ -4408,7 +4477,7 @@ var USERS_CLI_COMMANDS = [
4408
4477
  path: ["user", "list"],
4409
4478
  usage: "canonry user list [--format json|jsonl]",
4410
4479
  run: async (input) => {
4411
- const { listUsers } = await import("./users-BNYKF35J.js");
4480
+ const { listUsers } = await import("./users-2HDDA5GT.js");
4412
4481
  await listUsers(input.format);
4413
4482
  }
4414
4483
  },
@@ -4423,7 +4492,7 @@ var USERS_CLI_COMMANDS = [
4423
4492
  "password-stdin": { type: "boolean" }
4424
4493
  },
4425
4494
  run: async (input) => {
4426
- const { createUser } = await import("./users-BNYKF35J.js");
4495
+ const { createUser } = await import("./users-2HDDA5GT.js");
4427
4496
  const name = requireStringOption(input, "name", {
4428
4497
  command: "user.create",
4429
4498
  usage: CREATE_USAGE,
@@ -4446,7 +4515,7 @@ var USERS_CLI_COMMANDS = [
4446
4515
  path: ["user", "delete"],
4447
4516
  usage: "canonry user delete <name> [--format json]",
4448
4517
  run: async (input) => {
4449
- const { deleteUser } = await import("./users-BNYKF35J.js");
4518
+ const { deleteUser } = await import("./users-2HDDA5GT.js");
4450
4519
  const name = requirePositional(input, 0, {
4451
4520
  command: "user.delete",
4452
4521
  usage: "canonry user delete <name> [--format json]",
@@ -4474,7 +4543,7 @@ var KEYWORD_CLI_COMMANDS = [
4474
4543
  path: ["keyword", "add"],
4475
4544
  usage: "canonry keyword add <project> <kw...> [--format json]",
4476
4545
  run: async (input) => {
4477
- const { addKeywords } = await import("./keyword-MU62MGWT.js");
4546
+ const { addKeywords } = await import("./keyword-PBSE65DK.js");
4478
4547
  const project3 = requireProject(input, "keyword.add", "canonry keyword add <project> <kw...> [--format json]");
4479
4548
  const keywords = input.positionals.slice(1);
4480
4549
  if (keywords.length === 0) {
@@ -4493,7 +4562,7 @@ var KEYWORD_CLI_COMMANDS = [
4493
4562
  path: ["keyword", "replace"],
4494
4563
  usage: "canonry keyword replace <project> <kw...> [--format json]",
4495
4564
  run: async (input) => {
4496
- const { replaceKeywords } = await import("./keyword-MU62MGWT.js");
4565
+ const { replaceKeywords } = await import("./keyword-PBSE65DK.js");
4497
4566
  const project3 = requireProject(input, "keyword.replace", "canonry keyword replace <project> <kw...> [--format json]");
4498
4567
  const keywords = input.positionals.slice(1);
4499
4568
  if (keywords.length === 0) {
@@ -4512,7 +4581,7 @@ var KEYWORD_CLI_COMMANDS = [
4512
4581
  path: ["keyword", "remove"],
4513
4582
  usage: "canonry keyword remove <project> <kw...> [--format json]",
4514
4583
  run: async (input) => {
4515
- const { removeKeywords } = await import("./keyword-MU62MGWT.js");
4584
+ const { removeKeywords } = await import("./keyword-PBSE65DK.js");
4516
4585
  const project3 = requireProject(input, "keyword.remove", "canonry keyword remove <project> <kw...> [--format json]");
4517
4586
  const keywords = input.positionals.slice(1);
4518
4587
  if (keywords.length === 0) {
@@ -4531,7 +4600,7 @@ var KEYWORD_CLI_COMMANDS = [
4531
4600
  path: ["keyword", "delete"],
4532
4601
  usage: "canonry keyword delete <project> <kw...> [--format json]",
4533
4602
  run: async (input) => {
4534
- const { removeKeywords } = await import("./keyword-MU62MGWT.js");
4603
+ const { removeKeywords } = await import("./keyword-PBSE65DK.js");
4535
4604
  const project3 = requireProject(input, "keyword.delete", "canonry keyword delete <project> <kw...> [--format json]");
4536
4605
  const keywords = input.positionals.slice(1);
4537
4606
  if (keywords.length === 0) {
@@ -4550,7 +4619,7 @@ var KEYWORD_CLI_COMMANDS = [
4550
4619
  path: ["keyword", "list"],
4551
4620
  usage: "canonry keyword list <project> [--format json]",
4552
4621
  run: async (input) => {
4553
- const { listKeywords } = await import("./keyword-MU62MGWT.js");
4622
+ const { listKeywords } = await import("./keyword-PBSE65DK.js");
4554
4623
  const project3 = requireProject(input, "keyword.list", "canonry keyword list <project> [--format json]");
4555
4624
  await listKeywords(project3, input.format);
4556
4625
  }
@@ -4559,7 +4628,7 @@ var KEYWORD_CLI_COMMANDS = [
4559
4628
  path: ["keyword", "import"],
4560
4629
  usage: "canonry keyword import <project> <file> [--format json]",
4561
4630
  run: async (input) => {
4562
- const { importKeywords } = await import("./keyword-MU62MGWT.js");
4631
+ const { importKeywords } = await import("./keyword-PBSE65DK.js");
4563
4632
  const project3 = requireProject(input, "keyword.import", "canonry keyword import <project> <file> [--format json]");
4564
4633
  const filePath = requirePositional(input, 1, {
4565
4634
  command: "keyword.import",
@@ -4578,7 +4647,7 @@ var KEYWORD_CLI_COMMANDS = [
4578
4647
  save: { type: "boolean", default: false }
4579
4648
  },
4580
4649
  run: async (input) => {
4581
- const { generateKeywords } = await import("./keyword-MU62MGWT.js");
4650
+ const { generateKeywords } = await import("./keyword-PBSE65DK.js");
4582
4651
  const project3 = requireProject(
4583
4652
  input,
4584
4653
  "keyword.generate",
@@ -4619,7 +4688,7 @@ var QUERY_CLI_COMMANDS = [
4619
4688
  path: ["query", action],
4620
4689
  usage: `canonry query ${action} <project>${action === "workspace" ? "" : " <json|->"} [--format json]`,
4621
4690
  run: async (input) => {
4622
- const { runAdvancedMeasurementOperation: runAdvancedMeasurementOperation2 } = await import("./measurement-plan-HVSTZWTW.js");
4691
+ const { runAdvancedMeasurementOperation: runAdvancedMeasurementOperation2 } = await import("./measurement-plan-HKW3IVIE.js");
4623
4692
  const usage = `canonry query ${action} <project>${action === "workspace" ? "" : " <json|->"} [--format json]`;
4624
4693
  const project3 = requireProject(input, `query.${action}`, usage);
4625
4694
  const source = action === "workspace" ? void 0 : requirePositional(input, 1, {
@@ -4634,7 +4703,7 @@ var QUERY_CLI_COMMANDS = [
4634
4703
  path: ["query", "add"],
4635
4704
  usage: "canonry query add <project> <query...> [--format json]",
4636
4705
  run: async (input) => {
4637
- const { addQueries } = await import("./query-RRD5M4QV.js");
4706
+ const { addQueries } = await import("./query-UQHJVYUJ.js");
4638
4707
  const project3 = requireProject(input, "query.add", "canonry query add <project> <query...> [--format json]");
4639
4708
  const queries = input.positionals.slice(1);
4640
4709
  if (queries.length === 0) {
@@ -4654,7 +4723,7 @@ var QUERY_CLI_COMMANDS = [
4654
4723
  usage: "canonry query replace <project> <query...> [--dry-run] [--format json]",
4655
4724
  supportsDryRun: true,
4656
4725
  run: async (input) => {
4657
- const { replaceQueries } = await import("./query-RRD5M4QV.js");
4726
+ const { replaceQueries } = await import("./query-UQHJVYUJ.js");
4658
4727
  const project3 = requireProject(input, "query.replace", "canonry query replace <project> <query...> [--dry-run] [--format json]");
4659
4728
  const queries = input.positionals.slice(1);
4660
4729
  if (queries.length === 0) {
@@ -4673,7 +4742,7 @@ var QUERY_CLI_COMMANDS = [
4673
4742
  path: ["query", "remove"],
4674
4743
  usage: "canonry query remove <project> <query...> [--format json]",
4675
4744
  run: async (input) => {
4676
- const { removeQueries } = await import("./query-RRD5M4QV.js");
4745
+ const { removeQueries } = await import("./query-UQHJVYUJ.js");
4677
4746
  const project3 = requireProject(input, "query.remove", "canonry query remove <project> <query...> [--format json]");
4678
4747
  const queries = input.positionals.slice(1);
4679
4748
  if (queries.length === 0) {
@@ -4692,7 +4761,7 @@ var QUERY_CLI_COMMANDS = [
4692
4761
  path: ["query", "delete"],
4693
4762
  usage: "canonry query delete <project> <query...> [--format json]",
4694
4763
  run: async (input) => {
4695
- const { removeQueries } = await import("./query-RRD5M4QV.js");
4764
+ const { removeQueries } = await import("./query-UQHJVYUJ.js");
4696
4765
  const project3 = requireProject(input, "query.delete", "canonry query delete <project> <query...> [--format json]");
4697
4766
  const queries = input.positionals.slice(1);
4698
4767
  if (queries.length === 0) {
@@ -4711,7 +4780,7 @@ var QUERY_CLI_COMMANDS = [
4711
4780
  path: ["query", "list"],
4712
4781
  usage: "canonry query list <project> [--format json]",
4713
4782
  run: async (input) => {
4714
- const { listQueries } = await import("./query-RRD5M4QV.js");
4783
+ const { listQueries } = await import("./query-UQHJVYUJ.js");
4715
4784
  const project3 = requireProject(input, "query.list", "canonry query list <project> [--format json]");
4716
4785
  await listQueries(project3, input.format);
4717
4786
  }
@@ -4720,7 +4789,7 @@ var QUERY_CLI_COMMANDS = [
4720
4789
  path: ["query", "import"],
4721
4790
  usage: "canonry query import <project> <file> [--format json]",
4722
4791
  run: async (input) => {
4723
- const { importQueries } = await import("./query-RRD5M4QV.js");
4792
+ const { importQueries } = await import("./query-UQHJVYUJ.js");
4724
4793
  const project3 = requireProject(input, "query.import", "canonry query import <project> <file> [--format json]");
4725
4794
  const filePath = requirePositional(input, 1, {
4726
4795
  command: "query.import",
@@ -4739,7 +4808,7 @@ var QUERY_CLI_COMMANDS = [
4739
4808
  save: { type: "boolean", default: false }
4740
4809
  },
4741
4810
  run: async (input) => {
4742
- const { generateQueries } = await import("./query-RRD5M4QV.js");
4811
+ const { generateQueries } = await import("./query-UQHJVYUJ.js");
4743
4812
  const project3 = requireProject(
4744
4813
  input,
4745
4814
  "query.generate",
@@ -4789,7 +4858,7 @@ var MCP_CLI_COMMANDS = [
4789
4858
  "config-path": stringOption()
4790
4859
  },
4791
4860
  run: async (input) => {
4792
- const { installMcp } = await import("./mcp-LYS5P3PB.js");
4861
+ const { installMcp } = await import("./mcp-P4LNENKX.js");
4793
4862
  const usage = `canonry mcp install --client ${CLIENT_LIST} [--name <server>] [--read-only] [--dry-run] [--config-path <path>] [--format json]`;
4794
4863
  const client = requireStringOption(input, "client", {
4795
4864
  command: "mcp.install",
@@ -4816,7 +4885,7 @@ var MCP_CLI_COMMANDS = [
4816
4885
  "read-only": { type: "boolean" }
4817
4886
  },
4818
4887
  run: async (input) => {
4819
- const { printMcpConfig } = await import("./mcp-LYS5P3PB.js");
4888
+ const { printMcpConfig } = await import("./mcp-P4LNENKX.js");
4820
4889
  const usage = `canonry mcp config --client ${CLIENT_LIST} [--name <server>] [--read-only] [--format json]`;
4821
4890
  const client = requireStringOption(input, "client", {
4822
4891
  command: "mcp.config",
@@ -4852,7 +4921,7 @@ var NOTIFY_CLI_COMMANDS = [
4852
4921
  usage: "canonry notify events [--target local|server] [--format json|jsonl]",
4853
4922
  options: { target: stringOption() },
4854
4923
  run: async (input) => {
4855
- const { listEvents } = await import("./notify-XSP5JXU3.js");
4924
+ const { listEvents } = await import("./notify-A3I3G7NK.js");
4856
4925
  await listEvents(input.format, getString(input.values, "target"));
4857
4926
  }
4858
4927
  },
@@ -4864,7 +4933,7 @@ var NOTIFY_CLI_COMMANDS = [
4864
4933
  events: stringOption()
4865
4934
  },
4866
4935
  run: async (input) => {
4867
- const { addNotification } = await import("./notify-XSP5JXU3.js");
4936
+ const { addNotification } = await import("./notify-A3I3G7NK.js");
4868
4937
  const project3 = requireProject(input, "notify.add", "canonry notify add <project> --webhook <url> --events <list> [--format json]");
4869
4938
  const webhook = requireStringOption(input, "webhook", {
4870
4939
  command: "notify.add",
@@ -4887,7 +4956,7 @@ var NOTIFY_CLI_COMMANDS = [
4887
4956
  path: ["notify", "list"],
4888
4957
  usage: "canonry notify list <project> [--format json]",
4889
4958
  run: async (input) => {
4890
- const { listNotifications } = await import("./notify-XSP5JXU3.js");
4959
+ const { listNotifications } = await import("./notify-A3I3G7NK.js");
4891
4960
  const project3 = requireProject(input, "notify.list", "canonry notify list <project> [--format json]");
4892
4961
  await listNotifications(project3, input.format);
4893
4962
  }
@@ -4896,7 +4965,7 @@ var NOTIFY_CLI_COMMANDS = [
4896
4965
  path: ["notify", "remove"],
4897
4966
  usage: "canonry notify remove <project> <id> [--format json]",
4898
4967
  run: async (input) => {
4899
- const { removeNotification } = await import("./notify-XSP5JXU3.js");
4968
+ const { removeNotification } = await import("./notify-A3I3G7NK.js");
4900
4969
  const project3 = requireProject(input, "notify.remove", "canonry notify remove <project> <id> [--format json]");
4901
4970
  const id2 = requirePositional(input, 1, {
4902
4971
  command: "notify.remove",
@@ -4910,7 +4979,7 @@ var NOTIFY_CLI_COMMANDS = [
4910
4979
  path: ["notify", "test"],
4911
4980
  usage: "canonry notify test <project> <id> [--format json]",
4912
4981
  run: async (input) => {
4913
- const { testNotification } = await import("./notify-XSP5JXU3.js");
4982
+ const { testNotification } = await import("./notify-A3I3G7NK.js");
4914
4983
  const project3 = requireProject(input, "notify.test", "canonry notify test <project> <id> [--format json]");
4915
4984
  const id2 = requirePositional(input, 1, {
4916
4985
  command: "notify.test",
@@ -5074,7 +5143,7 @@ var OPERATOR_CLI_COMMANDS = [
5074
5143
  usage: RESULTS_CLEAR_USAGE,
5075
5144
  options: { run: multiStringOption(), "research-run": multiStringOption(), confirm: { type: "boolean", default: false } },
5076
5145
  run: async (input) => {
5077
- const { clearResults } = await import("./history-ZY27B7JE.js");
5146
+ const { clearResults } = await import("./history-WTU4ETCU.js");
5078
5147
  await clearResults(requireProject(input, "results.clear", RESULTS_CLEAR_USAGE), {
5079
5148
  runIds: getStringArray(input.values, "run") ?? [],
5080
5149
  researchRunIds: getStringArray(input.values, "research-run") ?? [],
@@ -5093,7 +5162,7 @@ var OPERATOR_CLI_COMMANDS = [
5093
5162
  output: { type: "string", short: "o" }
5094
5163
  },
5095
5164
  run: async (input) => {
5096
- const { exportResults } = await import("./results-export-5FC7ZT6O.js");
5165
+ const { exportResults } = await import("./results-export-FOJYT4MK.js");
5097
5166
  const project3 = requireProject(input, "results export", RESULTS_EXPORT_USAGE);
5098
5167
  await exportResults(project3, {
5099
5168
  format: parseResultsExportFormat(getString(input.values, "format")),
@@ -5109,7 +5178,7 @@ var OPERATOR_CLI_COMMANDS = [
5109
5178
  usage: "canonry status <project>|--all [--problems] [--format json|jsonl]",
5110
5179
  options: { all: { type: "boolean", default: false }, problems: { type: "boolean", default: false } },
5111
5180
  run: async (input) => {
5112
- const { showStatus } = await import("./status-FGDDGBMJ.js");
5181
+ const { showStatus } = await import("./status-2WCUV6C2.js");
5113
5182
  const all = getBoolean(input.values, "all");
5114
5183
  const usage = "canonry status <project>|--all [--problems] [--format json|jsonl]";
5115
5184
  const project3 = all ? void 0 : requireProject(input, "status", usage);
@@ -5120,7 +5189,7 @@ var OPERATOR_CLI_COMMANDS = [
5120
5189
  path: ["evidence"],
5121
5190
  usage: "canonry evidence <project> [--format json]",
5122
5191
  run: async (input) => {
5123
- const { showEvidence } = await import("./evidence-W2EWKBAV.js");
5192
+ const { showEvidence } = await import("./evidence-ZWRGNZWN.js");
5124
5193
  const project3 = requireProject(input, "evidence", "canonry evidence <project> [--format json]");
5125
5194
  await showEvidence(project3, input.format);
5126
5195
  }
@@ -5142,7 +5211,7 @@ var OPERATOR_CLI_COMMANDS = [
5142
5211
  "entity-type": stringOption()
5143
5212
  },
5144
5213
  run: async (input) => {
5145
- const { showHistory } = await import("./history-ZY27B7JE.js");
5214
+ const { showHistory } = await import("./history-WTU4ETCU.js");
5146
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]";
5147
5216
  if (getBoolean(input.values, "all") && input.positionals.length > 0) throw usageError("Use a project or --all, not both.");
5148
5217
  const project3 = getBoolean(input.values, "all") ? void 0 : requireProject(input, "history", usage);
@@ -5168,7 +5237,7 @@ var OPERATOR_CLI_COMMANDS = [
5168
5237
  "include-secrets": { type: "boolean", default: false }
5169
5238
  },
5170
5239
  run: async (input) => {
5171
- const { exportProject } = await import("./export-cmd-EGHMY3M6.js");
5240
+ const { exportProject } = await import("./export-cmd-AM6SIRUW.js");
5172
5241
  const project3 = requireProject(input, "export", "canonry export <project> [--include-results] [--include-secrets] [--format json]");
5173
5242
  await exportProject(project3, {
5174
5243
  includeResults: getBoolean(input.values, "include-results"),
@@ -5187,7 +5256,7 @@ var OPERATOR_CLI_COMMANDS = [
5187
5256
  "query-class": stringOption()
5188
5257
  },
5189
5258
  run: async (input) => {
5190
- const { ANALYTICS_USAGE, parseAnalyticsQueryClass, showAnalytics } = await import("./analytics-2IXSG5ML.js");
5259
+ const { ANALYTICS_USAGE, parseAnalyticsQueryClass, showAnalytics } = await import("./analytics-HMYE6EIX.js");
5191
5260
  const project3 = requireProject(input, "analytics", ANALYTICS_USAGE);
5192
5261
  await showAnalytics(project3, {
5193
5262
  feature: getString(input.values, "feature"),
@@ -5234,7 +5303,7 @@ var OPERATOR_CLI_COMMANDS = [
5234
5303
  usage: "canonry apply <file...> [--dry-run] [--format json]",
5235
5304
  supportsDryRun: true,
5236
5305
  run: async (input) => {
5237
- const { applyConfigs } = await import("./apply-7RIYK4VC.js");
5306
+ const { applyConfigs } = await import("./apply-F5CHVFC3.js");
5238
5307
  if (input.positionals.length === 0) {
5239
5308
  throw usageError("Error: at least one file path is required\nUsage: canonry apply <file...> [--format json]", {
5240
5309
  message: "at least one file path is required",
@@ -5269,7 +5338,7 @@ var PROJECT_CLI_COMMANDS = [
5269
5338
  "site-audit-max-pages": stringOption()
5270
5339
  },
5271
5340
  run: async (input) => {
5272
- const { createProject } = await import("./project-UKH7FTQX.js");
5341
+ const { createProject } = await import("./project-B5G2HEAB.js");
5273
5342
  const name = requireProject(
5274
5343
  input,
5275
5344
  "project.create",
@@ -5332,7 +5401,7 @@ var PROJECT_CLI_COMMANDS = [
5332
5401
  "remove-marketing-host": multiStringOption()
5333
5402
  },
5334
5403
  run: async (input) => {
5335
- const { updateProjectSettings } = await import("./project-UKH7FTQX.js");
5404
+ const { updateProjectSettings } = await import("./project-B5G2HEAB.js");
5336
5405
  const name = requireProject(
5337
5406
  input,
5338
5407
  "project.update",
@@ -5389,7 +5458,7 @@ var PROJECT_CLI_COMMANDS = [
5389
5458
  usage: "canonry project list [--format json]",
5390
5459
  allowPositionals: false,
5391
5460
  run: async (input) => {
5392
- const { listProjects } = await import("./project-UKH7FTQX.js");
5461
+ const { listProjects } = await import("./project-B5G2HEAB.js");
5393
5462
  await listProjects(input.format);
5394
5463
  }
5395
5464
  },
@@ -5397,7 +5466,7 @@ var PROJECT_CLI_COMMANDS = [
5397
5466
  path: ["project", "show"],
5398
5467
  usage: "canonry project show <name> [--format json]",
5399
5468
  run: async (input) => {
5400
- const { showProject } = await import("./project-UKH7FTQX.js");
5469
+ const { showProject } = await import("./project-B5G2HEAB.js");
5401
5470
  const name = requireProject(input, "project.show", "canonry project show <name>");
5402
5471
  await showProject(name, input.format);
5403
5472
  }
@@ -5407,7 +5476,7 @@ var PROJECT_CLI_COMMANDS = [
5407
5476
  usage: "canonry project delete <name> [--dry-run] [--format json]",
5408
5477
  supportsDryRun: true,
5409
5478
  run: async (input) => {
5410
- const { deleteProject } = await import("./project-UKH7FTQX.js");
5479
+ const { deleteProject } = await import("./project-B5G2HEAB.js");
5411
5480
  const name = requireProject(input, "project.delete", "canonry project delete <name> [--dry-run] [--format json]");
5412
5481
  await deleteProject(name, { dryRun: input.dryRun, format: input.format });
5413
5482
  }
@@ -5423,7 +5492,7 @@ var PROJECT_CLI_COMMANDS = [
5423
5492
  timezone: stringOption()
5424
5493
  },
5425
5494
  run: async (input) => {
5426
- const { addLocation } = await import("./project-UKH7FTQX.js");
5495
+ const { addLocation } = await import("./project-B5G2HEAB.js");
5427
5496
  const name = requireProject(
5428
5497
  input,
5429
5498
  "project.add-location",
@@ -5457,7 +5526,7 @@ var PROJECT_CLI_COMMANDS = [
5457
5526
  path: ["project", "locations"],
5458
5527
  usage: "canonry project locations <name> [--format json]",
5459
5528
  run: async (input) => {
5460
- const { listLocations } = await import("./project-UKH7FTQX.js");
5529
+ const { listLocations } = await import("./project-B5G2HEAB.js");
5461
5530
  const name = requireProject(input, "project.locations", "canonry project locations <name> [--format json]");
5462
5531
  await listLocations(name, input.format);
5463
5532
  }
@@ -5466,7 +5535,7 @@ var PROJECT_CLI_COMMANDS = [
5466
5535
  path: ["project", "remove-location"],
5467
5536
  usage: "canonry project remove-location <name> <label> [--format json]",
5468
5537
  run: async (input) => {
5469
- const { removeLocation } = await import("./project-UKH7FTQX.js");
5538
+ const { removeLocation } = await import("./project-B5G2HEAB.js");
5470
5539
  const name = requireProject(input, "project.remove-location", "canonry project remove-location <name> <label> [--format json]");
5471
5540
  const label = requirePositional(input, 1, {
5472
5541
  command: "project.remove-location",
@@ -5480,7 +5549,7 @@ var PROJECT_CLI_COMMANDS = [
5480
5549
  path: ["project", "set-default-location"],
5481
5550
  usage: "canonry project set-default-location <name> <label> [--format json]",
5482
5551
  run: async (input) => {
5483
- const { setDefaultLocation } = await import("./project-UKH7FTQX.js");
5552
+ const { setDefaultLocation } = await import("./project-B5G2HEAB.js");
5484
5553
  const name = requireProject(input, "project.set-default-location", "canonry project set-default-location <name> <label> [--format json]");
5485
5554
  const label = requirePositional(input, 1, {
5486
5555
  command: "project.set-default-location",
@@ -5611,7 +5680,7 @@ var ORGANIC_EVIDENCE_CLI_COMMANDS = [
5611
5680
  usage: USAGE3,
5612
5681
  options: { period: stringOption() },
5613
5682
  run: async (input) => {
5614
- const { showOrganicEvidence } = await import("./organic-evidence-4HYW4PVO.js");
5683
+ const { showOrganicEvidence } = await import("./organic-evidence-OFUJBDCK.js");
5615
5684
  const project3 = requireProject(input, "organic-evidence", USAGE3);
5616
5685
  await showOrganicEvidence(project3, {
5617
5686
  period: parsePeriod(getString(input.values, "window") ?? getString(input.values, "period")),
@@ -5636,7 +5705,7 @@ var RUN_LIST_OPTIONS = {
5636
5705
  since: stringOption()
5637
5706
  };
5638
5707
  async function listRunsCommand(input) {
5639
- const { listRuns } = await import("./run-B2A4LMWU.js");
5708
+ const { listRuns } = await import("./run-ZIUQ2TNN.js");
5640
5709
  const project3 = requireProject(input, "runs", RUNS_USAGE);
5641
5710
  await listRuns(project3, {
5642
5711
  format: input.format,
@@ -5682,7 +5751,7 @@ function parseDispatchMode(value, command, usage) {
5682
5751
  });
5683
5752
  }
5684
5753
  async function triggerRunCommand(input, command) {
5685
- const { triggerRun, triggerRunAll } = await import("./run-B2A4LMWU.js");
5754
+ const { triggerRun, triggerRunAll } = await import("./run-ZIUQ2TNN.js");
5686
5755
  const groups = getStringArray(input.values, "group") ?? [];
5687
5756
  const targets = getStringArray(input.values, "target") ?? [];
5688
5757
  const queries = getStringArray(input.values, "query") ?? [];
@@ -5756,7 +5825,7 @@ var RUN_CLI_COMMANDS = [
5756
5825
  path: ["run", "show"],
5757
5826
  usage: "canonry run show <id> [--format json]",
5758
5827
  run: async (input) => {
5759
- const { showRun } = await import("./run-B2A4LMWU.js");
5828
+ const { showRun } = await import("./run-ZIUQ2TNN.js");
5760
5829
  const id2 = requirePositional(input, 0, {
5761
5830
  command: "run.show",
5762
5831
  usage: "canonry run show <id> [--format json]",
@@ -5774,7 +5843,7 @@ var RUN_CLI_COMMANDS = [
5774
5843
  },
5775
5844
  supportsDryRun: true,
5776
5845
  run: async (input) => {
5777
- const { fillRun } = await import("./run-B2A4LMWU.js");
5846
+ const { fillRun } = await import("./run-ZIUQ2TNN.js");
5778
5847
  if (input.positionals.length === 0 && !input.dryRun) return triggerRunCommand({ ...input, positionals: ["fill"] }, "run");
5779
5848
  const runId = requirePositional(input, 0, {
5780
5849
  command: "run.fill",
@@ -5794,7 +5863,7 @@ var RUN_CLI_COMMANDS = [
5794
5863
  path: ["run", "completeness"],
5795
5864
  usage: "canonry run completeness <run-id> [--format json]",
5796
5865
  run: async (input) => {
5797
- const { showRunCompleteness } = await import("./run-B2A4LMWU.js");
5866
+ const { showRunCompleteness } = await import("./run-ZIUQ2TNN.js");
5798
5867
  if (input.positionals.length === 0) return triggerRunCommand({ ...input, positionals: ["completeness"] }, "run");
5799
5868
  const runId = requirePositional(input, 0, {
5800
5869
  command: "run.completeness",
@@ -5808,7 +5877,7 @@ var RUN_CLI_COMMANDS = [
5808
5877
  path: ["run", "cancel"],
5809
5878
  usage: "canonry run cancel <project> [run-id] [--format json]",
5810
5879
  run: async (input) => {
5811
- const { cancelRun } = await import("./run-B2A4LMWU.js");
5880
+ const { cancelRun } = await import("./run-ZIUQ2TNN.js");
5812
5881
  const project3 = requireProject(input, "run.cancel", "canonry run cancel <project> [run-id] [--format json]");
5813
5882
  await cancelRun(project3, input.positionals[1], input.format);
5814
5883
  }
@@ -5855,7 +5924,7 @@ var SCHEDULE_CLI_COMMANDS = [
5855
5924
  path: ["schedule", "list"],
5856
5925
  usage: "canonry schedule list <project> [--format json|jsonl]",
5857
5926
  run: async (input) => {
5858
- const { listSchedules } = await import("./schedule-PLY6CHQT.js");
5927
+ const { listSchedules } = await import("./schedule-B5CORKGT.js");
5859
5928
  await listSchedules(requireProject(input, "schedule.list", "canonry schedule list <project>"), input.format);
5860
5929
  }
5861
5930
  },
@@ -5874,7 +5943,7 @@ var SCHEDULE_CLI_COMMANDS = [
5874
5943
  provider: multiStringOption()
5875
5944
  },
5876
5945
  run: async (input) => {
5877
- const { setSchedule } = await import("./schedule-PLY6CHQT.js");
5946
+ const { setSchedule } = await import("./schedule-B5CORKGT.js");
5878
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]";
5879
5948
  const project3 = requireProject(input, "schedule.set", usage);
5880
5949
  const preset = getString(input.values, "preset");
@@ -5915,7 +5984,7 @@ var SCHEDULE_CLI_COMMANDS = [
5915
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]",
5916
5985
  options: { kind: stringOption() },
5917
5986
  run: async (input) => {
5918
- const { showSchedule } = await import("./schedule-PLY6CHQT.js");
5987
+ const { showSchedule } = await import("./schedule-B5CORKGT.js");
5919
5988
  const project3 = requireProject(input, "schedule.show", "canonry schedule show <project> [--kind ...]");
5920
5989
  await showSchedule(project3, input.format, getString(input.values, "kind"));
5921
5990
  }
@@ -5925,7 +5994,7 @@ var SCHEDULE_CLI_COMMANDS = [
5925
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]",
5926
5995
  options: { kind: stringOption() },
5927
5996
  run: async (input) => {
5928
- const { enableSchedule } = await import("./schedule-PLY6CHQT.js");
5997
+ const { enableSchedule } = await import("./schedule-B5CORKGT.js");
5929
5998
  const project3 = requireProject(input, "schedule.enable", "canonry schedule enable <project> [--kind ...]");
5930
5999
  await enableSchedule(project3, input.format, getString(input.values, "kind"));
5931
6000
  }
@@ -5935,7 +6004,7 @@ var SCHEDULE_CLI_COMMANDS = [
5935
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]",
5936
6005
  options: { kind: stringOption() },
5937
6006
  run: async (input) => {
5938
- const { disableSchedule } = await import("./schedule-PLY6CHQT.js");
6007
+ const { disableSchedule } = await import("./schedule-B5CORKGT.js");
5939
6008
  const project3 = requireProject(input, "schedule.disable", "canonry schedule disable <project> [--kind ...]");
5940
6009
  await disableSchedule(project3, input.format, getString(input.values, "kind"));
5941
6010
  }
@@ -5945,7 +6014,7 @@ var SCHEDULE_CLI_COMMANDS = [
5945
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]",
5946
6015
  options: { kind: stringOption() },
5947
6016
  run: async (input) => {
5948
- const { removeSchedule } = await import("./schedule-PLY6CHQT.js");
6017
+ const { removeSchedule } = await import("./schedule-B5CORKGT.js");
5949
6018
  const project3 = requireProject(input, "schedule.remove", "canonry schedule remove <project> [--kind ...]");
5950
6019
  await removeSchedule(project3, input.format, getString(input.values, "kind"));
5951
6020
  }
@@ -5969,7 +6038,7 @@ var SETTINGS_CLI_COMMANDS = [
5969
6038
  path: ["settings", "reload-providers"],
5970
6039
  usage: "canonry settings reload-providers [--format json]",
5971
6040
  run: async (input) => {
5972
- const { reloadProviders } = await import("./settings-ZHBNX2I5.js");
6041
+ const { reloadProviders } = await import("./settings-Y3LVGZH4.js");
5973
6042
  return reloadProviders(input.format);
5974
6043
  }
5975
6044
  },
@@ -5985,7 +6054,7 @@ var SETTINGS_CLI_COMMANDS = [
5985
6054
  "max-per-day": stringOption()
5986
6055
  },
5987
6056
  run: async (input) => {
5988
- const { setProvider } = await import("./settings-ZHBNX2I5.js");
6057
+ const { setProvider } = await import("./settings-Y3LVGZH4.js");
5989
6058
  const name = requirePositional(input, 0, {
5990
6059
  command: "settings.provider",
5991
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]",
@@ -6061,7 +6130,7 @@ Usage: canonry settings provider ${name} --api-key <key> [--model <model>] [--ma
6061
6130
  target: stringOption()
6062
6131
  },
6063
6132
  run: async (input) => {
6064
- const { setGoogleAuth } = await import("./settings-ZHBNX2I5.js");
6133
+ const { setGoogleAuth } = await import("./settings-Y3LVGZH4.js");
6065
6134
  const clientId = getString(input.values, "client-id");
6066
6135
  const clientSecret = getString(input.values, "client-secret");
6067
6136
  if (!clientId || !clientSecret) {
@@ -6104,7 +6173,7 @@ Usage: canonry settings provider ${name} --api-key <key> [--model <model>] [--ma
6104
6173
  path: ["settings"],
6105
6174
  usage: "canonry settings [provider|reload-providers|google] [args]",
6106
6175
  run: async (input) => {
6107
- const { showSettings } = await import("./settings-ZHBNX2I5.js");
6176
+ const { showSettings } = await import("./settings-Y3LVGZH4.js");
6108
6177
  const subcommand = input.positionals[0];
6109
6178
  if (!subcommand) {
6110
6179
  await showSettings(input.format);
@@ -6125,7 +6194,7 @@ var SKILLS_CLI_COMMANDS = [
6125
6194
  path: ["skills", "list"],
6126
6195
  usage: "canonry skills list [--format json]",
6127
6196
  run: async (input) => {
6128
- const { listSkills } = await import("./skills-KWRTCXTF.js");
6197
+ const { listSkills } = await import("./skills-6E3RVQAQ.js");
6129
6198
  await listSkills({ format: input.format });
6130
6199
  }
6131
6200
  },
@@ -6140,7 +6209,7 @@ var SKILLS_CLI_COMMANDS = [
6140
6209
  },
6141
6210
  allowPositionals: true,
6142
6211
  run: async (input) => {
6143
- const { emitInstallSummary, installSkills, parseSkillsClient } = await import("./skills-KWRTCXTF.js");
6212
+ const { emitInstallSummary, installSkills, parseSkillsClient } = await import("./skills-6E3RVQAQ.js");
6144
6213
  const summary = await installSkills({
6145
6214
  dir: getString(input.values, "dir"),
6146
6215
  user: getBoolean(input.values, "user"),
@@ -6187,7 +6256,7 @@ var SNAPSHOT_CLI_COMMANDS = [
6187
6256
  output: stringOption()
6188
6257
  },
6189
6258
  run: async (input) => {
6190
- const { createSnapshotReport } = await import("./snapshot-GBDCCV6L.js");
6259
+ const { createSnapshotReport } = await import("./snapshot-RAV2HCL7.js");
6191
6260
  const usage = SNAPSHOT_USAGE;
6192
6261
  const companyName = requirePositional(input, 0, {
6193
6262
  command: "snapshot",
@@ -6240,7 +6309,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6240
6309
  limit: { type: "string" }
6241
6310
  },
6242
6311
  run: async (input) => {
6243
- const { listInsights } = await import("./insights-MUYEOSOG.js");
6312
+ const { listInsights } = await import("./insights-LPEDLSEV.js");
6244
6313
  const usage = "canonry insights <project> [--type <type|prefix*>] [--severity <low|medium|high|critical>] [--limit <n>] [--dismissed] [--run-id <id>] [--format json]";
6245
6314
  const project3 = requireProject(input, "insights", usage);
6246
6315
  const dismissed = input.values.dismissed === true;
@@ -6256,7 +6325,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6256
6325
  usage: "canonry insights dismiss <project> <id> [--format json]",
6257
6326
  options: {},
6258
6327
  run: async (input) => {
6259
- const { dismissInsight } = await import("./insights-MUYEOSOG.js");
6328
+ const { dismissInsight } = await import("./insights-LPEDLSEV.js");
6260
6329
  const usage = "canonry insights dismiss <project> <id> [--format json]";
6261
6330
  const project3 = requireProject(input, "insights dismiss", usage);
6262
6331
  const id2 = requirePositional(input, 1, { command: "insights dismiss", usage, message: "insight ID is required" });
@@ -6271,7 +6340,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6271
6340
  limit: { type: "string" }
6272
6341
  },
6273
6342
  run: async (input) => {
6274
- const { showHealth } = await import("./health-cmd-2KWO2GOM.js");
6343
+ const { showHealth } = await import("./health-cmd-OPGK37MK.js");
6275
6344
  const usage = "canonry health <project> [--history] [--limit <n>] [--format json]";
6276
6345
  const project3 = requireProject(input, "health", usage);
6277
6346
  const history = input.values.history === true;
@@ -6293,7 +6362,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6293
6362
  },
6294
6363
  allowPositionals: true,
6295
6364
  run: async (input) => {
6296
- const { showAllOverviews, showOverview } = await import("./overview-XH72WTZT.js");
6365
+ const { showAllOverviews, showOverview } = await import("./overview-NSRODN2X.js");
6297
6366
  const usage = "canonry overview <project>|--all [--location <label>] [--since <iso>] [--format json]";
6298
6367
  const all = getBoolean(input.values, "all");
6299
6368
  const location = getString(input.values, "location");
@@ -6313,7 +6382,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6313
6382
  limit: { type: "string" }
6314
6383
  },
6315
6384
  run: async (input) => {
6316
- const { searchProject } = await import("./search-ACVK3WH5.js");
6385
+ const { searchProject } = await import("./search-2XCZKP6A.js");
6317
6386
  const usage = "canonry search <project> <query> [--limit <n>] [--format json]";
6318
6387
  const project3 = requireProject(input, "search", usage);
6319
6388
  const query = requirePositional(input, 1, { command: "search", usage, message: "query is required" });
@@ -6330,7 +6399,7 @@ var INTELLIGENCE_CLI_COMMANDS = [
6330
6399
  usage: "canonry citations visibility <project> [--format json]",
6331
6400
  options: {},
6332
6401
  run: async (input) => {
6333
- const { showCitationVisibility } = await import("./citations-ZTQIYYDB.js");
6402
+ const { showCitationVisibility } = await import("./citations-NIFKIG6Y.js");
6334
6403
  const usage = "canonry citations visibility <project> [--format json]";
6335
6404
  const project3 = requireProject(input, "citations visibility", usage);
6336
6405
  await showCitationVisibility(project3, { format: input.format });
@@ -6346,7 +6415,7 @@ var CONTENT_CLI_COMMANDS = [
6346
6415
  help: "List persisted addressed content targets, including those hidden from content targets.",
6347
6416
  options: {},
6348
6417
  run: async (input) => {
6349
- const { listContentDismissals } = await import("./content-XPS3D3Y6.js");
6418
+ const { listContentDismissals } = await import("./content-W5VYYMAW.js");
6350
6419
  const project3 = requireProject(input, "content dismissals", "canonry content dismissals <project> [--format json|jsonl]");
6351
6420
  await listContentDismissals(project3, { format: input.format });
6352
6421
  }
@@ -6357,7 +6426,7 @@ var CONTENT_CLI_COMMANDS = [
6357
6426
  help: "Mark a content target addressed. Restore it with content restore.",
6358
6427
  options: { "addressed-url": { type: "string" }, note: { type: "string" } },
6359
6428
  run: async (input) => {
6360
- const { dismissContentTarget } = await import("./content-XPS3D3Y6.js");
6429
+ const { dismissContentTarget } = await import("./content-W5VYYMAW.js");
6361
6430
  const usage = "canonry content dismiss <project> <targetRef> [--addressed-url <url>] [--note <text>] [--format json]";
6362
6431
  const project3 = requireProject(input, "content dismiss", usage);
6363
6432
  const targetRef = requirePositional(input, 1, { command: "content dismiss", usage, message: "targetRef is required (from content targets)" });
@@ -6370,7 +6439,7 @@ var CONTENT_CLI_COMMANDS = [
6370
6439
  help: "Remove a persisted dismissal so an eligible target can appear again.",
6371
6440
  options: {},
6372
6441
  run: async (input) => {
6373
- const { restoreContentTarget } = await import("./content-XPS3D3Y6.js");
6442
+ const { restoreContentTarget } = await import("./content-W5VYYMAW.js");
6374
6443
  const usage = "canonry content restore <project> <targetRef> [--format json]";
6375
6444
  const project3 = requireProject(input, "content restore", usage);
6376
6445
  const targetRef = requirePositional(input, 1, { command: "content restore", usage, message: "targetRef is required (from content dismissals)" });
@@ -6387,7 +6456,7 @@ var CONTENT_CLI_COMMANDS = [
6387
6456
  "winnability-class": { type: "string" }
6388
6457
  },
6389
6458
  run: async (input) => {
6390
- const { listContentTargets } = await import("./content-XPS3D3Y6.js");
6459
+ const { listContentTargets } = await import("./content-W5VYYMAW.js");
6391
6460
  const usage = "canonry content targets <project> [--limit <n>] [--include-in-progress] [--ownable] [--winnability-class <ownable|ceded>] [--format json]";
6392
6461
  const project3 = requireProject(input, "content targets", usage);
6393
6462
  const limit = parseIntegerOption(input, "limit", {
@@ -6418,7 +6487,7 @@ var CONTENT_CLI_COMMANDS = [
6418
6487
  usage: "canonry content sources <project> [--format json]",
6419
6488
  options: {},
6420
6489
  run: async (input) => {
6421
- const { listContentSources } = await import("./content-XPS3D3Y6.js");
6490
+ const { listContentSources } = await import("./content-W5VYYMAW.js");
6422
6491
  const usage = "canonry content sources <project> [--format json]";
6423
6492
  const project3 = requireProject(input, "content sources", usage);
6424
6493
  await listContentSources(project3, { format: input.format });
@@ -6429,7 +6498,7 @@ var CONTENT_CLI_COMMANDS = [
6429
6498
  usage: "canonry content gaps <project> [--format json]",
6430
6499
  options: {},
6431
6500
  run: async (input) => {
6432
- const { listContentGaps } = await import("./content-XPS3D3Y6.js");
6501
+ const { listContentGaps } = await import("./content-W5VYYMAW.js");
6433
6502
  const usage = "canonry content gaps <project> [--format json]";
6434
6503
  const project3 = requireProject(input, "content gaps", usage);
6435
6504
  await listContentGaps(project3, { format: input.format });
@@ -6444,7 +6513,7 @@ var CONTENT_CLI_COMMANDS = [
6444
6513
  force: { type: "boolean" }
6445
6514
  },
6446
6515
  run: async (input) => {
6447
- const { generateContentBrief } = await import("./content-XPS3D3Y6.js");
6516
+ const { generateContentBrief } = await import("./content-W5VYYMAW.js");
6448
6517
  const usage = "canonry content brief <project> <targetRef> [--provider <p>] [--model <m>] [--force] [--format json]";
6449
6518
  const project3 = requireProject(input, "content brief", usage);
6450
6519
  const targetRef = requirePositional(input, 1, {
@@ -6465,7 +6534,7 @@ var CONTENT_CLI_COMMANDS = [
6465
6534
  usage: "canonry content map <project> [--format json]",
6466
6535
  options: {},
6467
6536
  run: async (input) => {
6468
- const { contentMap } = await import("./content-XPS3D3Y6.js");
6537
+ const { contentMap } = await import("./content-W5VYYMAW.js");
6469
6538
  const usage = "canonry content map <project> [--format json]";
6470
6539
  const project3 = requireProject(input, "content map", usage);
6471
6540
  await contentMap(project3, { format: input.format });
@@ -6760,7 +6829,7 @@ var SYSTEM_CLI_COMMANDS = [
6760
6829
  options: { access: stringOption() },
6761
6830
  run: async (input) => {
6762
6831
  if (input.positionals.length > 1) throw usageError("Expected at most one command group");
6763
- const [{ printCliCatalog }, { REGISTERED_CLI_COMMANDS: REGISTERED_CLI_COMMANDS2 }] = await Promise.all([import("./cli-catalog-IZJXAHFQ.js"), import("./cli-commands-XYM2VMAK.js")]);
6832
+ const [{ printCliCatalog }, { REGISTERED_CLI_COMMANDS: REGISTERED_CLI_COMMANDS2 }] = await Promise.all([import("./cli-catalog-ONYERYPV.js"), import("./cli-commands-LWI2NEWW.js")]);
6764
6833
  printCliCatalog(REGISTERED_CLI_COMMANDS2, input.format, input.positionals[0], getString(input.values, "access"));
6765
6834
  }
6766
6835
  },
@@ -6771,7 +6840,7 @@ var SYSTEM_CLI_COMMANDS = [
6771
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() },
6772
6841
  allowPositionals: false,
6773
6842
  run: async (input) => {
6774
- const { showOperationalLogs } = await import("./logs-BAQM334Q.js");
6843
+ const { showOperationalLogs } = await import("./logs-62RUOAKT.js");
6775
6844
  return showOperationalLogs({
6776
6845
  level: getString(input.values, "level"),
6777
6846
  module: getString(input.values, "module"),
@@ -6809,7 +6878,7 @@ var SYSTEM_CLI_COMMANDS = [
6809
6878
  },
6810
6879
  allowPositionals: false,
6811
6880
  run: async (input) => {
6812
- const { initCommand } = await import("./init-5TXIKII2.js");
6881
+ const { initCommand } = await import("./init-WTAVKFGR.js");
6813
6882
  await initCommand({
6814
6883
  force: getBoolean(input.values, "force"),
6815
6884
  ref: getString(input.values, "ref"),
@@ -6842,7 +6911,7 @@ var SYSTEM_CLI_COMMANDS = [
6842
6911
  },
6843
6912
  allowPositionals: false,
6844
6913
  run: async (input) => {
6845
- const { bootstrapCommand } = await import("./bootstrap-OOHSBSDQ.js");
6914
+ const { bootstrapCommand } = await import("./bootstrap-AEHBYC77.js");
6846
6915
  await bootstrapCommand({
6847
6916
  format: input.format,
6848
6917
  ref: getString(input.values, "ref")
@@ -6864,7 +6933,7 @@ var SYSTEM_CLI_COMMANDS = [
6864
6933
  allowPositionals: false,
6865
6934
  run: async (input) => {
6866
6935
  applyServerEnv(input.values);
6867
- const { serveCommand } = await import("./serve-2LTQZPEK.js");
6936
+ const { serveCommand } = await import("./serve-3BSLRICO.js");
6868
6937
  await serveCommand(input.format);
6869
6938
  }
6870
6939
  },
@@ -6934,7 +7003,7 @@ var SYSTEM_CLI_COMMANDS = [
6934
7003
  options: { target: stringOption() },
6935
7004
  allowPositionals: false,
6936
7005
  run: async (input) => {
6937
- const { telemetryCommand } = await import("./telemetry-6QPWYMCR.js");
7006
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6938
7007
  await telemetryCommand("status", input.format, getString(input.values, "target"));
6939
7008
  }
6940
7009
  },
@@ -6944,7 +7013,7 @@ var SYSTEM_CLI_COMMANDS = [
6944
7013
  options: { target: stringOption() },
6945
7014
  allowPositionals: false,
6946
7015
  run: async (input) => {
6947
- const { telemetryCommand } = await import("./telemetry-6QPWYMCR.js");
7016
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6948
7017
  await telemetryCommand("enable", input.format, getString(input.values, "target"));
6949
7018
  }
6950
7019
  },
@@ -6954,7 +7023,7 @@ var SYSTEM_CLI_COMMANDS = [
6954
7023
  options: { target: stringOption() },
6955
7024
  allowPositionals: false,
6956
7025
  run: async (input) => {
6957
- const { telemetryCommand } = await import("./telemetry-6QPWYMCR.js");
7026
+ const { telemetryCommand } = await import("./telemetry-LQAD26UJ.js");
6958
7027
  await telemetryCommand("disable", input.format, getString(input.values, "target"));
6959
7028
  }
6960
7029
  },
@@ -7012,7 +7081,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7012
7081
  access: "stored",
7013
7082
  options: { "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7014
7083
  run: async (input) => {
7015
- const { technicalAeoIssues } = await import("./technical-aeo-AK4QI63Q.js");
7084
+ const { technicalAeoIssues } = await import("./technical-aeo-2TJEHHBR.js");
7016
7085
  const usage = "canonry technical-aeo issues <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7017
7086
  const project3 = requireProject(input, "technical-aeo.issues", usage);
7018
7087
  await technicalAeoIssues(project3, {
@@ -7027,7 +7096,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7027
7096
  access: "stored",
7028
7097
  options: { "issue-id": stringOption(), "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7029
7098
  run: async (input) => {
7030
- const { technicalAeoIssuePages } = await import("./technical-aeo-AK4QI63Q.js");
7099
+ const { technicalAeoIssuePages } = await import("./technical-aeo-2TJEHHBR.js");
7031
7100
  const usage = "canonry technical-aeo issue-pages <project> --issue-id <id> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7032
7101
  const project3 = requireProject(input, "technical-aeo.issue-pages", usage);
7033
7102
  const issueId = requireStringOption(input, "issue-id", { command: "technical-aeo.issue-pages", usage, message: "--issue-id is required" });
@@ -7045,7 +7114,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7045
7114
  "run-id": stringOption()
7046
7115
  },
7047
7116
  run: async (input) => {
7048
- const { technicalAeoScore } = await import("./technical-aeo-AK4QI63Q.js");
7117
+ const { technicalAeoScore } = await import("./technical-aeo-2TJEHHBR.js");
7049
7118
  const project3 = requireProject(
7050
7119
  input,
7051
7120
  "technical-aeo.score",
@@ -7064,7 +7133,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7064
7133
  limit: stringOption()
7065
7134
  },
7066
7135
  run: async (input) => {
7067
- const { technicalAeoPages } = await import("./technical-aeo-AK4QI63Q.js");
7136
+ const { technicalAeoPages } = await import("./technical-aeo-2TJEHHBR.js");
7068
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]";
7069
7138
  const project3 = requireProject(input, "technical-aeo.pages", usage);
7070
7139
  await technicalAeoPages(project3, {
@@ -7087,7 +7156,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7087
7156
  limit: stringOption()
7088
7157
  },
7089
7158
  run: async (input) => {
7090
- const { technicalAeoTrend } = await import("./technical-aeo-AK4QI63Q.js");
7159
+ const { technicalAeoTrend } = await import("./technical-aeo-2TJEHHBR.js");
7091
7160
  const usage = "canonry technical-aeo trend <project> [--limit <n>] [--format json|jsonl]";
7092
7161
  const project3 = requireProject(input, "technical-aeo.trend", usage);
7093
7162
  await technicalAeoTrend(project3, {
@@ -7117,7 +7186,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7117
7186
  wait: { type: "boolean", default: false }
7118
7187
  },
7119
7188
  run: async (input) => {
7120
- const { technicalAeoRun } = await import("./technical-aeo-AK4QI63Q.js");
7189
+ const { technicalAeoRun } = await import("./technical-aeo-2TJEHHBR.js");
7121
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]";
7122
7191
  const project3 = requireProject(input, "technical-aeo.run", usage);
7123
7192
  await technicalAeoRun(project3, {
@@ -7155,7 +7224,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7155
7224
  usage: "canonry technical-aeo crawl <project> [--run-id <id> | --date YYYY-MM-DD] [--format json]",
7156
7225
  options: { "run-id": stringOption(), date: stringOption() },
7157
7226
  run: async (input) => {
7158
- const { technicalAeoCrawl } = await import("./technical-aeo-AK4QI63Q.js");
7227
+ const { technicalAeoCrawl } = await import("./technical-aeo-2TJEHHBR.js");
7159
7228
  const usage = "canonry technical-aeo crawl <project> [--run-id <id> | --date YYYY-MM-DD] [--format json]";
7160
7229
  const project3 = requireProject(input, "technical-aeo.crawl", usage);
7161
7230
  await technicalAeoCrawl(project3, { runId: getString(input.values, "run-id"), date: getString(input.values, "date"), format: input.format });
@@ -7166,7 +7235,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7166
7235
  usage: "canonry technical-aeo progress <project> --run-id <id> [--format json]",
7167
7236
  options: { "run-id": stringOption() },
7168
7237
  run: async (input) => {
7169
- const { technicalAeoProgress } = await import("./technical-aeo-AK4QI63Q.js");
7238
+ const { technicalAeoProgress } = await import("./technical-aeo-2TJEHHBR.js");
7170
7239
  const usage = "canonry technical-aeo progress <project> --run-id <id> [--format json]";
7171
7240
  const project3 = requireProject(input, "technical-aeo.progress", usage);
7172
7241
  const runId = requireStringOption(input, "run-id", {
@@ -7189,7 +7258,7 @@ var TECHNICAL_AEO_CLI_COMMANDS_BASE = [
7189
7258
  "max-edges": stringOption()
7190
7259
  },
7191
7260
  run: async (input) => {
7192
- const { technicalAeoSubgraph } = await import("./technical-aeo-AK4QI63Q.js");
7261
+ const { technicalAeoSubgraph } = await import("./technical-aeo-2TJEHHBR.js");
7193
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]";
7194
7263
  const project3 = requireProject(input, "technical-aeo.subgraph", usage);
7195
7264
  const nodeKey = getString(input.values, "node-key");
@@ -7224,7 +7293,7 @@ Usage: ${usage}`, {
7224
7293
  "max-depth": stringOption()
7225
7294
  },
7226
7295
  run: async (input) => {
7227
- const { technicalAeoPath } = await import("./technical-aeo-AK4QI63Q.js");
7296
+ const { technicalAeoPath } = await import("./technical-aeo-2TJEHHBR.js");
7228
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]";
7229
7298
  const project3 = requireProject(input, "technical-aeo.path", usage);
7230
7299
  const fromNodeKey = getString(input.values, "from-node-key");
@@ -7268,7 +7337,7 @@ Usage: ${usage}`, {
7268
7337
  limit: stringOption()
7269
7338
  },
7270
7339
  run: async (input) => {
7271
- const { technicalAeoChanges } = await import("./technical-aeo-AK4QI63Q.js");
7340
+ const { technicalAeoChanges } = await import("./technical-aeo-2TJEHHBR.js");
7272
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]";
7273
7342
  const project3 = requireProject(input, "technical-aeo.changes", usage);
7274
7343
  const fromRunId = getString(input.values, "from-run-id");
@@ -7315,7 +7384,7 @@ Usage: ${usage}`, {
7315
7384
  limit: stringOption()
7316
7385
  },
7317
7386
  run: async (input) => {
7318
- const { technicalAeoCrawlPages } = await import("./technical-aeo-AK4QI63Q.js");
7387
+ const { technicalAeoCrawlPages } = await import("./technical-aeo-2TJEHHBR.js");
7319
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]";
7320
7389
  const project3 = requireProject(input, "technical-aeo.crawl-pages", usage);
7321
7390
  const sort = getString(input.values, "sort");
@@ -7345,7 +7414,7 @@ Usage: ${usage}`, {
7345
7414
  usage: "canonry technical-aeo page-audit <project> (--node-key <key>|--url <url>) [--run-id <id>] [--format json]",
7346
7415
  options: { "run-id": stringOption(), "node-key": stringOption(), url: stringOption() },
7347
7416
  run: async (input) => {
7348
- const { technicalAeoPageAudit } = await import("./technical-aeo-AK4QI63Q.js");
7417
+ const { technicalAeoPageAudit } = await import("./technical-aeo-2TJEHHBR.js");
7349
7418
  const usage = "canonry technical-aeo page-audit <project> (--node-key <key>|--url <url>) [--run-id <id>] [--format json]";
7350
7419
  const project3 = requireProject(input, "technical-aeo.page-audit", usage);
7351
7420
  const nodeKey = getString(input.values, "node-key");
@@ -7377,7 +7446,7 @@ Usage: ${usage}`, {
7377
7446
  usage: "canonry technical-aeo structure <project> [--run-id <id>] [--parent-path <path>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]",
7378
7447
  options: { "run-id": stringOption(), "parent-path": stringOption(), cursor: stringOption(), limit: stringOption() },
7379
7448
  run: async (input) => {
7380
- const { technicalAeoStructure } = await import("./technical-aeo-AK4QI63Q.js");
7449
+ const { technicalAeoStructure } = await import("./technical-aeo-2TJEHHBR.js");
7381
7450
  const usage = "canonry technical-aeo structure <project> [--run-id <id>] [--parent-path <path>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7382
7451
  const project3 = requireProject(input, "technical-aeo.structure", usage);
7383
7452
  await technicalAeoStructure(project3, {
@@ -7402,7 +7471,7 @@ Usage: ${usage}`, {
7402
7471
  limit: stringOption()
7403
7472
  },
7404
7473
  run: async (input) => {
7405
- const { technicalAeoInternalLinks } = await import("./technical-aeo-AK4QI63Q.js");
7474
+ const { technicalAeoInternalLinks } = await import("./technical-aeo-2TJEHHBR.js");
7406
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]";
7407
7476
  const project3 = requireProject(input, "technical-aeo.links", usage);
7408
7477
  const followable = getBoolean(input.values, "followable");
@@ -7430,7 +7499,7 @@ Usage: ${usage}`, {
7430
7499
  usage: "canonry technical-aeo links neighbors <project> (--node-key <key>|--url <url>) [--run-id <id>] [--limit <n>] [--format json]",
7431
7500
  options: { "run-id": stringOption(), "node-key": stringOption(), url: stringOption(), limit: stringOption() },
7432
7501
  run: async (input) => {
7433
- const { technicalAeoLinkNeighbors } = await import("./technical-aeo-AK4QI63Q.js");
7502
+ const { technicalAeoLinkNeighbors } = await import("./technical-aeo-2TJEHHBR.js");
7434
7503
  const usage = "canonry technical-aeo links neighbors <project> (--node-key <key>|--url <url>) [--run-id <id>] [--limit <n>] [--format json]";
7435
7504
  const project3 = requireProject(input, "technical-aeo.links.neighbors", usage);
7436
7505
  const nodeKey = getString(input.values, "node-key");
@@ -7456,7 +7525,7 @@ Usage: ${usage}`, {
7456
7525
  usage: "canonry technical-aeo dead-links <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]",
7457
7526
  options: { "run-id": stringOption(), cursor: stringOption(), limit: stringOption() },
7458
7527
  run: async (input) => {
7459
- const { technicalAeoDeadLinks } = await import("./technical-aeo-AK4QI63Q.js");
7528
+ const { technicalAeoDeadLinks } = await import("./technical-aeo-2TJEHHBR.js");
7460
7529
  const usage = "canonry technical-aeo dead-links <project> [--run-id <id>] [--cursor <cursor>] [--limit <n>] [--format json|jsonl]";
7461
7530
  const project3 = requireProject(input, "technical-aeo.dead-links", usage);
7462
7531
  await technicalAeoDeadLinks(project3, {
@@ -7608,7 +7677,7 @@ var VISIBILITY_STATS_CLI_COMMANDS = [
7608
7677
  "query-class": stringOption()
7609
7678
  },
7610
7679
  run: async (input) => {
7611
- const { showVisibilityStats } = await import("./visibility-stats-TWL3GJMD.js");
7680
+ const { showVisibilityStats } = await import("./visibility-stats-HSGT3OL3.js");
7612
7681
  const project3 = requireProject(input, "visibility-stats", USAGE4);
7613
7682
  await showVisibilityStats(project3, {
7614
7683
  since: getString(input.values, "since"),
@@ -7639,7 +7708,7 @@ var VISIBILITY_STATS_CLI_COMMANDS = [
7639
7708
  location: stringOption()
7640
7709
  },
7641
7710
  run: async (input) => {
7642
- const { showVisibilityCompare } = await import("./visibility-stats-TWL3GJMD.js");
7711
+ const { showVisibilityCompare } = await import("./visibility-stats-HSGT3OL3.js");
7643
7712
  const project3 = requireProject(input, "visibility-compare", COMPARE_USAGE);
7644
7713
  await showVisibilityCompare(project3, {
7645
7714
  from: getString(input.values, "from"),
@@ -7722,7 +7791,7 @@ var WORDPRESS_CLI_COMMANDS = [
7722
7791
  "default-env": stringOption()
7723
7792
  },
7724
7793
  run: async (input) => {
7725
- const { wordpressConnect } = await import("./wordpress-XBWXAACD.js");
7794
+ const { wordpressConnect } = await import("./wordpress-ALODIEFK.js");
7726
7795
  const usage = "canonry wordpress connect <project> --url <url> --user <user> [--app-password <password>] [--staging-url <url>] [--default-env live|staging] [--format json]";
7727
7796
  const project3 = requireProject(input, "wordpress.connect", usage);
7728
7797
  const url = requireStringOption(input, "url", {
@@ -7756,7 +7825,7 @@ var WORDPRESS_CLI_COMMANDS = [
7756
7825
  path: ["wordpress", "disconnect"],
7757
7826
  usage: "canonry wordpress disconnect <project> [--format json]",
7758
7827
  run: async (input) => {
7759
- const { wordpressDisconnect } = await import("./wordpress-XBWXAACD.js");
7828
+ const { wordpressDisconnect } = await import("./wordpress-ALODIEFK.js");
7760
7829
  const project3 = requireProject(input, "wordpress.disconnect", "canonry wordpress disconnect <project> [--format json]");
7761
7830
  await wordpressDisconnect(project3, input.format);
7762
7831
  }
@@ -7765,7 +7834,7 @@ var WORDPRESS_CLI_COMMANDS = [
7765
7834
  path: ["wordpress", "status"],
7766
7835
  usage: "canonry wordpress status <project> [--format json]",
7767
7836
  run: async (input) => {
7768
- const { wordpressStatus } = await import("./wordpress-XBWXAACD.js");
7837
+ const { wordpressStatus } = await import("./wordpress-ALODIEFK.js");
7769
7838
  const project3 = requireProject(input, "wordpress.status", "canonry wordpress status <project> [--format json]");
7770
7839
  await wordpressStatus(project3, input.format);
7771
7840
  }
@@ -7775,7 +7844,7 @@ var WORDPRESS_CLI_COMMANDS = [
7775
7844
  usage: "canonry wordpress pages <project> [--live|--staging] [--format json]",
7776
7845
  options: envOptions,
7777
7846
  run: async (input) => {
7778
- const { wordpressPages } = await import("./wordpress-XBWXAACD.js");
7847
+ const { wordpressPages } = await import("./wordpress-ALODIEFK.js");
7779
7848
  const usage = "canonry wordpress pages <project> [--live|--staging] [--format json]";
7780
7849
  const project3 = requireProject(input, "wordpress.pages", usage);
7781
7850
  await wordpressPages(project3, {
@@ -7789,7 +7858,7 @@ var WORDPRESS_CLI_COMMANDS = [
7789
7858
  usage: "canonry wordpress page <project> <slug> [--live|--staging] [--format json]",
7790
7859
  options: envOptions,
7791
7860
  run: async (input) => {
7792
- const { wordpressPage } = await import("./wordpress-XBWXAACD.js");
7861
+ const { wordpressPage } = await import("./wordpress-ALODIEFK.js");
7793
7862
  const usage = "canonry wordpress page <project> <slug> [--live|--staging] [--format json]";
7794
7863
  const project3 = requireProject(input, "wordpress.page", usage);
7795
7864
  const slug = requirePositional(input, 1, {
@@ -7815,7 +7884,7 @@ var WORDPRESS_CLI_COMMANDS = [
7815
7884
  ...envOptions
7816
7885
  },
7817
7886
  run: async (input) => {
7818
- const { wordpressCreatePage } = await import("./wordpress-XBWXAACD.js");
7887
+ const { wordpressCreatePage } = await import("./wordpress-ALODIEFK.js");
7819
7888
  const usage = "canonry wordpress create-page <project> --title <title> --slug <slug> [--content <content>|--content-file <path>] [--status draft|publish] [--live|--staging] [--format json]";
7820
7889
  const project3 = requireProject(input, "wordpress.create-page", usage);
7821
7890
  await wordpressCreatePage(project3, {
@@ -7848,7 +7917,7 @@ var WORDPRESS_CLI_COMMANDS = [
7848
7917
  ...envOptions
7849
7918
  },
7850
7919
  run: async (input) => {
7851
- const { wordpressUpdatePage } = await import("./wordpress-XBWXAACD.js");
7920
+ const { wordpressUpdatePage } = await import("./wordpress-ALODIEFK.js");
7852
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]";
7853
7922
  const project3 = requireProject(input, "wordpress.update-page", usage);
7854
7923
  const currentSlug = requirePositional(input, 1, {
@@ -7879,7 +7948,7 @@ var WORDPRESS_CLI_COMMANDS = [
7879
7948
  ...envOptions
7880
7949
  },
7881
7950
  run: async (input) => {
7882
- const { wordpressBulkSetMeta, wordpressSetMeta } = await import("./wordpress-XBWXAACD.js");
7951
+ const { wordpressBulkSetMeta, wordpressSetMeta } = await import("./wordpress-ALODIEFK.js");
7883
7952
  const fromFile = getString(input.values, "from");
7884
7953
  if (fromFile) {
7885
7954
  const usage2 = "canonry wordpress set-meta <project> --from <file> [--live|--staging] [--format json]";
@@ -7916,7 +7985,7 @@ var WORDPRESS_CLI_COMMANDS = [
7916
7985
  ...envOptions
7917
7986
  },
7918
7987
  run: async (input) => {
7919
- const { wordpressSchemaDeploy } = await import("./wordpress-XBWXAACD.js");
7988
+ const { wordpressSchemaDeploy } = await import("./wordpress-ALODIEFK.js");
7920
7989
  const usage = "canonry wordpress schema deploy <project> --profile <file> [--live|--staging] [--format json]";
7921
7990
  const project3 = requireProject(input, "wordpress.schema.deploy", usage);
7922
7991
  const profile = requireStringOption(input, "profile", {
@@ -7936,7 +8005,7 @@ var WORDPRESS_CLI_COMMANDS = [
7936
8005
  usage: "canonry wordpress schema status <project> [--live|--staging] [--format json]",
7937
8006
  options: envOptions,
7938
8007
  run: async (input) => {
7939
- const { wordpressSchemaStatus } = await import("./wordpress-XBWXAACD.js");
8008
+ const { wordpressSchemaStatus } = await import("./wordpress-ALODIEFK.js");
7940
8009
  const usage = "canonry wordpress schema status <project> [--live|--staging] [--format json]";
7941
8010
  const project3 = requireProject(input, "wordpress.schema.status", usage);
7942
8011
  await wordpressSchemaStatus(project3, {
@@ -7950,7 +8019,7 @@ var WORDPRESS_CLI_COMMANDS = [
7950
8019
  usage: "canonry wordpress schema <project> <slug> [--live|--staging] [--format json]",
7951
8020
  options: envOptions,
7952
8021
  run: async (input) => {
7953
- const { wordpressSchema } = await import("./wordpress-XBWXAACD.js");
8022
+ const { wordpressSchema } = await import("./wordpress-ALODIEFK.js");
7954
8023
  const usage = "canonry wordpress schema <project> <slug> [--live|--staging] [--format json]";
7955
8024
  const project3 = requireProject(input, "wordpress.schema", usage);
7956
8025
  const slug = requirePositional(input, 1, {
@@ -7973,7 +8042,7 @@ var WORDPRESS_CLI_COMMANDS = [
7973
8042
  ...envOptions
7974
8043
  },
7975
8044
  run: async (input) => {
7976
- const { wordpressSetSchema } = await import("./wordpress-XBWXAACD.js");
8045
+ const { wordpressSetSchema } = await import("./wordpress-ALODIEFK.js");
7977
8046
  const usage = "canonry wordpress set-schema <project> <slug> --json <json> [--type <type>] [--live|--staging] [--format json]";
7978
8047
  const project3 = requireProject(input, "wordpress.set-schema", usage);
7979
8048
  const slug = requirePositional(input, 1, {
@@ -7999,7 +8068,7 @@ var WORDPRESS_CLI_COMMANDS = [
7999
8068
  usage: "canonry wordpress llms-txt <project> [--live|--staging] [--format json]",
8000
8069
  options: envOptions,
8001
8070
  run: async (input) => {
8002
- const { wordpressLlmsTxt } = await import("./wordpress-XBWXAACD.js");
8071
+ const { wordpressLlmsTxt } = await import("./wordpress-ALODIEFK.js");
8003
8072
  const usage = "canonry wordpress llms-txt <project> [--live|--staging] [--format json]";
8004
8073
  const project3 = requireProject(input, "wordpress.llms-txt", usage);
8005
8074
  await wordpressLlmsTxt(project3, {
@@ -8016,7 +8085,7 @@ var WORDPRESS_CLI_COMMANDS = [
8016
8085
  ...envOptions
8017
8086
  },
8018
8087
  run: async (input) => {
8019
- const { wordpressSetLlmsTxt } = await import("./wordpress-XBWXAACD.js");
8088
+ const { wordpressSetLlmsTxt } = await import("./wordpress-ALODIEFK.js");
8020
8089
  const usage = "canonry wordpress set-llms-txt <project> --content <content> [--live|--staging] [--format json]";
8021
8090
  const project3 = requireProject(input, "wordpress.set-llms-txt", usage);
8022
8091
  await wordpressSetLlmsTxt(project3, {
@@ -8044,7 +8113,7 @@ var WORDPRESS_CLI_COMMANDS = [
8044
8113
  ...envOptions
8045
8114
  },
8046
8115
  run: async (input) => {
8047
- const { wordpressOnboard } = await import("./wordpress-XBWXAACD.js");
8116
+ const { wordpressOnboard } = await import("./wordpress-ALODIEFK.js");
8048
8117
  const usage = "canonry wordpress onboard <project> --url <url> --user <user> [--app-password <pw>] [--profile <file>] [--format json]";
8049
8118
  const project3 = requireProject(input, "wordpress.onboard", usage);
8050
8119
  const url = requireStringOption(input, "url", {
@@ -8075,7 +8144,7 @@ var WORDPRESS_CLI_COMMANDS = [
8075
8144
  usage: "canonry wordpress audit <project> [--live|--staging] [--format json]",
8076
8145
  options: envOptions,
8077
8146
  run: async (input) => {
8078
- const { wordpressAudit } = await import("./wordpress-XBWXAACD.js");
8147
+ const { wordpressAudit } = await import("./wordpress-ALODIEFK.js");
8079
8148
  const usage = "canonry wordpress audit <project> [--live|--staging] [--format json]";
8080
8149
  const project3 = requireProject(input, "wordpress.audit", usage);
8081
8150
  await wordpressAudit(project3, {
@@ -8088,7 +8157,7 @@ var WORDPRESS_CLI_COMMANDS = [
8088
8157
  path: ["wordpress", "diff"],
8089
8158
  usage: "canonry wordpress diff <project> <slug> [--format json]",
8090
8159
  run: async (input) => {
8091
- const { wordpressDiff } = await import("./wordpress-XBWXAACD.js");
8160
+ const { wordpressDiff } = await import("./wordpress-ALODIEFK.js");
8092
8161
  const usage = "canonry wordpress diff <project> <slug> [--format json]";
8093
8162
  const project3 = requireProject(input, "wordpress.diff", usage);
8094
8163
  const slug = requirePositional(input, 1, {
@@ -8103,7 +8172,7 @@ var WORDPRESS_CLI_COMMANDS = [
8103
8172
  path: ["wordpress", "staging", "status"],
8104
8173
  usage: "canonry wordpress staging status <project> [--format json]",
8105
8174
  run: async (input) => {
8106
- const { wordpressStagingStatus } = await import("./wordpress-XBWXAACD.js");
8175
+ const { wordpressStagingStatus } = await import("./wordpress-ALODIEFK.js");
8107
8176
  const project3 = requireProject(input, "wordpress.staging.status", "canonry wordpress staging status <project> [--format json]");
8108
8177
  await wordpressStagingStatus(project3, input.format);
8109
8178
  }
@@ -8112,7 +8181,7 @@ var WORDPRESS_CLI_COMMANDS = [
8112
8181
  path: ["wordpress", "staging", "push"],
8113
8182
  usage: "canonry wordpress staging push <project> [--format json]",
8114
8183
  run: async (input) => {
8115
- const { wordpressStagingPush } = await import("./wordpress-XBWXAACD.js");
8184
+ const { wordpressStagingPush } = await import("./wordpress-ALODIEFK.js");
8116
8185
  const project3 = requireProject(input, "wordpress.staging.push", "canonry wordpress staging push <project> [--format json]");
8117
8186
  await wordpressStagingPush(project3, input.format);
8118
8187
  }
@@ -8149,7 +8218,7 @@ var AGENT_CLI_COMMANDS = [
8149
8218
  usage: `canonry agent conversations ${action} <project> [--id <conversation-id>] [--offset <n>] [--limit <n>] [--format json]`,
8150
8219
  options: { id: stringOption(), offset: stringOption(), limit: stringOption() },
8151
8220
  run: async (input) => {
8152
- const { agentConversations } = await import("./agent-conversations-5LR67TBD.js");
8221
+ const { agentConversations } = await import("./agent-conversations-JEIFZHT3.js");
8153
8222
  const usage = `canonry agent conversations ${action} <project>`;
8154
8223
  const project3 = requireProject(input, `agent.conversations.${action}`, usage);
8155
8224
  const id2 = action === "new" || action === "list" ? getString(input.values, "id") : requireStringOption(input, "id", { command: `agent.conversations.${action}`, usage, message: "--id is required" });
@@ -8172,9 +8241,9 @@ var AGENT_CLI_COMMANDS = [
8172
8241
  "timeout-ms": stringOption()
8173
8242
  },
8174
8243
  run: async (input) => {
8175
- const { coerceAgentProvider } = await import("./session-IHXMPETX.js");
8176
- const { AERO_TOOL_PROFILES, isAeroToolProfile } = await import("./tools-PBNTVVN7.js");
8177
- const { agentAsk } = await import("./agent-ask-7WVQLLD5.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");
8178
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]`;
8179
8248
  const project3 = requireProject(input, "agent.ask", usage);
8180
8249
  const prompt = input.positionals.slice(1).join(" ").trim();
@@ -8259,7 +8328,7 @@ Usage: ${usage}`, {
8259
8328
  usage: "canonry agent providers <project> [--format json]",
8260
8329
  options: {},
8261
8330
  run: async (input) => {
8262
- const { agentProviders } = await import("./agent-providers-TVCRM3YZ.js");
8331
+ const { agentProviders } = await import("./agent-providers-JRL3VZA7.js");
8263
8332
  const project3 = requireProject(input, "agent.providers", "canonry agent providers <project> [--format json]");
8264
8333
  await agentProviders({ project: project3, format: input.format });
8265
8334
  }
@@ -8271,7 +8340,7 @@ Usage: ${usage}`, {
8271
8340
  url: stringOption()
8272
8341
  },
8273
8342
  run: async (input) => {
8274
- const { agentAttach } = await import("./agent-3KMENHL3.js");
8343
+ const { agentAttach } = await import("./agent-2FSGY7SD.js");
8275
8344
  const usage = "canonry agent attach <project> --url <webhook-url> [--format json]";
8276
8345
  const project3 = requireProject(input, "agent.attach", usage);
8277
8346
  const url = requireStringOption(input, "url", {
@@ -8290,7 +8359,7 @@ Usage: ${usage}`, {
8290
8359
  usage: "canonry agent detach <project> [--format json]",
8291
8360
  options: {},
8292
8361
  run: async (input) => {
8293
- const { agentDetach } = await import("./agent-3KMENHL3.js");
8362
+ const { agentDetach } = await import("./agent-2FSGY7SD.js");
8294
8363
  const project3 = requireProject(input, "agent.detach", "canonry agent detach <project> [--format json]");
8295
8364
  await agentDetach({ project: project3, format: input.format });
8296
8365
  }
@@ -8300,7 +8369,7 @@ Usage: ${usage}`, {
8300
8369
  usage: "canonry agent transcript <project> [--format json]",
8301
8370
  options: {},
8302
8371
  run: async (input) => {
8303
- const { agentTranscript } = await import("./agent-transcript-MUTCOOWG.js");
8372
+ const { agentTranscript } = await import("./agent-transcript-ZQDNW3IE.js");
8304
8373
  const project3 = requireProject(input, "agent.transcript", "canonry agent transcript <project> [--format json]");
8305
8374
  await agentTranscript({ project: project3, format: input.format });
8306
8375
  }
@@ -8310,7 +8379,7 @@ Usage: ${usage}`, {
8310
8379
  usage: "canonry agent reset <project> [--format json]",
8311
8380
  options: {},
8312
8381
  run: async (input) => {
8313
- const { agentTranscriptReset } = await import("./agent-transcript-MUTCOOWG.js");
8382
+ const { agentTranscriptReset } = await import("./agent-transcript-ZQDNW3IE.js");
8314
8383
  const project3 = requireProject(input, "agent.reset", "canonry agent reset <project> [--format json]");
8315
8384
  await agentTranscriptReset({ project: project3, format: input.format });
8316
8385
  }
@@ -8320,7 +8389,7 @@ Usage: ${usage}`, {
8320
8389
  usage: "canonry agent clear <project> [--format json]",
8321
8390
  options: {},
8322
8391
  run: async (input) => {
8323
- const { agentTranscriptReset } = await import("./agent-transcript-MUTCOOWG.js");
8392
+ const { agentTranscriptReset } = await import("./agent-transcript-ZQDNW3IE.js");
8324
8393
  const project3 = requireProject(input, "agent.clear", "canonry agent clear <project> [--format json]");
8325
8394
  await agentTranscriptReset({ project: project3, format: input.format });
8326
8395
  }
@@ -8330,7 +8399,7 @@ Usage: ${usage}`, {
8330
8399
  usage: "canonry agent memory list <project> [--format json]",
8331
8400
  options: {},
8332
8401
  run: async (input) => {
8333
- const { agentMemoryList } = await import("./agent-memory-GKUCCKVX.js");
8402
+ const { agentMemoryList } = await import("./agent-memory-JC3JJXON.js");
8334
8403
  const usage = "canonry agent memory list <project> [--format json]";
8335
8404
  const project3 = requireProject(input, "agent.memory.list", usage);
8336
8405
  await agentMemoryList({ project: project3, format: input.format });
@@ -8344,7 +8413,7 @@ Usage: ${usage}`, {
8344
8413
  value: stringOption()
8345
8414
  },
8346
8415
  run: async (input) => {
8347
- const { agentMemorySet } = await import("./agent-memory-GKUCCKVX.js");
8416
+ const { agentMemorySet } = await import("./agent-memory-JC3JJXON.js");
8348
8417
  const usage = "canonry agent memory set <project> --key <k> --value <v> [--format json]";
8349
8418
  const project3 = requireProject(input, "agent.memory.set", usage);
8350
8419
  const key = requireStringOption(input, "key", {
@@ -8373,7 +8442,7 @@ Usage: ${usage}`, {
8373
8442
  key: stringOption()
8374
8443
  },
8375
8444
  run: async (input) => {
8376
- const { agentMemoryForget } = await import("./agent-memory-GKUCCKVX.js");
8445
+ const { agentMemoryForget } = await import("./agent-memory-JC3JJXON.js");
8377
8446
  const usage = "canonry agent memory forget <project> --key <k> [--format json]";
8378
8447
  const project3 = requireProject(input, "agent.memory.forget", usage);
8379
8448
  const key = requireStringOption(input, "key", {