@canonry/canonry 7.92.0 → 7.93.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 (138) hide show
  1. package/assets/agent-workspace/skills/canonry/references/server-side-traffic.md +2 -0
  2. package/assets/assets/{AgentSetupPage-Dr5ZoPYi.js → AgentSetupPage-D53_2n_4.js} +1 -1
  3. package/assets/assets/{AuditHistoryPanel-Dc8pGeZT.js → AuditHistoryPanel-BFRuRv_c.js} +1 -1
  4. package/assets/assets/{BacklinksPage-zEaP7G6s.js → BacklinksPage-DpSbhjVf.js} +1 -1
  5. package/assets/assets/{HistoryPage-9OaxBSY8.js → HistoryPage-1z0GDe6W.js} +1 -1
  6. package/assets/assets/{MeasurementPropertyPage-k_mqkoWn.js → MeasurementPropertyPage-Dzjx179C.js} +1 -1
  7. package/assets/assets/{ProjectPage-vgHaFT7S.js → ProjectPage-BgPs3YQG.js} +1 -1
  8. package/assets/assets/{RunsPage-CXkefezd.js → RunsPage-DpsqauyB.js} +1 -1
  9. package/assets/assets/{SettingsPage-C8FUNUN5.js → SettingsPage-ChIbt7x6.js} +1 -1
  10. package/assets/assets/{SiteHealthSection-C94uYTE3.js → SiteHealthSection-B-79VmOp.js} +2 -2
  11. package/assets/assets/{ToneBadge-COrS2zpP.js → ToneBadge-Cx8uzsd6.js} +1 -1
  12. package/assets/assets/{TrafficPage-KlGx3-bc.js → TrafficPage-yoq0n5vi.js} +1 -1
  13. package/assets/assets/TrafficSourceDetailPage-eCf7k39J.js +1 -0
  14. package/assets/assets/{account-context-F2VRKRtu.js → account-context-vYgW6LGe.js} +1 -1
  15. package/assets/assets/{agent-trust-copy-Hb775a57.js → agent-trust-copy-CJ7pZlY5.js} +1 -1
  16. package/assets/assets/{card-P1VA-JnV.js → card-CArOADSj.js} +1 -1
  17. package/assets/assets/{format-helpers-COfTmLRL.js → format-helpers-kCHfk00b.js} +1 -1
  18. package/assets/assets/{index-DHrWeA6k.js → index-9HU3ZsRh.js} +4 -4
  19. package/assets/assets/index-DsdpvA7m.css +1 -0
  20. package/assets/assets/{query-client-BHtq57Sw.js → query-client-DWFpwopf.js} +1 -1
  21. package/assets/assets/{react-query-IhpEAOba.js → react-query-DdeD3n1W.js} +1 -1
  22. package/assets/assets/{react-sigma_core.esm.min-B4NX5_aX.js → react-sigma_core.esm.min-CaW_CBlP.js} +1 -1
  23. package/assets/assets/server-traffic-B1Fb2oFZ.js +1 -0
  24. package/assets/assets/{service-m9l8my0x.js → service-Cu6wI40I.js} +1 -1
  25. package/assets/index.html +8 -8
  26. package/dist/{ads-LRHVFP2J.js → ads-X3VXFPB7.js} +3 -3
  27. package/dist/{agent-P7HWL7VX.js → agent-VVPPGM2P.js} +7 -7
  28. package/dist/{agent-ask-S374MIJS.js → agent-ask-FJVCKO3R.js} +3 -3
  29. package/dist/{agent-conversations-3SSKVUYG.js → agent-conversations-5YXYDZEK.js} +3 -3
  30. package/dist/{agent-journeys-ZEO7Z4QR.js → agent-journeys-DBMYKLJX.js} +3 -3
  31. package/dist/{agent-memory-E5YVW5WY.js → agent-memory-7HOF4LNF.js} +3 -3
  32. package/dist/{agent-providers-BWWB42XJ.js → agent-providers-AO25NSCX.js} +3 -3
  33. package/dist/{agent-transcript-YG7TTHWS.js → agent-transcript-IRZ2QDU7.js} +3 -3
  34. package/dist/{analytics-AIKX4BUM.js → analytics-RH5NXDQX.js} +3 -3
  35. package/dist/{apply-5MPSMIKM.js → apply-XNTW4GYA.js} +3 -3
  36. package/dist/{backfill-BUTFX4KY.js → backfill-O6BON2NA.js} +10 -10
  37. package/dist/{backlinks-L6BYIJIK.js → backlinks-VHK5TJU4.js} +3 -3
  38. package/dist/{bing-E4ZSEVQV.js → bing-A4SQ5MIN.js} +3 -3
  39. package/dist/{bootstrap-V7OE6XXB.js → bootstrap-I2NLTHBM.js} +10 -10
  40. package/dist/{cdp-LWNX6UZF.js → cdp-LAD7DM6U.js} +7 -7
  41. package/dist/{chunk-7PKMRO33.js → chunk-2OJJPSFS.js} +4 -4
  42. package/dist/{chunk-EWZOL56J.js → chunk-2ORBI7PS.js} +3 -3
  43. package/dist/{chunk-QER7MSUH.js → chunk-3SVI6OY3.js} +7 -7
  44. package/dist/{chunk-4HLR3DRQ.js → chunk-4CPCYR5M.js} +1 -1
  45. package/dist/{chunk-UMTYAPCQ.js → chunk-4UA2Y24K.js} +6 -5
  46. package/dist/{chunk-4QYGB5IC.js → chunk-5LLEZ6YL.js} +1 -1
  47. package/dist/{chunk-76KBMLPR.js → chunk-5X6CWQ6P.js} +1 -1
  48. package/dist/{chunk-WTZZOUOJ.js → chunk-67WZEUEE.js} +5 -5
  49. package/dist/{chunk-ZTCQVHQV.js → chunk-7BEQY4YS.js} +2 -2
  50. package/dist/{chunk-N2EWSWZD.js → chunk-7RWVMCMK.js} +1 -1
  51. package/dist/{chunk-AUC47DFW.js → chunk-AAUJZ43Q.js} +1 -1
  52. package/dist/{chunk-BTYOU24P.js → chunk-BOUEM6D6.js} +2 -2
  53. package/dist/{chunk-ZPVJ5PVB.js → chunk-CM3BXAMM.js} +2 -2
  54. package/dist/{chunk-3WWSOWXP.js → chunk-CWEEHODU.js} +2 -2
  55. package/dist/{chunk-FYYOX7UY.js → chunk-GO5OUMY5.js} +13 -1
  56. package/dist/{chunk-7534NXSP.js → chunk-GS3KXIFK.js} +1 -1
  57. package/dist/{chunk-H3PWMM4K.js → chunk-HE4ZCVSF.js} +1 -1
  58. package/dist/{chunk-P6ZDIVFZ.js → chunk-IFVVXGLK.js} +1 -1
  59. package/dist/{chunk-K7ZG6K7J.js → chunk-J6QOUWDQ.js} +1 -1
  60. package/dist/{chunk-QWEAORJG.js → chunk-LWVLQCQH.js} +28 -24
  61. package/dist/{chunk-YX33HYHZ.js → chunk-N6CIAFEO.js} +358 -358
  62. package/dist/{chunk-TY5YTNLU.js → chunk-OLEMJTEJ.js} +2 -2
  63. package/dist/{chunk-BZGAMJG2.js → chunk-ON4G7RCY.js} +5 -5
  64. package/dist/{chunk-CIP3CE2C.js → chunk-QBMMHMDZ.js} +3 -3
  65. package/dist/{chunk-DEFHTBJV.js → chunk-QXT6QVBE.js} +1 -1
  66. package/dist/{chunk-O7D7KV75.js → chunk-SNQVHD2O.js} +3 -3
  67. package/dist/{chunk-GIF3HZKN.js → chunk-SOJIEKH6.js} +70 -22
  68. package/dist/{chunk-WONUYAKB.js → chunk-U3DFWCTU.js} +4 -4
  69. package/dist/{chunk-JZVTSC2V.js → chunk-U3KBGIJ6.js} +2 -2
  70. package/dist/{chunk-GNHXSSQM.js → chunk-UPUJSQ2U.js} +2 -2
  71. package/dist/{chunk-XYQMPYWE.js → chunk-VFYZVQVX.js} +1 -1
  72. package/dist/{chunk-T5DH6FEH.js → chunk-VNPYFXO5.js} +1 -1
  73. package/dist/{chunk-D2RMGUAK.js → chunk-VYZIXIDN.js} +6 -6
  74. package/dist/{chunk-73PWU5XA.js → chunk-WCUXKDJZ.js} +4 -4
  75. package/dist/{chunk-U3T37P7H.js → chunk-YUHP5IUB.js} +3 -3
  76. package/dist/{citations-BYSB6NON.js → citations-D2ZLKEAZ.js} +3 -3
  77. package/dist/{cli-catalog-CFCLMVSK.js → cli-catalog-ZJX65B35.js} +3 -3
  78. package/dist/{cli-commands-OPH4K73Q.js → cli-commands-BSX2GGJL.js} +7 -7
  79. package/dist/cli.js +13 -13
  80. package/dist/{competitor-DUYU7EL7.js → competitor-GMBE6HDJ.js} +3 -3
  81. package/dist/{content-OGURKOCE.js → content-V7VKNFRA.js} +3 -3
  82. package/dist/{dashboard-QX4IBLGW.js → dashboard-DOIM7F3F.js} +6 -6
  83. package/dist/{demo-SZ5CPFPS.js → demo-TKNEM6WC.js} +1 -1
  84. package/dist/{demo-server-JIEIMLLU.js → demo-server-K6LAEKGV.js} +12 -12
  85. package/dist/{discover-SHUCBUDJ.js → discover-TALBBFX7.js} +3 -3
  86. package/dist/{discover-eval-3ZTYLTGU.js → discover-eval-2R3F3C7O.js} +3 -3
  87. package/dist/{doctor-FRSV5GAR.js → doctor-UW7QBZR3.js} +3 -3
  88. package/dist/{evidence-7UJHNILW.js → evidence-CMXDXINS.js} +3 -3
  89. package/dist/{export-cmd-2DAWSD52.js → export-cmd-HO6K6ZDO.js} +3 -3
  90. package/dist/{ga-K2EVI3KO.js → ga-VSS5Z44P.js} +3 -3
  91. package/dist/{gbp-NXFINC7N.js → gbp-RYMAOVON.js} +3 -3
  92. package/dist/{google-J4T52EIG.js → google-RZQSM3VZ.js} +4 -4
  93. package/dist/{google-marketing-PZGKZPEB.js → google-marketing-ULMGHDFF.js} +1 -1
  94. package/dist/{health-cmd-5IHX5GRQ.js → health-cmd-5AJLSCWH.js} +3 -3
  95. package/dist/{history-IVO5IVH2.js → history-ZEWDWGKK.js} +3 -3
  96. package/dist/index.d.ts +88 -88
  97. package/dist/index.js +25 -25
  98. package/dist/{init-EMXK7MX6.js → init-NAMFIDDT.js} +12 -12
  99. package/dist/{insights-SPA2BVMV.js → insights-F747HGKV.js} +3 -3
  100. package/dist/intelligence-service-7FVMY2WA.js +16 -0
  101. package/dist/{journeys-7FAHZRGP.js → journeys-IN6PKYC6.js} +3 -3
  102. package/dist/{keys-PPBHRYPZ.js → keys-JPOCEVCO.js} +3 -3
  103. package/dist/{keyword-C4ULYIWF.js → keyword-P6EYHLKS.js} +3 -3
  104. package/dist/{logs-X7NQN4UT.js → logs-3WC6OWDD.js} +3 -3
  105. package/dist/{mcp-ERMFW6WJ.js → mcp-LU6BKIGI.js} +4 -4
  106. package/dist/mcp.js +9 -9
  107. package/dist/{measurement-plan-7IPWYNIC.js → measurement-plan-G4E42X4M.js} +5 -5
  108. package/dist/{notify-AC4ZHLUK.js → notify-ADPO6H5M.js} +3 -3
  109. package/dist/{organic-evidence-GDDMNJHN.js → organic-evidence-6C4ADEAQ.js} +3 -3
  110. package/dist/{overview-7VCUIYQE.js → overview-NLKLGTIL.js} +4 -4
  111. package/dist/{project-N4RGX5CT.js → project-4QVFGUPT.js} +3 -3
  112. package/dist/{query-Y7LGD6PG.js → query-6JVOPG7E.js} +3 -3
  113. package/dist/{research-WTZO3D7B.js → research-NG2HHDTB.js} +3 -3
  114. package/dist/{results-export-BYUFBWEK.js → results-export-RUBBBAKB.js} +3 -3
  115. package/dist/{run-SXMD6GW5.js → run-4ZM7F4T4.js} +4 -4
  116. package/dist/{schedule-UQFPQBHI.js → schedule-NYJD7QNS.js} +3 -3
  117. package/dist/{search-EJUJRZEE.js → search-Z5TMFDQD.js} +3 -3
  118. package/dist/{serve-3CD4TSE7.js → serve-ZHUBM33Q.js} +26 -26
  119. package/dist/{session-N77UGPQB.js → session-VNIHR75J.js} +13 -13
  120. package/dist/{settings-ZBP3KDJK.js → settings-2YWI2XEK.js} +3 -3
  121. package/dist/{sitemaps-KVROUSLB.js → sitemaps-PPRANFJS.js} +3 -3
  122. package/dist/{skills-AGAHFQD5.js → skills-WKAHQ42S.js} +2 -2
  123. package/dist/{snapshot-WDK6ZSJA.js → snapshot-J2RMG6IC.js} +3 -3
  124. package/dist/{src-XGUBO65J.js → src-ZNFSBJSC.js} +2 -2
  125. package/dist/{status-IFUJIB73.js → status-S7WMZ437.js} +4 -4
  126. package/dist/{technical-aeo-6KR3YH4X.js → technical-aeo-NKCIAWHJ.js} +3 -3
  127. package/dist/{telemetry-EZNMZMH6.js → telemetry-DT4BLD5L.js} +4 -4
  128. package/dist/{tools-BNRDF6UZ.js → tools-22WRA2TI.js} +11 -11
  129. package/dist/{traffic-7OSHD23C.js → traffic-HTBFYDKA.js} +10 -8
  130. package/dist/{trends-I3NWFNHX.js → trends-SHT3BBXE.js} +3 -3
  131. package/dist/{users-VBLZGMML.js → users-BV6QFK4Q.js} +3 -3
  132. package/dist/{visibility-stats-6YAV2MTM.js → visibility-stats-TGCKVC7I.js} +3 -3
  133. package/dist/{wordpress-EM3S3NDA.js → wordpress-LYXQ3AWR.js} +3 -3
  134. package/package.json +1 -1
  135. package/assets/assets/TrafficSourceDetailPage-BMs9kd7S.js +0 -1
  136. package/assets/assets/index-Bhpq6fUo.css +0 -1
  137. package/assets/assets/server-traffic-ykAWQo0I.js +0 -1
  138. package/dist/intelligence-service-CJNCXI4C.js +0 -16
@@ -5,7 +5,7 @@ import {
5
5
  loadConfig,
6
6
  loadConfigRaw,
7
7
  saveConfigPatch
8
- } from "./chunk-4QYGB5IC.js";
8
+ } from "./chunk-5LLEZ6YL.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-FYYOX7UY.js";
21
+ } from "./chunk-GO5OUMY5.js";
22
22
 
23
23
  // src/runtime-context.ts
24
24
  function cliRuntimeContext(env = process.env, stdio = process) {
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createLogger
3
- } from "./chunk-BTYOU24P.js";
3
+ } from "./chunk-BOUEM6D6.js";
4
4
  import {
5
5
  addLikelyFakeAgentHits,
6
6
  correctBackgroundCallJourneys,
7
7
  mergeSplitJourneyVisitors,
8
8
  writeUnrecognizedAgentBuckets
9
- } from "./chunk-QWEAORJG.js";
9
+ } from "./chunk-LWVLQCQH.js";
10
10
  import {
11
11
  AGENT_TRUST_RULES_VERSION,
12
12
  BROWSER_SHAPED_AGENT_MARKERS,
@@ -23,7 +23,7 @@ import {
23
23
  isSelfTraffic,
24
24
  normalizeTrafficPathPattern,
25
25
  unrecognizedAgentName
26
- } from "./chunk-7534NXSP.js";
26
+ } from "./chunk-GS3KXIFK.js";
27
27
  import {
28
28
  RawEventSampleEventTypes,
29
29
  agentJourneyCaptureDays,
@@ -36,7 +36,7 @@ import {
36
36
  rawEventSamples,
37
37
  trafficReclassificationState,
38
38
  unrecognizedAgentEventsHourly
39
- } from "./chunk-H3PWMM4K.js";
39
+ } from "./chunk-HE4ZCVSF.js";
40
40
  import {
41
41
  AI_ENGINE_DOMAINS,
42
42
  AI_ENGINE_SELF_DOMAINS,
@@ -69,7 +69,7 @@ import {
69
69
  retryAfterDelayMs,
70
70
  usageCount,
71
71
  withRetry
72
- } from "./chunk-FYYOX7UY.js";
72
+ } from "./chunk-GO5OUMY5.js";
73
73
 
74
74
  // ../provider-openai/src/normalize.ts
75
75
  import OpenAI from "openai";
@@ -7,12 +7,12 @@ import {
7
7
  import {
8
8
  createApiClient,
9
9
  runWithUsageTags
10
- } from "./chunk-ZPVJ5PVB.js";
10
+ } from "./chunk-CM3BXAMM.js";
11
11
  import {
12
12
  canonryMcpTools,
13
13
  mcpOutputSchema,
14
14
  toolOperationAccess
15
- } from "./chunk-UMTYAPCQ.js";
15
+ } from "./chunk-4UA2Y24K.js";
16
16
  import {
17
17
  PACKAGE_VERSION
18
18
  } from "./chunk-AOJU5LKX.js";
@@ -25,7 +25,7 @@ import {
25
25
  isReadOnlyKey,
26
26
  restrictedWriteScopes,
27
27
  upgradeCaveatFor
28
- } from "./chunk-FYYOX7UY.js";
28
+ } from "./chunk-GO5OUMY5.js";
29
29
 
30
30
  // src/mcp/server.ts
31
31
  import { randomUUID } from "crypto";
@@ -28,7 +28,7 @@ import {
28
28
  unknownUsageObservation,
29
29
  usdToMicros,
30
30
  withRetry
31
- } from "./chunk-FYYOX7UY.js";
31
+ } from "./chunk-GO5OUMY5.js";
32
32
 
33
33
  // ../provider-answer-services/src/core/http.ts
34
34
  var MAX_RESPONSE_BYTES = 8 * 1024 * 1024;
@@ -3,7 +3,7 @@ import {
3
3
  resolveCliAccess,
4
4
  resolveCliAccessForInvocation,
5
5
  windowOptions
6
- } from "./chunk-P6ZDIVFZ.js";
6
+ } from "./chunk-IFVVXGLK.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-FYYOX7UY.js";
17
+ } from "./chunk-GO5OUMY5.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-CFCLMVSK.js");
114
+ const { printCliCatalog: printCliCatalog2 } = await import("./cli-catalog-ZJX65B35.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
  answerServiceAdapters,
3
3
  answerServiceDescriptors
4
- } from "./chunk-DEFHTBJV.js";
4
+ } from "./chunk-QXT6QVBE.js";
5
5
  import {
6
6
  AeroLlmUsageFeatures,
7
7
  aeroTurnStatus,
@@ -27,14 +27,14 @@ import {
27
27
  resolveConfiguredAgentProvider,
28
28
  resolveSessionProviderAndModel,
29
29
  setAeroSystemPrompt
30
- } from "./chunk-D2RMGUAK.js";
30
+ } from "./chunk-VYZIXIDN.js";
31
31
  import {
32
32
  AeroToolProfiles,
33
33
  AeroToolScopes,
34
34
  buildAeroStateTools,
35
35
  isAeroToolProfile,
36
36
  truncateToolResult
37
- } from "./chunk-7PKMRO33.js";
37
+ } from "./chunk-2OJJPSFS.js";
38
38
  import {
39
39
  getGoogleAuthConfig,
40
40
  getGoogleConnection,
@@ -53,7 +53,7 @@ import {
53
53
  removeCloudflareTrafficConnection,
54
54
  removeCloudflareTrafficConnectionBySourceId,
55
55
  upsertCloudflareTrafficConnection
56
- } from "./chunk-4HLR3DRQ.js";
56
+ } from "./chunk-4CPCYR5M.js";
57
57
  import {
58
58
  claudeAdapter,
59
59
  embedQueries,
@@ -65,7 +65,7 @@ import {
65
65
  openrouterAdapter,
66
66
  perplexityAdapter,
67
67
  startTrafficReclassification
68
- } from "./chunk-BZGAMJG2.js";
68
+ } from "./chunk-ON4G7RCY.js";
69
69
  import {
70
70
  classifyUsageSurface,
71
71
  createApiUsageTelemetry,
@@ -77,7 +77,7 @@ import {
77
77
  startOutcomeTimer,
78
78
  trackFeatureCompleted,
79
79
  trackInstallState
80
- } from "./chunk-WONUYAKB.js";
80
+ } from "./chunk-U3DFWCTU.js";
81
81
  import {
82
82
  isLoopbackBindHost
83
83
  } from "./chunk-TSENU4GG.js";
@@ -85,7 +85,7 @@ import {
85
85
  isApiProviderRegistrable,
86
86
  isCdpProviderRegistrable,
87
87
  registeredProviderNames
88
- } from "./chunk-N2EWSWZD.js";
88
+ } from "./chunk-7RWVMCMK.js";
89
89
  import {
90
90
  checkLatestVersionForServer,
91
91
  getOrCreateAnonymousId,
@@ -97,17 +97,17 @@ import {
97
97
  recordDashboardEvent,
98
98
  setTelemetryPreference,
99
99
  trackEvent
100
- } from "./chunk-TY5YTNLU.js";
100
+ } from "./chunk-OLEMJTEJ.js";
101
101
  import {
102
102
  createCanonryMcpServer
103
- } from "./chunk-CIP3CE2C.js";
103
+ } from "./chunk-QBMMHMDZ.js";
104
104
  import {
105
105
  CANONRY_MCP_TIERS,
106
106
  CANONRY_MCP_TOOLKIT_NAMES
107
107
  } from "./chunk-MTW37GXF.js";
108
108
  import {
109
109
  ApiClient
110
- } from "./chunk-ZPVJ5PVB.js";
110
+ } from "./chunk-CM3BXAMM.js";
111
111
  import {
112
112
  AGENT_PROVIDERS,
113
113
  adapterSupportsBatch,
@@ -139,21 +139,21 @@ import {
139
139
  saveConfigPatch,
140
140
  sentimentInstallReadiness,
141
141
  updateSharedProviderExecutionGate
142
- } from "./chunk-4QYGB5IC.js";
142
+ } from "./chunk-5LLEZ6YL.js";
143
143
  import {
144
144
  getBundledSkillSnapshots
145
- } from "./chunk-T5DH6FEH.js";
145
+ } from "./chunk-VNPYFXO5.js";
146
146
  import {
147
147
  computeFactorAverages,
148
148
  deleteSiteCrawlGraphLayout,
149
149
  persistSiteCrawlGraphLayout,
150
150
  prepareSiteCrawlGraphLayout,
151
151
  recordedSharePct
152
- } from "./chunk-3WWSOWXP.js";
152
+ } from "./chunk-CWEEHODU.js";
153
153
  import {
154
154
  CanonryMcpToolNames,
155
155
  canonryMcpTools
156
- } from "./chunk-UMTYAPCQ.js";
156
+ } from "./chunk-4UA2Y24K.js";
157
157
  import {
158
158
  PACKAGE_VERSION
159
159
  } from "./chunk-AOJU5LKX.js";
@@ -162,16 +162,16 @@ import {
162
162
  } from "./chunk-HGMYEDAQ.js";
163
163
  import {
164
164
  IntelligenceService
165
- } from "./chunk-WTZZOUOJ.js";
165
+ } from "./chunk-67WZEUEE.js";
166
166
  import {
167
167
  computeCitedCompetitorDomains,
168
168
  determineCitationState
169
- } from "./chunk-AUC47DFW.js";
169
+ } from "./chunk-AAUJZ43Q.js";
170
170
  import {
171
171
  addLogListener,
172
172
  createFastifyLogger,
173
173
  createLogger
174
- } from "./chunk-BTYOU24P.js";
174
+ } from "./chunk-BOUEM6D6.js";
175
175
  import {
176
176
  BingApiError,
177
177
  CC_CACHE_DIR,
@@ -316,7 +316,7 @@ import {
316
316
  webhookResponseReason,
317
317
  webhookTargetRefusalReason,
318
318
  writeAuditLog
319
- } from "./chunk-QWEAORJG.js";
319
+ } from "./chunk-LWVLQCQH.js";
320
320
  import {
321
321
  OperationalLogStore,
322
322
  SentimentIdempotencyConflict,
@@ -413,7 +413,7 @@ import {
413
413
  unrecognizedAgentEventsHourly,
414
414
  unrecognizedAgentNotifyState,
415
415
  usageCounters
416
- } from "./chunk-H3PWMM4K.js";
416
+ } from "./chunk-HE4ZCVSF.js";
417
417
  import {
418
418
  AGENT_MEMORY_VALUE_MAX_BYTES,
419
419
  AI_ENGINE_DOMAINS,
@@ -597,6 +597,7 @@ import {
597
597
  isEligibleFor,
598
598
  isNegativeReviewRating,
599
599
  isOpenRouterRoute,
600
+ isProviderAccountFailure,
600
601
  isReadOnlyKey,
601
602
  isRetryableHttpError,
602
603
  isSearchLocationIgnored,
@@ -671,7 +672,7 @@ import {
671
672
  winnabilityClassLabel,
672
673
  withRetry,
673
674
  withSkippedProviders
674
- } from "./chunk-FYYOX7UY.js";
675
+ } from "./chunk-GO5OUMY5.js";
675
676
 
676
677
  // src/google-marketing-runtime.ts
677
678
  import crypto2 from "crypto";
@@ -5975,7 +5976,7 @@ function nonBlank(value) {
5975
5976
  return trimmed ? trimmed : void 0;
5976
5977
  }
5977
5978
  function resolveBuildCommit(env = process.env) {
5978
- const embedded = true ? "93e0287882027676bee359e8ee5b3ebd86a46a49" : void 0;
5979
+ const embedded = true ? "d6889bea71db5761fa552e933355715660c2c0bc" : void 0;
5979
5980
  return nonBlank(embedded) ?? nonBlank(env.CANONRY_COMMIT);
5980
5981
  }
5981
5982
  function resolveInstanceIdentity(env = process.env) {
@@ -10695,7 +10696,7 @@ function bingRunFailure(err) {
10695
10696
  }
10696
10697
  var BING_INSPECT_SPACING_MS = 2e3;
10697
10698
  async function executeBingInspectSitemap(db, runId, projectId, opts) {
10698
- const reportOutcome = startRunOutcome(db, runId, FeatureNames.bing, "sync");
10699
+ const reportOutcome = startRunOutcome(db, runId, FeatureNames.bing, "inspect");
10699
10700
  let abortCause;
10700
10701
  const startedAt = (/* @__PURE__ */ new Date()).toISOString();
10701
10702
  db.update(runs).set({ status: RunStatuses.running, startedAt }).where(eq12(runs.id, runId)).run();
@@ -16875,6 +16876,7 @@ async function compactMessages(args) {
16875
16876
  // src/agent/session-registry.ts
16876
16877
  var log27 = createLogger("SessionRegistry");
16877
16878
  var MAX_HYDRATE_NOTES = 20;
16879
+ var PROVIDER_ACCOUNT_COOLDOWN_MS = 24 * 60 * 60 * 1e3;
16878
16880
  var MAX_HYDRATE_BYTES = 32 * 1024;
16879
16881
  function escapeMemoryFragment(value) {
16880
16882
  return value.replace(/<(\/?)memory>/gi, "<$1\u200Cmemory>");
@@ -16891,6 +16893,8 @@ function withoutPersistedToolDetails(messages) {
16891
16893
  var SessionRegistry = class {
16892
16894
  live = /* @__PURE__ */ new Map();
16893
16895
  pending = /* @__PURE__ */ new Map();
16896
+ /** Shared across projects, scoped to the provider and a digest of its credential. */
16897
+ providerCooldowns = /* @__PURE__ */ new Map();
16894
16898
  /** Last tool scope used on the live Agent for a project. Read in getOrCreate to know when to swap. */
16895
16899
  scopes = /* @__PURE__ */ new Map();
16896
16900
  /** Last profile used on the live Agent for a project. Paired with scopes when rebuilding tools. */
@@ -17341,6 +17345,7 @@ ${lines.join("\n")}
17341
17345
  */
17342
17346
  queueFollowUp(projectName, message) {
17343
17347
  if (!this.proactive) return;
17348
+ if (this.providerCoolingDown(projectName)) return;
17344
17349
  if (this.live.has(projectName)) {
17345
17350
  this.appendPending(projectName, [message]);
17346
17351
  } else {
@@ -17371,6 +17376,7 @@ ${lines.join("\n")}
17371
17376
  async drainNow(projectName) {
17372
17377
  if (!this.proactive) return;
17373
17378
  if (!this.hasPendingWork(projectName)) return;
17379
+ if (this.providerCoolingDown(projectName)) return;
17374
17380
  try {
17375
17381
  let agent;
17376
17382
  try {
@@ -17381,6 +17387,7 @@ ${lines.join("\n")}
17381
17387
  if (err.code === "AGENT_BUSY") return;
17382
17388
  throw err;
17383
17389
  }
17390
+ if (this.providerCoolingDown(projectName)) return;
17384
17391
  const msgs = this.consumePending(projectName);
17385
17392
  if (msgs.length === 0) return;
17386
17393
  await agent.prompt(msgs);
@@ -17477,12 +17484,53 @@ ${lines.join("\n")}
17477
17484
  * arrives mid-CLI-turn would sit in pending until someone called drainNow.
17478
17485
  */
17479
17486
  registerDrainHook(agent, projectName) {
17487
+ let lastRequest;
17488
+ const resolveApiKey = agent.getApiKey;
17489
+ agent.getApiKey = async (provider) => {
17490
+ lastRequest = void 0;
17491
+ const apiKey = await resolveApiKey?.(provider);
17492
+ const accountKey = this.providerAccountKey(provider, apiKey);
17493
+ lastRequest = { accountKey, cooldown: this.providerCooldowns.get(accountKey) };
17494
+ return apiKey;
17495
+ };
17480
17496
  agent.subscribe((event) => {
17497
+ if (event.type === "agent_start") lastRequest = void 0;
17481
17498
  if (event.type !== "agent_end") return;
17499
+ if (lastRequest) {
17500
+ const { accountKey, cooldown } = lastRequest;
17501
+ const reason = classifyProviderErrorMessage(agent.state.errorMessage ?? "");
17502
+ if (isProviderAccountFailure(reason)) {
17503
+ const retryAt = Date.now() + PROVIDER_ACCOUNT_COOLDOWN_MS;
17504
+ this.providerCooldowns.set(accountKey, { retryAt });
17505
+ log27.warn("provider.background-paused", {
17506
+ projectName,
17507
+ provider: agent.state.model.provider,
17508
+ reason,
17509
+ retryAt: new Date(retryAt).toISOString(),
17510
+ recovery: "Fix the provider credentials or billing, then send Aero a prompt to retry now."
17511
+ });
17512
+ } else if (aeroTurnStatus(agent)?.reason === "completed" && this.providerCooldowns.get(accountKey) === cooldown) {
17513
+ this.providerCooldowns.delete(accountKey);
17514
+ }
17515
+ }
17482
17516
  if ((this.pending.get(projectName) ?? []).length === 0) return;
17483
17517
  void this.drainNow(projectName);
17484
17518
  });
17485
17519
  }
17520
+ providerAccountKey(provider, apiKey) {
17521
+ const canonical = coerceAgentProvider(provider);
17522
+ const vendor = canonical ? getAgentProvider(canonical).piAiProvider : provider;
17523
+ return crypto24.createHash("sha256").update(JSON.stringify([vendor, apiKey ?? ""])).digest("hex");
17524
+ }
17525
+ providerCoolingDown(projectName) {
17526
+ for (const [key, cooldown] of this.providerCooldowns) {
17527
+ if (cooldown.retryAt <= Date.now()) this.providerCooldowns.delete(key);
17528
+ }
17529
+ const provider = this.turnProvider(projectName);
17530
+ if (provider === void 0) return false;
17531
+ const vendor = getAgentProvider(provider).piAiProvider;
17532
+ return this.providerCooldowns.has(this.providerAccountKey(vendor, resolveApiKeyFor(vendor, this.opts.config)));
17533
+ }
17486
17534
  resolveProjectId(projectName) {
17487
17535
  const id = this.tryResolveProjectId(projectName);
17488
17536
  if (!id) throw new Error(`Project "${projectName}" not found`);
@@ -2,13 +2,13 @@ import {
2
2
  bucketCliCommandDuration,
3
3
  isTelemetryEnabled,
4
4
  trackEvent
5
- } from "./chunk-TY5YTNLU.js";
5
+ } from "./chunk-OLEMJTEJ.js";
6
6
  import {
7
7
  getConfigDir
8
- } from "./chunk-4QYGB5IC.js";
8
+ } from "./chunk-5LLEZ6YL.js";
9
9
  import {
10
10
  currentOutcomeAttribution
11
- } from "./chunk-K7ZG6K7J.js";
11
+ } from "./chunk-J6QOUWDQ.js";
12
12
  import {
13
13
  AGENT_NONE,
14
14
  OutcomeSurfaces,
@@ -19,7 +19,7 @@ import {
19
19
  integrationConnectionPropertiesSchema,
20
20
  normalizeAgentSlug,
21
21
  usageSurfaceSchema
22
- } from "./chunk-FYYOX7UY.js";
22
+ } from "./chunk-GO5OUMY5.js";
23
23
 
24
24
  // src/outcome-telemetry.ts
25
25
  import fs from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ZPVJ5PVB.js";
3
+ } from "./chunk-CM3BXAMM.js";
4
4
  import {
5
5
  emitJsonl
6
6
  } from "./chunk-Z7IUAJOF.js";
@@ -19,7 +19,7 @@ import {
19
19
  formatMicros,
20
20
  formatRunErrorOneLine,
21
21
  resolveProviderInput
22
- } from "./chunk-FYYOX7UY.js";
22
+ } from "./chunk-GO5OUMY5.js";
23
23
 
24
24
  // src/commands/run.ts
25
25
  function getClient() {
@@ -4,14 +4,14 @@ import {
4
4
  } from "./chunk-VJWDBFSL.js";
5
5
  import {
6
6
  createApiClient
7
- } from "./chunk-ZPVJ5PVB.js";
7
+ } from "./chunk-CM3BXAMM.js";
8
8
  import {
9
9
  CliError,
10
10
  isMachineFormat
11
11
  } from "./chunk-HGMYEDAQ.js";
12
12
  import {
13
13
  describeError
14
- } from "./chunk-FYYOX7UY.js";
14
+ } from "./chunk-GO5OUMY5.js";
15
15
 
16
16
  // src/commands/mcp.ts
17
17
  import fs from "fs";
@@ -23,7 +23,7 @@ import {
23
23
  measurementDraftUpsertGroupRequestSchema,
24
24
  measurementDraftUpsertMarketRequestSchema,
25
25
  measurementDraftUpsertTargetRequestSchema
26
- } from "./chunk-FYYOX7UY.js";
26
+ } from "./chunk-GO5OUMY5.js";
27
27
 
28
28
  // src/measurement-draft-actions.ts
29
29
  import { z } from "zod";
@@ -15,7 +15,7 @@ import {
15
15
  formatCanonryPluginUpdateHint,
16
16
  formatCanonryPluginVersionMismatch,
17
17
  skillsClientSchema
18
- } from "./chunk-FYYOX7UY.js";
18
+ } from "./chunk-GO5OUMY5.js";
19
19
 
20
20
  // src/commands/skills.ts
21
21
  import crypto from "crypto";
@@ -5,7 +5,7 @@ import {
5
5
  isStoredPageReadTool,
6
6
  isStoredReadTool,
7
7
  truncateToolResult
8
- } from "./chunk-7PKMRO33.js";
8
+ } from "./chunk-2OJJPSFS.js";
9
9
  import {
10
10
  CANONRY_MCP_TOOLKITS,
11
11
  resolveAeroSkillDir
@@ -23,18 +23,18 @@ import {
23
23
  resolveApiKeyFor,
24
24
  resolveModelForProvider,
25
25
  validateAgentProviderRegistry
26
- } from "./chunk-4QYGB5IC.js";
26
+ } from "./chunk-5LLEZ6YL.js";
27
27
  import {
28
28
  CanonryMcpToolNames,
29
29
  canonryMcpTools
30
- } from "./chunk-UMTYAPCQ.js";
30
+ } from "./chunk-4UA2Y24K.js";
31
31
  import {
32
32
  createLogger
33
- } from "./chunk-BTYOU24P.js";
33
+ } from "./chunk-BOUEM6D6.js";
34
34
  import {
35
35
  agentToolEvents,
36
36
  llmUsageEvents
37
- } from "./chunk-H3PWMM4K.js";
37
+ } from "./chunk-HE4ZCVSF.js";
38
38
  import {
39
39
  MeasurementPortfolioLists,
40
40
  SeoCapabilities,
@@ -43,7 +43,7 @@ import {
43
43
  describeError,
44
44
  validationError,
45
45
  visibilityReportRequestSchema
46
- } from "./chunk-FYYOX7UY.js";
46
+ } from "./chunk-GO5OUMY5.js";
47
47
 
48
48
  // src/agent/session.ts
49
49
  import fs2 from "fs";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  registeredProviderNames
3
- } from "./chunk-N2EWSWZD.js";
3
+ } from "./chunk-7RWVMCMK.js";
4
4
  import {
5
5
  configExists,
6
6
  loadConfigRaw
7
- } from "./chunk-4QYGB5IC.js";
7
+ } from "./chunk-5LLEZ6YL.js";
8
8
 
9
9
  // src/setup-state.ts
10
10
  import fs from "fs";
@@ -28,7 +28,7 @@ async function buildSetupState() {
28
28
  }
29
29
  if (dbPath && fs.existsSync(dbPath)) {
30
30
  try {
31
- const { createClient, projects, queries: queriesTable } = await import("./src-XGUBO65J.js");
31
+ const { createClient, projects, queries: queriesTable } = await import("./src-ZNFSBJSC.js");
32
32
  const db = createClient(dbPath);
33
33
  project_count = db.select({ id: projects.id }).from(projects).all().length;
34
34
  const firstQuery = db.select({ id: queriesTable.id }).from(queriesTable).limit(1).all();
@@ -47,7 +47,7 @@ function queueServeHandoff() {
47
47
  async function runPendingServeHandoff(format) {
48
48
  if (!pendingServeHandoff) return;
49
49
  pendingServeHandoff = false;
50
- const { serveCommand } = await import("./serve-3CD4TSE7.js");
50
+ const { serveCommand } = await import("./serve-ZHUBM33Q.js");
51
51
  await serveCommand(format);
52
52
  }
53
53
 
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ZPVJ5PVB.js";
3
+ } from "./chunk-CM3BXAMM.js";
4
4
  import {
5
5
  emitJsonl
6
6
  } from "./chunk-Z7IUAJOF.js";
7
7
  import {
8
8
  measurementDraftOperationSchema,
9
9
  runMeasurementDraftAction
10
- } from "./chunk-XYQMPYWE.js";
10
+ } from "./chunk-VFYZVQVX.js";
11
11
  import {
12
12
  isMachineFormat,
13
13
  systemError
@@ -37,7 +37,7 @@ import {
37
37
  unattributedAnswersLabel,
38
38
  uncheckedSourcesLabel,
39
39
  visibilityReportRequestSchema
40
- } from "./chunk-FYYOX7UY.js";
40
+ } from "./chunk-GO5OUMY5.js";
41
41
 
42
42
  // src/commands/measurement-plan.ts
43
43
  import crypto from "crypto";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ZPVJ5PVB.js";
4
- import "./chunk-4QYGB5IC.js";
3
+ } from "./chunk-CM3BXAMM.js";
4
+ import "./chunk-5LLEZ6YL.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import "./chunk-HGMYEDAQ.js";
7
- import "./chunk-FYYOX7UY.js";
7
+ import "./chunk-GO5OUMY5.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-O7D7KV75.js";
7
- import "./chunk-P6ZDIVFZ.js";
6
+ } from "./chunk-SNQVHD2O.js";
7
+ import "./chunk-IFVVXGLK.js";
8
8
  import "./chunk-Z7IUAJOF.js";
9
9
  import "./chunk-HGMYEDAQ.js";
10
- import "./chunk-FYYOX7UY.js";
10
+ import "./chunk-GO5OUMY5.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-YX33HYHZ.js";
3
+ } from "./chunk-N6CIAFEO.js";
4
4
  import "./chunk-6GO5VVAC.js";
5
5
  import "./chunk-VJWDBFSL.js";
6
- import "./chunk-U3T37P7H.js";
6
+ import "./chunk-YUHP5IUB.js";
7
7
  import "./chunk-TSENU4GG.js";
8
- import "./chunk-ZPVJ5PVB.js";
9
- import "./chunk-4QYGB5IC.js";
10
- import "./chunk-P6ZDIVFZ.js";
8
+ import "./chunk-CM3BXAMM.js";
9
+ import "./chunk-5LLEZ6YL.js";
10
+ import "./chunk-IFVVXGLK.js";
11
11
  import "./chunk-Z7IUAJOF.js";
12
- import "./chunk-XYQMPYWE.js";
12
+ import "./chunk-VFYZVQVX.js";
13
13
  import "./chunk-AOJU5LKX.js";
14
14
  import "./chunk-HGMYEDAQ.js";
15
- import "./chunk-FYYOX7UY.js";
15
+ import "./chunk-GO5OUMY5.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
  export {
18
18
  REGISTERED_CLI_COMMANDS