@rivi-software/agentic-seo-check 0.2.0 → 0.3.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 (76) hide show
  1. package/README.md +8 -4
  2. package/dist/core/aeo/page.d.ts +0 -10
  3. package/dist/core/aeo/page.js +1 -29
  4. package/dist/core/aeo/page.js.map +1 -1
  5. package/dist/core/audit.js +3 -0
  6. package/dist/core/audit.js.map +1 -1
  7. package/dist/core/crawl.d.ts +2 -0
  8. package/dist/core/crawl.js +61 -4
  9. package/dist/core/crawl.js.map +1 -1
  10. package/dist/core/fetch.d.ts +9 -0
  11. package/dist/core/fetch.js +28 -12
  12. package/dist/core/fetch.js.map +1 -1
  13. package/dist/core/html/dom.d.ts +2 -0
  14. package/dist/core/html/dom.js +26 -1
  15. package/dist/core/html/dom.js.map +1 -1
  16. package/dist/core/html/extract.js +18 -3
  17. package/dist/core/html/extract.js.map +1 -1
  18. package/dist/core/html/head.d.ts +10 -0
  19. package/dist/core/html/head.js +206 -0
  20. package/dist/core/html/head.js.map +1 -0
  21. package/dist/core/html/resources.d.ts +17 -0
  22. package/dist/core/html/resources.js +172 -0
  23. package/dist/core/html/resources.js.map +1 -0
  24. package/dist/core/html/structured-data.d.ts +2 -0
  25. package/dist/core/html/structured-data.js +2 -0
  26. package/dist/core/html/structured-data.js.map +1 -1
  27. package/dist/core/robots.js +1 -0
  28. package/dist/core/robots.js.map +1 -1
  29. package/dist/core/rules/aeo.js +2 -2
  30. package/dist/core/rules/aeo.js.map +1 -1
  31. package/dist/core/rules/canonical.d.ts +3 -0
  32. package/dist/core/rules/canonical.js +54 -2
  33. package/dist/core/rules/canonical.js.map +1 -1
  34. package/dist/core/rules/document.js +4 -2
  35. package/dist/core/rules/document.js.map +1 -1
  36. package/dist/core/rules/head.d.ts +1 -0
  37. package/dist/core/rules/head.js +116 -0
  38. package/dist/core/rules/head.js.map +1 -0
  39. package/dist/core/rules/index.js +8 -0
  40. package/dist/core/rules/index.js.map +1 -1
  41. package/dist/core/rules/indexing.d.ts +10 -0
  42. package/dist/core/rules/indexing.js +171 -9
  43. package/dist/core/rules/indexing.js.map +1 -1
  44. package/dist/core/rules/loading.d.ts +1 -0
  45. package/dist/core/rules/loading.js +138 -0
  46. package/dist/core/rules/loading.js.map +1 -0
  47. package/dist/core/rules/rule.d.ts +2 -0
  48. package/dist/core/rules/rule.js +2 -0
  49. package/dist/core/rules/rule.js.map +1 -1
  50. package/dist/core/rules/structured-data-values.d.ts +3 -0
  51. package/dist/core/rules/structured-data-values.js +316 -0
  52. package/dist/core/rules/structured-data-values.js.map +1 -0
  53. package/dist/core/rules/structured-data.js +50 -20
  54. package/dist/core/rules/structured-data.js.map +1 -1
  55. package/dist/core/rules/urls.d.ts +1 -0
  56. package/dist/core/rules/urls.js +293 -0
  57. package/dist/core/rules/urls.js.map +1 -0
  58. package/dist/core/site-probes.d.ts +33 -0
  59. package/dist/core/site-probes.js +144 -0
  60. package/dist/core/site-probes.js.map +1 -0
  61. package/dist/core/site-rules.d.ts +18 -0
  62. package/dist/core/site-rules.js +479 -5
  63. package/dist/core/site-rules.js.map +1 -1
  64. package/dist/core/sitemap.d.ts +38 -1
  65. package/dist/core/sitemap.js +177 -43
  66. package/dist/core/sitemap.js.map +1 -1
  67. package/dist/core/static.d.ts +6 -0
  68. package/dist/core/static.js +121 -12
  69. package/dist/core/static.js.map +1 -1
  70. package/dist/core/types.d.ts +91 -0
  71. package/dist/core/types.js.map +1 -1
  72. package/dist/core/url.d.ts +2 -0
  73. package/dist/core/url.js +8 -0
  74. package/dist/core/url.js.map +1 -1
  75. package/package.json +1 -1
  76. package/skills/seo-audit/SKILL.md +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"site-rules.js","sourceRoot":"","sources":["../../src/core/site-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"site-rules.js","sourceRoot":"","sources":["../../src/core/site-rules.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,50 @@
1
1
  import type { FetchOptions } from "./fetch.js";
2
- import type { SitemapInfo } from "./types.js";
2
+ import type { SitemapInfo, SitemapProblems } from "./types.js";
3
+ /** One sitemap file may hold this many URLs (sitemaps.org; Google applies the same limits). */
4
+ export declare const SITEMAP_MAX_URLS = 50000;
5
+ /** And this many bytes, uncompressed. */
6
+ export declare const SITEMAP_MAX_BYTES = 52428800;
7
+ /** The most of one sitemap this audit reads, uncompressed; parsing more would cost too much memory. */
8
+ export declare const SITEMAP_READ_BYTES = 15000000;
3
9
  export interface SitemapLimits {
4
10
  maxSitemaps?: number;
5
11
  maxUrls?: number;
12
+ /**
13
+ * The audited site's host. A sitemap the site's robots.txt names may list its URLs from another
14
+ * host (Google allows it), so URLs are compared with this host, not the sitemap's.
15
+ */
16
+ siteHost?: string;
17
+ includeSubdomains?: boolean;
6
18
  }
7
19
  export interface ParsedSitemap {
8
20
  kind: "urlset" | "sitemapindex" | "text" | "unknown";
9
21
  locs: string[];
22
+ /** The <lastmod> of each entry in `locs`, or null where it has none. */
23
+ lastmods: (string | null)[];
10
24
  }
11
25
  export declare const parseSitemap: (body: string, contentType?: string | null) => ParsedSitemap;
26
+ /**
27
+ * A sitemap file's text: gunzipped when it is gzip (a .xml.gz file), or an error. Inflating stops
28
+ * at the same 15 MB budget a plain sitemap is read up to (`tooLarge`), so a small file that
29
+ * inflates to gigabytes costs no more than a large plain one.
30
+ */
31
+ export declare const sitemapText: (bytes: Buffer) => Promise<{
32
+ text: string;
33
+ bytes: number;
34
+ } | {
35
+ error: string;
36
+ tooLarge: boolean;
37
+ }>;
38
+ export declare const emptySitemapProblems: () => SitemapProblems;
39
+ export interface InspectOptions {
40
+ /** The sitemap was listed by a sitemap index. */
41
+ fromIndex: boolean;
42
+ /** The audited site's host, to compare each URL with, or null to skip that (build output on a placeholder host). */
43
+ siteHost: string | null;
44
+ includeSubdomains?: boolean;
45
+ now: number;
46
+ }
47
+ /** Record where one parsed sitemap file breaks the protocol. */
48
+ export declare const inspectSitemap: (problems: SitemapProblems, sitemap: string, parsed: ParsedSitemap, bytes: number, options: InspectOptions) => void;
12
49
  /** Fetch sitemap candidates (following sitemap indexes) and collect page URLs. */
13
50
  export declare const loadSitemaps: (candidates: string[], options?: FetchOptions, limits?: SitemapLimits) => Promise<SitemapInfo>;
@@ -1,5 +1,14 @@
1
+ import { promisify } from "node:util";
2
+ import { gunzip } from "node:zlib";
1
3
  import { XMLParser } from "fast-xml-parser";
2
4
  import { fetchPage } from "./fetch.js";
5
+ import { isSameSite } from "./url.js";
6
+ /** One sitemap file may hold this many URLs (sitemaps.org; Google applies the same limits). */
7
+ export const SITEMAP_MAX_URLS = 50_000;
8
+ /** And this many bytes, uncompressed. */
9
+ export const SITEMAP_MAX_BYTES = 52_428_800;
10
+ /** The most of one sitemap this audit reads, uncompressed; parsing more would cost too much memory. */
11
+ export const SITEMAP_READ_BYTES = 15_000_000;
3
12
  const parser = new XMLParser({
4
13
  ignoreAttributes: true,
5
14
  isArray: (name) => name === "url" || name === "sitemap",
@@ -7,87 +16,188 @@ const parser = new XMLParser({
7
16
  const isString = (value) => typeof value === "string";
8
17
  const isNumber = (value) => typeof value === "number";
9
18
  const isEntry = (value) => Boolean(value) && typeof value === "object";
10
- const locsOf = (entries) => {
11
- const out = [];
19
+ /** The text of one child element; the parser turns a number-like text into a number. */
20
+ const textOf = (entry, child) => {
21
+ const value = entry[child];
22
+ if (isString(value) && value.trim()) {
23
+ return value.trim();
24
+ }
25
+ return isNumber(value) ? String(value) : null;
26
+ };
27
+ const entriesOf = (entries) => {
28
+ const locs = [];
29
+ const lastmods = [];
12
30
  for (const e of entries) {
13
- const loc = isEntry(e) ? e.loc : undefined;
14
- if (isString(loc) && loc.trim()) {
15
- out.push(loc.trim());
16
- }
17
- else if (isNumber(loc)) {
18
- out.push(String(loc));
31
+ const loc = isEntry(e) ? textOf(e, "loc") : null;
32
+ if (loc) {
33
+ locs.push(loc);
34
+ lastmods.push(isEntry(e) ? textOf(e, "lastmod") : null);
19
35
  }
20
36
  }
21
- return out;
37
+ return { locs, lastmods };
22
38
  };
23
39
  export const parseSitemap = (body, contentType = null) => {
24
40
  const trimmed = body.trim();
25
41
  if (!trimmed) {
26
- return { kind: "unknown", locs: [] };
42
+ return { kind: "unknown", locs: [], lastmods: [] };
27
43
  }
28
44
  if (!trimmed.startsWith("<")) {
29
45
  if ((contentType ?? "").includes("text/plain") ||
30
46
  /^https?:\/\//mu.test(trimmed)) {
31
- return {
32
- kind: "text",
33
- locs: trimmed
34
- .split(/\r?\n/u)
35
- .map((l) => l.trim())
36
- .filter((l) => /^https?:\/\//iu.test(l)),
37
- };
47
+ const locs = trimmed
48
+ .split(/\r?\n/u)
49
+ .map((l) => l.trim())
50
+ .filter((l) => /^https?:\/\//iu.test(l));
51
+ return { kind: "text", locs, lastmods: locs.map(() => null) };
38
52
  }
39
- return { kind: "unknown", locs: [] };
53
+ return { kind: "unknown", locs: [], lastmods: [] };
40
54
  }
41
55
  let doc;
42
56
  try {
43
57
  doc = parser.parse(trimmed);
44
58
  }
45
59
  catch {
46
- return { kind: "unknown", locs: [] };
60
+ return { kind: "unknown", locs: [], lastmods: [] };
47
61
  }
48
- if (doc.sitemapindex) {
49
- const entries = doc.sitemapindex.sitemap;
62
+ if (doc.sitemapindex !== undefined) {
63
+ const entries = doc.sitemapindex === "" ? undefined : doc.sitemapindex.sitemap;
50
64
  return {
51
65
  kind: "sitemapindex",
52
- locs: Array.isArray(entries) ? locsOf(entries) : [],
66
+ ...entriesOf(Array.isArray(entries) ? entries : []),
53
67
  };
54
68
  }
55
- if (doc.urlset) {
56
- const entries = doc.urlset.url;
69
+ if (doc.urlset !== undefined) {
70
+ const entries = doc.urlset === "" ? undefined : doc.urlset.url;
57
71
  return {
58
72
  kind: "urlset",
59
- locs: Array.isArray(entries) ? locsOf(entries) : [],
73
+ ...entriesOf(Array.isArray(entries) ? entries : []),
60
74
  };
61
75
  }
62
- return { kind: "unknown", locs: [] };
76
+ return { kind: "unknown", locs: [], lastmods: [] };
63
77
  };
64
- const fetchSitemap = async (url, candidates, options) => {
65
- if (url.endsWith(".gz")) {
78
+ const gunzipAsync = promisify(gunzip);
79
+ /**
80
+ * A sitemap file's text: gunzipped when it is gzip (a .xml.gz file), or an error. Inflating stops
81
+ * at the same 15 MB budget a plain sitemap is read up to (`tooLarge`), so a small file that
82
+ * inflates to gigabytes costs no more than a large plain one.
83
+ */
84
+ export const sitemapText = async (bytes) => {
85
+ if (bytes[0] !== 0x1f || bytes[1] !== 0x8b) {
86
+ return { text: bytes.toString("utf-8"), bytes: bytes.length };
87
+ }
88
+ try {
89
+ const inflated = await gunzipAsync(bytes, {
90
+ maxOutputLength: SITEMAP_READ_BYTES + 1,
91
+ });
92
+ return { text: inflated.toString("utf-8"), bytes: inflated.length };
93
+ }
94
+ catch (error) {
95
+ const tooLarge = error instanceof RangeError ||
96
+ (error instanceof Error &&
97
+ "code" in error &&
98
+ error.code === "ERR_BUFFER_TOO_LARGE");
66
99
  return {
67
- kind: "error",
68
- message: `${url}: gzip sitemaps are not supported yet`,
100
+ error: tooLarge
101
+ ? "inflates to more than the 15 MB this audit reads"
102
+ : `is not valid gzip (${error instanceof Error ? error.message : String(error)})`,
103
+ tooLarge,
69
104
  };
70
105
  }
106
+ };
107
+ export const emptySitemapProblems = () => ({
108
+ oversized: [],
109
+ nestedIndexes: [],
110
+ invalidLastmod: { count: 0, examples: [] },
111
+ futureLastmod: { count: 0, examples: [] },
112
+ otherHost: { count: 0, examples: [] },
113
+ });
114
+ /*
115
+ * W3C Datetime: a year, a month, a day, then a time with an optional time zone. A time without a
116
+ * zone breaks the format but is common, and search engines read it, so it passes.
117
+ */
118
+ const W3C_DATETIME = /^\d{4}(?:-\d{2}(?:-\d{2}(?:T\d{2}:\d{2}(?::\d{2}(?:\.\d{1,9})?)?(?:Z|[+-]\d{2}:\d{2})?)?)?)?$/u;
119
+ /** A day of slack, so a lastmod written in a time zone ahead of the audit's is not "future". */
120
+ const FUTURE_SLACK_MS = 86_400_000;
121
+ const note = (list, example) => {
122
+ list.count += 1;
123
+ if (list.examples.length < 10) {
124
+ list.examples.push(example.slice(0, 300));
125
+ }
126
+ };
127
+ /** Record where one parsed sitemap file breaks the protocol. */
128
+ export const inspectSitemap = (problems, sitemap, parsed, bytes, options) => {
129
+ if (parsed.kind === "sitemapindex" && options.fromIndex) {
130
+ problems.nestedIndexes.push(sitemap);
131
+ }
132
+ if (parsed.locs.length > SITEMAP_MAX_URLS || bytes > SITEMAP_MAX_BYTES) {
133
+ problems.oversized.push({
134
+ sitemap,
135
+ urls: parsed.locs.length,
136
+ bytes,
137
+ overLimit: true,
138
+ });
139
+ }
140
+ if (parsed.kind !== "urlset") {
141
+ return;
142
+ }
143
+ const { siteHost } = options;
144
+ for (const [i, loc] of parsed.locs.entries()) {
145
+ const lastmod = parsed.lastmods[i];
146
+ if (lastmod) {
147
+ const value = lastmod.slice(0, 64);
148
+ if (!W3C_DATETIME.test(value)) {
149
+ note(problems.invalidLastmod, `${loc} (${value})`);
150
+ }
151
+ else if (Date.parse(value) > options.now + FUTURE_SLACK_MS) {
152
+ note(problems.futureLastmod, `${loc} (${value})`);
153
+ }
154
+ }
155
+ if (siteHost && !isSameSite(loc, siteHost, options.includeSubdomains)) {
156
+ note(problems.otherHost, `${loc} (in ${sitemap})`);
157
+ }
158
+ }
159
+ };
160
+ const fetchSitemap = async (url, candidates, options) => {
71
161
  const res = await fetchPage(url, {
72
162
  ...options,
73
163
  timeoutMs: Math.min(options.timeoutMs ?? 15_000, 20_000),
74
- maxBodyBytes: 15_000_000,
164
+ maxBodyBytes: SITEMAP_READ_BYTES,
165
+ keepBytes: true,
75
166
  });
76
167
  if (res.error) {
77
168
  return { kind: "error", message: `${url}: ${res.error}` };
78
169
  }
79
- if (res.status !== 200 || res.body === null) {
170
+ if (res.status !== 200 || res.body === null || !res.bytes) {
80
171
  // A sitemap that answers 404 is passed over without an error.
81
172
  if (res.status !== 404) {
82
173
  return { kind: "error", message: `${url}: HTTP ${res.status}` };
83
174
  }
84
175
  return { kind: "skip" };
85
176
  }
86
- const parsed = parseSitemap(res.body, res.contentType);
177
+ if (res.truncated) {
178
+ const declared = Number(res.headers["content-length"]);
179
+ const known = Number.isFinite(declared) && declared > 0 ? declared : null;
180
+ // Content-Length counts compressed bytes for a Content-Encoding response or a gzip file; the
181
+ // uncompressed size is then unknown, though it can only be larger.
182
+ const compressed = Boolean(res.headers["content-encoding"]) ||
183
+ (res.bytes[0] === 0x1f && res.bytes[1] === 0x8b);
184
+ return {
185
+ kind: "oversized",
186
+ bytes: compressed ? null : known,
187
+ overLimit: known !== null && known > SITEMAP_MAX_BYTES,
188
+ };
189
+ }
190
+ const text = await sitemapText(res.bytes);
191
+ if ("error" in text) {
192
+ return text.tooLarge
193
+ ? { kind: "oversized", bytes: null, overLimit: false }
194
+ : { kind: "error", message: `${url}: ${text.error}` };
195
+ }
196
+ const parsed = parseSitemap(text.text, res.contentType);
87
197
  if (parsed.kind !== "unknown") {
88
- return { kind: "parsed", parsed };
198
+ return { kind: "parsed", parsed, bytes: text.bytes };
89
199
  }
90
- if (!/<html/iu.test(res.body.slice(0, 1000))) {
200
+ if (!/<html/iu.test(text.text.slice(0, 1000))) {
91
201
  return { kind: "error", message: `${url}: could not parse as a sitemap` };
92
202
  }
93
203
  // The one guessed /sitemap.xml answered with an SPA's fallback page: there is no sitemap.
@@ -100,30 +210,54 @@ const fetchSitemap = async (url, candidates, options) => {
100
210
  export const loadSitemaps = async (candidates, options = {}, limits = {}) => {
101
211
  const maxSitemaps = limits.maxSitemaps ?? 25;
102
212
  const maxUrls = limits.maxUrls ?? 5000;
103
- const info = { sources: [], urls: [], urlCount: 0, errors: [] };
104
- const queue = [...new Set(candidates)];
213
+ const info = {
214
+ sources: [],
215
+ urls: [],
216
+ urlCount: 0,
217
+ errors: [],
218
+ problems: emptySitemapProblems(),
219
+ };
220
+ const queue = [...new Set(candidates)].map((url) => ({
221
+ url,
222
+ fromIndex: false,
223
+ }));
105
224
  const seen = new Set();
106
225
  const urls = new Set();
107
- while (queue.length > 0 &&
108
- info.sources.length < maxSitemaps &&
109
- urls.size < maxUrls) {
110
- const url = queue.shift();
111
- if (url === undefined || seen.has(url)) {
226
+ const now = Date.now();
227
+ // Count every download, not only the sitemaps that parsed: one over the read limit still costs 15 MB.
228
+ while (queue.length > 0 && seen.size < maxSitemaps && urls.size < maxUrls) {
229
+ const next = queue.shift();
230
+ if (next === undefined || seen.has(next.url)) {
112
231
  continue;
113
232
  }
233
+ const { url, fromIndex } = next;
114
234
  seen.add(url);
115
235
  // oxlint-disable-next-line eslint/no-await-in-loop -- a sitemap index adds the sitemaps to fetch next, and the limits count what the earlier ones gave
116
236
  const fetched = await fetchSitemap(url, candidates, options);
117
237
  if (fetched.kind === "error") {
118
238
  info.errors.push(fetched.message);
119
239
  }
240
+ if (fetched.kind === "oversized") {
241
+ info.problems.oversized.push({
242
+ sitemap: url,
243
+ urls: null,
244
+ bytes: fetched.bytes,
245
+ overLimit: fetched.overLimit,
246
+ });
247
+ }
120
248
  if (fetched.kind !== "parsed") {
121
249
  continue;
122
250
  }
123
251
  const { parsed } = fetched;
124
252
  info.sources.push(url);
253
+ inspectSitemap(info.problems, url, parsed, fetched.bytes, {
254
+ fromIndex,
255
+ siteHost: limits.siteHost ?? null,
256
+ includeSubdomains: limits.includeSubdomains,
257
+ now,
258
+ });
125
259
  if (parsed.kind === "sitemapindex") {
126
- queue.push(...parsed.locs);
260
+ queue.push(...parsed.locs.map((loc) => ({ url: loc, fromIndex: true })));
127
261
  }
128
262
  else {
129
263
  for (const loc of parsed.locs) {
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/core/sitemap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/core/sitemap.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,10 @@ export interface DirectoryOptions {
6
6
  maxPages: number;
7
7
  userAgent?: string;
8
8
  }
9
+ /**
10
+ * Whether `full` lies inside the directory `root`. Paths come from pages, robots.txt and sitemaps,
11
+ * so a decoded "%2e%2e" can climb out; a sibling such as root + "2" is outside too. path.relative
12
+ * also holds when root is a filesystem or drive root ("/", "D:\\"), which ends in a separator.
13
+ */
14
+ export declare const isInside: (root: string, full: string) => boolean;
9
15
  export declare const scanDirectory: (dir: string, options: DirectoryOptions) => Promise<CrawlResult>;