@canonry/canonry 7.85.0 → 7.86.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 (142) hide show
  1. package/assets/agent-workspace/skills/aero/references/ai-traffic-tracking.md +7 -4
  2. package/assets/agent-workspace/skills/canonry/references/ai-traffic-tracking.md +7 -4
  3. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +3 -1
  4. package/assets/agent-workspace/skills/canonry/references/server-side-traffic.md +5 -3
  5. package/assets/assets/{AgentSetupPage-NdqmQkYa.js → AgentSetupPage-0f7Ca4IZ.js} +4 -4
  6. package/assets/assets/{AuditHistoryPanel-CuqdFCb9.js → AuditHistoryPanel-BAQuFTNl.js} +1 -1
  7. package/assets/assets/{BacklinksPage-CVjZiG1i.js → BacklinksPage-BK2bn9Xg.js} +1 -1
  8. package/assets/assets/{HistoryPage-DRvdgemW.js → HistoryPage-ZBfL9nGw.js} +1 -1
  9. package/assets/assets/{MeasurementPropertyPage-Bc5EpJFV.js → MeasurementPropertyPage-DDSOq4aU.js} +3 -3
  10. package/assets/assets/ProjectPage-8cVgOm5o.js +11 -0
  11. package/assets/assets/{RunsPage-B6_o81G3.js → RunsPage-ke0wMYLg.js} +1 -1
  12. package/assets/assets/{SettingsPage-DjmVapHO.js → SettingsPage-Bbi-sTBk.js} +1 -1
  13. package/assets/assets/{SiteHealthSection-BPPB0D9D.js → SiteHealthSection-eKxTDUE2.js} +2 -2
  14. package/assets/assets/{ToneBadge-DwUBSAjL.js → ToneBadge-WAMyKadz.js} +1 -1
  15. package/assets/assets/{TrafficPage-BvbjxOw3.js → TrafficPage-nXixENx9.js} +1 -1
  16. package/assets/assets/TrafficSourceDetailPage-ir5zJU_l.js +1 -0
  17. package/assets/assets/{account-context-D7M4W4wP.js → account-context-BmN431xn.js} +1 -1
  18. package/assets/assets/agent-trust-copy-zfx8m-cx.js +1 -0
  19. package/assets/assets/{card-DULVRmzI.js → card-DUTMWeHB.js} +1 -1
  20. package/assets/assets/{extract-error-message-B9-6WgLm.js → extract-error-message-BFaIHLqb.js} +1 -1
  21. package/assets/assets/{format-helpers-Cgq0VzXz.js → format-helpers-D1w2yznw.js} +1 -1
  22. package/assets/assets/index-C5r0VqgO.js +60 -0
  23. package/assets/assets/index-DIHdWY7b.css +1 -0
  24. package/assets/assets/{query-client-1Q6EwPba.js → query-client-DrIawr39.js} +1 -1
  25. package/assets/assets/react-query-DQuOVjDi.js +1 -0
  26. package/assets/assets/{react-sigma_core.esm.min-CR09uPhZ.js → react-sigma_core.esm.min-cvMDhRNS.js} +1 -1
  27. package/assets/assets/{service-Bu-7icpb.js → service-CvCKbPnf.js} +1 -1
  28. package/assets/index.html +8 -8
  29. package/dist/{ads-ETZIGLL5.js → ads-7IJTHW6T.js} +3 -3
  30. package/dist/{agent-WG2FUC7C.js → agent-4UC2X7O2.js} +7 -7
  31. package/dist/{agent-ask-775XBFOH.js → agent-ask-SVPU2WQU.js} +3 -3
  32. package/dist/{agent-conversations-AYZ3LQJQ.js → agent-conversations-PJQRY5RX.js} +3 -3
  33. package/dist/{agent-journeys-GWNZG73C.js → agent-journeys-JOD5DQ6G.js} +3 -3
  34. package/dist/{agent-memory-E5MRRS5P.js → agent-memory-KTMZMUYF.js} +3 -3
  35. package/dist/{agent-providers-DEQZWO2M.js → agent-providers-VEBB3WEW.js} +3 -3
  36. package/dist/{agent-transcript-4AKVVHQC.js → agent-transcript-RRZJCMK2.js} +3 -3
  37. package/dist/{analytics-HSLTWKDA.js → analytics-EZV4XJKR.js} +3 -3
  38. package/dist/{apply-4GD7VGG7.js → apply-NP7ORQS4.js} +3 -3
  39. package/dist/{backfill-LNE2BW34.js → backfill-7T6VFPWT.js} +10 -10
  40. package/dist/{backlinks-TGE3DWA2.js → backlinks-KTEJM2IP.js} +3 -3
  41. package/dist/{bing-56GNRC55.js → bing-TC54HJUB.js} +3 -3
  42. package/dist/{bootstrap-42XCWZTS.js → bootstrap-UDSN22NT.js} +10 -10
  43. package/dist/{cdp-UODIMKE3.js → cdp-IZSHF3MS.js} +7 -7
  44. package/dist/{chunk-AICFUZ6X.js → chunk-2J5EUXO2.js} +1 -1
  45. package/dist/{chunk-Z53CKLDS.js → chunk-3K3QBKNC.js} +3 -3
  46. package/dist/{chunk-2X6UAPAC.js → chunk-4EKPEVJ2.js} +5 -5
  47. package/dist/{chunk-D45AMUYA.js → chunk-5KHF5FV5.js} +4 -4
  48. package/dist/{chunk-GR7VVRNN.js → chunk-5WEGX3H7.js} +1 -1
  49. package/dist/{chunk-RCAB7M6A.js → chunk-5ZAQVRFL.js} +2 -2
  50. package/dist/{chunk-Q7354YI3.js → chunk-AZP37FMA.js} +3 -3
  51. package/dist/{chunk-SS33RWKG.js → chunk-BLGYC2K7.js} +1 -1
  52. package/dist/{chunk-X7XKMARG.js → chunk-CBNFWSWU.js} +2 -2
  53. package/dist/{chunk-JVO5GQZH.js → chunk-DU4QEC65.js} +14 -14
  54. package/dist/{chunk-TPUBPXBN.js → chunk-E6IZVSRY.js} +2 -2
  55. package/dist/{chunk-4KK3OTHE.js → chunk-EX6GVZAE.js} +1 -1
  56. package/dist/{chunk-QEATYB7C.js → chunk-F5SQITTJ.js} +1 -1
  57. package/dist/{chunk-5NEZO3SC.js → chunk-GO4RP6XE.js} +3 -3
  58. package/dist/{chunk-2O5XBKEO.js → chunk-HHMOUS26.js} +5 -5
  59. package/dist/{chunk-OS5BVALI.js → chunk-IILPHGRC.js} +2 -2
  60. package/dist/{chunk-6SGHSSWQ.js → chunk-JAK37YKH.js} +2 -2
  61. package/dist/{chunk-PQWZCAVS.js → chunk-KEIKD6JQ.js} +1 -1
  62. package/dist/{chunk-KNKOTLVW.js → chunk-KUVTXIFX.js} +29 -9
  63. package/dist/{chunk-KBLMQDUZ.js → chunk-LJ6VNMCY.js} +7 -7
  64. package/dist/{chunk-2R6WI237.js → chunk-MJE3SGFW.js} +1 -1
  65. package/dist/{chunk-VFSHZHZS.js → chunk-OXI45LZP.js} +2 -2
  66. package/dist/{chunk-TVZMFCX2.js → chunk-RI2ZT3OR.js} +6 -6
  67. package/dist/{chunk-OHDSI5XS.js → chunk-RR76O744.js} +1 -1
  68. package/dist/{chunk-BQTXXXUG.js → chunk-STHWLBYT.js} +1 -1
  69. package/dist/{chunk-L5R5S57T.js → chunk-SUSQEH2D.js} +1 -1
  70. package/dist/{chunk-YDC2V5FQ.js → chunk-TTXBQCE6.js} +21 -21
  71. package/dist/{chunk-DWK6NIJF.js → chunk-U3QNTJBP.js} +1 -1
  72. package/dist/{chunk-UMEQ7EYN.js → chunk-UPFWF6TF.js} +4 -4
  73. package/dist/{chunk-PX2KVGOJ.js → chunk-UTG6UUGK.js} +1 -1
  74. package/dist/{chunk-UMV4HYHD.js → chunk-VBW33U4E.js} +2 -2
  75. package/dist/{chunk-NY252PIY.js → chunk-WVMWY4SE.js} +3 -3
  76. package/dist/{chunk-IOW23XNK.js → chunk-X3EU4UPS.js} +3 -3
  77. package/dist/{chunk-ZXMDIWW6.js → chunk-Z5LJI5XK.js} +4 -4
  78. package/dist/{chunk-C2H5TPKD.js → chunk-ZFL5DOGJ.js} +341 -340
  79. package/dist/{citations-RXBPR5MX.js → citations-TOZK6OFP.js} +3 -3
  80. package/dist/{cli-catalog-QVCJWPCI.js → cli-catalog-LNWBJNOD.js} +3 -3
  81. package/dist/{cli-commands-ZXR4Z2RW.js → cli-commands-3HX4JSDX.js} +7 -7
  82. package/dist/cli.js +13 -13
  83. package/dist/{competitor-MDNNHRSD.js → competitor-54HLL354.js} +3 -3
  84. package/dist/{content-D3JZZQ64.js → content-ZIGSMH5U.js} +3 -3
  85. package/dist/{dashboard-5S2A46GM.js → dashboard-YJH6IQGK.js} +6 -6
  86. package/dist/{demo-DQHWRIKR.js → demo-ZYK5XCP3.js} +1 -1
  87. package/dist/{demo-server-FY2XBSD2.js → demo-server-LZ6MWJ2S.js} +12 -12
  88. package/dist/{discover-NVNWHOTZ.js → discover-22QKOFIM.js} +3 -3
  89. package/dist/{discover-eval-CJB6GYUS.js → discover-eval-6IFCCH2S.js} +3 -3
  90. package/dist/{doctor-DLSKNC4W.js → doctor-WLLBFOJU.js} +3 -3
  91. package/dist/{evidence-QNJULIXM.js → evidence-7VHTWNZW.js} +3 -3
  92. package/dist/{export-cmd-Z2YG2WLK.js → export-cmd-5RZ3QDFH.js} +3 -3
  93. package/dist/{ga-RSNHBP2B.js → ga-LPI3CWY4.js} +3 -3
  94. package/dist/{gbp-ZEV62LSZ.js → gbp-YBOMWR75.js} +3 -3
  95. package/dist/{google-RZHEIKW5.js → google-N42X5FBH.js} +4 -4
  96. package/dist/{google-marketing-DYQXPTD3.js → google-marketing-SO4B7Z7L.js} +1 -1
  97. package/dist/{health-cmd-6ATPYUYG.js → health-cmd-W7RQWCEB.js} +3 -3
  98. package/dist/{history-KLX6XRY4.js → history-SDRTOIDZ.js} +3 -3
  99. package/dist/index.d.ts +90 -90
  100. package/dist/index.js +25 -25
  101. package/dist/{init-5BALV6SU.js → init-DPXOGP3P.js} +12 -12
  102. package/dist/{insights-ARCEFFK5.js → insights-636LLPVG.js} +3 -3
  103. package/dist/intelligence-service-JRVESWU2.js +16 -0
  104. package/dist/{journeys-WVRQRZQJ.js → journeys-NIXKVYA4.js} +21 -12
  105. package/dist/{keys-5KAJFRZZ.js → keys-U2JR56TX.js} +3 -3
  106. package/dist/{keyword-PTUH3TFD.js → keyword-GLRK2ZHR.js} +3 -3
  107. package/dist/{logs-NM7ACXGQ.js → logs-ENACGWGS.js} +3 -3
  108. package/dist/{mcp-ALRQXYL3.js → mcp-DST2XTP2.js} +4 -4
  109. package/dist/mcp.js +9 -9
  110. package/dist/{measurement-plan-T52JHK2J.js → measurement-plan-Y3SA4ZQC.js} +5 -5
  111. package/dist/{notify-MJBMRDXD.js → notify-ZYXJQUHU.js} +3 -3
  112. package/dist/{organic-evidence-ZUCQFWD5.js → organic-evidence-NSX7VCNW.js} +3 -3
  113. package/dist/{overview-74IHPU2A.js → overview-UO6Z64IT.js} +4 -4
  114. package/dist/{project-DKQOPMH6.js → project-BHXUPHQA.js} +3 -3
  115. package/dist/{query-YDJ5T46L.js → query-GDRAKEN5.js} +3 -3
  116. package/dist/{research-5DU6DFZW.js → research-YIOQ7WVP.js} +3 -3
  117. package/dist/{results-export-EDVVXKVW.js → results-export-KXMCAEHJ.js} +3 -3
  118. package/dist/{run-HRHGSIYE.js → run-6PN5GOVE.js} +4 -4
  119. package/dist/{schedule-GZVKQGMP.js → schedule-5B67GLAM.js} +3 -3
  120. package/dist/{search-M37GRKVC.js → search-BMVPCN2V.js} +3 -3
  121. package/dist/{serve-DW6PPZPJ.js → serve-HB7DI7OC.js} +26 -26
  122. package/dist/{session-H427H2SK.js → session-3RTDTW6Z.js} +13 -13
  123. package/dist/{settings-WGS7GP7C.js → settings-FJEYHYRH.js} +3 -3
  124. package/dist/{skills-CDDUPMAU.js → skills-6E7IUQUO.js} +2 -2
  125. package/dist/{snapshot-5MAK7PWE.js → snapshot-BJQ7WPJZ.js} +3 -3
  126. package/dist/{src-FEV4KYXN.js → src-QU75IDHI.js} +2 -2
  127. package/dist/{status-EHFOYTXQ.js → status-3GHFPN54.js} +4 -4
  128. package/dist/{technical-aeo-KVY4RQWT.js → technical-aeo-76JRC66W.js} +3 -3
  129. package/dist/{telemetry-7XRRIHVC.js → telemetry-KB73JBDZ.js} +4 -4
  130. package/dist/{tools-EHONHGB6.js → tools-6VWDHNPZ.js} +11 -11
  131. package/dist/{traffic-TBR6GOWN.js → traffic-XB7MZJ23.js} +5 -5
  132. package/dist/{users-YQS4X47Q.js → users-HYBG3J72.js} +3 -3
  133. package/dist/{visibility-stats-JXIOSJXC.js → visibility-stats-ZDB2LMRJ.js} +3 -3
  134. package/dist/{wordpress-HVOLEPQY.js → wordpress-SXKR6XNT.js} +3 -3
  135. package/package.json +1 -1
  136. package/assets/assets/ProjectPage-CGGBSiK7.js +0 -11
  137. package/assets/assets/TrafficSourceDetailPage-BGJwxS_Q.js +0 -1
  138. package/assets/assets/agent-trust-copy-WXXeDvDs.js +0 -1
  139. package/assets/assets/index-A-4JN4Pv.js +0 -60
  140. package/assets/assets/index-BnmWwrZA.css +0 -1
  141. package/assets/assets/react-query-D0OiMBt3.js +0 -1
  142. package/dist/intelligence-service-YJFZ6IBI.js +0 -16
package/dist/index.js CHANGED
@@ -3,39 +3,39 @@ import {
3
3
  createGoogleMarketingCredentialStore,
4
4
  createGoogleMarketingRuntime,
5
5
  createServer
6
- } from "./chunk-YDC2V5FQ.js";
7
- import "./chunk-AICFUZ6X.js";
8
- import "./chunk-TVZMFCX2.js";
9
- import "./chunk-UMEQ7EYN.js";
6
+ } from "./chunk-TTXBQCE6.js";
7
+ import "./chunk-2J5EUXO2.js";
8
+ import "./chunk-RI2ZT3OR.js";
9
+ import "./chunk-UPFWF6TF.js";
10
10
  import "./chunk-ELCLGWUT.js";
11
11
  import "./chunk-XEBKF4N5.js";
12
- import "./chunk-BQTXXXUG.js";
13
- import "./chunk-2X6UAPAC.js";
14
- import "./chunk-ZXMDIWW6.js";
12
+ import "./chunk-STHWLBYT.js";
13
+ import "./chunk-4EKPEVJ2.js";
14
+ import "./chunk-Z5LJI5XK.js";
15
15
  import "./chunk-TSENU4GG.js";
16
- import "./chunk-PQWZCAVS.js";
17
- import "./chunk-X7XKMARG.js";
18
- import "./chunk-NY252PIY.js";
16
+ import "./chunk-KEIKD6JQ.js";
17
+ import "./chunk-CBNFWSWU.js";
18
+ import "./chunk-WVMWY4SE.js";
19
19
  import "./chunk-MTW37GXF.js";
20
- import "./chunk-UMV4HYHD.js";
20
+ import "./chunk-VBW33U4E.js";
21
21
  import {
22
22
  loadConfig
23
- } from "./chunk-DWK6NIJF.js";
24
- import "./chunk-GR7VVRNN.js";
25
- import "./chunk-RCAB7M6A.js";
26
- import "./chunk-Q7354YI3.js";
27
- import "./chunk-OHDSI5XS.js";
28
- import "./chunk-QEATYB7C.js";
23
+ } from "./chunk-U3QNTJBP.js";
24
+ import "./chunk-5WEGX3H7.js";
25
+ import "./chunk-5ZAQVRFL.js";
26
+ import "./chunk-AZP37FMA.js";
27
+ import "./chunk-RR76O744.js";
28
+ import "./chunk-F5SQITTJ.js";
29
29
  import "./chunk-AOJU5LKX.js";
30
30
  import "./chunk-HGMYEDAQ.js";
31
- import "./chunk-2O5XBKEO.js";
32
- import "./chunk-SS33RWKG.js";
33
- import "./chunk-6SGHSSWQ.js";
34
- import "./chunk-JVO5GQZH.js";
35
- import "./chunk-2R6WI237.js";
36
- import "./chunk-PX2KVGOJ.js";
37
- import "./chunk-L5R5S57T.js";
38
- import "./chunk-KNKOTLVW.js";
31
+ import "./chunk-HHMOUS26.js";
32
+ import "./chunk-BLGYC2K7.js";
33
+ import "./chunk-JAK37YKH.js";
34
+ import "./chunk-DU4QEC65.js";
35
+ import "./chunk-MJE3SGFW.js";
36
+ import "./chunk-UTG6UUGK.js";
37
+ import "./chunk-SUSQEH2D.js";
38
+ import "./chunk-KUVTXIFX.js";
39
39
  import "./chunk-MLKGABMK.js";
40
40
  export {
41
41
  GoogleMarketingRuntimeError,
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  installMcp
3
- } from "./chunk-VFSHZHZS.js";
3
+ } from "./chunk-OXI45LZP.js";
4
4
  import {
5
5
  trackCliConnection
6
- } from "./chunk-TPUBPXBN.js";
6
+ } from "./chunk-E6IZVSRY.js";
7
7
  import {
8
8
  buildSetupState,
9
9
  queueServeHandoff
10
- } from "./chunk-D45AMUYA.js";
10
+ } from "./chunk-5KHF5FV5.js";
11
11
  import "./chunk-VJWDBFSL.js";
12
- import "./chunk-ZXMDIWW6.js";
13
- import "./chunk-PQWZCAVS.js";
12
+ import "./chunk-Z5LJI5XK.js";
13
+ import "./chunk-KEIKD6JQ.js";
14
14
  import {
15
15
  cliRuntimeContext,
16
16
  installAttribution,
@@ -18,8 +18,8 @@ import {
18
18
  recordInstallRef,
19
19
  showFirstRunNotice,
20
20
  trackEvent
21
- } from "./chunk-X7XKMARG.js";
22
- import "./chunk-UMV4HYHD.js";
21
+ } from "./chunk-CBNFWSWU.js";
22
+ import "./chunk-VBW33U4E.js";
23
23
  import {
24
24
  configExists,
25
25
  getBootstrapEnv,
@@ -27,24 +27,24 @@ import {
27
27
  getConfigPath,
28
28
  saveConfig,
29
29
  withBootstrapProviderDefaults
30
- } from "./chunk-DWK6NIJF.js";
30
+ } from "./chunk-U3QNTJBP.js";
31
31
  import {
32
32
  installSkills
33
- } from "./chunk-GR7VVRNN.js";
33
+ } from "./chunk-5WEGX3H7.js";
34
34
  import "./chunk-AOJU5LKX.js";
35
35
  import {
36
36
  CliError,
37
37
  isMachineFormat
38
38
  } from "./chunk-HGMYEDAQ.js";
39
- import "./chunk-PX2KVGOJ.js";
39
+ import "./chunk-UTG6UUGK.js";
40
40
  import {
41
41
  apiKeys,
42
42
  createClient,
43
43
  migrate
44
- } from "./chunk-L5R5S57T.js";
44
+ } from "./chunk-SUSQEH2D.js";
45
45
  import {
46
46
  describeError
47
- } from "./chunk-KNKOTLVW.js";
47
+ } from "./chunk-KUVTXIFX.js";
48
48
  import "./chunk-MLKGABMK.js";
49
49
 
50
50
  // src/commands/init.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
9
9
  import {
10
10
  isMachineFormat
11
11
  } from "./chunk-HGMYEDAQ.js";
12
- import "./chunk-KNKOTLVW.js";
12
+ import "./chunk-KUVTXIFX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/insights.ts
@@ -0,0 +1,16 @@
1
+ import {
2
+ HISTORY_WINDOW_RUNS,
3
+ IntelligenceService
4
+ } from "./chunk-HHMOUS26.js";
5
+ import "./chunk-BLGYC2K7.js";
6
+ import "./chunk-JAK37YKH.js";
7
+ import "./chunk-DU4QEC65.js";
8
+ import "./chunk-MJE3SGFW.js";
9
+ import "./chunk-UTG6UUGK.js";
10
+ import "./chunk-SUSQEH2D.js";
11
+ import "./chunk-KUVTXIFX.js";
12
+ import "./chunk-MLKGABMK.js";
13
+ export {
14
+ HISTORY_WINDOW_RUNS,
15
+ IntelligenceService
16
+ };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -13,12 +13,13 @@ import {
13
13
  import {
14
14
  JOURNEY_MAX_REQUESTS_PER_VISITOR_DAY,
15
15
  JourneyEventFilters,
16
+ formatDayDuration,
16
17
  formatPercent,
17
18
  formatValidationIssues,
18
19
  journeyDetailQuerySchema,
19
20
  journeySummaryQuerySchema,
20
21
  journeysQuerySchema
21
- } from "./chunk-KNKOTLVW.js";
22
+ } from "./chunk-KUVTXIFX.js";
22
23
  import "./chunk-MLKGABMK.js";
23
24
 
24
25
  // src/commands/journeys.ts
@@ -41,7 +42,7 @@ function entryLabel(visit) {
41
42
  function printPartialSources(sources) {
42
43
  for (const source of sources) console.log(`Partial source ${source.sourceId} (${source.sourceType}): ${source.reason}`);
43
44
  }
44
- var UA_NOTE = "Visitors keyed by user agent only (sources without an IP, such as Vercel) can merge different people on the same device and browser version.";
45
+ var UA_NOTE = "Visitors keyed by user agent only (sources without an IP, such as Vercel) can merge different people on the same device and browser version, so visitor and return figures leave them out.";
45
46
  async function journeysSummary(project, opts) {
46
47
  const query = parse(journeySummaryQuerySchema, compact({ since: opts.since, until: opts.until }));
47
48
  const result = await createApiClient().journeysSummary(project, query);
@@ -50,14 +51,21 @@ async function journeysSummary(project, opts) {
50
51
  return;
51
52
  }
52
53
  console.log(`AI visitor journeys for "${project}", first AI visit ${day(result.windowStart)} to ${day(result.windowEnd)}`);
53
- console.log(`AI visitors: ${result.aiVisitors} (IP and user agent ${result.keyBasis.ipUa}, user agent only ${result.keyBasis.ua})`);
54
- console.log(`AI visits: ${result.aiVisits}`);
55
- const rate = formatPercent(result.returnRate);
56
- const median = result.medianDaysToReturn === null ? "" : `, median ${result.medianDaysToReturn.toFixed(1)} days to return`;
57
- console.log(`Came back later: ${result.returningVisitors} (${rate})${median}`);
58
- const via = Object.entries(result.returnedVia).filter(([, n]) => n > 0).sort((a, b) => b[1] - a[1]);
59
- if (via.length > 0) console.log(`Later visits by entry: ${via.map(([cls, n]) => `${cls} ${n}`).join(", ")}`);
60
- for (const row of result.byEngine) console.log(` ${row.engine}: ${row.visitors} visitors, ${row.returningVisitors} came back`);
54
+ if (result.aiVisitors === null || result.returningVisitors === null || result.returnedVia === null) {
55
+ console.log(`AI visitors: not measurable (all ${result.keyBasis.ua} are matched by user agent only)`);
56
+ console.log(`AI visits: ${result.aiVisits}`);
57
+ console.log("Came back later: not measurable");
58
+ } else {
59
+ const uncounted = result.keyBasis.ua > 0 ? `, ${result.keyBasis.ua} more matched by user agent only are not counted` : "";
60
+ console.log(`AI visitors: ${result.aiVisitors} (matched by IP and user agent${uncounted})`);
61
+ console.log(`AI visits: ${result.aiVisits}`);
62
+ const rate = formatPercent(result.returnRate);
63
+ const median = result.medianDaysToReturn === null ? "" : `, median ${formatDayDuration(result.medianDaysToReturn)} to return`;
64
+ console.log(`Came back later: ${result.returningVisitors} (${rate})${median}`);
65
+ const via = Object.entries(result.returnedVia).filter(([, n]) => n > 0).sort((a, b) => b[1] - a[1]);
66
+ if (via.length > 0) console.log(`Later visits by entry: ${via.map(([cls, n]) => `${cls} ${n}`).join(", ")}`);
67
+ for (const row of result.byEngine) console.log(` ${row.engine}: ${row.visitors} visitors, ${row.returningVisitors} came back`);
68
+ }
61
69
  console.log(`Visits are kept for ${result.lookbackDays} days after each AI visit. ${result.keyBasis.ua > 0 ? UA_NOTE : ""}`.trim());
62
70
  printPartialSources(result.partialSources);
63
71
  }
@@ -67,6 +75,7 @@ async function journeysList(project, opts) {
67
75
  until: opts.until,
68
76
  engine: opts.engine,
69
77
  returned: opts.returned === void 0 ? void 0 : String(opts.returned),
78
+ keyBasis: opts.keyBasis,
70
79
  limit: opts.limit,
71
80
  offset: opts.offset
72
81
  }));
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  READ_ONLY_SCOPE,
15
15
  formatIsoDate
16
- } from "./chunk-KNKOTLVW.js";
16
+ } from "./chunk-KUVTXIFX.js";
17
17
  import "./chunk-MLKGABMK.js";
18
18
 
19
19
  // src/commands/keys.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -10,7 +10,7 @@ import {
10
10
  CliError,
11
11
  isMachineFormat
12
12
  } from "./chunk-HGMYEDAQ.js";
13
- import "./chunk-KNKOTLVW.js";
13
+ import "./chunk-KUVTXIFX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // src/commands/keyword.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat,
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-HGMYEDAQ.js";
10
10
  import {
11
11
  logQuerySchema
12
- } from "./chunk-KNKOTLVW.js";
12
+ } from "./chunk-KUVTXIFX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/logs.ts
@@ -3,13 +3,13 @@ import {
3
3
  printMcpConfig,
4
4
  renderClientSnippet,
5
5
  showMcpProfile
6
- } from "./chunk-VFSHZHZS.js";
6
+ } from "./chunk-OXI45LZP.js";
7
7
  import "./chunk-VJWDBFSL.js";
8
- import "./chunk-UMV4HYHD.js";
9
- import "./chunk-DWK6NIJF.js";
8
+ import "./chunk-VBW33U4E.js";
9
+ import "./chunk-U3QNTJBP.js";
10
10
  import "./chunk-AOJU5LKX.js";
11
11
  import "./chunk-HGMYEDAQ.js";
12
- import "./chunk-KNKOTLVW.js";
12
+ import "./chunk-KUVTXIFX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
  export {
15
15
  installMcp,
package/dist/mcp.js CHANGED
@@ -1,25 +1,25 @@
1
1
  import {
2
2
  autoSyncSkills
3
- } from "./chunk-IOW23XNK.js";
3
+ } from "./chunk-X3EU4UPS.js";
4
4
  import {
5
5
  createCanonryMcpServer
6
- } from "./chunk-NY252PIY.js";
6
+ } from "./chunk-WVMWY4SE.js";
7
7
  import "./chunk-MTW37GXF.js";
8
8
  import {
9
9
  createApiClient
10
- } from "./chunk-UMV4HYHD.js";
11
- import "./chunk-DWK6NIJF.js";
12
- import "./chunk-GR7VVRNN.js";
13
- import "./chunk-Q7354YI3.js";
14
- import "./chunk-OHDSI5XS.js";
15
- import "./chunk-QEATYB7C.js";
10
+ } from "./chunk-VBW33U4E.js";
11
+ import "./chunk-U3QNTJBP.js";
12
+ import "./chunk-5WEGX3H7.js";
13
+ import "./chunk-AZP37FMA.js";
14
+ import "./chunk-RR76O744.js";
15
+ import "./chunk-F5SQITTJ.js";
16
16
  import "./chunk-AOJU5LKX.js";
17
17
  import "./chunk-HGMYEDAQ.js";
18
18
  import {
19
19
  describeError,
20
20
  isReadOnlyKey,
21
21
  updateCheckEnvOptOut
22
- } from "./chunk-KNKOTLVW.js";
22
+ } from "./chunk-KUVTXIFX.js";
23
23
  import "./chunk-MLKGABMK.js";
24
24
 
25
25
  // src/mcp/cli.ts
@@ -14,14 +14,14 @@ import {
14
14
  showMeasurementProperty,
15
15
  showMeasurementPropertyEvidence,
16
16
  showMeasurementReport
17
- } from "./chunk-Z53CKLDS.js";
18
- import "./chunk-UMV4HYHD.js";
19
- import "./chunk-DWK6NIJF.js";
17
+ } from "./chunk-3K3QBKNC.js";
18
+ import "./chunk-VBW33U4E.js";
19
+ import "./chunk-U3QNTJBP.js";
20
20
  import "./chunk-Z7IUAJOF.js";
21
- import "./chunk-QEATYB7C.js";
21
+ import "./chunk-F5SQITTJ.js";
22
22
  import "./chunk-AOJU5LKX.js";
23
23
  import "./chunk-HGMYEDAQ.js";
24
- import "./chunk-KNKOTLVW.js";
24
+ import "./chunk-KUVTXIFX.js";
25
25
  import "./chunk-MLKGABMK.js";
26
26
  export {
27
27
  ADVANCED_MEASUREMENT_OPERATIONS,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-HGMYEDAQ.js";
13
13
  import {
14
14
  notificationEventSchema
15
- } from "./chunk-KNKOTLVW.js";
15
+ } from "./chunk-KUVTXIFX.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
 
18
18
  // src/commands/notify.ts
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat
8
8
  } from "./chunk-HGMYEDAQ.js";
9
- import "./chunk-KNKOTLVW.js";
9
+ import "./chunk-KUVTXIFX.js";
10
10
  import "./chunk-MLKGABMK.js";
11
11
 
12
12
  // src/commands/organic-evidence.ts
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  runAdmissionLines
3
- } from "./chunk-OS5BVALI.js";
3
+ } from "./chunk-IILPHGRC.js";
4
4
  import {
5
5
  createApiClient
6
- } from "./chunk-UMV4HYHD.js";
7
- import "./chunk-DWK6NIJF.js";
6
+ } from "./chunk-VBW33U4E.js";
7
+ import "./chunk-U3QNTJBP.js";
8
8
  import "./chunk-Z7IUAJOF.js";
9
9
  import "./chunk-AOJU5LKX.js";
10
10
  import {
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-HGMYEDAQ.js";
13
13
  import {
14
14
  formatPercent
15
- } from "./chunk-KNKOTLVW.js";
15
+ } from "./chunk-KUVTXIFX.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
 
18
18
  // src/commands/overview.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -24,7 +24,7 @@ import {
24
24
  normalizeProjectDomain,
25
25
  resolveNegativeReviewMaxStars,
26
26
  resolveProjectQualifiedAliases
27
- } from "./chunk-KNKOTLVW.js";
27
+ } from "./chunk-KUVTXIFX.js";
28
28
  import "./chunk-MLKGABMK.js";
29
29
 
30
30
  // src/commands/project.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-HGMYEDAQ.js";
13
13
  import {
14
14
  reportedQueryClasses
15
- } from "./chunk-KNKOTLVW.js";
15
+ } from "./chunk-KUVTXIFX.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
 
18
18
  // src/commands/query.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -18,7 +18,7 @@ import {
18
18
  answerCompletionLabel,
19
19
  answerCostBasisLabel,
20
20
  researchBatchCreateSchema
21
- } from "./chunk-KNKOTLVW.js";
21
+ } from "./chunk-KUVTXIFX.js";
22
22
  import "./chunk-MLKGABMK.js";
23
23
 
24
24
  // src/commands/research.ts
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import "./chunk-HGMYEDAQ.js";
7
- import "./chunk-KNKOTLVW.js";
7
+ import "./chunk-KUVTXIFX.js";
8
8
  import "./chunk-MLKGABMK.js";
9
9
 
10
10
  // src/commands/results-export.ts
@@ -9,13 +9,13 @@ import {
9
9
  showRunCompleteness,
10
10
  triggerRun,
11
11
  triggerRunAll
12
- } from "./chunk-OS5BVALI.js";
13
- import "./chunk-UMV4HYHD.js";
14
- import "./chunk-DWK6NIJF.js";
12
+ } from "./chunk-IILPHGRC.js";
13
+ import "./chunk-VBW33U4E.js";
14
+ import "./chunk-U3QNTJBP.js";
15
15
  import "./chunk-Z7IUAJOF.js";
16
16
  import "./chunk-AOJU5LKX.js";
17
17
  import "./chunk-HGMYEDAQ.js";
18
- import "./chunk-KNKOTLVW.js";
18
+ import "./chunk-KUVTXIFX.js";
19
19
  import "./chunk-MLKGABMK.js";
20
20
  export {
21
21
  cancelRun,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
9
9
  import {
10
10
  isMachineFormat
11
11
  } from "./chunk-HGMYEDAQ.js";
12
- import "./chunk-KNKOTLVW.js";
12
+ import "./chunk-KUVTXIFX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/schedule.ts
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-UMV4HYHD.js";
4
- import "./chunk-DWK6NIJF.js";
3
+ } from "./chunk-VBW33U4E.js";
4
+ import "./chunk-U3QNTJBP.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat
8
8
  } from "./chunk-HGMYEDAQ.js";
9
- import "./chunk-KNKOTLVW.js";
9
+ import "./chunk-KUVTXIFX.js";
10
10
  import "./chunk-MLKGABMK.js";
11
11
 
12
12
  // src/commands/search.ts