@ainyc/canonry 4.100.0 → 4.100.1

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 (26) hide show
  1. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +0 -12
  2. package/assets/assets/{BacklinksPage-DWZdWEm3.js → BacklinksPage-v2RC8wlg.js} +1 -1
  3. package/assets/assets/{ChartPrimitives-C-ky5206.js → ChartPrimitives-B74e5pqn.js} +1 -1
  4. package/assets/assets/{ProjectPage-CpbFpi6J.js → ProjectPage-BCzS7TQn.js} +4 -4
  5. package/assets/assets/{RunRow-Bj-D4kZe.js → RunRow-BmVPjO-m.js} +1 -1
  6. package/assets/assets/{RunsPage-GktitsAV.js → RunsPage-CK5atXvL.js} +1 -1
  7. package/assets/assets/{SettingsPage-AsFLFDS3.js → SettingsPage-DarPFUPl.js} +1 -1
  8. package/assets/assets/{TrafficPage-Cf3uCkxs.js → TrafficPage-Ddnn_WqU.js} +1 -1
  9. package/assets/assets/{TrafficSourceDetailPage-B5t7nf9C.js → TrafficSourceDetailPage-g08SKnwZ.js} +1 -1
  10. package/assets/assets/{arrow-left-CZFQuQO_.js → arrow-left-D39Vxasb.js} +1 -1
  11. package/assets/assets/{extract-error-message--bieZ2IX.js → extract-error-message-BiNWqBeh.js} +1 -1
  12. package/assets/assets/index-BCuWbxUj.css +1 -0
  13. package/assets/assets/index-Dd4J1VhB.js +210 -0
  14. package/assets/assets/{trash-2-sKO0k75f.js → trash-2-xh6gsnap.js} +1 -1
  15. package/assets/index.html +2 -2
  16. package/dist/{chunk-74SOIAIY.js → chunk-ALJSES3X.js} +4 -4
  17. package/dist/{chunk-UVIHWF45.js → chunk-IDI6LMYL.js} +1 -27
  18. package/dist/{chunk-ADLS64PG.js → chunk-JF7EXHGA.js} +0 -105
  19. package/dist/{chunk-SNHYRSUF.js → chunk-YBIT5O62.js} +12 -366
  20. package/dist/cli.js +4 -110
  21. package/dist/index.js +4 -4
  22. package/dist/{intelligence-service-3CRNJLUZ.js → intelligence-service-TWCEKVKZ.js} +2 -2
  23. package/dist/mcp.js +2 -2
  24. package/package.json +9 -9
  25. package/assets/assets/index-9hI0ODQU.css +0 -1
  26. package/assets/assets/index-Cb2h7KkD.js +0 -210
@@ -1 +1 @@
1
- import{c}from"./index-Cb2h7KkD.js";const a=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],h=c("circle-check",a);const e=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],n=c("circle-question-mark",e);const o=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],s=c("download",o);const t=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],r=c("trash-2",t);export{h as C,s as D,r as T,n as a};
1
+ import{c}from"./index-Dd4J1VhB.js";const a=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],h=c("circle-check",a);const e=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],n=c("circle-question-mark",e);const o=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],s=c("download",o);const t=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],r=c("trash-2",t);export{h as C,s as D,r as T,n as a};
package/assets/index.html CHANGED
@@ -12,12 +12,12 @@
12
12
  <link rel="icon" type="image/png" sizes="32x32" href="./favicon-32.png" />
13
13
  <link rel="apple-touch-icon" href="./apple-touch-icon.png" />
14
14
  <title>Canonry</title>
15
- <script type="module" crossorigin src="./assets/index-Cb2h7KkD.js"></script>
15
+ <script type="module" crossorigin src="./assets/index-Dd4J1VhB.js"></script>
16
16
  <link rel="modulepreload" crossorigin href="./assets/vendor-tanstack-Be8JdV5M.js">
17
17
  <link rel="modulepreload" crossorigin href="./assets/vendor-radix-CQ77EO2y.js">
18
18
  <link rel="modulepreload" crossorigin href="./assets/vendor-recharts-C9EZkgbP.js">
19
19
  <link rel="modulepreload" crossorigin href="./assets/vendor-markdown-6dwjPOKK.js">
20
- <link rel="stylesheet" crossorigin href="./assets/index-9hI0ODQU.css">
20
+ <link rel="stylesheet" crossorigin href="./assets/index-BCuWbxUj.css">
21
21
  </head>
22
22
  <body>
23
23
  <div id="root"></div>
@@ -9,7 +9,7 @@ import {
9
9
  loadConfig,
10
10
  loadConfigRaw,
11
11
  saveConfigPatch
12
- } from "./chunk-UVIHWF45.js";
12
+ } from "./chunk-IDI6LMYL.js";
13
13
  import {
14
14
  CC_CACHE_DIR,
15
15
  DUCKDB_SPEC,
@@ -111,7 +111,7 @@ import {
111
111
  siteAuditPages,
112
112
  siteAuditSnapshots,
113
113
  usageCounters
114
- } from "./chunk-SNHYRSUF.js";
114
+ } from "./chunk-YBIT5O62.js";
115
115
  import {
116
116
  AGENT_MEMORY_VALUE_MAX_BYTES,
117
117
  AGENT_PROVIDER_IDS,
@@ -171,7 +171,7 @@ import {
171
171
  validationError,
172
172
  winnabilityClassLabel,
173
173
  withRetry
174
- } from "./chunk-ADLS64PG.js";
174
+ } from "./chunk-JF7EXHGA.js";
175
175
 
176
176
  // src/telemetry.ts
177
177
  import crypto from "crypto";
@@ -6403,7 +6403,7 @@ function readStoredGroundingSources(rawResponse) {
6403
6403
  return result;
6404
6404
  }
6405
6405
  async function backfillInsightsCommand(project, opts) {
6406
- const { IntelligenceService: IntelligenceService2 } = await import("./intelligence-service-3CRNJLUZ.js");
6406
+ const { IntelligenceService: IntelligenceService2 } = await import("./intelligence-service-TWCEKVKZ.js");
6407
6407
  const config = loadConfig();
6408
6408
  const db = createClient(config.database);
6409
6409
  migrate(db);
@@ -24,7 +24,7 @@ import {
24
24
  trafficConnectVercelRequestSchema,
25
25
  trafficConnectWordpressRequestSchema,
26
26
  trafficEventKindSchema
27
- } from "./chunk-ADLS64PG.js";
27
+ } from "./chunk-JF7EXHGA.js";
28
28
 
29
29
  // src/config.ts
30
30
  import fs from "fs";
@@ -3085,18 +3085,6 @@ var getApiV1ProjectsByNameContentGaps = (options) => {
3085
3085
  ...options
3086
3086
  });
3087
3087
  };
3088
- var getApiV1Portfolio = (options) => {
3089
- return (options?.client ?? client).get({
3090
- security: [
3091
- {
3092
- scheme: "bearer",
3093
- type: "http"
3094
- }
3095
- ],
3096
- url: "/api/v1/portfolio",
3097
- ...options
3098
- });
3099
- };
3100
3088
  var getApiV1ProjectsByNameOverview = (options) => {
3101
3089
  return (options.client ?? client).get({
3102
3090
  security: [
@@ -3920,9 +3908,6 @@ var ApiClient = class {
3920
3908
  async apply(config) {
3921
3909
  return this.invoke(() => postApiV1Apply({ client: this.heyClient, body: config }));
3922
3910
  }
3923
- async getPortfolio() {
3924
- return this.invoke(() => getApiV1Portfolio({ client: this.heyClient }));
3925
- }
3926
3911
  async getProjectOverview(project, opts) {
3927
3912
  return this.invoke(
3928
3913
  () => getApiV1ProjectsByNameOverview({
@@ -5696,17 +5681,6 @@ var canonryMcpTools = [
5696
5681
  openApiOperations: ["GET /api/v1/projects/{name}/report"],
5697
5682
  handler: (client2, input) => client2.getReport(input.project, input.period !== void 0 ? { period: input.period } : void 0)
5698
5683
  }),
5699
- defineTool({
5700
- name: "canonry_portfolio",
5701
- title: "Get portfolio change feed (composite)",
5702
- description: 'One-call cross-project portfolio: a server-ordered "what changed" feed \u2014 citation and mention gains/losses over each project\'s comparable query basket, failed sweeps, critical/high insight echoes, stale-visibility, query-set changes, and never-run projects, ranked by recency then severity \u2014 plus a timestamped recent-runs log carrying BOTH result signals (mentioned vs cited counts, independent) and a per-project state table. Probe runs excluded. Use it to answer "what changed across all my projects" without fanning out per project. `generatedAt` anchors every relative timestamp.',
5703
- access: "read",
5704
- tier: "monitoring",
5705
- inputSchema: emptyInputSchema,
5706
- annotations: readAnnotations(),
5707
- openApiOperations: ["GET /api/v1/portfolio"],
5708
- handler: (client2) => client2.getPortfolio()
5709
- }),
5710
5684
  defineTool({
5711
5685
  name: "canonry_analytics_metrics",
5712
5686
  title: "Get citation & mention trend",
@@ -3455,93 +3455,6 @@ var projectSearchResponseSchema = z24.object({
3455
3455
  truncated: z24.boolean(),
3456
3456
  hits: z24.array(projectSearchHitSchema)
3457
3457
  });
3458
- var portfolioChangeTypeSchema = z24.enum([
3459
- "citation-gained",
3460
- "citation-lost",
3461
- "mention-gained",
3462
- "mention-lost",
3463
- "run-failed",
3464
- "insight-critical",
3465
- "insight-high",
3466
- "stale-visibility",
3467
- "query-set-changed",
3468
- "project-never-run"
3469
- ]);
3470
- var PortfolioChangeTypes = portfolioChangeTypeSchema.enum;
3471
- var portfolioChangeSchema = z24.object({
3472
- id: z24.string(),
3473
- projectName: z24.string(),
3474
- projectSlug: z24.string(),
3475
- changeType: portfolioChangeTypeSchema,
3476
- tone: metricToneSchema,
3477
- title: z24.string(),
3478
- detail: z24.string(),
3479
- occurredAt: z24.string(),
3480
- href: z24.string().nullable(),
3481
- actionLabel: z24.string().nullable(),
3482
- comparable: z24.boolean()
3483
- });
3484
- var portfolioRunSchema = z24.object({
3485
- runId: z24.string(),
3486
- projectName: z24.string(),
3487
- projectSlug: z24.string(),
3488
- kindLabel: z24.string(),
3489
- status: runStatusSchema,
3490
- createdAt: z24.string(),
3491
- startedAt: z24.string().nullable(),
3492
- finishedAt: z24.string().nullable(),
3493
- durationMs: z24.number().nullable(),
3494
- mentionedCount: z24.number().int().nonnegative().nullable(),
3495
- citedCount: z24.number().int().nonnegative().nullable(),
3496
- totalCount: z24.number().int().nonnegative().nullable(),
3497
- errorSummary: z24.string().nullable()
3498
- });
3499
- var portfolioProjectRowSchema = z24.object({
3500
- projectSlug: z24.string(),
3501
- projectName: z24.string(),
3502
- canonicalDomain: z24.string(),
3503
- mentionScore: z24.number(),
3504
- mentionTone: metricToneSchema,
3505
- mentionedOfTotal: z24.object({
3506
- mentioned: z24.number().int().nonnegative(),
3507
- total: z24.number().int().nonnegative()
3508
- }),
3509
- citedOfTotal: z24.object({
3510
- cited: z24.number().int().nonnegative(),
3511
- total: z24.number().int().nonnegative()
3512
- }),
3513
- mentionDelta: z24.object({
3514
- gained: z24.number().int().nonnegative(),
3515
- lost: z24.number().int().nonnegative(),
3516
- comparable: z24.boolean()
3517
- }),
3518
- citationDelta: z24.object({
3519
- gained: z24.number().int().nonnegative(),
3520
- lost: z24.number().int().nonnegative(),
3521
- comparable: z24.boolean()
3522
- }),
3523
- competitorPressureLabel: z24.string(),
3524
- mentionTrend: z24.array(z24.number()),
3525
- lastRunAt: z24.string().nullable(),
3526
- hasEverRun: z24.boolean()
3527
- });
3528
- var portfolioFeedEmptyStateSchema = z24.object({
3529
- kind: z24.enum(["all-clear", "awaiting-second-sweep"]),
3530
- title: z24.string(),
3531
- detail: z24.string()
3532
- });
3533
- var portfolioDtoSchema = z24.object({
3534
- generatedAt: z24.string(),
3535
- lastSweepAt: z24.string().nullable(),
3536
- projectCount: z24.number().int().nonnegative(),
3537
- comparableProjectCount: z24.number().int().nonnegative(),
3538
- firstSweepProjectCount: z24.number().int().nonnegative(),
3539
- changeFeed: z24.array(portfolioChangeSchema),
3540
- changeFeedTotal: z24.number().int().nonnegative(),
3541
- feedEmptyState: portfolioFeedEmptyStateSchema.nullable(),
3542
- recentRuns: z24.array(portfolioRunSchema),
3543
- projects: z24.array(portfolioProjectRowSchema)
3544
- });
3545
3458
 
3546
3459
  // ../contracts/src/content.ts
3547
3460
  import { z as z25 } from "zod";
@@ -5180,21 +5093,6 @@ function formatDateRange(start, end) {
5180
5093
  if (start && end) return `${formatDate(start)} \u2192 ${formatDate(end)}`;
5181
5094
  return formatDate(start || end);
5182
5095
  }
5183
- function formatRelativeTime(fromIso, nowIso) {
5184
- if (!fromIso) return "\u2014";
5185
- const from = Date.parse(fromIso);
5186
- const now = Date.parse(nowIso);
5187
- if (Number.isNaN(from) || Number.isNaN(now)) return formatDate(fromIso);
5188
- const diffMs = now - from;
5189
- if (diffMs < 6e4) return "just now";
5190
- const minutes = Math.floor(diffMs / 6e4);
5191
- if (minutes < 60) return `${minutes}m ago`;
5192
- const hours = Math.floor(minutes / 60);
5193
- if (hours < 24) return `${hours}h ago`;
5194
- const days = Math.floor(hours / 24);
5195
- if (days <= 7) return `${days}d ago`;
5196
- return formatDate(fromIso);
5197
- }
5198
5096
  var DATE_ONLY_PATTERN = /^\d{4}-\d{2}-\d{2}$/;
5199
5097
  function parseInclusiveEndMs(iso) {
5200
5098
  const ms = Date.parse(iso);
@@ -5682,8 +5580,6 @@ export {
5682
5580
  ccAvailableReleaseSchema,
5683
5581
  ccCachedReleaseSchema,
5684
5582
  projectOverviewDtoSchema,
5685
- PortfolioChangeTypes,
5686
- portfolioDtoSchema,
5687
5583
  ContentActions,
5688
5584
  contentActionLabel,
5689
5585
  actionConfidenceLabel,
@@ -5756,7 +5652,6 @@ export {
5756
5652
  formatDate,
5757
5653
  formatIsoDate,
5758
5654
  formatDateRange,
5759
- formatRelativeTime,
5760
5655
  parseInclusiveEndMs,
5761
5656
  deltaPercent,
5762
5657
  deltaTone,