@canonry/canonry 7.64.1 → 7.64.3

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 (132) hide show
  1. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +2 -2
  2. package/assets/assets/{AgentSetupPage-C9VnIbMS.js → AgentSetupPage-DgcU4n6k.js} +1 -1
  3. package/assets/assets/{AuditHistoryPanel-DLa6Ca5t.js → AuditHistoryPanel-IDTBP47p.js} +1 -1
  4. package/assets/assets/{BacklinksPage-Dxnz-sUy.js → BacklinksPage-tbfBeOWq.js} +1 -1
  5. package/assets/assets/{HistoryPage-PU7UNO3T.js → HistoryPage-BT17i1bv.js} +1 -1
  6. package/assets/assets/MeasurementPropertyPage-CNVW1nD0.js +4 -0
  7. package/assets/assets/ProjectPage-BOpHsl0H.js +9 -0
  8. package/assets/assets/{RunsPage-Cr0QSE4Q.js → RunsPage-DSbp_ueP.js} +1 -1
  9. package/assets/assets/{SettingsPage-K6tGAVHo.js → SettingsPage-DhXsS4mE.js} +1 -1
  10. package/assets/assets/{SiteHealthSection-DxhIqNDZ.js → SiteHealthSection-DDnJ6MmG.js} +2 -2
  11. package/assets/assets/{ToneBadge-Cvv6Tkk7.js → ToneBadge-BQIKzc8y.js} +1 -1
  12. package/assets/assets/{TrafficPage-lNcR4TvT.js → TrafficPage-2Ix0v2Sw.js} +1 -1
  13. package/assets/assets/{TrafficSourceDetailPage-D47VIFDK.js → TrafficSourceDetailPage-Cytn_uBJ.js} +1 -1
  14. package/assets/assets/{account-context-BL8j43iU.js → account-context-eRm8f3bl.js} +1 -1
  15. package/assets/assets/{card-BKud0olB.js → card-CWFz5ZQm.js} +1 -1
  16. package/assets/assets/{extract-error-message-CvEgflI1.js → extract-error-message-BdsLX91O.js} +1 -1
  17. package/assets/assets/{format-helpers-Ce3RoH9T.js → format-helpers-Dv7wus0N.js} +2 -2
  18. package/assets/assets/{index-C2t4yW4t.js → index-CipZo_Z_.js} +4 -4
  19. package/assets/assets/{index-DqhMdZUM.css → index-Da8t1_vu.css} +1 -1
  20. package/assets/assets/{query-client-Bf5Rr6po.js → query-client-B4X4SMBT.js} +1 -1
  21. package/assets/assets/{react-query-CsFtWT8r.js → react-query-6xQVTyvM.js} +1 -1
  22. package/assets/assets/{react-sigma_core.esm.min-D-dyJflK.js → react-sigma_core.esm.min-_zOXWmWO.js} +1 -1
  23. package/assets/assets/{service-C0U5Ude4.js → service-D5-ENCES.js} +1 -1
  24. package/assets/index.html +8 -8
  25. package/dist/{ads-EFXCND5Z.js → ads-JR7S3FK6.js} +3 -3
  26. package/dist/{agent-2MAONYLR.js → agent-AMVJ3FUV.js} +7 -7
  27. package/dist/{agent-ask-5555LQQL.js → agent-ask-KZTQLKGM.js} +3 -3
  28. package/dist/{agent-conversations-LYWOS4X3.js → agent-conversations-WJJ2K2ON.js} +3 -3
  29. package/dist/{agent-memory-HOYIIO66.js → agent-memory-TNWIXVZ5.js} +3 -3
  30. package/dist/{agent-providers-EYXB2DMX.js → agent-providers-KJVQSN3Q.js} +3 -3
  31. package/dist/{agent-transcript-BWDOJXPV.js → agent-transcript-PBYDJLYH.js} +3 -3
  32. package/dist/{analytics-46VKY4SP.js → analytics-CBPNUDES.js} +3 -3
  33. package/dist/{apply-GII5J3QB.js → apply-ZX4OF5PG.js} +3 -3
  34. package/dist/{backfill-WSIEPRES.js → backfill-PPRSFYAV.js} +9 -9
  35. package/dist/{backlinks-GRHTLP5Z.js → backlinks-O4Q6WH53.js} +3 -3
  36. package/dist/{bing-5QDDHK57.js → bing-SIZPWBYU.js} +3 -3
  37. package/dist/{bootstrap-GWDFCGEQ.js → bootstrap-XF6DMDQI.js} +10 -10
  38. package/dist/{cdp-YMIJN52Z.js → cdp-DD7ARB62.js} +7 -7
  39. package/dist/{chunk-Y3VMSYEG.js → chunk-22XKOBJD.js} +1 -1
  40. package/dist/{chunk-I62VYS4B.js → chunk-73QOQIFZ.js} +4 -4
  41. package/dist/{chunk-6AYOWQJ3.js → chunk-C3FQGQDS.js} +3 -3
  42. package/dist/{chunk-7STLCYWL.js → chunk-CCJIMTYO.js} +5 -5
  43. package/dist/{chunk-ZGLLSPBB.js → chunk-CKRXLVWQ.js} +2 -2
  44. package/dist/{chunk-L6IQN2Y5.js → chunk-DIS2JA7D.js} +2 -2
  45. package/dist/{chunk-WLCYVJGN.js → chunk-DPRGW4BM.js} +4 -4
  46. package/dist/{chunk-7LVZATRE.js → chunk-G33PG23U.js} +1 -1
  47. package/dist/{chunk-7U2SFOJN.js → chunk-HQGMIHG6.js} +20 -20
  48. package/dist/{chunk-AUIHVRJ3.js → chunk-IJF7KNU6.js} +2 -2
  49. package/dist/{chunk-XR3R5PDK.js → chunk-KJA7V3IT.js} +1 -1
  50. package/dist/{chunk-UQABYWAX.js → chunk-LSKAENOY.js} +1 -1
  51. package/dist/{chunk-DKVY6HFW.js → chunk-MFNU4NRS.js} +3 -3
  52. package/dist/{chunk-K5S5HXAK.js → chunk-MLXU4QOF.js} +334 -334
  53. package/dist/{chunk-7V6DJCZO.js → chunk-N7M7UVYT.js} +1 -1
  54. package/dist/{chunk-ZYE7D2OC.js → chunk-NCUTFEU4.js} +1 -1
  55. package/dist/{chunk-WFOIIHAK.js → chunk-NMDXZWFB.js} +2 -2
  56. package/dist/{chunk-6ZA23GRE.js → chunk-NYTPS5WW.js} +8 -8
  57. package/dist/{chunk-JP4Q5FEW.js → chunk-OMB3VLDQ.js} +3 -3
  58. package/dist/{chunk-CNPYR2CQ.js → chunk-PNZE3XLO.js} +1 -1
  59. package/dist/{chunk-NFZXB5ZV.js → chunk-Q4JRFMCJ.js} +5 -5
  60. package/dist/{chunk-VLOWXBJS.js → chunk-QT7UBYG7.js} +3 -3
  61. package/dist/{chunk-DYDLK3YY.js → chunk-RR7ZDGC7.js} +2 -2
  62. package/dist/{chunk-M6QGMJAQ.js → chunk-T4EGKFOV.js} +1 -1
  63. package/dist/{chunk-MXQB7AAP.js → chunk-UJ222WSC.js} +1 -1
  64. package/dist/{chunk-TX4HBLFP.js → chunk-UX667IQM.js} +277 -264
  65. package/dist/{chunk-CLMJSIZU.js → chunk-VL5LVBLE.js} +1 -1
  66. package/dist/{chunk-2BJDLTDI.js → chunk-VMLCPTRZ.js} +1 -1
  67. package/dist/{chunk-V23ALG2D.js → chunk-WACG4O26.js} +2 -2
  68. package/dist/{chunk-ITYUIHKO.js → chunk-WODZX4Y6.js} +1 -1
  69. package/dist/{chunk-ZUH7GDQ4.js → chunk-YNPUS3Y7.js} +4 -4
  70. package/dist/{chunk-4PRXS5JH.js → chunk-YVYID65D.js} +12 -1
  71. package/dist/{chunk-BAQOH3LE.js → chunk-Z4CVEVP6.js} +3 -3
  72. package/dist/{chunk-BUED4RWE.js → chunk-ZTO5KPQB.js} +1 -1
  73. package/dist/{citations-AMOXXK5R.js → citations-DQGMUJYX.js} +3 -3
  74. package/dist/{cli-catalog-K5EQZBOO.js → cli-catalog-G7USVSOC.js} +3 -3
  75. package/dist/{cli-commands-CCGP2A2P.js → cli-commands-YUBGTHRG.js} +7 -7
  76. package/dist/cli.js +13 -13
  77. package/dist/{competitor-YQBDZE6A.js → competitor-CIKVJ4H4.js} +3 -3
  78. package/dist/{content-DFZ56U3J.js → content-DPWKB5SO.js} +3 -3
  79. package/dist/{dashboard-LIPZS22H.js → dashboard-OX2JEGEK.js} +6 -6
  80. package/dist/{demo-XZJKCQRO.js → demo-NMMLZ6VZ.js} +1 -1
  81. package/dist/{demo-server-3BCUBH4H.js → demo-server-VD6C773Q.js} +11 -11
  82. package/dist/{discover-JDJ2O6D6.js → discover-3JGVGPMR.js} +3 -3
  83. package/dist/{discover-eval-5GST6BOJ.js → discover-eval-HVU24KNC.js} +3 -3
  84. package/dist/{doctor-2LJGHCIZ.js → doctor-77VPDK2N.js} +3 -3
  85. package/dist/{evidence-FQKL6ULX.js → evidence-WSSOMBED.js} +3 -3
  86. package/dist/{export-cmd-KNGYT4JH.js → export-cmd-CPO73FP7.js} +3 -3
  87. package/dist/{ga-UH4RUHX2.js → ga-QOIYDTEX.js} +9 -5
  88. package/dist/{gbp-IPMROSVV.js → gbp-JEPBXCS6.js} +3 -3
  89. package/dist/{google-QU5M737H.js → google-5BZYXAJH.js} +4 -4
  90. package/dist/{google-marketing-QCLVAP25.js → google-marketing-Q36Q7YFU.js} +1 -1
  91. package/dist/{health-cmd-7UFZ5MT6.js → health-cmd-5KSRFNNN.js} +3 -3
  92. package/dist/{history-3H3CKHVR.js → history-WE4K4QIA.js} +3 -3
  93. package/dist/index.d.ts +5 -5
  94. package/dist/index.js +24 -24
  95. package/dist/{init-HNPTJIOS.js → init-TDAXSYRR.js} +11 -11
  96. package/dist/{insights-LEVVXDBW.js → insights-K6PVVNZA.js} +3 -3
  97. package/dist/intelligence-service-GCISXTKM.js +15 -0
  98. package/dist/{journeys-JMQBUF2E.js → journeys-GD2QE2YK.js} +3 -3
  99. package/dist/{keys-LF2UMTN6.js → keys-SLJDSG7P.js} +3 -3
  100. package/dist/{keyword-JSJYNWN2.js → keyword-KDDWSW24.js} +3 -3
  101. package/dist/{logs-RWUB42V3.js → logs-PMIEBMOW.js} +3 -3
  102. package/dist/{mcp-FWQXTWAR.js → mcp-E5YLJ4LN.js} +2 -2
  103. package/dist/mcp.js +9 -9
  104. package/dist/{measurement-plan-4WXYE6CZ.js → measurement-plan-QZDBAH5D.js} +5 -5
  105. package/dist/{notify-FBS43GY5.js → notify-3QXR6PO2.js} +3 -3
  106. package/dist/{organic-evidence-TTXXAHFX.js → organic-evidence-UXEEKJPH.js} +3 -3
  107. package/dist/{overview-AB5JTMWR.js → overview-2Q4E75BW.js} +4 -4
  108. package/dist/{project-GSQMF736.js → project-M7VFAIJ2.js} +3 -3
  109. package/dist/{query-JITDUO3B.js → query-WDQGPIKS.js} +3 -3
  110. package/dist/{research-UU5W2XPU.js → research-U2GP2EQK.js} +3 -3
  111. package/dist/{results-export-ZX62A645.js → results-export-SMNP3XZT.js} +3 -3
  112. package/dist/{run-HXNS5CB3.js → run-CZXLPC3S.js} +4 -4
  113. package/dist/{schedule-Q4XMBZAH.js → schedule-DVIXJJFI.js} +3 -3
  114. package/dist/{search-GC4RYLYD.js → search-GFU2VPG4.js} +3 -3
  115. package/dist/{serve-ECMM256O.js → serve-C2TW7ZZC.js} +25 -25
  116. package/dist/{session-JI4YODZS.js → session-5MVIOTFY.js} +12 -12
  117. package/dist/{settings-5GFLK4DY.js → settings-VYVGART2.js} +3 -3
  118. package/dist/{skills-B7Z5S3IT.js → skills-EWEPVEDD.js} +2 -2
  119. package/dist/{snapshot-2JOQFYJE.js → snapshot-L2DX6EBI.js} +3 -3
  120. package/dist/{src-2UNG3E4M.js → src-RBXPA4CW.js} +2 -2
  121. package/dist/{status-NKK5MYNE.js → status-ZJLUWVST.js} +4 -4
  122. package/dist/{technical-aeo-MQLGHVIX.js → technical-aeo-7KRBPNV7.js} +3 -3
  123. package/dist/{telemetry-J5F2H7OJ.js → telemetry-ZROXU4SH.js} +4 -4
  124. package/dist/{tools-CXANMI23.js → tools-NDQN64CH.js} +11 -11
  125. package/dist/{traffic-BVKW6QDD.js → traffic-W3NOHWNK.js} +5 -5
  126. package/dist/{users-2EKLHWPH.js → users-GGJSWVSI.js} +3 -3
  127. package/dist/{visibility-stats-HVQ6VUEB.js → visibility-stats-VZ5A7LMI.js} +3 -3
  128. package/dist/{wordpress-EEYBM634.js → wordpress-JYXIO3DJ.js} +3 -3
  129. package/package.json +1 -1
  130. package/assets/assets/MeasurementPropertyPage-Bo4xKbWQ.js +0 -4
  131. package/assets/assets/ProjectPage-DuW9zWT9.js +0 -9
  132. package/dist/intelligence-service-GQQNTMUX.js +0 -15
@@ -23,7 +23,7 @@ import {
23
23
  measurementDraftUpsertGroupRequestSchema,
24
24
  measurementDraftUpsertMarketRequestSchema,
25
25
  measurementDraftUpsertTargetRequestSchema
26
- } from "./chunk-4PRXS5JH.js";
26
+ } from "./chunk-YVYID65D.js";
27
27
 
28
28
  // src/measurement-draft-actions.ts
29
29
  import { z } from "zod";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-HGMYEDAQ.js";
5
5
  import {
6
6
  describeError
7
- } from "./chunk-4PRXS5JH.js";
7
+ } from "./chunk-YVYID65D.js";
8
8
 
9
9
  // src/gsc-sitemap-submission.ts
10
10
  function dedupeGscSitemapUrls(urls) {
@@ -5,7 +5,7 @@ import {
5
5
  loadConfig,
6
6
  loadConfigRaw,
7
7
  saveConfigPatch
8
- } from "./chunk-Y3VMSYEG.js";
8
+ } from "./chunk-22XKOBJD.js";
9
9
  import {
10
10
  CANONRY_NPM_PACKAGE_URL,
11
11
  compareSemver,
@@ -18,7 +18,7 @@ import {
18
18
  updateCheckEnvOptOut,
19
19
  upgradeCaveatFor,
20
20
  upgradeCommandFor
21
- } from "./chunk-4PRXS5JH.js";
21
+ } from "./chunk-YVYID65D.js";
22
22
 
23
23
  // src/runtime-context.ts
24
24
  function cliRuntimeContext(env = process.env, stdio = process) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  API_PROVIDER_NAMES,
3
3
  ProviderNames
4
- } from "./chunk-4PRXS5JH.js";
4
+ } from "./chunk-YVYID65D.js";
5
5
 
6
6
  // src/provider-registration.ts
7
7
  function isApiProviderRegistrable(name, entry) {
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  runWithUsageTags
3
- } from "./chunk-DYDLK3YY.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
4
  import {
5
5
  CanonryMcpToolNames,
6
6
  canonryMcpTools
7
- } from "./chunk-VLOWXBJS.js";
7
+ } from "./chunk-QT7UBYG7.js";
8
8
  import {
9
9
  CliError
10
10
  } from "./chunk-HGMYEDAQ.js";
11
11
  import {
12
12
  buildOpenApiDocument
13
- } from "./chunk-TX4HBLFP.js";
13
+ } from "./chunk-UX667IQM.js";
14
14
  import {
15
15
  DEFAULT_COMPETITOR_AUTO_ALIAS_MODE,
16
16
  MeasurementPortfolioLists,
@@ -20,7 +20,7 @@ import {
20
20
  formatPercent,
21
21
  ratioUnitSchema,
22
22
  truncateUtf16
23
- } from "./chunk-4PRXS5JH.js";
23
+ } from "./chunk-YVYID65D.js";
24
24
 
25
25
  // src/agent/tools.ts
26
26
  import { Type as Type2 } from "@earendil-works/pi-ai";
@@ -17425,6 +17425,7 @@ var gaSearchLandingPageRowSchema = gaSearchLandingMetricsSchema.extend({
17425
17425
  /** GA4's `landingPagePlusQueryString`, exactly as reported (never normalized). */
17426
17426
  landingPage: z50.string()
17427
17427
  });
17428
+ var gaSearchConsoleLinkStateSchema = z50.enum(["has-data", "not-linked", "no-search-data", "unknown"]);
17428
17429
  var gaSearchLandingPagesResponseSchema = z50.object({
17429
17430
  source: z50.literal("ga4-search-console-link"),
17430
17431
  status: gaSearchLandingStatusSchema,
@@ -17455,7 +17456,17 @@ var gaSearchLandingPagesResponseSchema = z50.object({
17455
17456
  limit: z50.number().int().positive(),
17456
17457
  offset: z50.number().int().nonnegative(),
17457
17458
  /** Ordered by clicks, then impressions (both descending), then landing page. */
17458
- rows: z50.array(gaSearchLandingPageRowSchema)
17459
+ rows: z50.array(gaSearchLandingPageRowSchema),
17460
+ /**
17461
+ * Whether the window's GA4 report has Search Console data, compared with
17462
+ * Canonry's own Search Console data for the same days. Null when no window
17463
+ * is stored.
17464
+ */
17465
+ searchConsoleLink: z50.object({
17466
+ state: gaSearchConsoleLinkStateSchema,
17467
+ /** Search Console impressions Canonry stores for the window's days; null when it has none for them. */
17468
+ searchConsoleImpressions: z50.number().int().nonnegative().nullable()
17469
+ }).nullable()
17459
17470
  });
17460
17471
  function gaSearchLandingHasSearchData(total) {
17461
17472
  return total.organicGoogleSearchClicks > 0 || total.organicGoogleSearchImpressions > 0;
@@ -3,7 +3,7 @@ import {
3
3
  resolveCliAccess,
4
4
  resolveCliAccessForInvocation,
5
5
  windowOptions
6
- } from "./chunk-7V6DJCZO.js";
6
+ } from "./chunk-N7M7UVYT.js";
7
7
  import {
8
8
  emitJsonl
9
9
  } from "./chunk-Z7IUAJOF.js";
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-HGMYEDAQ.js";
15
15
  import {
16
16
  OperationAccesses
17
- } from "./chunk-4PRXS5JH.js";
17
+ } from "./chunk-YVYID65D.js";
18
18
 
19
19
  // src/cli-catalog.ts
20
20
  import { createRequire } from "module";
@@ -111,7 +111,7 @@ async function dispatchRegisteredCommand(args, fallbackFormat, specs) {
111
111
  const accessValue = accessFilterFromArgs(argsWithoutHelp);
112
112
  validateAccessFilter(accessValue);
113
113
  if (fallbackFormat !== "text") {
114
- const { printCliCatalog: printCliCatalog2 } = await import("./cli-catalog-K5EQZBOO.js");
114
+ const { printCliCatalog: printCliCatalog2 } = await import("./cli-catalog-G7USVSOC.js");
115
115
  const group2 = argsWithoutHelp.find((arg) => !arg.startsWith("--"));
116
116
  printCliCatalog2(specs, fallbackFormat, group2, accessValue);
117
117
  return true;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  USAGE_TELEMETRY_HEADERS,
3
3
  redactLogString
4
- } from "./chunk-4PRXS5JH.js";
4
+ } from "./chunk-YVYID65D.js";
5
5
 
6
6
  // ../api-routes/src/request-context.ts
7
7
  import { AsyncLocalStorage } from "async_hooks";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import "./chunk-HGMYEDAQ.js";
7
- import "./chunk-4PRXS5JH.js";
7
+ import "./chunk-YVYID65D.js";
8
8
  import "./chunk-MLKGABMK.js";
9
9
 
10
10
  // src/commands/citations.ts
@@ -3,11 +3,11 @@ import {
3
3
  buildCliCatalog,
4
4
  printCliCatalog,
5
5
  renderTopLevelHelp
6
- } from "./chunk-BAQOH3LE.js";
7
- import "./chunk-7V6DJCZO.js";
6
+ } from "./chunk-Z4CVEVP6.js";
7
+ import "./chunk-N7M7UVYT.js";
8
8
  import "./chunk-Z7IUAJOF.js";
9
9
  import "./chunk-HGMYEDAQ.js";
10
- import "./chunk-4PRXS5JH.js";
10
+ import "./chunk-YVYID65D.js";
11
11
  import "./chunk-MLKGABMK.js";
12
12
  export {
13
13
  CLI_ROOT_SUMMARIES,
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  REGISTERED_CLI_COMMANDS
3
- } from "./chunk-K5S5HXAK.js";
3
+ } from "./chunk-MLXU4QOF.js";
4
4
  import "./chunk-6GO5VVAC.js";
5
- import "./chunk-6AYOWQJ3.js";
5
+ import "./chunk-C3FQGQDS.js";
6
6
  import "./chunk-VJWDBFSL.js";
7
7
  import "./chunk-TSENU4GG.js";
8
- import "./chunk-DYDLK3YY.js";
9
- import "./chunk-Y3VMSYEG.js";
10
- import "./chunk-7V6DJCZO.js";
8
+ import "./chunk-RR7ZDGC7.js";
9
+ import "./chunk-22XKOBJD.js";
10
+ import "./chunk-N7M7UVYT.js";
11
11
  import "./chunk-Z7IUAJOF.js";
12
- import "./chunk-CLMJSIZU.js";
12
+ import "./chunk-VL5LVBLE.js";
13
13
  import "./chunk-AOJU5LKX.js";
14
14
  import "./chunk-HGMYEDAQ.js";
15
- import "./chunk-4PRXS5JH.js";
15
+ import "./chunk-YVYID65D.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
  export {
18
18
  REGISTERED_CLI_COMMANDS
package/dist/cli.js CHANGED
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node --import tsx
2
2
  import {
3
3
  REGISTERED_CLI_COMMANDS
4
- } from "./chunk-K5S5HXAK.js";
4
+ } from "./chunk-MLXU4QOF.js";
5
5
  import {
6
6
  buildSetupState,
7
7
  runPendingServeHandoff
8
- } from "./chunk-WLCYVJGN.js";
8
+ } from "./chunk-DPRGW4BM.js";
9
9
  import "./chunk-6GO5VVAC.js";
10
- import "./chunk-6AYOWQJ3.js";
10
+ import "./chunk-C3FQGQDS.js";
11
11
  import "./chunk-VJWDBFSL.js";
12
12
  import "./chunk-TSENU4GG.js";
13
- import "./chunk-ITYUIHKO.js";
13
+ import "./chunk-WODZX4Y6.js";
14
14
  import {
15
15
  checkLatestVersionForCli,
16
16
  cliRuntimeContext,
@@ -24,24 +24,24 @@ import {
24
24
  showFirstRunNotice,
25
25
  trackCliCommandFinished,
26
26
  trackEvent
27
- } from "./chunk-V23ALG2D.js";
27
+ } from "./chunk-WACG4O26.js";
28
28
  import {
29
29
  autoSyncSkills,
30
30
  formatAutoSyncNotice
31
- } from "./chunk-DKVY6HFW.js";
32
- import "./chunk-DYDLK3YY.js";
33
- import "./chunk-Y3VMSYEG.js";
31
+ } from "./chunk-MFNU4NRS.js";
32
+ import "./chunk-RR7ZDGC7.js";
33
+ import "./chunk-22XKOBJD.js";
34
34
  import {
35
35
  accessFilterFromArgs,
36
36
  dispatchRegisteredCommand,
37
37
  printCliCatalog
38
- } from "./chunk-BAQOH3LE.js";
38
+ } from "./chunk-Z4CVEVP6.js";
39
39
  import {
40
40
  resolveCliAccess
41
- } from "./chunk-7V6DJCZO.js";
41
+ } from "./chunk-N7M7UVYT.js";
42
42
  import "./chunk-Z7IUAJOF.js";
43
- import "./chunk-7LVZATRE.js";
44
- import "./chunk-CLMJSIZU.js";
43
+ import "./chunk-G33PG23U.js";
44
+ import "./chunk-VL5LVBLE.js";
45
45
  import "./chunk-AOJU5LKX.js";
46
46
  import {
47
47
  CliError,
@@ -52,7 +52,7 @@ import {
52
52
  } from "./chunk-HGMYEDAQ.js";
53
53
  import {
54
54
  OperationAccesses
55
- } from "./chunk-4PRXS5JH.js";
55
+ } from "./chunk-YVYID65D.js";
56
56
  import "./chunk-MLKGABMK.js";
57
57
 
58
58
  // src/cli.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -21,7 +21,7 @@ import {
21
21
  normalizeCompetitorDomain,
22
22
  shareOfVoiceLabel,
23
23
  shareOfVoiceReason
24
- } from "./chunk-4PRXS5JH.js";
24
+ } from "./chunk-YVYID65D.js";
25
25
  import "./chunk-MLKGABMK.js";
26
26
 
27
27
  // src/commands/competitor.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -14,7 +14,7 @@ import {
14
14
  import {
15
15
  contentTargetDismissRequestSchema,
16
16
  formatPercent
17
- } from "./chunk-4PRXS5JH.js";
17
+ } from "./chunk-YVYID65D.js";
18
18
  import "./chunk-MLKGABMK.js";
19
19
 
20
20
  // src/commands/content.ts
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  clearDashboardPassword,
3
3
  loadConfigRaw
4
- } from "./chunk-Y3VMSYEG.js";
4
+ } from "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  isMachineFormat
7
7
  } from "./chunk-HGMYEDAQ.js";
8
8
  import {
9
9
  anyUsersExist
10
- } from "./chunk-TX4HBLFP.js";
11
- import "./chunk-UQABYWAX.js";
12
- import "./chunk-BUED4RWE.js";
10
+ } from "./chunk-UX667IQM.js";
11
+ import "./chunk-LSKAENOY.js";
12
+ import "./chunk-ZTO5KPQB.js";
13
13
  import {
14
14
  createClient
15
- } from "./chunk-ZYE7D2OC.js";
16
- import "./chunk-4PRXS5JH.js";
15
+ } from "./chunk-NCUTFEU4.js";
16
+ import "./chunk-YVYID65D.js";
17
17
  import "./chunk-MLKGABMK.js";
18
18
 
19
19
  // src/commands/dashboard.ts
@@ -40,7 +40,7 @@ function parseDemoTrustedProxies(values) {
40
40
  async function demoCommand(options) {
41
41
  const { host, port } = parseDemoListenOptions(options);
42
42
  const trustProxy = parseDemoTrustedProxies(options.trustProxy);
43
- const { createDemoServer } = await import("./demo-server-3BCUBH4H.js");
43
+ const { createDemoServer } = await import("./demo-server-VD6C773Q.js");
44
44
  const app = await createDemoServer({ trustProxy });
45
45
  let stopping = false;
46
46
  const stop = () => {
@@ -5,12 +5,12 @@ import {
5
5
  computeFactorAverages,
6
6
  layoutSiteCrawlGraphInput,
7
7
  persistSiteCrawlGraphLayout
8
- } from "./chunk-ZGLLSPBB.js";
8
+ } from "./chunk-CKRXLVWQ.js";
9
9
  import {
10
10
  canonryMcpTools
11
- } from "./chunk-VLOWXBJS.js";
12
- import "./chunk-2BJDLTDI.js";
13
- import "./chunk-CLMJSIZU.js";
11
+ } from "./chunk-QT7UBYG7.js";
12
+ import "./chunk-VMLCPTRZ.js";
13
+ import "./chunk-VL5LVBLE.js";
14
14
  import {
15
15
  PACKAGE_VERSION
16
16
  } from "./chunk-AOJU5LKX.js";
@@ -18,16 +18,16 @@ import "./chunk-HGMYEDAQ.js";
18
18
  import {
19
19
  HISTORY_WINDOW_RUNS,
20
20
  IntelligenceService
21
- } from "./chunk-NFZXB5ZV.js";
21
+ } from "./chunk-Q4JRFMCJ.js";
22
22
  import {
23
23
  determineCitationState
24
- } from "./chunk-XR3R5PDK.js";
24
+ } from "./chunk-KJA7V3IT.js";
25
25
  import {
26
26
  apiRoutes,
27
27
  assessConversionTrackingIntegrity
28
- } from "./chunk-TX4HBLFP.js";
29
- import "./chunk-UQABYWAX.js";
30
- import "./chunk-BUED4RWE.js";
28
+ } from "./chunk-UX667IQM.js";
29
+ import "./chunk-LSKAENOY.js";
30
+ import "./chunk-ZTO5KPQB.js";
31
31
  import {
32
32
  adsAdGroups,
33
33
  adsAds,
@@ -103,7 +103,7 @@ import {
103
103
  siteCrawlPages,
104
104
  siteCrawlSnapshots,
105
105
  trafficSources
106
- } from "./chunk-ZYE7D2OC.js";
106
+ } from "./chunk-NCUTFEU4.js";
107
107
  import {
108
108
  AI_ENGINE_DOMAINS,
109
109
  GA_OVERVIEW_HISTORY_DAYS,
@@ -148,7 +148,7 @@ import {
148
148
  roundPreservingTotal,
149
149
  siteAuditPageFactorSchema,
150
150
  wilsonInterval
151
- } from "./chunk-4PRXS5JH.js";
151
+ } from "./chunk-YVYID65D.js";
152
152
  import "./chunk-MLKGABMK.js";
153
153
 
154
154
  // src/demo-server.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -14,7 +14,7 @@ import {
14
14
  CitationStates,
15
15
  DiscoveryPromoteCompetitorSkipReasons,
16
16
  describeError
17
- } from "./chunk-4PRXS5JH.js";
17
+ } from "./chunk-YVYID65D.js";
18
18
  import "./chunk-MLKGABMK.js";
19
19
 
20
20
  // src/commands/discover.ts
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  CliError,
8
8
  EXIT_USER_ERROR
9
9
  } from "./chunk-HGMYEDAQ.js";
10
- import "./chunk-4PRXS5JH.js";
10
+ import "./chunk-YVYID65D.js";
11
11
  import "./chunk-MLKGABMK.js";
12
12
 
13
13
  // src/commands/discover-eval.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  CheckScopes,
15
15
  CheckStatuses
16
- } from "./chunk-4PRXS5JH.js";
16
+ } from "./chunk-YVYID65D.js";
17
17
  import "./chunk-MLKGABMK.js";
18
18
 
19
19
  // src/commands/doctor.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
9
9
  import "./chunk-HGMYEDAQ.js";
10
10
  import {
11
11
  CitationStates
12
- } from "./chunk-4PRXS5JH.js";
12
+ } from "./chunk-YVYID65D.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/evidence.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isEndpointMissing,
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-HGMYEDAQ.js";
10
10
  import {
11
11
  isRedactedNotificationUrl
12
- } from "./chunk-4PRXS5JH.js";
12
+ } from "./chunk-YVYID65D.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/export-cmd.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -26,7 +26,7 @@ import {
26
26
  gaSearchLandingHasSearchData,
27
27
  gaSearchLandingPageLabel,
28
28
  isGaOverviewWindow
29
- } from "./chunk-4PRXS5JH.js";
29
+ } from "./chunk-YVYID65D.js";
30
30
  import "./chunk-MLKGABMK.js";
31
31
 
32
32
  // src/commands/ga.ts
@@ -272,9 +272,13 @@ async function gaSearchLandingPages(project, opts) {
272
272
  } else if (result.totalRows > 0) {
273
273
  console.log(` No landing-page rows at offset ${result.offset} (${result.totalRows} stored).`);
274
274
  }
275
- if (!gaSearchLandingHasSearchData(result.total)) {
275
+ const link = result.searchConsoleLink;
276
+ if (link?.state === "not-linked") {
277
+ console.log(` Search Console not linked: GA4 has no Search Console data for this site, but Search Console recorded ${(link.searchConsoleImpressions ?? 0).toLocaleString("en-US")} impressions in this window.`);
278
+ console.log(" Link the site's Search Console property in GA4 (Admin, Product links, Search Console links).");
279
+ } else if (!gaSearchLandingHasSearchData(result.total)) {
276
280
  console.log(" No landing pages had Google organic search traffic in this window.");
277
- console.log(" If the property should have some, check its Search Console link in GA4 (Admin, Product links, Search Console links).");
281
+ console.log(link?.state === "no-search-data" ? " Search Console also recorded no impressions for these days." : " If the property should have some, check its Search Console link in GA4 (Admin, Product links, Search Console links).");
278
282
  }
279
283
  if (result.rowsCapped && result.reportRowCount !== null) {
280
284
  console.log(` GA4 reported ${result.reportRowCount} rows; the ${result.totalRows} with the most clicks are stored.`);
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat
@@ -11,7 +11,7 @@ import {
11
11
  formatPercent,
12
12
  gbpLocalPostCreateSchema,
13
13
  validationError
14
- } from "./chunk-4PRXS5JH.js";
14
+ } from "./chunk-YVYID65D.js";
15
15
  import "./chunk-MLKGABMK.js";
16
16
 
17
17
  // src/commands/gbp.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -10,7 +10,7 @@ import {
10
10
  requireGscSitemapUrls,
11
11
  resolveDiscoveredGscSitemapUrls,
12
12
  submitGscSitemapBatches
13
- } from "./chunk-2BJDLTDI.js";
13
+ } from "./chunk-VMLCPTRZ.js";
14
14
  import "./chunk-AOJU5LKX.js";
15
15
  import {
16
16
  CliError,
@@ -18,7 +18,7 @@ import {
18
18
  } from "./chunk-HGMYEDAQ.js";
19
19
  import {
20
20
  formatPercent
21
- } from "./chunk-4PRXS5JH.js";
21
+ } from "./chunk-YVYID65D.js";
22
22
  import "./chunk-MLKGABMK.js";
23
23
 
24
24
  // src/commands/google.ts
@@ -12,7 +12,7 @@ import {
12
12
  describeError,
13
13
  formatMicros,
14
14
  formatPercent
15
- } from "./chunk-4PRXS5JH.js";
15
+ } from "./chunk-YVYID65D.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
 
18
18
  // src/commands/google-marketing.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
9
9
  import "./chunk-HGMYEDAQ.js";
10
10
  import {
11
11
  formatPercent
12
- } from "./chunk-4PRXS5JH.js";
12
+ } from "./chunk-YVYID65D.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/health-cmd.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-DYDLK3YY.js";
4
- import "./chunk-Y3VMSYEG.js";
3
+ } from "./chunk-RR7ZDGC7.js";
4
+ import "./chunk-22XKOBJD.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -15,7 +15,7 @@ import {
15
15
  describeError,
16
16
  formatValidationIssues,
17
17
  resultsClearRequestSchema
18
- } from "./chunk-4PRXS5JH.js";
18
+ } from "./chunk-YVYID65D.js";
19
19
  import "./chunk-MLKGABMK.js";
20
20
 
21
21
  // src/commands/history.ts