sdkproof 0.1.3 → 0.1.4

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.
@@ -10,6 +10,42 @@ export interface VerifyOptions {
10
10
  * clean under the fixture's strict tsconfig.
11
11
  */
12
12
  export declare function verify(candidate: Candidate, spec: VerifyTarget, opts: VerifyOptions): Promise<Verdict>;
13
+ /**
14
+ * The modules a candidate imported that tsc could not resolve and that are NOT
15
+ * the package under test.
16
+ *
17
+ * The exclusion is the whole point. A missing SUBPATH OF THE TARGET is a real
18
+ * finding — the model reached for an entrypoint the package does not publish —
19
+ * so it must stay a failure. A missing THIRD-PARTY module is the sandbox
20
+ * lacking something the task needed, which is the harness's fault, not the
21
+ * model's. Only the second kind is worth trying to install.
22
+ */
23
+ export declare function externalMissingModules(errors: TscError[], packageName: string): string[];
24
+ /**
25
+ * TS2307 specifiers that ARE subpaths of the package under test.
26
+ *
27
+ * These are the mirror of externalMissingModules() and they need the opposite
28
+ * treatment — but only after a second question is answered. A subpath the
29
+ * package genuinely does not publish is a real finding: the model reached for
30
+ * an entrypoint that is not there. A subpath that EXISTS in the installed
31
+ * package and still fails to resolve is the sandbox's module-resolution mode
32
+ * talking, and scoring it is inventing a finding.
33
+ *
34
+ * The sandbox is `"type": "module"` under `moduleResolution: "NodeNext"`, the
35
+ * strictest mode there is: a subpath must be listed in the package's `exports`
36
+ * map or be fully specified with an extension. Packages that predate `exports`
37
+ * fail on both counts while working perfectly in any real project.
38
+ *
39
+ * Measured 2026-08-23. `highcharts/modules/exporting.d.ts` is on disk and tsc
40
+ * still said "Cannot find module 'highcharts/modules/exporting'". expo 57 ships
41
+ * NO exports map at all, so `expo/config` — a directory holding index.d.ts —
42
+ * was unresolvable, and all four of expo's "failures" were this. Reported as
43
+ * drift, they would have been the first fabricated finding the project ever
44
+ * published.
45
+ *
46
+ * Resolution is the caller's job: this only names the candidates.
47
+ */
48
+ export declare function targetSubpathMisses(errors: TscError[], packageName: string): string[];
13
49
  /**
14
50
  * Detect a candidate that augments the module it is supposed to be USING.
15
51
  * Matches the package itself and any subpath entrypoint of it, so
@@ -102,6 +102,83 @@ export async function verify(candidate, spec, opts) {
102
102
  await rm(candidatePath, { force: true });
103
103
  }
104
104
  }
105
+ /**
106
+ * The modules a candidate imported that tsc could not resolve and that are NOT
107
+ * the package under test.
108
+ *
109
+ * The exclusion is the whole point. A missing SUBPATH OF THE TARGET is a real
110
+ * finding — the model reached for an entrypoint the package does not publish —
111
+ * so it must stay a failure. A missing THIRD-PARTY module is the sandbox
112
+ * lacking something the task needed, which is the harness's fault, not the
113
+ * model's. Only the second kind is worth trying to install.
114
+ */
115
+ export function externalMissingModules(errors, packageName) {
116
+ const found = new Set();
117
+ for (const e of errors) {
118
+ if (e.code !== "TS2307")
119
+ continue;
120
+ const m = /Cannot find module '([^']+)'/.exec(e.message);
121
+ if (!m)
122
+ continue;
123
+ const spec = m[1];
124
+ // A relative path is the candidate's own file layout, never an install.
125
+ if (spec.startsWith(".") || spec.startsWith("/"))
126
+ continue;
127
+ const parts = spec.split("/");
128
+ const root = spec.startsWith("@") ? parts.slice(0, 2).join("/") : parts[0];
129
+ if (root === packageName)
130
+ continue;
131
+ found.add(root);
132
+ }
133
+ return [...found];
134
+ }
135
+ /**
136
+ * TS2307 specifiers that ARE subpaths of the package under test.
137
+ *
138
+ * These are the mirror of externalMissingModules() and they need the opposite
139
+ * treatment — but only after a second question is answered. A subpath the
140
+ * package genuinely does not publish is a real finding: the model reached for
141
+ * an entrypoint that is not there. A subpath that EXISTS in the installed
142
+ * package and still fails to resolve is the sandbox's module-resolution mode
143
+ * talking, and scoring it is inventing a finding.
144
+ *
145
+ * The sandbox is `"type": "module"` under `moduleResolution: "NodeNext"`, the
146
+ * strictest mode there is: a subpath must be listed in the package's `exports`
147
+ * map or be fully specified with an extension. Packages that predate `exports`
148
+ * fail on both counts while working perfectly in any real project.
149
+ *
150
+ * Measured 2026-08-23. `highcharts/modules/exporting.d.ts` is on disk and tsc
151
+ * still said "Cannot find module 'highcharts/modules/exporting'". expo 57 ships
152
+ * NO exports map at all, so `expo/config` — a directory holding index.d.ts —
153
+ * was unresolvable, and all four of expo's "failures" were this. Reported as
154
+ * drift, they would have been the first fabricated finding the project ever
155
+ * published.
156
+ *
157
+ * Resolution is the caller's job: this only names the candidates.
158
+ */
159
+ export function targetSubpathMisses(errors, packageName) {
160
+ const found = new Set();
161
+ for (const e of errors) {
162
+ // TS2307 is the plain import. TS2882 is the same resolution failure
163
+ // reported for a SIDE-EFFECT import — `import "highcharts/modules/exporting"`
164
+ // — which is exactly how chart and polyfill packages are loaded, so
165
+ // checking only TS2307 catches the ordinary case and misses the idiomatic
166
+ // one. Found 2026-08-23 on highcharts, one fix after the first.
167
+ if (e.code !== "TS2307" && e.code !== "TS2882")
168
+ continue;
169
+ const m = /(?:Cannot find module|side-effect import of) '([^']+)'/.exec(e.message);
170
+ if (!m)
171
+ continue;
172
+ const spec = m[1];
173
+ if (spec.startsWith(".") || spec.startsWith("/"))
174
+ continue;
175
+ if (spec === packageName)
176
+ continue;
177
+ if (spec.startsWith(packageName + "/"))
178
+ found.add(spec);
179
+ }
180
+ return [...found];
181
+ }
105
182
  /**
106
183
  * Detect a candidate that augments the module it is supposed to be USING.
107
184
  * Matches the package itself and any subpath entrypoint of it, so
@@ -1 +1 @@
1
- {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/core/verify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/core/verify.ts"],"names":[],"mappings":"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"}
package/dist/drift.d.ts CHANGED
@@ -62,6 +62,20 @@ export interface DriftReport {
62
62
  * reading it naively gives "2 exported symbols -> 1131" and a confident
63
63
  * "nothing was removed", which is worse than no answer.
64
64
  */
65
+ /**
66
+ * Symbols the NEW entrypoint gained. Removals alone cannot tell a deletion
67
+ * from a rename, and the difference decides everything: a deleted symbol
68
+ * leaves a model with nothing to say, a RENAMED one leaves it confidently
69
+ * writing the old name. Measured 2026-08-23 — swiper deleted 72 exports and
70
+ * scored 83%, while react-table renamed one family and scored 0 of 12.
71
+ */
72
+ addedToEntry: string[];
73
+ /** whether each version's entrypoint exposes a default export */
74
+ defaultFrom: boolean;
75
+ defaultTo: boolean;
76
+ /** `exports` map subpath keys published by each version, when it declares one */
77
+ entrypointsFrom: string[];
78
+ entrypointsTo: string[];
65
79
  readable: boolean;
66
80
  unreadableReason?: string;
67
81
  /**
@@ -79,7 +93,7 @@ export interface DriftOptions {
79
93
  }
80
94
  export declare function computeDrift(p: Packument, opts?: DriftOptions): Promise<DriftReport>;
81
95
  /** What one surface lost relative to another. Split out so it can be tested without the network. */
82
- export declare function diffSurfaces(a: Surface, b: Surface, oldReadme: string): Pick<DriftReport, "mode" | "fromCount" | "toCount" | "removed" | "withoutRunway" | "removedFromEntry" | "documentedRemovals" | "valueRemovals" | "readable" | "unreadableReason" | "typesFrom">;
96
+ export declare function diffSurfaces(a: Surface, b: Surface, oldReadme: string): Pick<DriftReport, "mode" | "fromCount" | "toCount" | "removed" | "withoutRunway" | "removedFromEntry" | "documentedRemovals" | "valueRemovals" | "readable" | "unreadableReason" | "typesFrom" | "addedToEntry" | "defaultFrom" | "defaultTo">;
83
97
  /**
84
98
  * The list worth showing a human, sharpest first: exports the old README
85
99
  * documented, else everything that left the entrypoint, else the wide diff.
@@ -100,3 +114,52 @@ export declare function driftVerdict(d: DriftReport): {
100
114
  worth: boolean;
101
115
  reason: string;
102
116
  };
117
+ /**
118
+ * How much the IMPORT LINE changed — which is what actually breaks a model.
119
+ *
120
+ * The watcher used to rank on removal count and it is measurably the wrong
121
+ * question. Scored 13 packages on 2026-08-23:
122
+ *
123
+ * swiper v14 72 exports removed -> 83% no finding
124
+ * matrix-js-sdk v42 12 exports removed -> 100% no finding
125
+ * mobx-react v10 5 removed, ALL documented -> 92% no finding
126
+ * openai v7 nothing removed -> 100% no finding
127
+ *
128
+ * and yet:
129
+ *
130
+ * react-table v9 get*RowModel -> create*RowModel -> 0 of 12
131
+ * react-native-plaid-link-sdk v13 named -> default -> 0 of 7
132
+ * react-plaid-link v5 onSuccess signature changed -> 7 of 11
133
+ *
134
+ * The pattern is not how much went away. A deleted symbol leaves a model with
135
+ * nothing to say; the compiler reports one missing name and the model stops. A
136
+ * symbol whose NAME OR SHAPE moved leaves it confidently writing the old form,
137
+ * in every file, on the very first line — and that is the failure that scores
138
+ * zero.
139
+ *
140
+ * Three signals, cheapest first, all computable from the two declaration
141
+ * surfaces with no model call:
142
+ *
143
+ * 1. default-export flip — the single most destructive change, because every
144
+ * import statement in every example is now wrong. Plaid v13.
145
+ * 2. entrypoint restructure — the `exports` map gained or lost subpaths, so
146
+ * the same symbol now lives somewhere else. react-table's `./legacy`.
147
+ * 3. rename families — removed names that reappear as added names under a
148
+ * different verb or a longer form. `getCoreRowModel` ->
149
+ * `createCoreRowModel`, `create` -> `createPlaidLinkSession`. This is a
150
+ * rename wearing a deletion's clothes, and raw removal counting cannot
151
+ * see it at all.
152
+ */
153
+ export interface ImportShape {
154
+ /** 0-100. Rank on this, not on removal count. */
155
+ score: number;
156
+ defaultFlip: boolean;
157
+ entrypointsAdded: string[];
158
+ entrypointsRemoved: string[];
159
+ /** `[removedName, theAddedNameThatReplacedIt]` */
160
+ renames: [string, string][];
161
+ /** removals with no matching addition — a true deletion, which drifts far less */
162
+ deletions: string[];
163
+ reasons: string[];
164
+ }
165
+ export declare function importShape(d: DriftReport): ImportShape;
package/dist/drift.js CHANGED
@@ -19,9 +19,20 @@ export async function computeDrift(p, opts = {}) {
19
19
  from: { version: fromVersion, major: Number(fromVersion.split(".")[0]), published: p.time?.[fromVersion] ?? "" },
20
20
  to: { version: toVersion, major: toMajor, published: p.time?.[toVersion] ?? "" },
21
21
  majorAgeMonths: Number(monthsSince(toLine?.first ?? p.time?.[toVersion] ?? "").toFixed(1)),
22
+ entrypointsFrom: exportKeys(p, fromVersion),
23
+ entrypointsTo: exportKeys(p, toVersion),
22
24
  ...diff,
23
25
  };
24
26
  }
27
+ /** The `exports` map subpaths a version publishes, e.g. `.`, `./legacy`. */
28
+ function exportKeys(p, version) {
29
+ const exp = p.versions?.[version]?.exports;
30
+ if (!exp || typeof exp !== "object" || Array.isArray(exp))
31
+ return [];
32
+ return Object.keys(exp)
33
+ .filter((k) => k.startsWith("."))
34
+ .sort();
35
+ }
25
36
  /** What one surface lost relative to another. Split out so it can be tested without the network. */
26
37
  export function diffSurfaces(a, b, oldReadme) {
27
38
  // ONE mode for the pair. Deciding per version is what made Apollo read as a
@@ -37,6 +48,9 @@ export function diffSurfaces(a, b, oldReadme) {
37
48
  // Word-boundary hits in the old README, so `parse` does not match `safeParse`.
38
49
  const documentedRemovals = removedFromEntry.filter((sym) => new RegExp(`\\b${sym.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}\\b`).test(oldReadme));
39
50
  const valueRemovals = removedFromEntry.filter((sym) => isValueExport(a.sources, sym));
51
+ const addedToEntry = [...b.entryOnly]
52
+ .filter((s) => !a.entryOnly.has(s) && isPublicName(s))
53
+ .sort();
40
54
  // A package with fewer than five readable exports either has almost no API or
41
55
  // is not declaring it in a form this reader understands. Either way a diff
42
56
  // against it is not evidence.
@@ -66,6 +80,9 @@ export function diffSurfaces(a, b, oldReadme) {
66
80
  removedFromEntry,
67
81
  documentedRemovals,
68
82
  valueRemovals,
83
+ addedToEntry,
84
+ defaultFrom: a.entryOnly.has("default"),
85
+ defaultTo: b.entryOnly.has("default"),
69
86
  };
70
87
  }
71
88
  /** `@types/express@4.17.23` and `@types/express@5.0.0` are the same publisher. */
@@ -142,4 +159,119 @@ export function driftVerdict(d) {
142
159
  `in a major that is ${d.majorAgeMonths.toFixed(0)} months old`,
143
160
  };
144
161
  }
162
+ /** Verbs that front an API name; strip them and two renames of the same thing collide. */
163
+ const NAME_VERBS = /^(get|create|use|make|build|new|with|init|to|from|is|has|set|open|read|load)/i;
164
+ function stemOf(name) {
165
+ return name.replace(NAME_VERBS, "").replace(/[^A-Za-z0-9]/g, "").toLowerCase();
166
+ }
167
+ /**
168
+ * Did `removed` come back under another name? A shared stem catches a changed
169
+ * verb (`getCoreRowModel` / `createCoreRowModel`); prefix containment catches a
170
+ * name that grew more specific (`create` / `createPlaidLinkSession`).
171
+ */
172
+ function matchRename(removed, added) {
173
+ const rs = stemOf(removed);
174
+ if (rs.length >= 4) {
175
+ const byStem = added.find((a) => stemOf(a) === rs);
176
+ if (byStem)
177
+ return byStem;
178
+ }
179
+ // Prefix containment catches a name that grew more specific, but it has to be
180
+ // held to a real boundary or it manufactures renames out of nothing:
181
+ // highcharts matched `Data` -> `DataTableCore` and `Data` ->
182
+ // `DataSortingOptionsObject` on a four-character prefix, which is two
183
+ // unrelated symbols sharing a common English word. Six characters and a
184
+ // camelCase boundary keeps `create` -> `createPlaidLinkSession` and drops
185
+ // both of those.
186
+ const boundary = (long, short) => long.length > short.length && long.startsWith(short) && /[A-Z_]/.test(long[short.length]);
187
+ if (removed.length >= 6) {
188
+ const byPrefix = added.find((a) => a !== removed && boundary(a, removed));
189
+ if (byPrefix)
190
+ return byPrefix;
191
+ }
192
+ const shorter = added.find((a) => a.length >= 6 && boundary(removed, a));
193
+ return shorter ?? null;
194
+ }
195
+ export function importShape(d) {
196
+ const reasons = [];
197
+ const added = d.addedToEntry ?? [];
198
+ const renames = [];
199
+ const deletions = [];
200
+ for (const r of d.removedFromEntry ?? []) {
201
+ const hit = matchRename(r, added);
202
+ if (hit)
203
+ renames.push([r, hit]);
204
+ else
205
+ deletions.push(r);
206
+ }
207
+ const defaultFlip = Boolean(d.defaultFrom) !== Boolean(d.defaultTo);
208
+ const before = new Set(d.entrypointsFrom ?? []);
209
+ const after = new Set(d.entrypointsTo ?? []);
210
+ const entrypointsAdded = [...after].filter((k) => !before.has(k));
211
+ const entrypointsRemoved = [...before].filter((k) => !after.has(k));
212
+ let score = 0;
213
+ // A default-export flip rewrites every import statement — but only when the
214
+ // NAMED exports people actually call went with it. swiper v14 gained a
215
+ // default while its 72 removals were all type aliases (A11yOptions,
216
+ // AutoplayEvents) that nobody writes by hand, and it scored 83%. Plaid v13
217
+ // turned `create` and `open` — the two functions every integration starts
218
+ // with — into a default, and scored 0 of 7. Same flip, opposite outcome, and
219
+ // valueRemovals is what tells them apart.
220
+ const valuesGone = (d.valueRemovals ?? []).length;
221
+ if (defaultFlip && valuesGone) {
222
+ score += 45;
223
+ reasons.push(d.defaultTo
224
+ ? `the entrypoint now has a default export and ${valuesGone} callable export${valuesGone === 1 ? "" : "s"} left the named surface — every import line changes`
225
+ : "the default export is gone — every `import x from` line changes");
226
+ }
227
+ else if (defaultFlip) {
228
+ // Real, but additive: the named surface people import from still works.
229
+ score += 8;
230
+ reasons.push("a default export appeared, but no callable named export left with it");
231
+ }
232
+ // Renames are worth far more per symbol than deletions, and the count
233
+ // saturates: one renamed family fails as many tasks as five do.
234
+ if (renames.length) {
235
+ const valueSet = new Set(d.valueRemovals ?? []);
236
+ const valueRenames = renames.filter(([from]) => valueSet.has(from)).length;
237
+ // A renamed function is written from memory in every file; a renamed type
238
+ // alias is usually inferred and never typed out at all.
239
+ score += Math.min(valueRenames, 8) * 6 + Math.min(renames.length - valueRenames, 6) * 1.5;
240
+ const shown = renames.slice(0, 3).map(([a, b]) => `${a} -> ${b}`).join(", ");
241
+ reasons.push(`${renames.length} export${renames.length === 1 ? "" : "s"} renamed rather than deleted (${shown}${renames.length > 3 ? " ..." : ""}) — a model writes the old name with no error to guide it`);
242
+ }
243
+ if (entrypointsAdded.length || entrypointsRemoved.length) {
244
+ score += Math.min(entrypointsAdded.length + entrypointsRemoved.length, 4) * 4;
245
+ reasons.push(`the exports map moved (${[...entrypointsRemoved.map((k) => `-${k}`), ...entrypointsAdded.map((k) => `+${k}`)].slice(0, 4).join(" ")}) — the same symbol may now live behind a different specifier`);
246
+ }
247
+ // True deletions still count for something, but an order of magnitude less.
248
+ // This is the term the old ranking was built entirely out of.
249
+ if (deletions.length) {
250
+ const valueSet = new Set(d.valueRemovals ?? []);
251
+ score += Math.min(deletions.filter((x) => valueSet.has(x)).length, 20) * 0.5;
252
+ }
253
+ // A removal the old README documented used to be the TOP of this project's
254
+ // ranking ladder. Today falsified it: mobx-react removed five names and the
255
+ // old README documented all five — `inject`, `Provider`, `MobXProviderContext`
256
+ // — and it still scored 92%, because the model simply wrote the v10 form.
257
+ // Being taught a name is weak evidence next to the name still being there
258
+ // under a different spelling, so it survives as a tiebreaker, not a driver.
259
+ const documented = (d.documentedRemovals ?? []).length;
260
+ if (documented)
261
+ score += Math.min(documented, 6) * 1.5;
262
+ if (!reasons.length) {
263
+ reasons.push(deletions.length
264
+ ? `${deletions.length} export${deletions.length === 1 ? "" : "s"} deleted outright, with no rename and no entrypoint change — a model gets one clear error and stops`
265
+ : "the import surface did not change shape");
266
+ }
267
+ return {
268
+ score: Math.min(100, Math.round(score)),
269
+ defaultFlip,
270
+ entrypointsAdded,
271
+ entrypointsRemoved,
272
+ renames,
273
+ deletions,
274
+ reasons,
275
+ };
276
+ }
145
277
  //# sourceMappingURL=drift.js.map
package/dist/drift.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"drift.js","sourceRoot":"","sources":["../src/drift.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drift.js","sourceRoot":"","sources":["../src/drift.ts"],"names":[],"mappings":"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"}
package/dist/run.js CHANGED
@@ -3,13 +3,13 @@ import path from "node:path";
3
3
  import { FatalApiError, RefusalError } from "./core/model.js";
4
4
  import { buildUserPrompt, extractCode, GENERATION_SYSTEM } from "./core/prompt.js";
5
5
  import { score } from "./core/score.js";
6
- import { verify } from "./core/verify.js";
6
+ import { externalMissingModules, targetSubpathMisses, verify } from "./core/verify.js";
7
7
  import { computeDrift, driftVerdict } from "./drift.js";
8
8
  import { fetchPackument, readmeFor, resolveVersion } from "./registry.js";
9
9
  import { readmeOf } from "./surface.js";
10
10
  import { renderMarkdown, renderTerminal } from "./report.js";
11
11
  import { loadTaskFile, synthesizeTasks } from "./tasks.js";
12
- import { prepareWorkspace, resolveTsc } from "./workspace.js";
12
+ import { healModules, prepareWorkspace, resolveTsc, subpathExists } from "./workspace.js";
13
13
  /** Split `@scope/name@version` without mangling the scope's leading `@`. */
14
14
  export function parseSpec(spec) {
15
15
  const at = spec.lastIndexOf("@");
@@ -151,14 +151,92 @@ export async function run(opts) {
151
151
  log(" (unmeasured, not counted as drift)");
152
152
  }
153
153
  // Verify sequentially — every candidate is written to the same candidate.ts.
154
+ const target = { packageName: name, fixtureDir: ws.dir, candidateFile: ws.candidateFile };
154
155
  process.stderr.write("Verifying ");
155
156
  const verdicts = [];
156
157
  for (const c of candidates) {
157
- const v = await verify(c, { packageName: name, fixtureDir: ws.dir, candidateFile: ws.candidateFile }, { tscEntry });
158
+ const v = await verify(c, target, { tscEntry });
158
159
  verdicts.push(v);
159
160
  process.stderr.write(v.passed ? "✓" : "✗");
160
161
  }
161
162
  process.stderr.write("\n");
163
+ // The sandbox installs the target's DECLARED peers, but the task set is
164
+ // synthesised from the target's README — so a perfectly reasonable task can
165
+ // require a module the target never declares. mobx-react declares `mobx` and
166
+ // `react`, its README documents SSR, and both SSR tasks died on
167
+ // `TS2307: Cannot find module 'react-dom/server'`. TS2307 is in
168
+ // API_SHAPE_CODES, so the sandbox's gap was published as model drift and the
169
+ // package scored 75% instead of 90% (2026-08-23).
170
+ //
171
+ // That is the 2026-07-31 Prisma failure again — a missing install recorded as
172
+ // drift — and no fixture test can catch it, because the fixture never imports
173
+ // the missing module.
174
+ //
175
+ // So install what is missing and compile again. This MEASURES the task rather
176
+ // than discarding it, and it keeps the distinction that matters: a module
177
+ // that installs was an environment gap, a module the registry does not have
178
+ // is the model importing something imaginary and stays a failure. A missing
179
+ // subpath of the target is never healed — that is the finding itself.
180
+ const gaps = [
181
+ ...new Set(verdicts.filter((v) => !v.passed).flatMap((v) => externalMissingModules(v.errors, name))),
182
+ ];
183
+ if (gaps.length) {
184
+ log(`Sandbox gap: ${gaps.join(", ")} — needed by a task, not declared by ${name}. Installing, then re-checking.`);
185
+ const { installed } = await healModules(ws.dir, gaps, {
186
+ allowScripts: opts.allowScripts,
187
+ log,
188
+ });
189
+ if (installed.length) {
190
+ ws.extraInstalls.push(...installed);
191
+ const affected = new Set(verdicts
192
+ .filter((v) => !v.passed && externalMissingModules(v.errors, name).some((g) => installed.includes(g)))
193
+ .map((v) => v.taskId + "\u0000" + v.model));
194
+ process.stderr.write("Re-checking ");
195
+ for (let i = 0; i < verdicts.length; i++) {
196
+ const c = candidates[i];
197
+ if (!affected.has(verdicts[i].taskId + "\u0000" + verdicts[i].model))
198
+ continue;
199
+ verdicts[i] = await verify(c, target, { tscEntry });
200
+ process.stderr.write(verdicts[i].passed ? "\u2713" : "\u2717");
201
+ }
202
+ process.stderr.write("\n");
203
+ }
204
+ }
205
+ // A subpath of the TARGET that tsc cannot resolve is normally the finding
206
+ // itself — the model reached for an entrypoint the package does not publish.
207
+ // But only when the subpath is genuinely absent. The sandbox is
208
+ // `"type": "module"` under NodeNext, the strictest resolution mode there is,
209
+ // so a subpath with no `exports` entry fails even when the declarations are
210
+ // sitting on disk.
211
+ //
212
+ // Measured 2026-08-23: `highcharts/modules/exporting.d.ts` exists and tsc
213
+ // still said "Cannot find module"; expo 57 publishes no exports map at all,
214
+ // so `expo/config` was unresolvable and ALL FOUR of expo's failures were
215
+ // this. Scored, they would have been the first fabricated finding this
216
+ // project ever published — the one error it cannot recover from, given the
217
+ // argument is that the compiler decides.
218
+ //
219
+ // So drop the task rather than score it. The import failure cascades through
220
+ // the rest of the file, which makes the other diagnostics unreliable too,
221
+ // and dropping is the only direction that cannot invent a finding.
222
+ const unscorable = [];
223
+ const scorable = [];
224
+ for (const v of verdicts) {
225
+ const ghosts = v.passed
226
+ ? []
227
+ : targetSubpathMisses(v.errors, name).filter((sp) => subpathExists(ws.dir, name, sp));
228
+ if (ghosts.length)
229
+ unscorable.push({ taskId: v.taskId, model: v.model, subpaths: ghosts });
230
+ else
231
+ scorable.push(v);
232
+ }
233
+ if (unscorable.length) {
234
+ log(`Unscorable: ${unscorable.length}/${verdicts.length} — ${[...new Set(unscorable.flatMap((u) => u.subpaths))].join(", ")} ` +
235
+ `resolve on disk but not under the sandbox's NodeNext ESM rules.`);
236
+ log(" Dropped, not failed: scoring these would report a finding that is not real.");
237
+ }
238
+ verdicts.length = 0;
239
+ verdicts.push(...scorable);
162
240
  const result = score(name, version, new Date().toISOString(), verdicts, refusals, [], lost);
163
241
  const ctx = {
164
242
  packageName: name,
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
@@ -40,3 +40,59 @@ export declare function typesPackageFor(name: string): string;
40
40
  * has scored before".
41
41
  */
42
42
  export declare function prepareWorkspace(opts: WorkspaceOptions): Promise<Workspace>;
43
+ /**
44
+ * The module names tsc could not resolve. Only TS2307 counts: any other
45
+ * diagnostic is the package's own business, not a missing install.
46
+ */
47
+ export declare function missingModules(out: string): string[];
48
+ /**
49
+ * Install modules a CANDIDATE needed but the sandbox never had, and report
50
+ * which ones took.
51
+ *
52
+ * Why this exists: the sandbox installs the target's DECLARED peers, but the
53
+ * task set is synthesised from the target's README — so the generator can
54
+ * write a task that legitimately requires a module the target never declares.
55
+ * mobx-react (2026-08-23) declares `mobx` and `react` and not `react-dom`, its
56
+ * README documents SSR, and the two SSR tasks failed with
57
+ * `TS2307: Cannot find module 'react-dom/server'`. TS2307 is in
58
+ * API_SHAPE_CODES, so a missing install was published as model drift and
59
+ * mobx-react scored 75% instead of 90%.
60
+ *
61
+ * That is the 2026-07-31 Prisma failure exactly — *"a missing devDependency
62
+ * was being recorded and published as model drift"* — and `fixtures.test.ts`
63
+ * cannot catch it, because the fixture never imports the missing module.
64
+ *
65
+ * Healing rather than discarding is the honest repair: it MEASURES the task
66
+ * instead of dropping it, and it keeps the distinction that matters. A module
67
+ * that installs was an environment gap. A module that does not exist on the
68
+ * registry is the model importing something imaginary, which is real drift and
69
+ * stays a failure.
70
+ *
71
+ * Capped, and every install is logged: candidate code is model output, and
72
+ * this installs by name from it.
73
+ */
74
+ export declare function healModules(dir: string, names: string[], opts?: {
75
+ allowScripts?: boolean;
76
+ limit?: number;
77
+ log?: (m: string) => void;
78
+ }): Promise<{
79
+ installed: string[];
80
+ failed: string[];
81
+ }>;
82
+ /**
83
+ * Does a subpath of the target actually EXIST in the installed package?
84
+ *
85
+ * The question separates a real finding from a fabricated one. If
86
+ * `highcharts/modules/exporting` is absent, a model importing it found an
87
+ * entrypoint that is not there — that is drift. If it is sitting on disk and
88
+ * tsc still says "Cannot find module", the sandbox's NodeNext + `"type":
89
+ * "module"` resolution is refusing a subpath that has no `exports` entry, and
90
+ * counting it would publish a finding that is not real.
91
+ *
92
+ * Deliberately generous about what counts as existing: an `exports` entry, a
93
+ * file with any declaration extension, or a directory with an index. A false
94
+ * "it exists" costs one dropped task; a false "it is missing" costs a
95
+ * fabricated finding, and for a project whose argument is that the compiler
96
+ * decides, that is the unrecoverable error.
97
+ */
98
+ export declare function subpathExists(dir: string, packageName: string, specifier: string): boolean;
package/dist/workspace.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { execFile } from "node:child_process";
2
2
  import { createRequire } from "node:module";
3
3
  import { mkdir, readFile, rm, writeFile } from "node:fs/promises";
4
- import { existsSync } from "node:fs";
4
+ import { existsSync, readFileSync } from "node:fs";
5
5
  import os from "node:os";
6
6
  import path from "node:path";
7
7
  import { promisify } from "node:util";
@@ -194,9 +194,115 @@ async function hasTypes(dir, name) {
194
194
  * The module names tsc could not resolve. Only TS2307 counts: any other
195
195
  * diagnostic is the package's own business, not a missing install.
196
196
  */
197
- function missingModules(out) {
197
+ export function missingModules(out) {
198
198
  return moduleNamesFrom(out, /error TS2307: Cannot find module '([^']+)'/);
199
199
  }
200
+ /**
201
+ * Install modules a CANDIDATE needed but the sandbox never had, and report
202
+ * which ones took.
203
+ *
204
+ * Why this exists: the sandbox installs the target's DECLARED peers, but the
205
+ * task set is synthesised from the target's README — so the generator can
206
+ * write a task that legitimately requires a module the target never declares.
207
+ * mobx-react (2026-08-23) declares `mobx` and `react` and not `react-dom`, its
208
+ * README documents SSR, and the two SSR tasks failed with
209
+ * `TS2307: Cannot find module 'react-dom/server'`. TS2307 is in
210
+ * API_SHAPE_CODES, so a missing install was published as model drift and
211
+ * mobx-react scored 75% instead of 90%.
212
+ *
213
+ * That is the 2026-07-31 Prisma failure exactly — *"a missing devDependency
214
+ * was being recorded and published as model drift"* — and `fixtures.test.ts`
215
+ * cannot catch it, because the fixture never imports the missing module.
216
+ *
217
+ * Healing rather than discarding is the honest repair: it MEASURES the task
218
+ * instead of dropping it, and it keeps the distinction that matters. A module
219
+ * that installs was an environment gap. A module that does not exist on the
220
+ * registry is the model importing something imaginary, which is real drift and
221
+ * stays a failure.
222
+ *
223
+ * Capped, and every install is logged: candidate code is model output, and
224
+ * this installs by name from it.
225
+ */
226
+ export async function healModules(dir, names, opts = {}) {
227
+ const log = opts.log ?? (() => { });
228
+ const installed = [];
229
+ const failed = [];
230
+ for (const name of names.slice(0, opts.limit ?? 5)) {
231
+ try {
232
+ await npm(["install", name], dir, Boolean(opts.allowScripts));
233
+ installed.push(name);
234
+ // The module may ship no declarations of its own; DefinitelyTyped is
235
+ // what a TypeScript user would reach for, so try it and shrug on a miss.
236
+ const types = typesPackageFor(name);
237
+ if (types !== name && !(await hasTypes(dir, name))) {
238
+ try {
239
+ await npm(["install", types], dir, Boolean(opts.allowScripts));
240
+ installed.push(types);
241
+ }
242
+ catch {
243
+ // no DefinitelyTyped entry; tsc will say so and the task stays failed
244
+ }
245
+ }
246
+ }
247
+ catch {
248
+ // Not installable — almost always a package that does not exist. That is
249
+ // the model importing something imaginary, and it stays a failure.
250
+ failed.push(name);
251
+ }
252
+ }
253
+ if (installed.length)
254
+ log(` installed for the sandbox: ${installed.join(", ")}`);
255
+ return { installed, failed };
256
+ }
257
+ /**
258
+ * Does a subpath of the target actually EXIST in the installed package?
259
+ *
260
+ * The question separates a real finding from a fabricated one. If
261
+ * `highcharts/modules/exporting` is absent, a model importing it found an
262
+ * entrypoint that is not there — that is drift. If it is sitting on disk and
263
+ * tsc still says "Cannot find module", the sandbox's NodeNext + `"type":
264
+ * "module"` resolution is refusing a subpath that has no `exports` entry, and
265
+ * counting it would publish a finding that is not real.
266
+ *
267
+ * Deliberately generous about what counts as existing: an `exports` entry, a
268
+ * file with any declaration extension, or a directory with an index. A false
269
+ * "it exists" costs one dropped task; a false "it is missing" costs a
270
+ * fabricated finding, and for a project whose argument is that the compiler
271
+ * decides, that is the unrecoverable error.
272
+ */
273
+ export function subpathExists(dir, packageName, specifier) {
274
+ const rel = specifier.slice(packageName.length + 1);
275
+ const root = path.join(dir, "node_modules", ...packageName.split("/"));
276
+ try {
277
+ const meta = JSON.parse(readFileSync(path.join(root, "package.json"), "utf8"));
278
+ const map = meta.exports;
279
+ if (map && typeof map === "object") {
280
+ for (const key of Object.keys(map)) {
281
+ if (key === `./${rel}`)
282
+ return true;
283
+ // A wildcard entry like "./modules/*" covers this subpath.
284
+ if (key.includes("*")) {
285
+ const re = new RegExp("^" + key.replace(/[.+^${}()|[\]\\]/g, "\\$&").replace(/\*/g, ".*") + "$");
286
+ if (re.test(`./${rel}`))
287
+ return true;
288
+ }
289
+ }
290
+ }
291
+ }
292
+ catch {
293
+ // no package.json to read; fall through to the disk check
294
+ }
295
+ const base = path.join(root, rel);
296
+ for (const p of [base, `${base}.d.ts`, `${base}.d.mts`, `${base}.d.cts`, `${base}.ts`]) {
297
+ if (existsSync(p))
298
+ return true;
299
+ }
300
+ for (const i of ["index.d.ts", "index.d.mts", "index.ts"]) {
301
+ if (existsSync(path.join(base, i)))
302
+ return true;
303
+ }
304
+ return false;
305
+ }
200
306
  /** Modules that resolved but ship no declarations — DefinitelyTyped candidates. */
201
307
  function untypedModules(out) {
202
308
  return moduleNamesFrom(out, /error TS7016: Could not find a declaration file for module '([^']+)'/);
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sdkproof",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Score how often an AI model writes library code that does not compile. Give it a package name, it writes real tasks, compiles every answer against the real installed package with tsc, and reports what broke.",
5
5
  "keywords": [
6
6
  "ai",