@grimoire-rs/indexer 0.4.0 → 0.4.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 (47) hide show
  1. package/README.md +83 -7
  2. package/dist/cli/enrich.d.ts +1 -0
  3. package/dist/cli/enrich.d.ts.map +1 -1
  4. package/dist/cli/enrich.js +38 -0
  5. package/dist/cli/enrich.js.map +1 -1
  6. package/dist/cli/main.d.ts.map +1 -1
  7. package/dist/cli/main.js +1 -0
  8. package/dist/cli/main.js.map +1 -1
  9. package/dist/data/index.d.ts.map +1 -1
  10. package/dist/data/index.js +13 -0
  11. package/dist/data/index.js.map +1 -1
  12. package/dist/enrich/checkpoint.d.ts +53 -0
  13. package/dist/enrich/checkpoint.d.ts.map +1 -0
  14. package/dist/enrich/checkpoint.js +296 -0
  15. package/dist/enrich/checkpoint.js.map +1 -0
  16. package/dist/enrich/index.d.ts +14 -0
  17. package/dist/enrich/index.d.ts.map +1 -1
  18. package/dist/enrich/index.js +3 -3
  19. package/dist/enrich/index.js.map +1 -1
  20. package/dist/ratings/paging.d.ts +16 -0
  21. package/dist/ratings/paging.d.ts.map +1 -0
  22. package/dist/ratings/paging.js +36 -0
  23. package/dist/ratings/paging.js.map +1 -0
  24. package/dist/ratings/provider.d.ts +1 -9
  25. package/dist/ratings/provider.d.ts.map +1 -1
  26. package/dist/ratings/provider.js +11 -10
  27. package/dist/ratings/provider.js.map +1 -1
  28. package/dist/ratings/provider_github.d.ts.map +1 -1
  29. package/dist/ratings/provider_github.js +2 -1
  30. package/dist/ratings/provider_github.js.map +1 -1
  31. package/dist/ratings/provider_gitlab.d.ts.map +1 -1
  32. package/dist/ratings/provider_gitlab.js +2 -1
  33. package/dist/ratings/provider_gitlab.js.map +1 -1
  34. package/dist/renderer/astro/components/Catalog.js +3 -3
  35. package/dist/renderer/astro/components/Catalog.tsx +15 -9
  36. package/dist/renderer/astro/components/CommandField.astro +1 -0
  37. package/dist/renderer/astro/components/VersionMenu.astro +31 -23
  38. package/dist/renderer/astro/layouts/Base.astro +212 -264
  39. package/dist/renderer/astro/pages/p/[...slug].astro +99 -89
  40. package/dist/renderer/astro/styles/tokens.css +157 -0
  41. package/dist/validate/adapters/http.d.ts +23 -0
  42. package/dist/validate/adapters/http.d.ts.map +1 -1
  43. package/dist/validate/adapters/http.js +12 -1
  44. package/dist/validate/adapters/http.js.map +1 -1
  45. package/package.json +1 -1
  46. package/templates/ci/github-enrich.yml +9 -1
  47. package/templates/ci/gitlab-enrich.sh +10 -1
@@ -0,0 +1,296 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2026 The Grimoire Authors
3
+ /**
4
+ * The enrichment checkpoint — `enrich.json`, published beside `all.json` and
5
+ * read back by `grim-indexer enrich --seed`.
6
+ *
7
+ * `enrich` skips work by digest, and every one of those comparisons reads
8
+ * `enrich/<ns>/<name>/data.json` off disk. The scaffolded CI never has that
9
+ * file: the sidecars live only in the deploy job's workspace and are committed
10
+ * nowhere, so every deploy re-downloaded every README, changelog, logo and
11
+ * contents payload, and — worse — re-stamped `updated` on every artifact that
12
+ * carries no `created` of its own.
13
+ *
14
+ * So the live site is the checkpoint, exactly as it already is for ratings
15
+ * (`../ratings/seed.ts`): the build publishes the sidecar tree, and the next
16
+ * run seeds itself from what it published last time. `site` in
17
+ * `index.config.json` is the same validated base URL both read.
18
+ *
19
+ * **This document is not a read contract.** Unlike `stats.json`, nothing
20
+ * outside this package reads it and nothing should code against it.
21
+ *
22
+ * Failure is never fatal here. An unreachable, oversized, unparseable or
23
+ * unrecognised checkpoint warns and seeds nothing, which degrades to exactly
24
+ * the behaviour that shipped before it existed — a full re-enrich. `loadSeed`
25
+ * takes the opposite line because an empty ratings seed *wipes* every
26
+ * published rating; a missing enrich seed only costs bandwidth.
27
+ */
28
+ import fs from "node:fs";
29
+ import path from "node:path";
30
+ // The cycle is deliberate and benign, the same shape `ratings/provider.ts`
31
+ // documents: `compileIndex` writes the checkpoint, and the seed reads the
32
+ // index tree back to decide what it is allowed to hydrate. Everything crossing
33
+ // is a hoisted function declaration, referenced only from inside a closure.
34
+ import { findMetadataFiles, namespaceOf } from "../data/index.js";
35
+ import { LOGO_EXT, clearCompanions, clearContents } from "./index.js";
36
+ import { LARGE_RESPONSE_BYTES, request } from "../validate/adapters/http.js";
37
+ /** Published name, and the path `--seed` appends to `site`. */
38
+ export const CHECKPOINT_FILE = "enrich.json";
39
+ /**
40
+ * The document version.
41
+ *
42
+ * Worth carrying even though nothing outside this package reads it: the reader
43
+ * is always a *different build of this package than the writer* — last week's
44
+ * deploy wrote the file this week's run seeds from — so a format change really
45
+ * does cross a version boundary. An unrecognised version seeds nothing rather
46
+ * than guessing.
47
+ */
48
+ export const SCHEMA_VERSION = 1;
49
+ /**
50
+ * Every sidecar file the checkpoint carries, and the only names hydration will
51
+ * write. The set is the one `clearCompanions` and `clearContents` already
52
+ * enforce; a logo is handled separately because its extension comes from the
53
+ * registry.
54
+ */
55
+ const COMPANION_FILES = ["readme.md", "changelog.md", "contents.md", "contents.json"];
56
+ /**
57
+ * The `logo.<ext>` in a sidecar directory, if there is exactly one whose
58
+ * extension is acceptable.
59
+ *
60
+ * "Exactly one" is load-bearing on the read side: two logos mean the directory
61
+ * disagrees with itself about which one `data.logo` names, and a checkpoint
62
+ * that cannot say which file it meant has not earned the digest that would
63
+ * stop the companion being re-fetched.
64
+ */
65
+ function soleLogo(dir) {
66
+ if (!fs.existsSync(dir))
67
+ return undefined;
68
+ const found = fs
69
+ .readdirSync(dir)
70
+ .filter((entry) => entry.toLowerCase().startsWith("logo."))
71
+ .filter((entry) => LOGO_EXT.test(entry.slice(entry.indexOf(".") + 1)));
72
+ return found.length === 1 ? found[0] : undefined;
73
+ }
74
+ /**
75
+ * Publish the sidecar tree as one document.
76
+ *
77
+ * Called from `compileIndex`, which has already resolved every namespace and
78
+ * sidecar directory — re-walking the tree here would be a second derivation of
79
+ * the same answer.
80
+ *
81
+ * Base64 for every member, markdown included. `decode()` in `./index.ts`
82
+ * already treats a companion member as arbitrary bytes off a registry, so
83
+ * inlining the markdown as UTF-8 would save a fifth of the file in exchange
84
+ * for a validity branch on data that is not guaranteed to be text.
85
+ */
86
+ export function packCheckpoint(outDir, entries) {
87
+ const packages = {};
88
+ for (const { namespace, name, dir } of entries) {
89
+ const dataFile = path.join(dir, "data.json");
90
+ if (!fs.existsSync(dataFile))
91
+ continue;
92
+ let data;
93
+ try {
94
+ data = JSON.parse(fs.readFileSync(dataFile, "utf8"));
95
+ }
96
+ catch {
97
+ // A sidecar this build could not read is a sidecar the next run should
98
+ // fetch again, not one to publish half of.
99
+ continue;
100
+ }
101
+ const files = {};
102
+ for (const member of COMPANION_FILES) {
103
+ const file = path.join(dir, member);
104
+ if (fs.existsSync(file))
105
+ files[member] = fs.readFileSync(file).toString("base64");
106
+ }
107
+ const logo = soleLogo(dir);
108
+ if (logo)
109
+ files[logo.toLowerCase()] = fs.readFileSync(path.join(dir, logo)).toString("base64");
110
+ const entry = { data };
111
+ if (Object.keys(files).length > 0)
112
+ entry.files = files;
113
+ packages[`${namespace}/${name}`] = entry;
114
+ }
115
+ // Nothing enriched yet. An absent document and an empty one behave
116
+ // identically to the reader, and not writing keeps `dist/` honest about
117
+ // what this build actually had.
118
+ if (Object.keys(packages).length === 0)
119
+ return;
120
+ const document = { schema_version: SCHEMA_VERSION, packages };
121
+ const body = JSON.stringify(document) + "\n";
122
+ if (Buffer.byteLength(body) > LARGE_RESPONSE_BYTES) {
123
+ // Silence here would be a permanent, invisible regression: the file
124
+ // publishes fine and every future `--seed` refuses to read it, so the
125
+ // index quietly goes back to re-downloading everything for ever.
126
+ console.warn(`warn: ${CHECKPOINT_FILE} is larger than the ${LARGE_RESPONSE_BYTES} byte cap \`enrich --seed\` reads — ` +
127
+ `it will be published but not read back`);
128
+ }
129
+ fs.writeFileSync(path.join(outDir, CHECKPOINT_FILE), body);
130
+ }
131
+ /** A parsed document, or `null` with the reason already reported. */
132
+ async function loadCheckpoint(url) {
133
+ const response = await request(url, {}, { maxBytes: LARGE_RESPONSE_BYTES });
134
+ if (response.status === 404) {
135
+ // The first deploy, and the ordinary case for a young index.
136
+ console.log(`no ${CHECKPOINT_FILE} published yet — enriching everything`);
137
+ return null;
138
+ }
139
+ if (response.status < 200 || response.status >= 300) {
140
+ // `status: 0` lands here too: it is the transport catch and the over-cap
141
+ // read. So does a 3xx — `request()` refuses to follow redirects, so a site
142
+ // whose canonical host redirects pays for the checkpoint on every deploy.
143
+ // Deliberately not guarded with a cross-check against the forge's own
144
+ // Pages URL the way the ratings seed is: a wrong ratings seed empties
145
+ // every published rating, where a missed enrich seed only re-downloads.
146
+ console.warn(`warn: could not read ${url} (HTTP ${response.status}) — enriching everything`);
147
+ return null;
148
+ }
149
+ let parsed;
150
+ try {
151
+ parsed = JSON.parse(response.body);
152
+ }
153
+ catch (err) {
154
+ console.warn(`warn: ${url} did not parse (${err.message}) — enriching everything`);
155
+ return null;
156
+ }
157
+ if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
158
+ console.warn(`warn: ${url} is not a JSON object — enriching everything`);
159
+ return null;
160
+ }
161
+ const doc = parsed;
162
+ if (doc.schema_version !== SCHEMA_VERSION) {
163
+ console.warn(`warn: ${url} declares schema_version ${JSON.stringify(doc.schema_version)}, ` +
164
+ `this build reads ${SCHEMA_VERSION} — enriching everything`);
165
+ return null;
166
+ }
167
+ const packages = doc.packages;
168
+ if (packages === null || typeof packages !== "object" || Array.isArray(packages)) {
169
+ console.warn(`warn: ${url} carries no packages object — enriching everything`);
170
+ return null;
171
+ }
172
+ return { schema_version: SCHEMA_VERSION, packages: packages };
173
+ }
174
+ /**
175
+ * Write one package's files, and return the names that actually landed.
176
+ *
177
+ * Filenames are chosen from [`COMPANION_FILES`] and `logo.<ext>` gated on
178
+ * [`LOGO_EXT`] — never echoed from the document — and the directory comes from
179
+ * the index's own tree, so no part of a path here is attacker-controlled.
180
+ */
181
+ function hydrateFiles(dir, files) {
182
+ const written = new Set();
183
+ fs.mkdirSync(dir, { recursive: true });
184
+ clearCompanions(dir);
185
+ clearContents(dir);
186
+ for (const [name, content] of Object.entries(files)) {
187
+ if (typeof content !== "string")
188
+ continue;
189
+ const low = name.toLowerCase();
190
+ const logo = low.startsWith("logo.") && LOGO_EXT.test(low.slice(low.indexOf(".") + 1));
191
+ if (!COMPANION_FILES.includes(low) && !logo)
192
+ continue;
193
+ fs.writeFileSync(path.join(dir, low), Buffer.from(content, "base64"));
194
+ written.add(low);
195
+ }
196
+ return written;
197
+ }
198
+ /**
199
+ * Bring a hydrated `data.json` back into agreement with what is on disk, and
200
+ * drop the digest that guards anything it got wrong.
201
+ *
202
+ * Recomputing the flags alone is not enough, and this is the case worth
203
+ * catching: a document that claims `hasReadme: true`, carries no `readme.md`
204
+ * and carries a `descDigest` that still matches upstream would leave the site
205
+ * *self-consistent* — no README, no flag saying there is one — while
206
+ * `enrichOne`'s digest comparison keeps skipping the download. The README
207
+ * would never come back until the artifact happened to move on its own.
208
+ *
209
+ * Dropping the digest costs nothing and needs no new machinery: an absent
210
+ * `descDigest` makes the probe comparison false and takes the download branch,
211
+ * and an absent `contentDigest` makes `moved` true, re-stamping `updated` —
212
+ * which is right, because an entry that misdescribed its own files has not
213
+ * earned trust in its date either. A healthy package pays nothing.
214
+ */
215
+ function reconcile(data, dir, namespace, name, written) {
216
+ const logoFile = soleLogo(dir);
217
+ const logo = logoFile
218
+ ? `/logos/${namespace}/${name}.${logoFile.slice(logoFile.indexOf(".") + 1)}`
219
+ : undefined;
220
+ const actual = {
221
+ hasReadme: written.has("readme.md"),
222
+ hasChangelog: written.has("changelog.md"),
223
+ hasContents: written.has("contents.md") || written.has("contents.json"),
224
+ };
225
+ // `=== true` rather than a bare compare: an absent flag means "no such file",
226
+ // which is the same claim as `false`. Treating absence as a disagreement
227
+ // would drop a perfectly good digest on every sidecar written before a flag
228
+ // existed, and re-download the file it was still guarding.
229
+ const companionLied = (data.hasReadme === true) !== actual.hasReadme ||
230
+ (data.hasChangelog === true) !== actual.hasChangelog ||
231
+ (data.logo ?? undefined) !== logo;
232
+ const contentsLied = (data.hasContents === true) !== actual.hasContents;
233
+ data.hasReadme = actual.hasReadme;
234
+ data.hasChangelog = actual.hasChangelog;
235
+ data.hasContents = actual.hasContents;
236
+ if (logo)
237
+ data.logo = logo;
238
+ else
239
+ delete data.logo;
240
+ if (companionLied)
241
+ delete data.descDigest;
242
+ if (contentsLied)
243
+ delete data.contentDigest;
244
+ }
245
+ /**
246
+ * Restore `enrich/` from the published checkpoint, and report how many
247
+ * packages it seeded.
248
+ *
249
+ * Never throws. Every failure path warns and returns 0, which leaves the run
250
+ * doing exactly what it did before this existed.
251
+ *
252
+ * The iteration is over the **index**, never the document's keys: a package
253
+ * the index does not list is not seeded at all, so a key naming a path outside
254
+ * the tree describes a package that is simply never looked up. A sidecar that
255
+ * already exists on disk always wins — the checkpoint fills gaps, it does not
256
+ * overwrite a committed or freshly-enriched tree.
257
+ */
258
+ export async function seedFromCheckpoint(opts) {
259
+ const indexDir = path.join(opts.root, "index");
260
+ const enrichDir = path.join(opts.root, "enrich");
261
+ const document = await loadCheckpoint(opts.url);
262
+ if (!document)
263
+ return 0;
264
+ let seeded = 0;
265
+ for (const file of findMetadataFiles(indexDir)) {
266
+ let name;
267
+ try {
268
+ ({ name } = JSON.parse(fs.readFileSync(file, "utf8")));
269
+ }
270
+ catch {
271
+ continue; // `compileIndex` reports a malformed entry properly; not this.
272
+ }
273
+ if (typeof name !== "string" || name === "")
274
+ continue;
275
+ const namespace = namespaceOf(indexDir, file);
276
+ const dir = path.join(enrichDir, namespace, name);
277
+ if (fs.existsSync(path.join(dir, "data.json")))
278
+ continue;
279
+ const entry = document.packages[`${namespace}/${name}`];
280
+ if (entry === undefined)
281
+ continue;
282
+ const data = entry.data;
283
+ if (data === null || typeof data !== "object" || Array.isArray(data))
284
+ continue;
285
+ const files = entry.files;
286
+ const record = data;
287
+ const written = hydrateFiles(dir, files !== null && typeof files === "object" && !Array.isArray(files)
288
+ ? files
289
+ : {});
290
+ reconcile(record, dir, namespace, name, written);
291
+ fs.writeFileSync(path.join(dir, "data.json"), JSON.stringify(record, null, 1) + "\n");
292
+ seeded += 1;
293
+ }
294
+ return seeded;
295
+ }
296
+ //# sourceMappingURL=checkpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../src/enrich/checkpoint.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * A logo filename comes from the registry, which is not ours. Only an
3
+ * alphanumeric extension is ever joined onto a path — `logo.a/b` or
4
+ * `logo.` + traversal must not reach `writeFileSync`.
5
+ */
6
+ export declare const LOGO_EXT: RegExp;
1
7
  /** Runs one `grim` subcommand and parses its JSON. Injected so tests need no binary. */
2
8
  export type GrimRunner = (args: string[]) => Promise<unknown>;
3
9
  export interface EnrichOptions {
@@ -13,5 +19,13 @@ export interface EnrichResult {
13
19
  failures: string[];
14
20
  }
15
21
  export declare function spawnGrim(bin?: string): GrimRunner;
22
+ /**
23
+ * Drop companion files before rewriting them. Without this, content deleted
24
+ * upstream would render forever — the detail page globs the directory, it does
25
+ * not consult a flag in `data.json`.
26
+ */
27
+ export declare function clearCompanions(dir: string): void;
28
+ /** Both spellings, so a kind that changes shape upstream cannot leave the old one behind. */
29
+ export declare function clearContents(dir: string): void;
16
30
  export declare function enrichIndex(opts: EnrichOptions): Promise<EnrichResult>;
17
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/enrich/index.ts"],"names":[],"mappings":"AAuCA,wFAAwF;AACxF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AASD,wBAAgB,SAAS,CAAC,GAAG,SAAS,GAAG,UAAU,CASlD;AAkQD,wBAAsB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAsB5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/enrich/index.ts"],"names":[],"mappings":"AAgCA;;;;GAIG;AACH,eAAO,MAAM,QAAQ,QAAuB,CAAC;AAE7C,wFAAwF;AACxF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AASD,wBAAgB,SAAS,CAAC,GAAG,SAAS,GAAG,UAAU,CASlD;AAgFD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQjD;AAWD,6FAA6F;AAC7F,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI/C;AAqJD,wBAAsB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAsB5E"}
@@ -30,7 +30,7 @@ const MAX_OUTPUT_BYTES = 16 * 1024 * 1024;
30
30
  * alphanumeric extension is ever joined onto a path — `logo.a/b` or
31
31
  * `logo.` + traversal must not reach `writeFileSync`.
32
32
  */
33
- const LOGO_EXT = /^[A-Za-z0-9]{1,8}$/;
33
+ export const LOGO_EXT = /^[A-Za-z0-9]{1,8}$/;
34
34
  export function spawnGrim(bin = "grim") {
35
35
  return async (args) => {
36
36
  const { stdout } = await execFileAsync(bin, [...args, "--format", "json"], {
@@ -124,7 +124,7 @@ function decode(member) {
124
124
  * upstream would render forever — the detail page globs the directory, it does
125
125
  * not consult a flag in `data.json`.
126
126
  */
127
- function clearCompanions(dir) {
127
+ export function clearCompanions(dir) {
128
128
  if (!fs.existsSync(dir))
129
129
  return;
130
130
  for (const entry of fs.readdirSync(dir)) {
@@ -143,7 +143,7 @@ function clearCompanions(dir) {
143
143
  const MARKDOWN_KINDS = new Set(["skill", "rule", "agent"]);
144
144
  const JSON_KINDS = new Set(["bundle", "mcp"]);
145
145
  /** Both spellings, so a kind that changes shape upstream cannot leave the old one behind. */
146
- function clearContents(dir) {
146
+ export function clearContents(dir) {
147
147
  for (const name of ["contents.md", "contents.json"]) {
148
148
  fs.rmSync(path.join(dir, name), { force: true });
149
149
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/enrich/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/enrich/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Nodes per page.
3
+ *
4
+ * 50 rather than the API maximum of 100. This used to be a workaround for
5
+ * `request()`'s fixed 1 MiB cap — a page carries every thread's full body,
6
+ * including bodies this bot did not write, so a container holding long human
7
+ * threads overran the cap and [`graphql`] reported it as a transport failure.
8
+ * That was a real failure on first runs, before any bot thread existed.
9
+ *
10
+ * The cap is now per-call (`LARGE_RESPONSE_BYTES`), so the size argument for
11
+ * keeping this at 50 is gone. It stays at 50 anyway: raising it changes request
12
+ * count and cursor behaviour for every existing index, which is a separate
13
+ * decision from fixing the overrun.
14
+ */
15
+ export declare const PAGE_SIZE = 50;
16
+ //# sourceMappingURL=paging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paging.d.ts","sourceRoot":"","sources":["../../src/ratings/paging.ts"],"names":[],"mappings":"AAsBA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,SAAS,KAAK,CAAC"}
@@ -0,0 +1,36 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2026 The Grimoire Authors
3
+ // Page size, alone in a module because of *where* it is read.
4
+ //
5
+ // `provider.ts` and the two implementations form a deliberate cycle: the
6
+ // factory imports both providers, and both import the shared plumbing back.
7
+ // `provider.ts` states the rule that makes that safe -- everything crossing the
8
+ // cycle is a hoisted function declaration, referenced only from inside a
9
+ // closure -- and a `const` interpolated into a module-level query string is
10
+ // precisely the case the rule excludes.
11
+ //
12
+ // It was declared in `provider.ts` and read at module scope by both providers,
13
+ // which the factory imports before it reaches the declaration. Under Node's ESM
14
+ // that is a temporal dead zone and every `ratings` run died on import; under
15
+ // Vitest's SSR transform the same read is a property access on a
16
+ // not-yet-populated namespace, so it quietly yielded `undefined` and shipped
17
+ // `first:undefined` in the query while 24 provider tests passed.
18
+ //
19
+ // Living here, the constant does not cross the cycle at all, so the rule holds
20
+ // by construction instead of by remembering it.
21
+ /**
22
+ * Nodes per page.
23
+ *
24
+ * 50 rather than the API maximum of 100. This used to be a workaround for
25
+ * `request()`'s fixed 1 MiB cap — a page carries every thread's full body,
26
+ * including bodies this bot did not write, so a container holding long human
27
+ * threads overran the cap and [`graphql`] reported it as a transport failure.
28
+ * That was a real failure on first runs, before any bot thread existed.
29
+ *
30
+ * The cap is now per-call (`LARGE_RESPONSE_BYTES`), so the size argument for
31
+ * keeping this at 50 is gone. It stays at 50 anyway: raising it changes request
32
+ * count and cursor behaviour for every existing index, which is a separate
33
+ * decision from fixing the overrun.
34
+ */
35
+ export const PAGE_SIZE = 50;
36
+ //# sourceMappingURL=paging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paging.js","sourceRoot":"","sources":["../../src/ratings/paging.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,sCAAsC;AAEtC,8DAA8D;AAC9D,EAAE;AACF,yEAAyE;AACzE,4EAA4E;AAC5E,gFAAgF;AAChF,yEAAyE;AACzE,4EAA4E;AAC5E,wCAAwC;AACxC,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,6EAA6E;AAC7E,iEAAiE;AACjE,6EAA6E;AAC7E,iEAAiE;AACjE,EAAE;AACF,+EAA+E;AAC/E,gDAAgD;AAEhD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC"}
@@ -11,6 +11,7 @@
11
11
  import { CliError, type ExitCode } from "../cli/exit.js";
12
12
  import { type AuthorizedThread } from "./marker.js";
13
13
  import type { TrustedBot } from "../validate/core/ownership.js";
14
+ export { PAGE_SIZE } from "./paging.js";
14
15
  /**
15
16
  * A thread the reconcile loop may tally. Declared as an alias of R-1's
16
17
  * `AuthorizedThread` rather than a second identical interface: R-1 is what
@@ -70,15 +71,6 @@ export declare class RateLimited extends ForgeError {
70
71
  }
71
72
  /** GitHub's documented floor when neither header says how long to wait. */
72
73
  export declare const BACKOFF_FLOOR_MS = 60000;
73
- /**
74
- * Nodes per page.
75
- *
76
- * ponytail: 50 rather than the API maximum of 100 because `request()` caps a
77
- * response at 1 MiB and a page carries every thread's full body — including
78
- * bodies this bot did not write. Halve it again, or teach `request()` a
79
- * per-call cap, if an index ever trips the cap on a legitimate page.
80
- */
81
- export declare const PAGE_SIZE = 50;
82
74
  /**
83
75
  * The body every provider writes. The marker sits on its own line, which is the
84
76
  * only position R-1's anchored parser accepts; the prose above it is for the
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ratings/provider.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAQ,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAOhE;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,WAAW,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACxC,6EAA6E;IAC7E,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAW,SAAQ,QAAQ;gBAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,QAA2B;CAI/D;AAED;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,UAAU;IACzC,0EAA0E;IAC1E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;gBAE/B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,YAAY,EAAO;CAM1F;AAED,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAEvC;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ9C;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED,6EAA6E;AAC7E,wBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAE5D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAGjE;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAG9C;AAqDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,OAAO,CAC3B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,QAAQ,GAAE,SAAS,YAAY,EAAO,GACrC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA8ClC;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EACzB,MAAM,EAAE,oBAAoB,GAC3B,cAAc,CAIhB"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ratings/provider.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAQ,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAQhE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,WAAW,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACxC,6EAA6E;IAC7E,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAW,SAAQ,QAAQ;gBAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,QAA2B;CAI/D;AAED;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,UAAU;IACzC,0EAA0E;IAC1E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;gBAE/B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,YAAY,EAAO;CAM1F;AAED,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAGvC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ9C;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED,6EAA6E;AAC7E,wBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAE5D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAGjE;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAG9C;AAqDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,OAAO,CAC3B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,QAAQ,GAAE,SAAS,YAAY,EAAO,GACrC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmDlC;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EACzB,MAAM,EAAE,oBAAoB,GAC3B,cAAc,CAIhB"}
@@ -11,11 +11,16 @@
11
11
  * one of them turns into an empty tally.
12
12
  */
13
13
  import { CliError, EXIT } from "../cli/exit.js";
14
- import { request } from "../validate/adapters/http.js";
14
+ import { LARGE_RESPONSE_BYTES, request } from "../validate/adapters/http.js";
15
15
  import { buildMarker } from "./marker.js";
16
16
  // The factory owns the dispatch, so it imports both implementations while they
17
17
  // import the shared plumbing back. ESM handles the cycle: everything crossing it
18
18
  // is a hoisted function declaration, referenced only from inside a closure.
19
+ //
20
+ // A `const` read at module scope is the case that rule excludes, and `PAGE_SIZE`
21
+ // was one -- see `paging.ts`, which is why it lives there and not here. Re-exported
22
+ // so callers still have one place to look.
23
+ export { PAGE_SIZE } from "./paging.js";
19
24
  import { githubProvider as github } from "./provider_github.js";
20
25
  import { gitlabProvider as gitlab } from "./provider_gitlab.js";
21
26
  /**
@@ -52,15 +57,6 @@ export class RateLimited extends ForgeError {
52
57
  }
53
58
  /** GitHub's documented floor when neither header says how long to wait. */
54
59
  export const BACKOFF_FLOOR_MS = 60_000;
55
- /**
56
- * Nodes per page.
57
- *
58
- * ponytail: 50 rather than the API maximum of 100 because `request()` caps a
59
- * response at 1 MiB and a page carries every thread's full body — including
60
- * bodies this bot did not write. Halve it again, or teach `request()` a
61
- * per-call cap, if an index ever trips the cap on a legitimate page.
62
- */
63
- export const PAGE_SIZE = 50;
64
60
  /**
65
61
  * The body every provider writes. The marker sits on its own line, which is the
66
62
  * only position R-1's anchored parser accepts; the prose above it is for the
@@ -158,6 +154,11 @@ export async function graphql(api, headers, query, variables, observed = []) {
158
154
  const response = await request(api, { ...headers, "Content-Type": "application/json" }, {
159
155
  method: "POST",
160
156
  body: JSON.stringify({ query, variables }),
157
+ // A page is `PAGE_SIZE` threads and every one of their bodies. The default
158
+ // 1 MiB is sized for a small JSON document, and overrunning it lands as
159
+ // `status: 0` below — reported as a transport failure, which is what an
160
+ // oversized first page was being misdiagnosed as.
161
+ maxBytes: LARGE_RESPONSE_BYTES,
161
162
  });
162
163
  const wait = rateLimitOf(response);
163
164
  if (wait !== null) {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/ratings/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/ratings/provider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider_github.d.ts","sourceRoot":"","sources":["../../src/ratings/provider_github.ts"],"names":[],"mappings":"AAYA,OAAO,EAQL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAE1B,MAAM,eAAe,CAAC;AAyCvB,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CAiG3E"}
1
+ {"version":3,"file":"provider_github.d.ts","sourceRoot":"","sources":["../../src/ratings/provider_github.ts"],"names":[],"mappings":"AAYA,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAE1B,MAAM,eAAe,CAAC;AA0CvB,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CAiG3E"}
@@ -8,7 +8,8 @@
8
8
  * instead would multiply nested-node cost for the same number.
9
9
  */
10
10
  import { authorizeThread } from "./marker.js";
11
- import { ForgeError, PAGE_SIZE, at, graphql, nodes, threadBody, stringAt, } from "./provider.js";
11
+ import { ForgeError, at, graphql, nodes, threadBody, stringAt, } from "./provider.js";
12
+ import { PAGE_SIZE } from "./paging.js";
12
13
  import { EXIT } from "../cli/exit.js";
13
14
  const CATEGORIES = `
14
15
  query($owner:String!,$name:String!){
@@ -1 +1 @@
1
- {"version":3,"file":"provider_github.js","sourceRoot":"","sources":["../../src/ratings/provider_github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider_github.js","sourceRoot":"","sources":["../../src/ratings/provider_github.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider_gitlab.d.ts","sourceRoot":"","sources":["../../src/ratings/provider_gitlab.ts"],"names":[],"mappings":"AAcA,OAAO,EAQL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAE1B,MAAM,eAAe,CAAC;AA+DvB,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CA8F3E"}
1
+ {"version":3,"file":"provider_gitlab.d.ts","sourceRoot":"","sources":["../../src/ratings/provider_gitlab.ts"],"names":[],"mappings":"AAcA,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAE1B,MAAM,eAAe,CAAC;AAgEvB,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CA8F3E"}