carrick 0.3.109 → 0.3.111
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.
- package/dist/render.d.ts +14 -7
- package/dist/render.js +49 -36
- package/dist/render.js.map +1 -1
- package/package.json +6 -6
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/sidecar/dist/src/bundler.d.ts +10 -0
- package/sidecar/dist/src/bundler.js +39 -0
- package/sidecar/dist/src/capture/anchors.js +35 -0
- package/sidecar/dist/src/capture/api.d.ts +5 -0
- package/sidecar/dist/src/capture/check-workspace.d.ts +10 -0
- package/sidecar/dist/src/capture/check-workspace.js +68 -6
- package/sidecar/dist/src/capture/index.d.ts +1 -0
- package/sidecar/dist/src/capture/index.js +18 -3
- package/sidecar/dist/src/capture/installed-package-directory.d.ts +22 -0
- package/sidecar/dist/src/capture/installed-package-directory.js +30 -0
- package/sidecar/dist/src/capture/resolution-edges.d.ts +36 -0
- package/sidecar/dist/src/capture/resolution-edges.js +150 -0
- package/sidecar/dist/src/capture/status-table.d.ts +62 -0
- package/sidecar/dist/src/capture/status-table.js +104 -0
- package/sidecar/dist/src/failure-path.d.ts +42 -2
- package/sidecar/dist/src/failure-path.js +38 -13
- package/sidecar/dist/src/library-claims.js +2 -0
- package/sidecar/dist/src/line-index.d.ts +9 -0
- package/sidecar/dist/src/line-index.js +24 -0
- package/sidecar/dist/src/response-modes.d.ts +77 -0
- package/sidecar/dist/src/response-modes.js +459 -0
- package/sidecar/dist/src/type-inferrer.d.ts +93 -1
- package/sidecar/dist/src/type-inferrer.js +436 -97
- package/sidecar/dist/src/types.d.ts +20 -1
- package/sidecar/dist/src/validators.d.ts +39 -16
- package/sidecar/dist/src/validators.js +4 -0
package/dist/render.d.ts
CHANGED
|
@@ -18,8 +18,6 @@ export declare function boundaryLines(boundary: Boundary | undefined, service: s
|
|
|
18
18
|
* same count. Nothing here reformats or re-orders it.
|
|
19
19
|
*/
|
|
20
20
|
export declare function boundaryFor(result: CheckResult): string[];
|
|
21
|
-
/** True when the lines came from the CLI rather than from the port above. */
|
|
22
|
-
export declare function boundaryIsPreRendered(result: CheckResult): boolean;
|
|
23
21
|
/**
|
|
24
22
|
* The verdict state in words. It is the type layer's word and only that: it
|
|
25
23
|
* says nothing about freshness, which `stale` and `changed_since_index` carry.
|
|
@@ -54,12 +52,21 @@ export declare function itemLine(item: CheckItem, file: string | undefined): str
|
|
|
54
52
|
/** Problems first, then everything that names another service, both by line. */
|
|
55
53
|
export declare function reportableItems(result: CheckResult): CheckItem[];
|
|
56
54
|
/**
|
|
57
|
-
*
|
|
55
|
+
* Lines in the checked file that the local index holds as unclassified: calls
|
|
56
|
+
* with no expected type, calls to a path nothing resolved, and literal
|
|
57
|
+
* candidates no row came out of. Each source lists `file:line` sites for the
|
|
58
|
+
* whole service, so this keeps the ones in `result.file` and nothing else.
|
|
59
|
+
*/
|
|
60
|
+
export declare function unclassifiedLines(result: CheckResult): number[];
|
|
61
|
+
/**
|
|
62
|
+
* The PostToolUse context, or `null` for an error payload.
|
|
58
63
|
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
64
|
+
* The header is printed on every checked file, even one with nothing to report:
|
|
65
|
+
* it is the only sign the hook ran, and silence reads the same as a hook that is
|
|
66
|
+
* not installed. The service-wide boundary is not here: it is the same text on
|
|
67
|
+
* every edit, which is what an agent learns to skip, so `renderSessionStart`
|
|
68
|
+
* prints it once. An edit adds one line, only when this file holds call sites
|
|
69
|
+
* the local index did not classify.
|
|
63
70
|
*/
|
|
64
71
|
export declare function renderPostToolUse(result: CheckResult, displayFile?: string): string | null;
|
|
65
72
|
/**
|
package/dist/render.js
CHANGED
|
@@ -92,10 +92,6 @@ export function boundaryFor(result) {
|
|
|
92
92
|
return [result.boundary_note, ...counts];
|
|
93
93
|
return counts;
|
|
94
94
|
}
|
|
95
|
-
/** True when the lines came from the CLI rather than from the port above. */
|
|
96
|
-
export function boundaryIsPreRendered(result) {
|
|
97
|
-
return Boolean(result.boundary_lines?.length);
|
|
98
|
-
}
|
|
99
95
|
function counterpartText(counterparts) {
|
|
100
96
|
const shown = counterparts.slice(0, MAX_COUNTERPARTS);
|
|
101
97
|
const rendered = shown
|
|
@@ -265,25 +261,6 @@ function deletedLine(result) {
|
|
|
265
261
|
const consumers = (result.items ?? []).reduce((total, item) => total + (item.counterparts ?? []).length, 0);
|
|
266
262
|
return `This file is gone from disk and the index still holds ${(result.items ?? []).length} row(s) for it, with ${consumers} counterpart(s) still on the other side.`;
|
|
267
263
|
}
|
|
268
|
-
/**
|
|
269
|
-
* Append the boundary to a rendered message.
|
|
270
|
-
*
|
|
271
|
-
* The port's first line is labelled, because on its own it reads as a bare
|
|
272
|
-
* count. The CLI's own lines are appended untouched: a label glued to the front
|
|
273
|
-
* of them would no longer be the bytes the CLI printed.
|
|
274
|
-
*/
|
|
275
|
-
function pushBoundary(lines, result, boundary) {
|
|
276
|
-
if (!boundary.length)
|
|
277
|
-
return;
|
|
278
|
-
if (boundaryIsPreRendered(result)) {
|
|
279
|
-
for (const line of boundary)
|
|
280
|
-
lines.push(line);
|
|
281
|
-
return;
|
|
282
|
-
}
|
|
283
|
-
lines.push(`Boundary: ${boundary[0]}`);
|
|
284
|
-
for (const line of boundary.slice(1))
|
|
285
|
-
lines.push(line);
|
|
286
|
-
}
|
|
287
264
|
function staleLine(result) {
|
|
288
265
|
if (!result.stale)
|
|
289
266
|
return null;
|
|
@@ -303,25 +280,60 @@ function staleLine(result) {
|
|
|
303
280
|
: "";
|
|
304
281
|
return `This file has changed since the index, so these verdicts describe the indexed version.${suffix}${budget}`;
|
|
305
282
|
}
|
|
283
|
+
/** Lines of the edited file the unclassified sentence names before it counts the rest. */
|
|
284
|
+
const MAX_UNCLASSIFIED_LINES = 5;
|
|
285
|
+
/**
|
|
286
|
+
* Lines in the checked file that the local index holds as unclassified: calls
|
|
287
|
+
* with no expected type, calls to a path nothing resolved, and literal
|
|
288
|
+
* candidates no row came out of. Each source lists `file:line` sites for the
|
|
289
|
+
* whole service, so this keeps the ones in `result.file` and nothing else.
|
|
290
|
+
*/
|
|
291
|
+
export function unclassifiedLines(result) {
|
|
292
|
+
const file = result.file;
|
|
293
|
+
const boundary = result.boundary;
|
|
294
|
+
if (!file || !boundary)
|
|
295
|
+
return [];
|
|
296
|
+
const sites = [
|
|
297
|
+
...(boundary.unemitted_literal_sites ?? []),
|
|
298
|
+
...(boundary.calls_without_expected_type?.reasons ?? []),
|
|
299
|
+
...(boundary.unknown_call_paths?.reasons ?? []),
|
|
300
|
+
];
|
|
301
|
+
const lines = new Set();
|
|
302
|
+
for (const site of sites) {
|
|
303
|
+
const colon = site.lastIndexOf(":");
|
|
304
|
+
if (colon < 0 || site.slice(0, colon) !== file)
|
|
305
|
+
continue;
|
|
306
|
+
const line = Number(site.slice(colon + 1));
|
|
307
|
+
if (Number.isInteger(line) && line > 0)
|
|
308
|
+
lines.add(line);
|
|
309
|
+
}
|
|
310
|
+
return [...lines].sort((a, b) => a - b);
|
|
311
|
+
}
|
|
312
|
+
function unclassifiedLine(result) {
|
|
313
|
+
const lines = unclassifiedLines(result);
|
|
314
|
+
if (!lines.length)
|
|
315
|
+
return null;
|
|
316
|
+
const rest = lines.length - MAX_UNCLASSIFIED_LINES;
|
|
317
|
+
const shown = lines.slice(0, MAX_UNCLASSIFIED_LINES).join(", ");
|
|
318
|
+
const named = rest > 0 ? `${shown}, +${rest} more` : shown;
|
|
319
|
+
const noun = lines.length === 1 ? "call site" : "call sites";
|
|
320
|
+
return `${lines.length} ${noun} in this file not classified locally (line ${named}): ${lines.length === 1 ? "its route or type is" : "their routes or types are"} unchecked here.`;
|
|
321
|
+
}
|
|
306
322
|
/**
|
|
307
|
-
* The PostToolUse context, or `null`
|
|
323
|
+
* The PostToolUse context, or `null` for an error payload.
|
|
308
324
|
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
*
|
|
312
|
-
*
|
|
325
|
+
* The header is printed on every checked file, even one with nothing to report:
|
|
326
|
+
* it is the only sign the hook ran, and silence reads the same as a hook that is
|
|
327
|
+
* not installed. The service-wide boundary is not here: it is the same text on
|
|
328
|
+
* every edit, which is what an agent learns to skip, so `renderSessionStart`
|
|
329
|
+
* prints it once. An edit adds one line, only when this file holds call sites
|
|
330
|
+
* the local index did not classify.
|
|
313
331
|
*/
|
|
314
332
|
export function renderPostToolUse(result, displayFile) {
|
|
315
333
|
if (result.error)
|
|
316
334
|
return null;
|
|
317
335
|
const items = reportableItems(result);
|
|
318
|
-
const
|
|
319
|
-
// The boundary is never dropped: the local index holds no bare-receiver route
|
|
320
|
-
// and no `fetch` call, because both need a model, so an empty answer without
|
|
321
|
-
// the boundary beside it reads as "there is nothing here" when it means
|
|
322
|
-
// "nothing here was classified".
|
|
323
|
-
if (items.length === 0 && boundary.length === 0)
|
|
324
|
-
return null;
|
|
336
|
+
const unclassified = unclassifiedLine(result);
|
|
325
337
|
// `result.file` is relative to the repo that owns it, so the caller's own
|
|
326
338
|
// workspace-relative path is the one a reader can open; it wins when given.
|
|
327
339
|
const where = displayFile ?? result.file;
|
|
@@ -341,7 +353,8 @@ export function renderPostToolUse(result, displayFile) {
|
|
|
341
353
|
const stale = staleLine(result);
|
|
342
354
|
if (stale)
|
|
343
355
|
lines.push(stale);
|
|
344
|
-
|
|
356
|
+
if (unclassified)
|
|
357
|
+
lines.push(unclassified);
|
|
345
358
|
return lines.join("\n");
|
|
346
359
|
}
|
|
347
360
|
/**
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "carrick",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.111",
|
|
4
4
|
"description": "Maps your entire TypeScript codebase across services and repositories, giving AI agents full context on existing types, routes, and function behaviours over MCP before they write duplicate or breaking code.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -58,11 +58,11 @@
|
|
|
58
58
|
"zod": "^3.23.0"
|
|
59
59
|
},
|
|
60
60
|
"optionalDependencies": {
|
|
61
|
-
"@carrick-tools/cli-darwin-arm64": "0.3.
|
|
62
|
-
"@carrick-tools/cli-darwin-x64": "0.3.
|
|
63
|
-
"@carrick-tools/cli-linux-arm64": "0.3.
|
|
64
|
-
"@carrick-tools/cli-linux-x64": "0.3.
|
|
65
|
-
"@carrick-tools/cli-win32-x64": "0.3.
|
|
61
|
+
"@carrick-tools/cli-darwin-arm64": "0.3.111",
|
|
62
|
+
"@carrick-tools/cli-darwin-x64": "0.3.111",
|
|
63
|
+
"@carrick-tools/cli-linux-arm64": "0.3.111",
|
|
64
|
+
"@carrick-tools/cli-linux-x64": "0.3.111",
|
|
65
|
+
"@carrick-tools/cli-win32-x64": "0.3.111"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
68
68
|
"@types/node": "^24.13.3"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "carrick",
|
|
3
3
|
"description": "Claude Code plugin for Carrick, which indexes TypeScript codebases across service and repository boundaries. After each edit it adds the file's routes, calls, and cross-service type mismatches to the session, and it registers Carrick's language server. It pairs with the Carrick MCP server, which lets agents search functions by intent rather than name.",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.111",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Carrick",
|
|
7
7
|
"email": "hello@carrick.tools"
|
|
@@ -50,6 +50,16 @@ export declare class TypeBundler {
|
|
|
50
50
|
*/
|
|
51
51
|
private expandOrigin;
|
|
52
52
|
private extractTypeDefinition;
|
|
53
|
+
/**
|
|
54
|
+
* carrick#1841: what a consumer receives when the symbol the model named for
|
|
55
|
+
* its response is a response table keyed by status code (`{ 200: Item;
|
|
56
|
+
* 404: Problem }`): the table's 2xx values, expanded like any other body.
|
|
57
|
+
* `unknown` where the table states no success body (no 2xx row, or only
|
|
58
|
+
* rows such as `204: void`). `undefined` when the symbol is not a table, so
|
|
59
|
+
* the caller bundles it as written. The capture's symbol anchor reads the
|
|
60
|
+
* same rule (`capture/anchors.ts`), so both answers agree.
|
|
61
|
+
*/
|
|
62
|
+
private statusTableBodyText;
|
|
53
63
|
private elementNeedsArrayParens;
|
|
54
64
|
private extractTypeDefinitionBase;
|
|
55
65
|
private isPathSource;
|
|
@@ -7,6 +7,7 @@ import * as path from 'node:path';
|
|
|
7
7
|
import * as fs from 'node:fs';
|
|
8
8
|
import { expandTypeStructural, } from './type-structural-expander.js';
|
|
9
9
|
import { externalImportsOf } from './origin.js';
|
|
10
|
+
import { statusTableBody } from './capture/index.js';
|
|
10
11
|
/**
|
|
11
12
|
* #248: upper bound on `SymbolRequest.array_depth`. SDL list nesting is
|
|
12
13
|
* realistically 1-3 levels (`[Order!]!`, at most `[[Order!]!]!`); this is a
|
|
@@ -301,6 +302,14 @@ export class TypeBundler {
|
|
|
301
302
|
};
|
|
302
303
|
}
|
|
303
304
|
extractTypeDefinition(symbol) {
|
|
305
|
+
const tableBody = symbol.consumer_response ? this.statusTableBodyText(symbol) : undefined;
|
|
306
|
+
if (tableBody !== undefined) {
|
|
307
|
+
// The success row IS the body, list or not. A depth on this request was
|
|
308
|
+
// read off the body (carrick#1967) and is already in the row, so it is
|
|
309
|
+
// not applied again; the capture's symbol anchor reads the same rule.
|
|
310
|
+
const alias = symbol.alias || symbol.symbol_name;
|
|
311
|
+
return { definition: `export type ${alias} = ${tableBody};`, typeString: tableBody };
|
|
312
|
+
}
|
|
304
313
|
const base = this.extractTypeDefinitionBase(symbol);
|
|
305
314
|
if (!base)
|
|
306
315
|
return null;
|
|
@@ -338,6 +347,36 @@ export class TypeBundler {
|
|
|
338
347
|
const typeString = `${element}${'[]'.repeat(depth)}`;
|
|
339
348
|
return { definition: `export type ${alias} = ${typeString};`, typeString };
|
|
340
349
|
}
|
|
350
|
+
/**
|
|
351
|
+
* carrick#1841: what a consumer receives when the symbol the model named for
|
|
352
|
+
* its response is a response table keyed by status code (`{ 200: Item;
|
|
353
|
+
* 404: Problem }`): the table's 2xx values, expanded like any other body.
|
|
354
|
+
* `unknown` where the table states no success body (no 2xx row, or only
|
|
355
|
+
* rows such as `204: void`). `undefined` when the symbol is not a table, so
|
|
356
|
+
* the caller bundles it as written. The capture's symbol anchor reads the
|
|
357
|
+
* same rule (`capture/anchors.ts`), so both answers agree.
|
|
358
|
+
*/
|
|
359
|
+
statusTableBodyText(symbol) {
|
|
360
|
+
const site = this.siteOf(symbol);
|
|
361
|
+
if (!site)
|
|
362
|
+
return undefined;
|
|
363
|
+
const declaration = site.sourceFile.getTypeAlias(site.name) ?? site.sourceFile.getInterface(site.name);
|
|
364
|
+
if (!declaration)
|
|
365
|
+
return undefined;
|
|
366
|
+
const table = declaration.getType();
|
|
367
|
+
const checker = this.project.getTypeChecker().compilerObject;
|
|
368
|
+
const read = statusTableBody(checker, table.compilerType, declaration.compilerNode);
|
|
369
|
+
if (!read)
|
|
370
|
+
return undefined;
|
|
371
|
+
if (read.kind === 'no_body')
|
|
372
|
+
return 'unknown';
|
|
373
|
+
const bodies = read.entries.map((entry) => {
|
|
374
|
+
const value = table.getProperty(entry.key)?.getTypeAtLocation(declaration);
|
|
375
|
+
return value ? expandTypeStructural(value, this.expandOrigin()) : 'unknown';
|
|
376
|
+
});
|
|
377
|
+
const distinct = [...new Set(bodies)];
|
|
378
|
+
return distinct.length === 1 ? distinct[0] : distinct.map((body) => `(${body})`).join(' | ');
|
|
379
|
+
}
|
|
341
380
|
/// Whether the element type must be parenthesised before an `[]` suffix.
|
|
342
381
|
/// Interfaces/classes/enums are always object/nominal (never a top-level
|
|
343
382
|
/// union), so only type aliases and typed variables can carry a bare
|
|
@@ -10,6 +10,7 @@ import { printTypeForDestination, substituteUndeclaredNames, undeclaredNamesIn,
|
|
|
10
10
|
import { typeIsOrContainsMachinery } from './machinery.js';
|
|
11
11
|
import { installedPackageSpecifier } from './installed-package.js';
|
|
12
12
|
import { realPath } from './service-config.js';
|
|
13
|
+
import { statusTableBody } from './status-table.js';
|
|
13
14
|
import { unresolvedAtAnchor, unresolvedSpecifiersReachableFrom, } from './unresolved.js';
|
|
14
15
|
/**
|
|
15
16
|
* Repo-root-relative source file -> the specifier the surface entry imports
|
|
@@ -155,6 +156,40 @@ export function resolveAnchor(program, request, args) {
|
|
|
155
156
|
}
|
|
156
157
|
const arrayDepth = Math.max(0, request.array_depth ?? 0);
|
|
157
158
|
const declared = checker.getDeclaredTypeOfSymbol(resolvedExport);
|
|
159
|
+
// carrick#1841: a symbol named for what a consumer receives that is a
|
|
160
|
+
// response table keyed by status code (`{ 200: Item; 404: Problem }`) is
|
|
161
|
+
// not the body. The body is its 2xx rows, indexed out of the table so the
|
|
162
|
+
// compiler still emits it (`import('./m').Table[200]`). A table with no
|
|
163
|
+
// success body abstains, decided. The v1 bundle reads the same rule
|
|
164
|
+
// (`TypeBundler.statusTableBodyText`).
|
|
165
|
+
if (request.consumer_response) {
|
|
166
|
+
const table = statusTableBody(checker, declared, resolvedExport.declarations?.[0] ?? sourceFile);
|
|
167
|
+
if (table?.kind === 'no_body') {
|
|
168
|
+
return {
|
|
169
|
+
request,
|
|
170
|
+
aliasText: 'unknown',
|
|
171
|
+
serialization: 'structural_fallback',
|
|
172
|
+
abstainReason: `'${request.symbol_name}' is a response table keyed by status code with no ` +
|
|
173
|
+
'success row that states a body, so this consumer states no response contract',
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
if (table?.kind === 'body') {
|
|
177
|
+
const rows = [...new Set(table.entries.map((entry) => entry.key))].map((key) => /^\d+$/.test(key)
|
|
178
|
+
? `import('${spec}').${request.symbol_name}[${key}]`
|
|
179
|
+
: `import('${spec}').${request.symbol_name}[${JSON.stringify(key)}]`);
|
|
180
|
+
const body = rows.join(' | ');
|
|
181
|
+
// The success row IS the body, list or not. A depth on this request
|
|
182
|
+
// was read off the body (carrick#1967) and is already in the row, so
|
|
183
|
+
// it is not applied again.
|
|
184
|
+
const unresolvedBody = unresolvedAtAnchor(program, sourceFile, declared, resolvedExport.declarations?.[0] ?? sourceFile, '');
|
|
185
|
+
return {
|
|
186
|
+
request,
|
|
187
|
+
aliasText: body,
|
|
188
|
+
serialization: 'emitted',
|
|
189
|
+
...(unresolvedBody ? { unresolved: unresolvedBody } : {}),
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
}
|
|
158
193
|
const unresolved = unresolvedAtAnchor(program, sourceFile, declared, resolvedExport.declarations?.[0] ?? sourceFile, '<0>'.repeat(arrayDepth));
|
|
159
194
|
return {
|
|
160
195
|
request,
|
|
@@ -50,6 +50,11 @@ export interface SymbolAnchorRequest {
|
|
|
50
50
|
* `import('./m').Sym[]`. Omitted/0 captures the symbol as-is.
|
|
51
51
|
*/
|
|
52
52
|
array_depth?: number;
|
|
53
|
+
/**
|
|
54
|
+
* carrick#1841: the symbol names what a consumer receives, so a response
|
|
55
|
+
* table keyed by status code captures as its 2xx body, not as the table.
|
|
56
|
+
*/
|
|
57
|
+
consumer_response?: boolean;
|
|
53
58
|
}
|
|
54
59
|
/**
|
|
55
60
|
* Inline literal type text with no addressable symbol (the v1 inline-alias
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import type { CheckStubInput } from './api.js';
|
|
16
16
|
import type { ProbePlan } from './check-probe.js';
|
|
17
17
|
import { WriteGuard } from './guarded-fs.js';
|
|
18
|
+
import { type ResolutionEdges } from './resolution-edges.js';
|
|
18
19
|
export interface AssembledStub {
|
|
19
20
|
serviceName: string;
|
|
20
21
|
/** Workspace package dir under packages/ (== the @carrick/<dir> suffix). */
|
|
@@ -45,6 +46,15 @@ export interface AssembledWorkspace {
|
|
|
45
46
|
export declare function computeDedupeOverrides(stubs: {
|
|
46
47
|
dependencies: Record<string, string>;
|
|
47
48
|
}[]): Record<string, string>;
|
|
49
|
+
/**
|
|
50
|
+
* pnpm parent-scoped overrides (`<parent>@<version>><child>`) that install
|
|
51
|
+
* each edge the stubs recorded at the version the scanned repo installed
|
|
52
|
+
* (carrick#2091). A parent-scoped override wins over a generic one, so an
|
|
53
|
+
* edge's version first passes through the dedupe table: one physical copy per
|
|
54
|
+
* compat group still holds. An edge two stubs record at versions the dedupe
|
|
55
|
+
* does not reconcile is left to the resolver.
|
|
56
|
+
*/
|
|
57
|
+
export declare function computeResolutionOverrides(edgeSets: ResolutionEdges[], dedupe: Record<string, string>): Record<string, string>;
|
|
48
58
|
export interface AssembleOptions {
|
|
49
59
|
stubs: CheckStubInput[];
|
|
50
60
|
workspaceRoot?: string;
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import * as fs from 'node:fs';
|
|
16
16
|
import * as path from 'node:path';
|
|
17
17
|
import { WriteGuard } from './guarded-fs.js';
|
|
18
|
+
import { RESOLUTION_FILE } from './resolution-edges.js';
|
|
18
19
|
const PROBES_PACKAGE = 'carrick-probes';
|
|
19
20
|
function parseVersion(v) {
|
|
20
21
|
const core = v.replace(/^[^\d]*/, '').split('-')[0].split('+')[0];
|
|
@@ -90,6 +91,57 @@ export function computeDedupeOverrides(stubs) {
|
|
|
90
91
|
.sort()
|
|
91
92
|
.map((k) => [k, overrides[k]]));
|
|
92
93
|
}
|
|
94
|
+
/** A stub's recorded edges; a stub stored without the file records none. */
|
|
95
|
+
function readStubResolution(stubDir) {
|
|
96
|
+
let parsed;
|
|
97
|
+
try {
|
|
98
|
+
parsed = JSON.parse(fs.readFileSync(path.join(stubDir, RESOLUTION_FILE), 'utf8'));
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
return {};
|
|
102
|
+
}
|
|
103
|
+
const edges = parsed?.edges;
|
|
104
|
+
if (!edges || typeof edges !== 'object')
|
|
105
|
+
return {};
|
|
106
|
+
const out = {};
|
|
107
|
+
for (const [parent, children] of Object.entries(edges)) {
|
|
108
|
+
if (!children || typeof children !== 'object')
|
|
109
|
+
continue;
|
|
110
|
+
for (const [child, version] of Object.entries(children)) {
|
|
111
|
+
if (typeof version === 'string')
|
|
112
|
+
(out[parent] ??= {})[child] = version;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return out;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* pnpm parent-scoped overrides (`<parent>@<version>><child>`) that install
|
|
119
|
+
* each edge the stubs recorded at the version the scanned repo installed
|
|
120
|
+
* (carrick#2091). A parent-scoped override wins over a generic one, so an
|
|
121
|
+
* edge's version first passes through the dedupe table: one physical copy per
|
|
122
|
+
* compat group still holds. An edge two stubs record at versions the dedupe
|
|
123
|
+
* does not reconcile is left to the resolver.
|
|
124
|
+
*/
|
|
125
|
+
export function computeResolutionOverrides(edgeSets, dedupe) {
|
|
126
|
+
const versionsOf = new Map();
|
|
127
|
+
for (const edges of edgeSets) {
|
|
128
|
+
for (const [parent, children] of Object.entries(edges)) {
|
|
129
|
+
for (const [child, version] of Object.entries(children)) {
|
|
130
|
+
const key = `${parent}>${child}`;
|
|
131
|
+
if (!versionsOf.has(key))
|
|
132
|
+
versionsOf.set(key, new Set());
|
|
133
|
+
versionsOf.get(key).add(dedupe[`${child}@${version}`] ?? version);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
const overrides = {};
|
|
138
|
+
for (const key of [...versionsOf.keys()].sort()) {
|
|
139
|
+
const versions = versionsOf.get(key);
|
|
140
|
+
if (versions.size === 1)
|
|
141
|
+
overrides[key] = [...versions][0];
|
|
142
|
+
}
|
|
143
|
+
return overrides;
|
|
144
|
+
}
|
|
93
145
|
function readStubPackageName(stubDir) {
|
|
94
146
|
const pkgPath = path.join(stubDir, 'package.json');
|
|
95
147
|
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
|
|
@@ -116,6 +168,7 @@ export function assembleWorkspace(opts) {
|
|
|
116
168
|
guard.writeFile(path.join(workspaceDir, 'pnpm-workspace.yaml'), 'packages:\n - "packages/*"\n');
|
|
117
169
|
const assembled = [];
|
|
118
170
|
const dependencySets = [];
|
|
171
|
+
const edgeSets = [];
|
|
119
172
|
const svcToPkg = new Map();
|
|
120
173
|
const dirToPkg = new Map();
|
|
121
174
|
const dirToSvc = new Map();
|
|
@@ -126,12 +179,20 @@ export function assembleWorkspace(opts) {
|
|
|
126
179
|
guard.copyTree(stub.stub_dir, dest, (src) => !src.split(path.sep).includes('node_modules'));
|
|
127
180
|
assembled.push({ serviceName: stub.service_name, packageDir, packageName });
|
|
128
181
|
dependencySets.push({ dependencies: readStubDependencies(stub.stub_dir) });
|
|
182
|
+
edgeSets.push(readStubResolution(stub.stub_dir));
|
|
129
183
|
svcToPkg.set(stub.service_name, packageName);
|
|
130
184
|
dirToPkg.set(packageDir, packageName);
|
|
131
185
|
dirToSvc.set(packageDir, stub.service_name);
|
|
132
186
|
}
|
|
133
|
-
// Root manifest carries the semver-dedupe overrides.
|
|
134
|
-
const
|
|
187
|
+
// Root manifest carries the semver-dedupe overrides and the recorded edges.
|
|
188
|
+
const dedupe = computeDedupeOverrides(dependencySets);
|
|
189
|
+
const merged = {
|
|
190
|
+
...dedupe,
|
|
191
|
+
...computeResolutionOverrides(edgeSets, dedupe),
|
|
192
|
+
};
|
|
193
|
+
const overrides = Object.fromEntries(Object.keys(merged)
|
|
194
|
+
.sort()
|
|
195
|
+
.map((k) => [k, merged[k]]));
|
|
135
196
|
guard.writeFile(path.join(workspaceDir, 'package.json'), JSON.stringify({
|
|
136
197
|
name: 'carrick-check-workspace',
|
|
137
198
|
version: '0.0.0',
|
|
@@ -181,12 +242,13 @@ const NPMRC = [
|
|
|
181
242
|
'strict-peer-dependencies=false',
|
|
182
243
|
// Determinism: install exactly the pinned closure, no implicit peer pull-in.
|
|
183
244
|
'auto-install-peers=false',
|
|
184
|
-
// Determinism: the scratch workspace has no committed lockfile
|
|
185
|
-
//
|
|
186
|
-
//
|
|
245
|
+
// Determinism: the scratch workspace has no committed lockfile. Direct deps
|
|
246
|
+
// are exact-pinned by the stubs, and every transitive edge a stub recorded
|
|
247
|
+
// from the scanned repo's installed tree is pinned by a parent-scoped
|
|
248
|
+
// override in the root manifest. Only unrecorded edges resolve, and for
|
|
249
|
+
// those prefer-offline resolves from the local store/metadata cache
|
|
187
250
|
// whenever possible (byte-stable across runs on a host), and the explicit
|
|
188
251
|
// resolution-mode pins pnpm's resolver behavior across pnpm versions.
|
|
189
|
-
// Direct deps are exact-pinned by the stubs; only transitives resolve.
|
|
190
252
|
'prefer-offline=true',
|
|
191
253
|
'resolution-mode=highest',
|
|
192
254
|
'',
|
|
@@ -59,3 +59,4 @@ export declare function surfaceEntryFileName(): string;
|
|
|
59
59
|
/** Same normalization intent as bundle_file_stems on the Rust side. */
|
|
60
60
|
export declare function sanitizeServiceName(name: string): string;
|
|
61
61
|
export declare function captureStub(opts: CaptureStubOptions): CaptureStubResult;
|
|
62
|
+
export { classifyStatusCodes, constituents, httpStatus, statesNoBody, statusKeyCode, statusTableBody, statusTableOf, successEntries, } from './status-table.js';
|
|
@@ -33,6 +33,7 @@ import * as path from 'node:path';
|
|
|
33
33
|
import { entryRelativeSpecifier, resolveAnchor } from './anchors.js';
|
|
34
34
|
import { findAugmentationFiles } from './augmentations.js';
|
|
35
35
|
import { installedVersions, lockfileVersions } from './lockfile.js';
|
|
36
|
+
import { installedResolutionEdges, RESOLUTION_FILE } from './resolution-edges.js';
|
|
36
37
|
import { rewriteEmittedSpecifiers } from './paths-rewrite.js';
|
|
37
38
|
import { installedPackageSpecifier, typesPackageOf, withInstalledPackages } from './installed-package.js';
|
|
38
39
|
import { selfCheckStub } from './self-check.js';
|
|
@@ -428,9 +429,8 @@ export function captureStub(opts) {
|
|
|
428
429
|
// repos whose lockfiles we do not parse (yarn classic v1, binary
|
|
429
430
|
// bun.lockb). The parsed lockfile (npm, pnpm, yarn-berry, text bun.lock)
|
|
430
431
|
// remains the bare-checkout fallback. Both paths pin only
|
|
431
|
-
// the directly-referenced externals;
|
|
432
|
-
//
|
|
433
|
-
// only transitives resolve").
|
|
432
|
+
// the directly-referenced externals; what those depend on is recorded
|
|
433
|
+
// from the installed tree below (RESOLUTION_FILE).
|
|
434
434
|
const installed = installedVersions(repoRoot, externalSpecs);
|
|
435
435
|
const lockVersions = lockfileVersions(repoRoot);
|
|
436
436
|
for (const name of Object.keys(deno?.pinned ?? {}))
|
|
@@ -451,6 +451,18 @@ export function captureStub(opts) {
|
|
|
451
451
|
else if (!rewritten.pins[typesPackageOf(name)])
|
|
452
452
|
unpinned.push(name);
|
|
453
453
|
}
|
|
454
|
+
// ---- Record how the installed tree resolved what the pins depend on ----
|
|
455
|
+
// The check pins each recorded edge, so it installs what the repo
|
|
456
|
+
// installed rather than the newest version in range (carrick#2091).
|
|
457
|
+
const resolution = deno
|
|
458
|
+
? { edges: {}, unrecorded: 0 }
|
|
459
|
+
: installedResolutionEdges(repoRoot, pinned);
|
|
460
|
+
const edgeCount = Object.values(resolution.edges).reduce((n, children) => n + Object.keys(children).length, 0);
|
|
461
|
+
if (edgeCount > 0) {
|
|
462
|
+
stubGuard.writeFile(path.join(stubDir, RESOLUTION_FILE), JSON.stringify({ edges: resolution.edges }, null, 2) + '\n');
|
|
463
|
+
}
|
|
464
|
+
console.error(`[sidecar] capture ${packageName}: ${edgeCount} dependency edge(s) recorded from the installed tree, ` +
|
|
465
|
+
`${resolution.unrecorded} left to the registry`);
|
|
454
466
|
const dependencyRoot = deno?.config.workspaceRoot ?? repoRoot;
|
|
455
467
|
const bareCheckout = !deno && !fs.existsSync(path.join(dependencyRoot, 'node_modules'));
|
|
456
468
|
stubGuard.writeFile(path.join(stubDir, 'package.json'), JSON.stringify({
|
|
@@ -751,3 +763,6 @@ function resolveAnchors(opts, parsed, ctx, deno) {
|
|
|
751
763
|
ctx.guard.unlink(ctx.entryPath);
|
|
752
764
|
}
|
|
753
765
|
}
|
|
766
|
+
// carrick#1841: the response-table reading the inferrer and the v1 bundle
|
|
767
|
+
// share with the capture's symbol anchor.
|
|
768
|
+
export { classifyStatusCodes, constituents, httpStatus, statesNoBody, statusKeyCode, statusTableBody, statusTableOf, successEntries, } from './status-table.js';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where an installed package sits on disk, by path alone, for capture's
|
|
3
|
+
* resolution walk. It mirrors `DeclarationReader.installedPackage` in
|
|
4
|
+
* library-claims.ts: the capture seam (pinned decision 11a) lets neither side
|
|
5
|
+
* import the other, so a change to what counts as installed changes both.
|
|
6
|
+
*
|
|
7
|
+
* Seam: node builtins only.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* The installed package directory a real path lies in, by path alone: the
|
|
11
|
+
* directory after the path's last `node_modules` segment (two segments for a
|
|
12
|
+
* scope), taken relative to `root`, and the name it is installed as. A source
|
|
13
|
+
* file in a directory named `node_modules` above `root`, or a checkout under a
|
|
14
|
+
* `node_modules` ancestor, is not installed; an install hoisted above `root`
|
|
15
|
+
* (`../../node_modules/pkg`) and a pnpm store
|
|
16
|
+
* (`node_modules/.pnpm/pkg@1/node_modules/pkg`) are. The caller reads the
|
|
17
|
+
* package.json there: without one, nothing is installed.
|
|
18
|
+
*/
|
|
19
|
+
export declare function installedPackageDirectory(root: string, realPath: string): {
|
|
20
|
+
directory: string;
|
|
21
|
+
name: string;
|
|
22
|
+
} | undefined;
|