patchwork-os 1.1.0-beta.2 → 1.1.0-beta.2.canary.395
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/approvalHttp.d.ts +49 -1
- package/dist/approvalHttp.js +69 -55
- package/dist/approvalHttp.js.map +1 -1
- package/dist/bridge.js +34 -5
- package/dist/bridge.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.js +10 -0
- package/dist/config.js.map +1 -1
- package/dist/fp/automationInterpreter.js +18 -3
- package/dist/fp/automationInterpreter.js.map +1 -1
- package/dist/haltPushDispatch.d.ts +1 -1
- package/dist/haltPushDispatch.js +11 -9
- package/dist/haltPushDispatch.js.map +1 -1
- package/dist/patchworkConfig.d.ts +7 -0
- package/dist/patchworkConfig.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.js +18 -0
- package/dist/server.js.map +1 -1
- package/dist/streamableHttp.js +10 -5
- package/dist/streamableHttp.js.map +1 -1
- package/dist/tools/getGitStatus.js +51 -41
- package/dist/tools/getGitStatus.js.map +1 -1
- package/dist/tools/terminal.js +11 -3
- package/dist/tools/terminal.js.map +1 -1
- package/dist/tools/vscodeTasks.js +10 -0
- package/dist/tools/vscodeTasks.js.map +1 -1
- package/dist/transport.d.ts +9 -1
- package/dist/transport.js +53 -18
- package/dist/transport.js.map +1 -1
- package/dist/wireHaltPushDispatch.d.ts +1 -0
- package/dist/wireHaltPushDispatch.js +1 -1
- package/dist/wireHaltPushDispatch.js.map +1 -1
- package/dist/workers/outcomeStore.d.ts +5 -8
- package/dist/workers/outcomeStore.js +71 -54
- package/dist/workers/outcomeStore.js.map +1 -1
- package/dist/workers/runWorkerShadow.d.ts +3 -2
- package/dist/workers/runWorkerShadow.js +68 -27
- package/dist/workers/runWorkerShadow.js.map +1 -1
- package/package.json +1 -1
- package/scripts/start-all.mjs +75 -28
|
@@ -37,38 +37,28 @@ export function createGetGitStatusTool(workspace) {
|
|
|
37
37
|
const filterPath = rawPath
|
|
38
38
|
? resolveFilePath(rawPath, workspace)
|
|
39
39
|
: undefined;
|
|
40
|
-
//
|
|
41
|
-
|
|
40
|
+
// One subprocess instead of four (git-dir check, branch name,
|
|
41
|
+
// ahead/behind, file status): --branch adds the "# branch.*" header
|
|
42
|
+
// lines (repo check + branch name + ahead/behind all fold in), and
|
|
43
|
+
// --porcelain=v2 gives everything --porcelain=v1 gave for files, in a
|
|
44
|
+
// slightly different (but equally parseable) column layout.
|
|
45
|
+
const statusArgs = ["status", "--porcelain=v2", "--branch", "-u"];
|
|
46
|
+
if (filterPath) {
|
|
47
|
+
statusArgs.push("--", filterPath);
|
|
48
|
+
}
|
|
49
|
+
const statusResult = await execSafe("git", statusArgs, {
|
|
42
50
|
cwd: workspace,
|
|
43
51
|
signal,
|
|
44
52
|
});
|
|
45
|
-
if (
|
|
53
|
+
if (statusResult.exitCode !== 0) {
|
|
46
54
|
return successStructured({
|
|
47
55
|
available: false,
|
|
48
56
|
error: "Not a git repository",
|
|
49
57
|
});
|
|
50
58
|
}
|
|
51
|
-
|
|
52
|
-
const branchResult = await execSafe("git", ["rev-parse", "--abbrev-ref", "HEAD"], { cwd: workspace, signal });
|
|
53
|
-
const branch = branchResult.stdout.trim();
|
|
54
|
-
// Get ahead/behind counts (ignore error if no upstream)
|
|
59
|
+
let branch = "";
|
|
55
60
|
let ahead = 0;
|
|
56
61
|
let behind = 0;
|
|
57
|
-
const revListResult = await execSafe("git", ["rev-list", "--count", "--left-right", "HEAD...@{u}"], { cwd: workspace, signal });
|
|
58
|
-
if (revListResult.exitCode === 0) {
|
|
59
|
-
const parts = revListResult.stdout.trim().split(/\s+/);
|
|
60
|
-
ahead = Number.parseInt(parts[0] ?? "0", 10);
|
|
61
|
-
behind = Number.parseInt(parts[1] ?? "0", 10);
|
|
62
|
-
}
|
|
63
|
-
// Get file status
|
|
64
|
-
const statusArgs = ["status", "--porcelain=v1", "-u"];
|
|
65
|
-
if (filterPath) {
|
|
66
|
-
statusArgs.push("--", filterPath);
|
|
67
|
-
}
|
|
68
|
-
const statusResult = await execSafe("git", statusArgs, {
|
|
69
|
-
cwd: workspace,
|
|
70
|
-
signal,
|
|
71
|
-
});
|
|
72
62
|
const staged = [];
|
|
73
63
|
const unstaged = [];
|
|
74
64
|
const untracked = [];
|
|
@@ -76,31 +66,51 @@ export function createGetGitStatusTool(workspace) {
|
|
|
76
66
|
for (const line of statusResult.stdout.split("\n")) {
|
|
77
67
|
if (!line)
|
|
78
68
|
continue;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
file = file.split(" -> ").pop() ?? file;
|
|
69
|
+
if (line.startsWith("# branch.head ")) {
|
|
70
|
+
const head = line.slice("# branch.head ".length).trim();
|
|
71
|
+
// Detached HEAD reports "(detached)" in v2 headers; match the old
|
|
72
|
+
// `git rev-parse --abbrev-ref HEAD` contract of plain "HEAD".
|
|
73
|
+
branch = head === "(detached)" ? "HEAD" : head;
|
|
74
|
+
continue;
|
|
86
75
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
(x === "D" && y === "D")) {
|
|
92
|
-
conflicts.push(file);
|
|
76
|
+
if (line.startsWith("# branch.ab ")) {
|
|
77
|
+
const parts = line.slice("# branch.ab ".length).trim().split(/\s+/);
|
|
78
|
+
ahead = Number.parseInt(parts[0]?.replace("+", "") ?? "0", 10);
|
|
79
|
+
behind = Number.parseInt(parts[1]?.replace("-", "") ?? "0", 10);
|
|
93
80
|
continue;
|
|
94
81
|
}
|
|
95
|
-
if (
|
|
96
|
-
|
|
82
|
+
if (line.startsWith("#"))
|
|
83
|
+
continue; // branch.oid / branch.upstream — unused
|
|
84
|
+
// Ordinary changed entry: "1 XY sub mH mI mW hH hI path"
|
|
85
|
+
// Rename/copy entry: "2 XY sub mH mI mW hH hI Xscore path\torigPath"
|
|
86
|
+
// Unmerged (conflict): "u XY sub m1 m2 m3 mW h1 h2 h3 path"
|
|
87
|
+
// Untracked: "? path"
|
|
88
|
+
const kind = line[0];
|
|
89
|
+
if (kind === "?") {
|
|
90
|
+
untracked.push(line.slice(2));
|
|
97
91
|
continue;
|
|
98
92
|
}
|
|
99
|
-
if (
|
|
100
|
-
|
|
93
|
+
if (kind === "u") {
|
|
94
|
+
const fields = line.split(" ");
|
|
95
|
+
conflicts.push(fields.slice(10).join(" "));
|
|
96
|
+
continue;
|
|
101
97
|
}
|
|
102
|
-
if (
|
|
103
|
-
|
|
98
|
+
if (kind === "1" || kind === "2") {
|
|
99
|
+
const fields = line.split(" ");
|
|
100
|
+
const xy = fields[1] ?? "..";
|
|
101
|
+
const x = xy[0] ?? ".";
|
|
102
|
+
const y = xy[1] ?? ".";
|
|
103
|
+
// "1" entries have 9 leading fields before the path; "2" (rename/
|
|
104
|
+
// copy) entries have one more (the score field) and append
|
|
105
|
+
// "path\torigPath" — take the renamed-to path, which comes first.
|
|
106
|
+
const pathField = fields.slice(kind === "2" ? 9 : 8).join(" ");
|
|
107
|
+
const file = pathField.includes("\t")
|
|
108
|
+
? (pathField.split("\t")[0] ?? pathField)
|
|
109
|
+
: pathField;
|
|
110
|
+
if (x !== ".")
|
|
111
|
+
staged.push(file);
|
|
112
|
+
if (y !== ".")
|
|
113
|
+
unstaged.push(file);
|
|
104
114
|
}
|
|
105
115
|
}
|
|
106
116
|
const GIT_STATUS_MAX_FILES = 500;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getGitStatus.js","sourceRoot":"","sources":["../../src/tools/getGitStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,cAAc,EACd,eAAe,EACf,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,2EAA2E;YAC7E,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;YACnC,WAAW,EAAE;gBACX,OAAO,EAAE,yCAAyC;gBAClD,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,iEAAiE;qBACpE;iBACF;aACF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC3B,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACpD,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACtD,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACvD,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACvD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,QAAQ,EAAE,CAAC,WAAW,CAAC;aACxB;SACF;QAED,KAAK,CAAC,OAAO,CAAC,IAA6B,EAAE,MAAoB;YAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,OAAO;gBACxB,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC;gBACrC,CAAC,CAAC,SAAS,CAAC;YAEd,
|
|
1
|
+
{"version":3,"file":"getGitStatus.js","sourceRoot":"","sources":["../../src/tools/getGitStatus.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/terminal.js
CHANGED
|
@@ -442,11 +442,19 @@ export function createRunInTerminalTool(workspace, extensionClient, commandAllow
|
|
|
442
442
|
return error(indexErr);
|
|
443
443
|
try {
|
|
444
444
|
const result = await extensionClient.executeInTerminal(command, prefixName(name, terminalPrefix), index, timeoutMs, show);
|
|
445
|
-
|
|
445
|
+
const r = result;
|
|
446
|
+
if (result !== null && !r?.shellIntegrationUnavailable) {
|
|
446
447
|
return successStructured(result);
|
|
447
448
|
}
|
|
448
|
-
//
|
|
449
|
-
//
|
|
449
|
+
// Fall through to the subprocess fallback below only when:
|
|
450
|
+
// • the transport validator rejected the response shape
|
|
451
|
+
// (result === null — e.g. no PTY hooks), or
|
|
452
|
+
// • the extension explicitly reported shellIntegrationUnavailable
|
|
453
|
+
// (fresh terminal / SSH remote / headless — shell integration
|
|
454
|
+
// hasn't attached yet).
|
|
455
|
+
// Every OTHER success:false (terminal not found, bad args) was
|
|
456
|
+
// already returned above, as-is — those must surface as real
|
|
457
|
+
// errors, not be silently retried as a subprocess.
|
|
450
458
|
}
|
|
451
459
|
catch (err) {
|
|
452
460
|
if (err instanceof ExtensionTimeoutError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/tools/terminal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/tools/terminal.ts"],"names":[],"mappings":"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"}
|
|
@@ -96,6 +96,16 @@ export function createRunVSCodeTaskTool(extensionClient) {
|
|
|
96
96
|
if (result === null) {
|
|
97
97
|
return error("Extension did not respond — ensure the VS Code extension is running");
|
|
98
98
|
}
|
|
99
|
+
// handleRunTask (extension side) returns a non-null {success:false}
|
|
100
|
+
// object for task-not-found, executeTask() rejecting, and its own
|
|
101
|
+
// internal timeout — all real failures, distinct from a task that
|
|
102
|
+
// ran to completion with a nonzero exit code (success:true,
|
|
103
|
+
// exitCode!==0). Without this check every one of those was reported
|
|
104
|
+
// as an MCP tool success with the failure buried in the payload.
|
|
105
|
+
const r = result;
|
|
106
|
+
if (r.success === false) {
|
|
107
|
+
return error(result);
|
|
108
|
+
}
|
|
99
109
|
return successStructured(result);
|
|
100
110
|
}
|
|
101
111
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscodeTasks.js","sourceRoot":"","sources":["../../src/tools/vscodeTasks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vscodeTasks.js","sourceRoot":"","sources":["../../src/tools/vscodeTasks.ts"],"names":[],"mappings":"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"}
|
package/dist/transport.d.ts
CHANGED
|
@@ -274,7 +274,15 @@ export declare class McpTransport {
|
|
|
274
274
|
tool: string;
|
|
275
275
|
sizeChars: number;
|
|
276
276
|
}>;
|
|
277
|
-
|
|
277
|
+
/**
|
|
278
|
+
* @param preserveInitialized When true, keeps the current `initialized`
|
|
279
|
+
* state instead of resetting it. Grace-period session resumption must set
|
|
280
|
+
* this — the documented contract is "no new session, no re-initialization",
|
|
281
|
+
* so a client resuming within the grace window is not expected to resend
|
|
282
|
+
* "initialize"/"notifications/initialized". Brand-new connections must NOT
|
|
283
|
+
* set this — they always require a fresh handshake.
|
|
284
|
+
*/
|
|
285
|
+
attach(ws: WebSocket, preserveInitialized?: boolean): void;
|
|
278
286
|
/** Send progress notification for a long-running tool */
|
|
279
287
|
private sendProgress;
|
|
280
288
|
/** Send a server-initiated notification */
|
package/dist/transport.js
CHANGED
|
@@ -16,7 +16,11 @@ const TOOLS_LIST_PAGE_SIZE = 200; // Most MCP clients (Claude Desktop) only fetc
|
|
|
16
16
|
const META_SIZE_HINT_THRESHOLD = 50_000; // 50 KB
|
|
17
17
|
// Supported MCP protocol versions, newest first.
|
|
18
18
|
// Extend this array when new protocol versions are ratified; keep oldest supported version last.
|
|
19
|
-
|
|
19
|
+
// 2024-11-05 (the original MCP spec revision) is kept for backward compatibility:
|
|
20
|
+
// clients that hardcode it and can't tolerate the server substituting a
|
|
21
|
+
// different version get stuck retrying "initialize" forever, surfacing as a
|
|
22
|
+
// permanent "Not initialized" state with no visible error.
|
|
23
|
+
const SUPPORTED_VERSIONS = ["2025-11-25", "2024-11-05"];
|
|
20
24
|
export class McpTransport {
|
|
21
25
|
logger;
|
|
22
26
|
tools = new Map();
|
|
@@ -84,7 +88,12 @@ export class McpTransport {
|
|
|
84
88
|
onActivity = undefined;
|
|
85
89
|
activityLog = null;
|
|
86
90
|
isExtensionConnectedFn = null;
|
|
87
|
-
|
|
91
|
+
// allErrors:false — AJV stops at the first failure instead of collecting
|
|
92
|
+
// every violation, which is significantly cheaper on the tool-call hot
|
|
93
|
+
// path. The error message reports one problem instead of all of them;
|
|
94
|
+
// callers get to the fix by correcting and re-calling, same as any
|
|
95
|
+
// fail-fast validator.
|
|
96
|
+
ajv = createAjv2020({ strict: false, allErrors: false });
|
|
88
97
|
schemaValidators = new Map();
|
|
89
98
|
outputValidators = new Map();
|
|
90
99
|
/** Cached wire-schema array for tools/list (full mode). Invalidated on any tool registration change. */
|
|
@@ -505,29 +514,49 @@ export class McpTransport {
|
|
|
505
514
|
.slice(0, n)
|
|
506
515
|
.map(([tool, sizeChars]) => ({ tool, sizeChars }));
|
|
507
516
|
}
|
|
508
|
-
|
|
517
|
+
/**
|
|
518
|
+
* @param preserveInitialized When true, keeps the current `initialized`
|
|
519
|
+
* state instead of resetting it. Grace-period session resumption must set
|
|
520
|
+
* this — the documented contract is "no new session, no re-initialization",
|
|
521
|
+
* so a client resuming within the grace window is not expected to resend
|
|
522
|
+
* "initialize"/"notifications/initialized". Brand-new connections must NOT
|
|
523
|
+
* set this — they always require a fresh handshake.
|
|
524
|
+
*/
|
|
525
|
+
attach(ws, preserveInitialized = false) {
|
|
509
526
|
this.activeWs = ws;
|
|
510
|
-
|
|
527
|
+
if (!preserveInitialized) {
|
|
528
|
+
this.initialized = false; // Force re-initialization on every new connection
|
|
529
|
+
}
|
|
511
530
|
const gen = ++this.generation;
|
|
531
|
+
// The real `ws` library always emits a raw Buffer here. The Streamable
|
|
532
|
+
// HTTP adapter (streamableHttp.ts) already parses the POST body once
|
|
533
|
+
// (for session/routing logic) before feeding it to this listener — it
|
|
534
|
+
// passes that parsed object through directly instead of a Buffer, so
|
|
535
|
+
// this hot path doesn't pay for a second JSON.parse of the same bytes.
|
|
512
536
|
const listener = async (data) => {
|
|
513
537
|
// Ignore messages from superseded connections
|
|
514
538
|
if (gen !== this.generation)
|
|
515
539
|
return;
|
|
516
540
|
let raw;
|
|
517
|
-
|
|
518
|
-
|
|
541
|
+
if (Buffer.isBuffer(data)) {
|
|
542
|
+
try {
|
|
543
|
+
raw = JSON.parse(data.toString("utf-8"));
|
|
544
|
+
}
|
|
545
|
+
catch {
|
|
546
|
+
// Malformed JSON — send PARSE_ERROR per JSON-RPC 2.0 spec §5.1
|
|
547
|
+
await safeSend(ws, JSON.stringify({
|
|
548
|
+
jsonrpc: "2.0",
|
|
549
|
+
id: null,
|
|
550
|
+
error: {
|
|
551
|
+
code: ErrorCodes.PARSE_ERROR,
|
|
552
|
+
message: "Parse error: message is not valid JSON",
|
|
553
|
+
},
|
|
554
|
+
}), this.logger);
|
|
555
|
+
return;
|
|
556
|
+
}
|
|
519
557
|
}
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
await safeSend(ws, JSON.stringify({
|
|
523
|
-
jsonrpc: "2.0",
|
|
524
|
-
id: null,
|
|
525
|
-
error: {
|
|
526
|
-
code: ErrorCodes.PARSE_ERROR,
|
|
527
|
-
message: "Parse error: message is not valid JSON",
|
|
528
|
-
},
|
|
529
|
-
}), this.logger);
|
|
530
|
-
return;
|
|
558
|
+
else {
|
|
559
|
+
raw = data;
|
|
531
560
|
}
|
|
532
561
|
try {
|
|
533
562
|
if (typeof raw !== "object" || raw === null) {
|
|
@@ -1093,7 +1122,13 @@ export class McpTransport {
|
|
|
1093
1122
|
// Check rawArgs (before _meta strip) so a large _meta cannot bypass the limit.
|
|
1094
1123
|
// Fast-path: the WS message buffer is always ≥ rawArgs JSON size, so skip
|
|
1095
1124
|
// the expensive re-serialize for messages under 512 KB (virtually all calls).
|
|
1096
|
-
|
|
1125
|
+
// `data` is a Buffer for real WebSocket messages but an already-parsed
|
|
1126
|
+
// object for Streamable HTTP (see attach() above) — there's no byte
|
|
1127
|
+
// count to fast-path on in that case, so always run the exact check.
|
|
1128
|
+
const likelyOversized = Buffer.isBuffer(data)
|
|
1129
|
+
? data.byteLength > 524_288
|
|
1130
|
+
: true;
|
|
1131
|
+
if (likelyOversized &&
|
|
1097
1132
|
JSON.stringify(rawArgs).length > 1_048_576) {
|
|
1098
1133
|
this.callCount++;
|
|
1099
1134
|
this.errorCount++;
|