@ainyc/canonry 4.17.1 → 4.19.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.
@@ -15,7 +15,7 @@ import {
15
15
  scheduleUpsertRequestSchema,
16
16
  trafficConnectCloudRunRequestSchema,
17
17
  trafficEventKindSchema
18
- } from "./chunk-Q2OED5JQ.js";
18
+ } from "./chunk-SBZTDECX.js";
19
19
 
20
20
  // src/config.ts
21
21
  import fs from "fs";
@@ -2219,6 +2219,8 @@ var trafficSourceStatusSchema = z20.enum(["connected", "paused", "error", "archi
2219
2219
  var TrafficSourceStatuses = trafficSourceStatusSchema.enum;
2220
2220
  var trafficSourceAuthModeSchema = z20.enum(["oauth", "service-account"]);
2221
2221
  var TrafficSourceAuthModes = trafficSourceAuthModeSchema.enum;
2222
+ var verificationStatusSchema = z20.enum(["verified", "claimed_unverified", "unknown_ai_like"]);
2223
+ var VerificationStatuses = verificationStatusSchema.enum;
2222
2224
  var cloudRunSourceConfigSchema = z20.object({
2223
2225
  gcpProjectId: z20.string().min(1),
2224
2226
  serviceName: z20.string().nullable().optional(),
@@ -2362,6 +2364,22 @@ function formatDateRange(start, end) {
2362
2364
  if (start && end) return `${formatDate(start)} \u2192 ${formatDate(end)}`;
2363
2365
  return formatDate(start || end);
2364
2366
  }
2367
+ function deltaPercent(current, prior) {
2368
+ if (prior <= 0) return null;
2369
+ return Math.round((current - prior) / prior * 100);
2370
+ }
2371
+ function deltaTone(deltaPct) {
2372
+ if (deltaPct === null || deltaPct === 0) return "neutral";
2373
+ return deltaPct > 0 ? "positive" : "negative";
2374
+ }
2375
+ function formatDeltaCopy(d, suffix, windowLabel = "vs prior 7 days") {
2376
+ if (d.deltaPct === null) {
2377
+ return d.prior === 0 ? "First baseline week" : "";
2378
+ }
2379
+ if (d.deltaPct > 0) return `Up ${d.deltaPct}% ${windowLabel} (${formatNumber(d.prior)} ${suffix})`;
2380
+ if (d.deltaPct < 0) return `Down ${Math.abs(d.deltaPct)}% ${windowLabel} (${formatNumber(d.prior)} ${suffix})`;
2381
+ return `Flat ${windowLabel} (${formatNumber(d.prior)} ${suffix})`;
2382
+ }
2365
2383
 
2366
2384
  export {
2367
2385
  __export,
@@ -2460,6 +2478,7 @@ export {
2460
2478
  TrafficEventConfidences,
2461
2479
  TrafficSourceStatuses,
2462
2480
  TrafficSourceAuthModes,
2481
+ VerificationStatuses,
2463
2482
  trafficConnectCloudRunRequestSchema,
2464
2483
  trafficEventKindSchema,
2465
2484
  TrafficEventKinds,
@@ -2467,5 +2486,8 @@ export {
2467
2486
  formatNumber,
2468
2487
  formatDate,
2469
2488
  formatIsoDate,
2470
- formatDateRange
2489
+ formatDateRange,
2490
+ deltaPercent,
2491
+ deltaTone,
2492
+ formatDeltaCopy
2471
2493
  };
package/dist/cli.js CHANGED
@@ -20,7 +20,7 @@ import {
20
20
  setTelemetrySource,
21
21
  showFirstRunNotice,
22
22
  trackEvent
23
- } from "./chunk-ZGHD3IAV.js";
23
+ } from "./chunk-OHPZXTFC.js";
24
24
  import {
25
25
  CliError,
26
26
  EXIT_SYSTEM_ERROR,
@@ -36,7 +36,7 @@ import {
36
36
  saveConfig,
37
37
  saveConfigPatch,
38
38
  usageError
39
- } from "./chunk-6TWKC3DP.js";
39
+ } from "./chunk-P3SFTXHG.js";
40
40
  import {
41
41
  apiKeys,
42
42
  competitors,
@@ -49,7 +49,7 @@ import {
49
49
  queries,
50
50
  querySnapshots,
51
51
  runs
52
- } from "./chunk-PAZCY4FF.js";
52
+ } from "./chunk-BN2VQDZ2.js";
53
53
  import {
54
54
  CcReleaseSyncStatuses,
55
55
  CheckScopes,
@@ -69,7 +69,7 @@ import {
69
69
  providerQuotaPolicySchema,
70
70
  resolveProviderInput,
71
71
  skillsClientSchema
72
- } from "./chunk-Q2OED5JQ.js";
72
+ } from "./chunk-SBZTDECX.js";
73
73
 
74
74
  // src/cli.ts
75
75
  import { pathToFileURL } from "url";
@@ -621,7 +621,7 @@ function readStoredGroundingSources(rawResponse) {
621
621
  return result;
622
622
  }
623
623
  async function backfillInsightsCommand(project, opts) {
624
- const { IntelligenceService } = await import("./intelligence-service-X3PQLBUV.js");
624
+ const { IntelligenceService } = await import("./intelligence-service-6CX5HH27.js");
625
625
  const config = loadConfig();
626
626
  const db = createClient(config.database);
627
627
  migrate(db);
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  createServer
3
- } from "./chunk-ZGHD3IAV.js";
3
+ } from "./chunk-OHPZXTFC.js";
4
4
  import {
5
5
  loadConfig
6
- } from "./chunk-6TWKC3DP.js";
7
- import "./chunk-PAZCY4FF.js";
8
- import "./chunk-Q2OED5JQ.js";
6
+ } from "./chunk-P3SFTXHG.js";
7
+ import "./chunk-BN2VQDZ2.js";
8
+ import "./chunk-SBZTDECX.js";
9
9
  export {
10
10
  createServer,
11
11
  loadConfig
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  IntelligenceService
3
- } from "./chunk-PAZCY4FF.js";
4
- import "./chunk-Q2OED5JQ.js";
3
+ } from "./chunk-BN2VQDZ2.js";
4
+ import "./chunk-SBZTDECX.js";
5
5
  export {
6
6
  IntelligenceService
7
7
  };
package/dist/mcp.js CHANGED
@@ -2,8 +2,8 @@ import {
2
2
  CliError,
3
3
  canonryMcpTools,
4
4
  createApiClient
5
- } from "./chunk-6TWKC3DP.js";
6
- import "./chunk-Q2OED5JQ.js";
5
+ } from "./chunk-P3SFTXHG.js";
6
+ import "./chunk-SBZTDECX.js";
7
7
 
8
8
  // src/mcp/cli.ts
9
9
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ainyc/canonry",
3
- "version": "4.17.1",
3
+ "version": "4.19.0",
4
4
  "type": "module",
5
5
  "description": "Agent-first open-source AEO operating platform - track how answer engines cite your domain",
6
6
  "license": "FSL-1.1-ALv2",
@@ -59,23 +59,23 @@
59
59
  "@types/node-cron": "^3.0.11",
60
60
  "tsup": "^8.5.1",
61
61
  "tsx": "^4.19.0",
62
- "@ainyc/canonry-api-routes": "0.0.0",
63
- "@ainyc/canonry-db": "0.0.0",
64
62
  "@ainyc/canonry-config": "0.0.0",
63
+ "@ainyc/canonry-db": "0.0.0",
65
64
  "@ainyc/canonry-intelligence": "0.0.0",
66
- "@ainyc/canonry-contracts": "0.0.0",
67
65
  "@ainyc/canonry-integration-bing": "0.0.0",
68
66
  "@ainyc/canonry-integration-cloud-run": "0.0.0",
67
+ "@ainyc/canonry-contracts": "0.0.0",
69
68
  "@ainyc/canonry-integration-google": "0.0.0",
69
+ "@ainyc/canonry-integration-traffic": "0.0.0",
70
+ "@ainyc/canonry-api-routes": "0.0.0",
71
+ "@ainyc/canonry-provider-cdp": "0.0.0",
70
72
  "@ainyc/canonry-integration-wordpress": "0.0.0",
73
+ "@ainyc/canonry-provider-claude": "0.0.0",
71
74
  "@ainyc/canonry-integration-commoncrawl": "0.0.0",
72
- "@ainyc/canonry-provider-cdp": "0.0.0",
73
- "@ainyc/canonry-integration-traffic": "0.0.0",
74
- "@ainyc/canonry-provider-gemini": "0.0.0",
75
75
  "@ainyc/canonry-provider-local": "0.0.0",
76
76
  "@ainyc/canonry-provider-openai": "0.0.0",
77
- "@ainyc/canonry-provider-claude": "0.0.0",
78
- "@ainyc/canonry-provider-perplexity": "0.0.0"
77
+ "@ainyc/canonry-provider-perplexity": "0.0.0",
78
+ "@ainyc/canonry-provider-gemini": "0.0.0"
79
79
  },
80
80
  "scripts": {
81
81
  "build": "tsx scripts/copy-agent-assets.ts && tsup && tsx build-web.ts",