carrick 0.3.58 → 0.3.59
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/README.md +94 -26
- package/bin/carrick.mjs +13 -2
- package/dist/auth/credentials.d.ts +14 -0
- package/dist/auth/credentials.js +86 -0
- package/dist/auth/credentials.js.map +1 -0
- package/dist/auth/oauth.d.ts +11 -0
- package/dist/auth/oauth.js +119 -0
- package/dist/auth/oauth.js.map +1 -0
- package/dist/auth/read.d.ts +139 -0
- package/dist/auth/read.js +44 -0
- package/dist/auth/read.js.map +1 -0
- package/dist/auth/run.d.ts +12 -0
- package/dist/auth/run.js +68 -0
- package/dist/auth/run.js.map +1 -0
- package/dist/contract.d.ts +10 -0
- package/dist/contract.js +3 -0
- package/dist/contract.js.map +1 -1
- package/dist/definition.js +2 -2
- package/dist/definition.js.map +1 -1
- package/dist/diagnostics.d.ts +35 -1
- package/dist/diagnostics.js +52 -11
- package/dist/diagnostics.js.map +1 -1
- package/dist/hook/refresh.d.ts +32 -0
- package/dist/hook/refresh.js +138 -0
- package/dist/hook/refresh.js.map +1 -0
- package/dist/hook/session-start.js +13 -0
- package/dist/hook/session-start.js.map +1 -1
- package/dist/init/connect.d.ts +17 -0
- package/dist/init/connect.js +120 -0
- package/dist/init/connect.js.map +1 -0
- package/dist/init/mcp.d.ts +50 -0
- package/dist/init/mcp.js +235 -0
- package/dist/init/mcp.js.map +1 -0
- package/dist/init/projects.d.ts +46 -0
- package/dist/init/projects.js +137 -0
- package/dist/init/projects.js.map +1 -0
- package/dist/init/repos.d.ts +113 -19
- package/dist/init/repos.js +60 -39
- package/dist/init/repos.js.map +1 -1
- package/dist/init/run.d.ts +16 -0
- package/dist/init/run.js +243 -61
- package/dist/init/run.js.map +1 -1
- package/dist/init/settings.d.ts +1 -1
- package/dist/init/settings.js +1 -1
- package/dist/init/settings.js.map +1 -1
- package/dist/server.js +173 -16
- package/dist/server.js.map +1 -1
- package/package.json +6 -6
- package/sidecar/dist/src/capture/deno-project.d.ts +41 -0
- package/sidecar/dist/src/capture/deno-project.js +513 -0
- package/sidecar/dist/src/capture/index.d.ts +1 -0
- package/sidecar/dist/src/capture/index.js +60 -19
- package/sidecar/dist/src/capture/self-check.d.ts +2 -0
- package/sidecar/dist/src/capture/self-check.js +3 -2
- package/sidecar/dist/src/project-loader.js +22 -1
- package/dist/init/identity.d.ts +0 -20
- package/dist/init/identity.js +0 -60
- package/dist/init/identity.js.map +0 -1
package/dist/server.js
CHANGED
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
// sites go in both places (see diagnostics.ts).
|
|
24
24
|
//
|
|
25
25
|
// stdout is protocol only. Every log line goes to stderr.
|
|
26
|
+
import fs from "node:fs";
|
|
26
27
|
import path from "node:path";
|
|
27
28
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
28
29
|
import { check } from "./cli.js";
|
|
@@ -55,8 +56,27 @@ let clientName = "an unnamed client";
|
|
|
55
56
|
let clientRefreshesLenses = false;
|
|
56
57
|
/** One off switch per surface (carrick#879), as the client stated them. */
|
|
57
58
|
let surfaces = DEFAULT_SURFACES;
|
|
58
|
-
/**
|
|
59
|
-
|
|
59
|
+
/**
|
|
60
|
+
* What each check pass contributed, per pass, per file it landed rows in
|
|
61
|
+
* (carrick#923).
|
|
62
|
+
*
|
|
63
|
+
* A check of one file publishes rows on that file AND on its counterparts, so
|
|
64
|
+
* two open files on either side of one contract are two passes with an opinion
|
|
65
|
+
* about the same URI, and neither is the whole answer: the producer's pass
|
|
66
|
+
* knows every route in the producer, the consumer's pass knows only the one
|
|
67
|
+
* route it calls. `publishDiagnostics` replaces per URI, so whichever pass ran
|
|
68
|
+
* last used to erase the other's rows. What is published for a URI is the merge
|
|
69
|
+
* of every pass that has an opinion about it, computed here, and a pass is
|
|
70
|
+
* replaced whole when it re-runs.
|
|
71
|
+
*
|
|
72
|
+
* Uncapped on purpose. Evicting a pass would clear rows on a file that is still
|
|
73
|
+
* open and still wrong, and an entry is a handful of diagnostics.
|
|
74
|
+
*/
|
|
75
|
+
const contributions = new Map();
|
|
76
|
+
/** The last diagnostics sent per URI, so an unchanged merge is not re-sent. */
|
|
77
|
+
const published = new Map();
|
|
78
|
+
/** The text of every document the client has open, by absolute path. */
|
|
79
|
+
const openDocuments = new Map();
|
|
60
80
|
const debounces = new Map();
|
|
61
81
|
/** Ids for the requests this server makes of the client. */
|
|
62
82
|
let nextServerId = 1;
|
|
@@ -81,6 +101,106 @@ function publish(uriPath, diagnostics) {
|
|
|
81
101
|
params: { uri: pathToFileURL(uriPath).toString(), diagnostics },
|
|
82
102
|
});
|
|
83
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* One row's identity within a file: what it says and the line it says it on.
|
|
106
|
+
*
|
|
107
|
+
* Used only to drop a row a second pass would repeat. A finding that is a
|
|
108
|
+
* file's own is also mirrored onto that file by the counterpart's pass, at the
|
|
109
|
+
* same line and under the same code, and the two sentences differ only in the
|
|
110
|
+
* "producer in X of Y." the mirrored one leads with. The code and the line are
|
|
111
|
+
* what a reader would call the same row.
|
|
112
|
+
*/
|
|
113
|
+
function rowKey(diagnostic) {
|
|
114
|
+
return `${diagnostic.code ?? ""}|${diagnostic.range.start.line}`;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Every pass's rows for one file, the file's own pass first.
|
|
118
|
+
*
|
|
119
|
+
* Own-pass rows go in unconditionally: two findings on one line are two rows
|
|
120
|
+
* and only the passes DISAGREE about a file, never a pass with itself. Another
|
|
121
|
+
* pass's mirrored row is added only when nothing already said the same thing
|
|
122
|
+
* there, which is what stops the same finding rendering twice.
|
|
123
|
+
*/
|
|
124
|
+
function mergedFor(uriPath) {
|
|
125
|
+
const rows = [];
|
|
126
|
+
const seen = new Set();
|
|
127
|
+
const own = contributions.get(uriPath)?.get(uriPath);
|
|
128
|
+
if (own) {
|
|
129
|
+
rows.push(...own);
|
|
130
|
+
for (const row of own)
|
|
131
|
+
seen.add(rowKey(row));
|
|
132
|
+
}
|
|
133
|
+
for (const [checked, byFile] of contributions) {
|
|
134
|
+
if (checked === uriPath)
|
|
135
|
+
continue;
|
|
136
|
+
for (const row of byFile.get(uriPath) ?? []) {
|
|
137
|
+
const key = rowKey(row);
|
|
138
|
+
if (seen.has(key))
|
|
139
|
+
continue;
|
|
140
|
+
seen.add(key);
|
|
141
|
+
rows.push(row);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return rows;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Replace one pass's rows and re-publish every file the change can reach.
|
|
148
|
+
*
|
|
149
|
+
* That is the files this pass touched now plus the ones it touched before: a
|
|
150
|
+
* file it has dropped needs the merge without it, which is often empty and
|
|
151
|
+
* clears the file. A URI whose merged set is what the client already has is not
|
|
152
|
+
* sent again, so opening the second file of a pair is silent where its rows
|
|
153
|
+
* agree with the first pass's.
|
|
154
|
+
*/
|
|
155
|
+
function republish(checkedAbs, byFile) {
|
|
156
|
+
const touched = new Set([
|
|
157
|
+
...(contributions.get(checkedAbs)?.keys() ?? []),
|
|
158
|
+
...byFile.keys(),
|
|
159
|
+
]);
|
|
160
|
+
contributions.set(checkedAbs, byFile);
|
|
161
|
+
for (const file of touched) {
|
|
162
|
+
const rows = mergedFor(file);
|
|
163
|
+
const body = JSON.stringify(rows);
|
|
164
|
+
if (published.get(file) === body)
|
|
165
|
+
continue;
|
|
166
|
+
published.set(file, body);
|
|
167
|
+
publish(file, rows);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* The text of one 1-based line, for the span a diagnostic underlines (#922).
|
|
172
|
+
*
|
|
173
|
+
* The open document first, because that is the text in front of the user and
|
|
174
|
+
* an editor with unsaved changes has no other source for it, and the file on
|
|
175
|
+
* disk second, because a finding is mirrored onto counterpart files nobody has
|
|
176
|
+
* opened. A client that sends an empty `text` on `didOpen` has told us nothing,
|
|
177
|
+
* so that reads as "not open" rather than as an empty file.
|
|
178
|
+
*
|
|
179
|
+
* Fresh per check: within one check the same file is read once, and between two
|
|
180
|
+
* checks the text may have moved.
|
|
181
|
+
*/
|
|
182
|
+
function lineTextReader() {
|
|
183
|
+
const cache = new Map();
|
|
184
|
+
return (file, line) => {
|
|
185
|
+
const key = path.resolve(file);
|
|
186
|
+
if (!cache.has(key)) {
|
|
187
|
+
let text = openDocuments.get(key);
|
|
188
|
+
if (!text) {
|
|
189
|
+
try {
|
|
190
|
+
text = fs.readFileSync(key, "utf8");
|
|
191
|
+
}
|
|
192
|
+
catch {
|
|
193
|
+
text = undefined;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
cache.set(key, text === undefined ? null : text.split(/\r?\n/));
|
|
197
|
+
}
|
|
198
|
+
const lines = cache.get(key);
|
|
199
|
+
if (!lines)
|
|
200
|
+
return null;
|
|
201
|
+
return lines[line - 1] ?? null;
|
|
202
|
+
};
|
|
203
|
+
}
|
|
84
204
|
/**
|
|
85
205
|
* The check answer for a file: the cached one, or one run now and cached.
|
|
86
206
|
*
|
|
@@ -125,17 +245,12 @@ async function checkAndPublish(absFile) {
|
|
|
125
245
|
log("check", relFile, "->", result.error);
|
|
126
246
|
return;
|
|
127
247
|
}
|
|
128
|
-
const byFile = toDiagnostics(result, root, relFile, { surfaces });
|
|
248
|
+
const byFile = toDiagnostics(result, root, relFile, { surfaces, lineText: lineTextReader() });
|
|
129
249
|
log(`check ${relFile} -> ${[...byFile.values()].reduce((n, list) => n + list.length, 0)} diagnostic(s) across ${byFile.size} file(s) in ${Date.now() - started}ms`);
|
|
130
|
-
//
|
|
131
|
-
//
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
if (!byFile.has(stale))
|
|
135
|
-
byFile.set(stale, []);
|
|
136
|
-
publishedBy.set(relFile, new Set([...byFile.keys()].filter((file) => (byFile.get(file) ?? []).length > 0)));
|
|
137
|
-
for (const [file, diagnostics] of byFile)
|
|
138
|
-
publish(file, diagnostics);
|
|
250
|
+
// This pass's whole opinion, replacing the one it had before. What a file
|
|
251
|
+
// ends up with is the merge of every pass that has an opinion about it, so a
|
|
252
|
+
// check that returns nothing for a file clears only its own rows there.
|
|
253
|
+
republish(path.resolve(absFile), byFile);
|
|
139
254
|
publishBoundary(result);
|
|
140
255
|
}
|
|
141
256
|
/**
|
|
@@ -187,6 +302,29 @@ function pathOf(params) {
|
|
|
187
302
|
return null;
|
|
188
303
|
}
|
|
189
304
|
}
|
|
305
|
+
/**
|
|
306
|
+
* The document's text as this notification states it, or null when it does not.
|
|
307
|
+
*
|
|
308
|
+
* `didOpen` carries the whole document. `didChange` carries whole documents too
|
|
309
|
+
* here, because the sync kind this server declares is Full, and an incremental
|
|
310
|
+
* change (one carrying a `range`) is ignored rather than applied to the wrong
|
|
311
|
+
* text. `didSave` carries none: `includeText` is false, and what is on disk is
|
|
312
|
+
* then the same text anyway.
|
|
313
|
+
*/
|
|
314
|
+
function textOf(params) {
|
|
315
|
+
const document = params?.["textDocument"];
|
|
316
|
+
if (typeof document?.text === "string")
|
|
317
|
+
return document.text;
|
|
318
|
+
const changes = params?.["contentChanges"];
|
|
319
|
+
if (!Array.isArray(changes))
|
|
320
|
+
return null;
|
|
321
|
+
for (const change of [...changes].reverse()) {
|
|
322
|
+
const entry = change;
|
|
323
|
+
if (entry.range === undefined && typeof entry.text === "string")
|
|
324
|
+
return entry.text;
|
|
325
|
+
}
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
190
328
|
// ------------------------------------------------------------------ protocol
|
|
191
329
|
function onInitialize(id, params) {
|
|
192
330
|
const folders = params["workspaceFolders"];
|
|
@@ -273,6 +411,11 @@ function handle(message) {
|
|
|
273
411
|
const file = pathOf(params);
|
|
274
412
|
if (!file)
|
|
275
413
|
return;
|
|
414
|
+
// The text the client has, kept for the span every row underlines: the
|
|
415
|
+
// buffer is what the user is looking at, and an unsaved one is on no disk.
|
|
416
|
+
const text = textOf(params);
|
|
417
|
+
if (text !== null)
|
|
418
|
+
openDocuments.set(path.resolve(file), text);
|
|
276
419
|
// The text moved, so the lines in the cached answer are about text that
|
|
277
420
|
// is gone. Dropped on every channel: in the hook channel nothing
|
|
278
421
|
// re-checks the file, and a jump off a stale line is the worst answer
|
|
@@ -283,13 +426,22 @@ function handle(message) {
|
|
|
283
426
|
scheduleCheck(file, method === "textDocument/didChange" ? DEBOUNCE_MS : 0);
|
|
284
427
|
return;
|
|
285
428
|
}
|
|
429
|
+
case "textDocument/didClose": {
|
|
430
|
+
// The buffer is gone, so the file on disk is the text from here on. The
|
|
431
|
+
// rows stay: an editor keeps a closed file's diagnostics in the Problems
|
|
432
|
+
// list, and this server has not stopped believing them.
|
|
433
|
+
const file = pathOf(params);
|
|
434
|
+
if (file)
|
|
435
|
+
openDocuments.delete(path.resolve(file));
|
|
436
|
+
return;
|
|
437
|
+
}
|
|
286
438
|
case "workspace/didChangeConfiguration": {
|
|
287
439
|
// A switch turned off takes its rows away on the next publish, not at the
|
|
288
440
|
// next restart, so every file this server has flagged is re-checked here.
|
|
289
441
|
surfaces = readSurfaces(params, surfaces);
|
|
290
442
|
log(`surfaces: ${JSON.stringify(surfaces)}`);
|
|
291
|
-
for (const
|
|
292
|
-
scheduleCheck(
|
|
443
|
+
for (const checked of contributions.keys())
|
|
444
|
+
scheduleCheck(checked, 0);
|
|
293
445
|
// A lens is pulled, not pushed, so `carrick.codeLens` off only clears the
|
|
294
446
|
// screen once the client asks again. It is asked to.
|
|
295
447
|
if (clientRefreshesLenses)
|
|
@@ -344,9 +496,14 @@ function handle(message) {
|
|
|
344
496
|
}
|
|
345
497
|
void enqueue(async () => {
|
|
346
498
|
const result = await resultFor(file);
|
|
499
|
+
// This file's own pass and no other: a request answers what a check of
|
|
500
|
+
// this file says, and a pull must not rewrite what the push path has
|
|
501
|
+
// published to other files.
|
|
347
502
|
const items = result
|
|
348
|
-
? (toDiagnostics(result, root, relative(file), {
|
|
349
|
-
|
|
503
|
+
? (toDiagnostics(result, root, relative(file), {
|
|
504
|
+
surfaces,
|
|
505
|
+
lineText: lineTextReader(),
|
|
506
|
+
}).get(path.resolve(file)) ?? [])
|
|
350
507
|
: [];
|
|
351
508
|
send({ id, result: { kind: "full", items } });
|
|
352
509
|
});
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.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.59",
|
|
4
4
|
"description": "The API contract index for a TypeScript workspace: what the other services do with the routes and calls in the file you are editing, in your editor and in your agent's context",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -55,11 +55,11 @@
|
|
|
55
55
|
"zod": "^3.23.0"
|
|
56
56
|
},
|
|
57
57
|
"optionalDependencies": {
|
|
58
|
-
"@carrick-tools/cli-darwin-arm64": "0.3.
|
|
59
|
-
"@carrick-tools/cli-darwin-x64": "0.3.
|
|
60
|
-
"@carrick-tools/cli-linux-arm64": "0.3.
|
|
61
|
-
"@carrick-tools/cli-linux-x64": "0.3.
|
|
62
|
-
"@carrick-tools/cli-win32-x64": "0.3.
|
|
58
|
+
"@carrick-tools/cli-darwin-arm64": "0.3.59",
|
|
59
|
+
"@carrick-tools/cli-darwin-x64": "0.3.59",
|
|
60
|
+
"@carrick-tools/cli-linux-arm64": "0.3.59",
|
|
61
|
+
"@carrick-tools/cli-linux-x64": "0.3.59",
|
|
62
|
+
"@carrick-tools/cli-win32-x64": "0.3.59"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"@types/node": "^24.13.3",
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** Deno owns module resolution; both compiler frontends consume its graph. */
|
|
2
|
+
import ts from 'typescript';
|
|
3
|
+
export interface DenoConfig {
|
|
4
|
+
configPath: string;
|
|
5
|
+
workspaceRoot: string;
|
|
6
|
+
compilerOptions: Record<string, unknown>;
|
|
7
|
+
exclude: string[];
|
|
8
|
+
}
|
|
9
|
+
/** Explicit TS configs keep their existing behaviour, including mixed repos. */
|
|
10
|
+
export declare function findDenoConfig(repoRoot: string, explicit?: string): DenoConfig | undefined;
|
|
11
|
+
/** One request's immutable graph, shared by analysis, emit and relocation. */
|
|
12
|
+
export declare class DenoProject {
|
|
13
|
+
readonly config: DenoConfig;
|
|
14
|
+
readonly repoRoot: string;
|
|
15
|
+
readonly cacheDir: string;
|
|
16
|
+
readonly parsed: ts.ParsedCommandLine;
|
|
17
|
+
readonly globals: string[];
|
|
18
|
+
readonly diagnostics: string[];
|
|
19
|
+
readonly pinned: Record<string, string>;
|
|
20
|
+
private readonly modules;
|
|
21
|
+
private readonly localPaths;
|
|
22
|
+
private readonly edges;
|
|
23
|
+
private readonly redirects;
|
|
24
|
+
private readonly npmPackages;
|
|
25
|
+
private readonly externalNames;
|
|
26
|
+
constructor(config: DenoConfig, repoRoot: string);
|
|
27
|
+
private targetPath;
|
|
28
|
+
resolve(spec: string, from: string, options: ts.CompilerOptions, host?: ts.ModuleResolutionHost): ts.ResolvedModule | undefined;
|
|
29
|
+
private npmOwner;
|
|
30
|
+
private isNpmFile;
|
|
31
|
+
/** Let TypeScript interpret real package exports/types using Deno's exact
|
|
32
|
+
* dependency graph. Only the resolution host sees virtual node_modules;
|
|
33
|
+
* every returned source path points at the existing Deno cache. */
|
|
34
|
+
private resolveNpm;
|
|
35
|
+
host(options: ts.CompilerOptions): ts.CompilerHost;
|
|
36
|
+
resolveTypeReference(spec: string, from: string, options: ts.CompilerOptions, host?: ts.ModuleResolutionHost): ts.ResolvedTypeReferenceDirective | undefined;
|
|
37
|
+
/** Turn a Deno npm alias into its real package export, with the exact pin. */
|
|
38
|
+
private externalName;
|
|
39
|
+
/** Relocate Deno's per-file resolutions into the portable declaration tree. */
|
|
40
|
+
rewrite(typesDir: string, files: string[], sourceByEmitted: Map<string, string>): number;
|
|
41
|
+
}
|