@flyingrobots/graft 0.12.0 → 0.14.0
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/CHANGELOG.md +105 -0
- package/dist/adapters/fake-echo-kernel-transport.d.ts.map +1 -1
- package/dist/adapters/fake-echo-kernel-transport.js +12 -0
- package/dist/adapters/fake-echo-kernel-transport.js.map +1 -1
- package/dist/cli/daemon-status-model.d.ts +1 -0
- package/dist/cli/daemon-status-model.d.ts.map +1 -1
- package/dist/cli/daemon-status-model.js +1 -0
- package/dist/cli/daemon-status-model.js.map +1 -1
- package/dist/cli/daemon-status-render.d.ts.map +1 -1
- package/dist/cli/daemon-status-render.js +1 -0
- package/dist/cli/daemon-status-render.js.map +1 -1
- package/dist/contracts/capabilities.d.ts +7 -0
- package/dist/contracts/capabilities.d.ts.map +1 -1
- package/dist/contracts/capabilities.js +28 -0
- package/dist/contracts/capabilities.js.map +1 -1
- package/dist/contracts/output-schema-fragments.d.ts +2 -0
- package/dist/contracts/output-schema-fragments.d.ts.map +1 -1
- package/dist/contracts/output-schema-fragments.js +1 -0
- package/dist/contracts/output-schema-fragments.js.map +1 -1
- package/dist/contracts/output-schema-mcp.d.ts +1 -0
- package/dist/contracts/output-schema-mcp.d.ts.map +1 -1
- package/dist/contracts/output-schema-meta.d.ts +12 -1
- package/dist/contracts/output-schema-meta.d.ts.map +1 -1
- package/dist/contracts/output-schema-meta.js +33 -9
- package/dist/contracts/output-schema-meta.js.map +1 -1
- package/dist/contracts/output-schemas.d.ts.map +1 -1
- package/dist/contracts/output-schemas.js +14 -4
- package/dist/contracts/output-schemas.js.map +1 -1
- package/dist/echo/structural-history-client.d.ts.map +1 -1
- package/dist/echo/structural-history-client.js +12 -0
- package/dist/echo/structural-history-client.js.map +1 -1
- package/dist/echo/structural-reading-adapter.d.ts.map +1 -1
- package/dist/echo/structural-reading-adapter.js +13 -2
- package/dist/echo/structural-reading-adapter.js.map +1 -1
- package/dist/mcp/control-plane/types.d.ts +1 -0
- package/dist/mcp/control-plane/types.d.ts.map +1 -1
- package/dist/mcp/daemon-control-plane.d.ts.map +1 -1
- package/dist/mcp/daemon-control-plane.js +6 -1
- package/dist/mcp/daemon-control-plane.js.map +1 -1
- package/dist/mcp/daemon-scheduler-config.d.ts +53 -0
- package/dist/mcp/daemon-scheduler-config.d.ts.map +1 -0
- package/dist/mcp/daemon-scheduler-config.js +33 -0
- package/dist/mcp/daemon-scheduler-config.js.map +1 -0
- package/dist/mcp/daemon-server.d.ts +4 -0
- package/dist/mcp/daemon-server.d.ts.map +1 -1
- package/dist/mcp/daemon-server.js +39 -13
- package/dist/mcp/daemon-server.js.map +1 -1
- package/dist/mcp/daemon-session-host.d.ts +2 -2
- package/dist/mcp/daemon-session-host.d.ts.map +1 -1
- package/dist/mcp/daemon-session-host.js +130 -59
- package/dist/mcp/daemon-session-host.js.map +1 -1
- package/dist/mcp/persisted-local-history.d.ts +5 -0
- package/dist/mcp/persisted-local-history.d.ts.map +1 -1
- package/dist/mcp/persisted-local-history.js +5 -1
- package/dist/mcp/persisted-local-history.js.map +1 -1
- package/dist/mcp/receipt.d.ts +3 -0
- package/dist/mcp/receipt.d.ts.map +1 -1
- package/dist/mcp/receipt.js +4 -0
- package/dist/mcp/receipt.js.map +1 -1
- package/dist/mcp/repo-tool-job.d.ts +2 -1
- package/dist/mcp/repo-tool-job.d.ts.map +1 -1
- package/dist/mcp/repo-tool-job.js.map +1 -1
- package/dist/mcp/repo-tool-worker-context.d.ts.map +1 -1
- package/dist/mcp/repo-tool-worker-context.js +1 -0
- package/dist/mcp/repo-tool-worker-context.js.map +1 -1
- package/dist/mcp/server-context.d.ts.map +1 -1
- package/dist/mcp/server-context.js +28 -11
- package/dist/mcp/server-context.js.map +1 -1
- package/dist/mcp/server-invocation.d.ts.map +1 -1
- package/dist/mcp/server-invocation.js +21 -7
- package/dist/mcp/server-invocation.js.map +1 -1
- package/dist/mcp/server-tool-access.d.ts.map +1 -1
- package/dist/mcp/server-tool-access.js +2 -12
- package/dist/mcp/server-tool-access.js.map +1 -1
- package/dist/mcp/server.d.ts +3 -2
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +25 -11
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/warp-pool.d.ts +45 -6
- package/dist/mcp/warp-pool.d.ts.map +1 -1
- package/dist/mcp/warp-pool.js +128 -19
- package/dist/mcp/warp-pool.js.map +1 -1
- package/dist/mcp/workspace-router-model.d.ts +16 -1
- package/dist/mcp/workspace-router-model.d.ts.map +1 -1
- package/dist/mcp/workspace-router-model.js +8 -0
- package/dist/mcp/workspace-router-model.js.map +1 -1
- package/dist/mcp/workspace-router-resolution.d.ts.map +1 -1
- package/dist/mcp/workspace-router-resolution.js +19 -1
- package/dist/mcp/workspace-router-resolution.js.map +1 -1
- package/dist/mcp/workspace-router-runtime.d.ts +15 -5
- package/dist/mcp/workspace-router-runtime.d.ts.map +1 -1
- package/dist/mcp/workspace-router-runtime.js +47 -7
- package/dist/mcp/workspace-router-runtime.js.map +1 -1
- package/dist/mcp/workspace-router.d.ts +21 -11
- package/dist/mcp/workspace-router.d.ts.map +1 -1
- package/dist/mcp/workspace-router.js +273 -136
- package/dist/mcp/workspace-router.js.map +1 -1
- package/dist/ports/echo-kernel-transport.d.ts.map +1 -1
- package/dist/ports/echo-kernel-transport.js +12 -0
- package/dist/ports/echo-kernel-transport.js.map +1 -1
- package/docs/MCP.md +68 -0
- package/docs/SETUP.md +27 -0
- package/package.json +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router-model.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-model.ts"],"names":[],"mappings":"AAuFA,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IAC7C,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAY,QAAgB;QAC1B,KAAK,CAAC,QAAQ,QAAQ,mEAAmE,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;IAC9C,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAC9C,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAY,QAAgB;QAC1B,KAAK,CAAC,QAAQ,QAAQ,2DAA2D,CAAC,CAAC;QACnF,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IAC/C,IAAI,GAAG,0BAA0B,CAAC;IAE3C,YAAY,aAAqB;QAC/B,KAAK,CAAC,aAAa,aAAa,gGAAgG,CAAC,CAAC;QAClI,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"workspace-router-model.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-model.ts"],"names":[],"mappings":"AAuFA,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IAC7C,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAY,QAAgB;QAC1B,KAAK,CAAC,QAAQ,QAAQ,mEAAmE,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;IAC9C,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAC9C,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAY,QAAgB;QAC1B,KAAK,CAAC,QAAQ,QAAQ,2DAA2D,CAAC,CAAC;QACnF,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IAC/C,IAAI,GAAG,0BAA0B,CAAC;IAE3C,YAAY,aAAqB;QAC/B,KAAK,CAAC,aAAa,aAAa,gGAAgG,CAAC,CAAC;QAClI,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAEtC;IADX,YACW,IAAY,EACrB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,SAAI,GAAJ,IAAI,CAAQ;QAIrB,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAqDD,MAAM,CAAC,MAAM,iCAAiC,GAA+B,MAAM,CAAC,MAAM,CAAC;IACzF,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,oBAAoB;IACjC,UAAU,EAAE,KAAK;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qCAAqC,GAA+B,MAAM,CAAC,MAAM,CAAC;IAC7F,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,oBAAoB;IACjC,UAAU,EAAE,IAAI;CACjB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router-resolution.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router-resolution.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE3F,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvE;AA4BD,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"workspace-router-resolution.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router-resolution.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE3F,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvE;AA4BD,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,CA4CjD"}
|
|
@@ -46,11 +46,29 @@ export async function resolveWorkspaceRequest(git, request) {
|
|
|
46
46
|
}
|
|
47
47
|
const gitCommonDir = canonicalize(toAbsolutePath(worktreeRoot, rawGitCommonDir));
|
|
48
48
|
const canonicalWorktreeRoot = canonicalize(worktreeRoot);
|
|
49
|
-
|
|
49
|
+
const resolved = {
|
|
50
50
|
repoId: stableWorkspaceId("repo", gitCommonDir),
|
|
51
51
|
worktreeId: stableWorkspaceId("worktree", canonicalWorktreeRoot),
|
|
52
52
|
worktreeRoot: canonicalWorktreeRoot,
|
|
53
53
|
gitCommonDir,
|
|
54
54
|
};
|
|
55
|
+
const mismatchedHints = [
|
|
56
|
+
request.repoId !== undefined && request.repoId !== resolved.repoId ? "repoId" : null,
|
|
57
|
+
request.worktreeRoot !== undefined
|
|
58
|
+
&& canonicalize(toAbsolutePath(cwd, request.worktreeRoot)) !== resolved.worktreeRoot
|
|
59
|
+
? "worktreeRoot"
|
|
60
|
+
: null,
|
|
61
|
+
request.gitCommonDir !== undefined
|
|
62
|
+
&& canonicalize(toAbsolutePath(resolved.worktreeRoot, request.gitCommonDir)) !== resolved.gitCommonDir
|
|
63
|
+
? "gitCommonDir"
|
|
64
|
+
: null,
|
|
65
|
+
].filter((field) => field !== null);
|
|
66
|
+
if (mismatchedHints.length > 0) {
|
|
67
|
+
return {
|
|
68
|
+
code: "WORKSPACE_IDENTITY_MISMATCH",
|
|
69
|
+
message: `Client workspace identity hints do not match the workspace resolved from cwd: ${mismatchedHints.join(", ")}`,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
return resolved;
|
|
55
73
|
}
|
|
56
74
|
//# sourceMappingURL=workspace-router-resolution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router-resolution.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AASlC,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,KAAa;IAC7D,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAC7F,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAc,EAAE,GAAW,EAAE,IAAuB;IAC9E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACrC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,KAAa;IACjD,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,SAAiB;IACrC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,GAAc,EACd,OAA6B;IAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,wBAAwB,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC9G,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,qCAAqC,GAAG,EAAE;SACpD,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,wBAAwB,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAClH,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,yCAAyC,GAAG,EAAE;SACxD,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,YAAY,CAAC,cAAc,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IACjF,MAAM,qBAAqB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IACzD,
|
|
1
|
+
{"version":3,"file":"workspace-router-resolution.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-resolution.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { RepoStateTracker, type RepoObservation } from "./repo-state.js";
|
|
|
10
10
|
import { type RuntimeCausalContext } from "./runtime-causal-context.js";
|
|
11
11
|
import { type GitTransitionHookEvent } from "./runtime-workspace-overlay.js";
|
|
12
12
|
import type { ResolvedWorkspace, WorkspaceCapabilityProfile, WorkspaceExecutionContext, WorkspaceMode, WorkspaceStatus } from "./workspace-router-model.js";
|
|
13
|
-
import type {
|
|
13
|
+
import type { WarpResidentPool } from "./warp-pool.js";
|
|
14
14
|
export interface WorkspaceSlice {
|
|
15
15
|
readonly sliceId: string;
|
|
16
16
|
readonly governor: GovernorTracker;
|
|
@@ -19,6 +19,10 @@ export interface WorkspaceSlice {
|
|
|
19
19
|
readonly graftDir: string;
|
|
20
20
|
readonly repoState: RepoStateTracker | null;
|
|
21
21
|
}
|
|
22
|
+
export interface WorkspaceWarpLease {
|
|
23
|
+
getWarp(): Promise<WarpContext>;
|
|
24
|
+
release(): Promise<void>;
|
|
25
|
+
}
|
|
22
26
|
export interface BoundWorkspace {
|
|
23
27
|
readonly repoId: string;
|
|
24
28
|
readonly worktreeId: string;
|
|
@@ -30,8 +34,14 @@ export interface BoundWorkspace {
|
|
|
30
34
|
readonly warpWriterId: string;
|
|
31
35
|
readonly transportSessionId: string;
|
|
32
36
|
readonly slice: WorkspaceSlice;
|
|
33
|
-
readonly getWarp: () => Promise<WarpContext>;
|
|
34
37
|
}
|
|
38
|
+
export declare function createWorkspaceWarpLease(input: {
|
|
39
|
+
readonly repoId: string;
|
|
40
|
+
readonly worktreeRoot: string;
|
|
41
|
+
readonly writerId: string;
|
|
42
|
+
readonly ownerId: string;
|
|
43
|
+
readonly warpPool: WarpResidentPool;
|
|
44
|
+
}): WorkspaceWarpLease;
|
|
35
45
|
export declare function createWorkspaceSlice(input: {
|
|
36
46
|
readonly graftDir: string;
|
|
37
47
|
readonly projectRoot?: string;
|
|
@@ -47,8 +57,7 @@ export declare function createBoundWorkspace(input: {
|
|
|
47
57
|
readonly slice: WorkspaceSlice;
|
|
48
58
|
readonly fs: FileSystem;
|
|
49
59
|
readonly transportSessionId: string;
|
|
50
|
-
readonly warpWriterId
|
|
51
|
-
readonly warpPool: WarpPool;
|
|
60
|
+
readonly warpWriterId: string;
|
|
52
61
|
}): Promise<BoundWorkspace>;
|
|
53
62
|
export declare function buildWorkspaceCausalContext(binding: BoundWorkspace, observation: {
|
|
54
63
|
readonly checkoutEpoch: number;
|
|
@@ -64,11 +73,12 @@ export declare function buildPersistedLocalHistoryContextFromExecution(input: {
|
|
|
64
73
|
readonly persistedLocalHistory: PersistedLocalHistoryStore;
|
|
65
74
|
readonly execution: WorkspaceExecutionContext;
|
|
66
75
|
readonly observation: RepoObservation;
|
|
76
|
+
readonly hookEvent?: GitTransitionHookEvent | null;
|
|
67
77
|
}): PersistedLocalHistoryContext;
|
|
68
78
|
export declare function resolveCheckoutBoundaryHookEvent(input: {
|
|
69
79
|
readonly fs: FileSystem;
|
|
70
80
|
readonly git: GitClient;
|
|
71
|
-
readonly binding: BoundWorkspace
|
|
81
|
+
readonly binding: Pick<BoundWorkspace, "worktreeRoot" | "gitCommonDir">;
|
|
72
82
|
readonly previousObservedAt: string;
|
|
73
83
|
readonly observation: RepoObservation;
|
|
74
84
|
}): Promise<GitTransitionHookEvent | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router-runtime.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router-runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-router-runtime.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as path from "node:path";
|
|
2
2
|
import { createRepoPathResolver } from "../adapters/repo-paths.js";
|
|
3
|
-
import { DEFAULT_WARP_WRITER_ID } from "../warp/writer-id.js";
|
|
4
3
|
import { GovernorTracker } from "../session/tracker.js";
|
|
5
4
|
import { ObservationCache } from "./cache.js";
|
|
6
5
|
import { Metrics } from "./metrics.js";
|
|
@@ -9,6 +8,51 @@ import {} from "./persisted-local-history.js";
|
|
|
9
8
|
import { RepoStateTracker } from "./repo-state.js";
|
|
10
9
|
import { buildRuntimeCausalContext } from "./runtime-causal-context.js";
|
|
11
10
|
import { buildRuntimeWorkspaceOverlayFooting, } from "./runtime-workspace-overlay.js";
|
|
11
|
+
export function createWorkspaceWarpLease(input) {
|
|
12
|
+
let leasePromise = null;
|
|
13
|
+
let releasePromise = null;
|
|
14
|
+
const releaseHasStarted = () => releasePromise !== null;
|
|
15
|
+
return {
|
|
16
|
+
async getWarp() {
|
|
17
|
+
if (releaseHasStarted()) {
|
|
18
|
+
throw new Error("workspace WARP lease has already been released");
|
|
19
|
+
}
|
|
20
|
+
const currentLease = leasePromise ?? input.warpPool.acquire({
|
|
21
|
+
key: { repoId: input.repoId, writerId: input.writerId },
|
|
22
|
+
worktreeRoot: input.worktreeRoot,
|
|
23
|
+
ownerId: input.ownerId,
|
|
24
|
+
});
|
|
25
|
+
leasePromise = currentLease;
|
|
26
|
+
try {
|
|
27
|
+
const lease = await currentLease;
|
|
28
|
+
if (releaseHasStarted()) {
|
|
29
|
+
await lease.release();
|
|
30
|
+
throw new Error("workspace WARP lease was released while opening");
|
|
31
|
+
}
|
|
32
|
+
return { app: lease.app, strandId: null };
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
if (leasePromise === currentLease) {
|
|
36
|
+
leasePromise = null;
|
|
37
|
+
}
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
release() {
|
|
42
|
+
if (releasePromise !== null)
|
|
43
|
+
return releasePromise;
|
|
44
|
+
releasePromise = (async () => {
|
|
45
|
+
const currentLease = leasePromise;
|
|
46
|
+
leasePromise = null;
|
|
47
|
+
if (currentLease === null)
|
|
48
|
+
return;
|
|
49
|
+
const lease = await currentLease.catch(() => null);
|
|
50
|
+
await lease?.release();
|
|
51
|
+
})();
|
|
52
|
+
return releasePromise;
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
}
|
|
12
56
|
export function createWorkspaceSlice(input) {
|
|
13
57
|
return {
|
|
14
58
|
sliceId: input.nextSliceId,
|
|
@@ -32,12 +76,8 @@ export async function createBoundWorkspace(input) {
|
|
|
32
76
|
resolvePath: createRepoPathResolver(input.resolved.worktreeRoot),
|
|
33
77
|
capabilityProfile: input.capabilityProfile,
|
|
34
78
|
transportSessionId: input.transportSessionId,
|
|
35
|
-
warpWriterId: input.warpWriterId
|
|
79
|
+
warpWriterId: input.warpWriterId,
|
|
36
80
|
slice: input.slice,
|
|
37
|
-
getWarp: async () => ({
|
|
38
|
-
app: await input.warpPool.getOrOpen(input.resolved.repoId, input.resolved.worktreeRoot, input.warpWriterId ?? DEFAULT_WARP_WRITER_ID),
|
|
39
|
-
strandId: null,
|
|
40
|
-
}),
|
|
41
81
|
};
|
|
42
82
|
}
|
|
43
83
|
export function buildWorkspaceCausalContext(binding, observation) {
|
|
@@ -67,7 +107,7 @@ export function buildPersistedLocalHistoryContext(input) {
|
|
|
67
107
|
return context;
|
|
68
108
|
}
|
|
69
109
|
export function buildPersistedLocalHistoryContextFromExecution(input) {
|
|
70
|
-
const context = input.persistedLocalHistory.buildContext(input.execution.status, input.execution.getCausalContext(), input.observation);
|
|
110
|
+
const context = input.persistedLocalHistory.buildContext(input.execution.status, input.execution.getCausalContext(input.observation), input.observation, input.hookEvent ?? null);
|
|
71
111
|
if (context === null) {
|
|
72
112
|
throw new Error("persisted local history context unavailable for execution");
|
|
73
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router-runtime.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAInE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"workspace-router-runtime.js","sourceRoot":"","sources":["../../src/mcp/workspace-router-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { ObservationCache } from "./cache.js";
|
|
|
2
2
|
import { Metrics } from "./metrics.js";
|
|
3
3
|
import { type PersistedLocalActivityWindow, PersistedLocalHistoryStore, type PersistedLocalHistoryAttachDeclaration, type RepoConcurrencySummary, type PersistedLocalHistorySummary } from "./persisted-local-history.js";
|
|
4
4
|
import { type RepoObservation } from "./repo-state.js";
|
|
5
|
+
import type { RuntimeCausalContext } from "./runtime-causal-context.js";
|
|
5
6
|
import { type RuntimeWorkspaceOverlayFooting } from "./runtime-workspace-overlay.js";
|
|
6
7
|
import { type AttributedReadToolName } from "./workspace-read-observation.js";
|
|
7
8
|
import { type CausalAttachResult, type WorkspaceActionResult, type WorkspaceAuthorizationPolicy, type WorkspaceBindRequest, type WorkspaceExecutionContext, type WorkspaceListOpenedResult, type WorkspaceMode, type WorkspaceOpenRequest, type WorkspaceOpenResult, type WorkspaceSharedAttachPolicy, type WorkspaceStatus } from "./workspace-router-model.js";
|
|
@@ -9,9 +10,9 @@ import type { FileSystem } from "../ports/filesystem.js";
|
|
|
9
10
|
import type { GitClient } from "../ports/git.js";
|
|
10
11
|
import type { WarpContext } from "../warp/context.js";
|
|
11
12
|
import type { JsonObject } from "../contracts/json-object.js";
|
|
12
|
-
import type {
|
|
13
|
+
import type { WarpResidentPool } from "./warp-pool.js";
|
|
13
14
|
import { GovernorTracker } from "../session/tracker.js";
|
|
14
|
-
export { DEFAULT_DAEMON_CAPABILITY_PROFILE, DEFAULT_REPO_LOCAL_CAPABILITY_PROFILE, WorkspaceBindingRequiredError, WorkspaceCapabilityDeniedError, WorkspaceRouteUnauthorizedError, type CausalAttachResult, type OpenedWorkspaceSource, type OpenedWorkspaceView, type ResolvedWorkspace, type WorkspaceActionResult, type WorkspaceAuthorizationPolicy, type WorkspaceBindAction, type WorkspaceBindRequest, type WorkspaceCapabilityProfile, type WorkspaceExecutionContext, type WorkspaceListOpenedResult, type WorkspaceMode, type WorkspaceOpenRequest, type WorkspaceOpenResult, type WorkspaceSharedAttachPolicy, type WorkspaceStatus, } from "./workspace-router-model.js";
|
|
15
|
+
export { DEFAULT_DAEMON_CAPABILITY_PROFILE, DEFAULT_REPO_LOCAL_CAPABILITY_PROFILE, WorkspaceBindingRequiredError, WorkspaceCapabilityDeniedError, WorkspaceResolutionError, WorkspaceRouteUnauthorizedError, type CausalAttachResult, type OpenedWorkspaceSource, type OpenedWorkspaceView, type ResolvedWorkspace, type WorkspaceActionResult, type WorkspaceAuthorizationPolicy, type WorkspaceBindAction, type WorkspaceBindRequest, type WorkspaceCapabilityProfile, type WorkspaceExecutionContext, type WorkspaceListOpenedResult, type WorkspaceMode, type WorkspaceOpenRequest, type WorkspaceOpenResult, type WorkspaceRouteEvidence, type WorkspaceSharedAttachPolicy, type WorkspaceStatus, } from "./workspace-router-model.js";
|
|
15
16
|
export { resolveWorkspaceRequest } from "./workspace-router-resolution.js";
|
|
16
17
|
interface WorkspaceRouterOptions {
|
|
17
18
|
readonly mode: WorkspaceMode;
|
|
@@ -19,7 +20,7 @@ interface WorkspaceRouterOptions {
|
|
|
19
20
|
readonly git: GitClient;
|
|
20
21
|
readonly graftDir: string;
|
|
21
22
|
readonly projectRoot?: string | undefined;
|
|
22
|
-
readonly warpPool:
|
|
23
|
+
readonly warpPool: WarpResidentPool;
|
|
23
24
|
readonly transportSessionId: string;
|
|
24
25
|
readonly warpWriterId?: string | undefined;
|
|
25
26
|
readonly authorizationPolicy?: WorkspaceAuthorizationPolicy | undefined;
|
|
@@ -30,6 +31,7 @@ interface WorkspaceRouterOptions {
|
|
|
30
31
|
export declare class WorkspaceRouter {
|
|
31
32
|
private readonly options;
|
|
32
33
|
private bindingCounter;
|
|
34
|
+
private executionCounter;
|
|
33
35
|
private sliceIdCounter;
|
|
34
36
|
private currentSlice;
|
|
35
37
|
private currentBinding;
|
|
@@ -37,6 +39,8 @@ export declare class WorkspaceRouter {
|
|
|
37
39
|
private readonly openedWorkspaces;
|
|
38
40
|
private readonly routedBindings;
|
|
39
41
|
private readonly routedBindingInitializations;
|
|
42
|
+
private bindingCommitTail;
|
|
43
|
+
private warpLeaseRelease;
|
|
40
44
|
constructor(options: WorkspaceRouterOptions);
|
|
41
45
|
initialize(): Promise<void>;
|
|
42
46
|
get mode(): WorkspaceMode;
|
|
@@ -48,27 +52,32 @@ export declare class WorkspaceRouter {
|
|
|
48
52
|
getProjectRoot(): string;
|
|
49
53
|
getGraftignorePatterns(): readonly string[];
|
|
50
54
|
getPathResolver(): (input: string) => string;
|
|
51
|
-
|
|
52
|
-
|
|
55
|
+
withWarp<T>(operation: (warp: WarpContext) => Promise<T>): Promise<T>;
|
|
56
|
+
releaseWarpLeases(): Promise<void>;
|
|
57
|
+
observeRepoState(execution?: WorkspaceExecutionContext | null): Promise<void>;
|
|
53
58
|
getRepoState(): RepoObservation;
|
|
54
59
|
getStatus(): WorkspaceStatus;
|
|
55
60
|
listOpenedWorkspaces(): WorkspaceListOpenedResult;
|
|
56
61
|
openWorkspace(request: WorkspaceOpenRequest): Promise<WorkspaceOpenResult>;
|
|
57
|
-
getPersistedLocalHistorySummary(): Promise<PersistedLocalHistorySummary>;
|
|
58
|
-
getRepoConcurrencySummary(): Promise<RepoConcurrencySummary | null>;
|
|
59
|
-
getPersistedLocalActivityWindow(limit: number): Promise<PersistedLocalActivityWindow>;
|
|
60
|
-
getWorkspaceOverlayFooting(): Promise<RuntimeWorkspaceOverlayFooting | null>;
|
|
62
|
+
getPersistedLocalHistorySummary(execution?: WorkspaceExecutionContext | null): Promise<PersistedLocalHistorySummary>;
|
|
63
|
+
getRepoConcurrencySummary(execution?: WorkspaceExecutionContext | null): Promise<RepoConcurrencySummary | null>;
|
|
64
|
+
getPersistedLocalActivityWindow(limit: number, execution?: WorkspaceExecutionContext | null): Promise<PersistedLocalActivityWindow>;
|
|
65
|
+
getWorkspaceOverlayFooting(execution?: WorkspaceExecutionContext | null): Promise<RuntimeWorkspaceOverlayFooting | null>;
|
|
61
66
|
noteReadObservation(toolName: AttributedReadToolName, args: JsonObject, result: JsonObject, execution?: WorkspaceExecutionContext | null): Promise<void>;
|
|
67
|
+
getRuntimeCausalContext(): RuntimeCausalContext | null;
|
|
62
68
|
captureExecutionContext(): WorkspaceExecutionContext;
|
|
63
69
|
captureExecutionContextForWorkspace(request: WorkspaceBindRequest): Promise<WorkspaceExecutionContext>;
|
|
64
70
|
private createRoutedBinding;
|
|
65
71
|
private routedBindingMatches;
|
|
66
72
|
private noteRoutedBinding;
|
|
73
|
+
private disposeRoutedBinding;
|
|
67
74
|
private buildExecutionContext;
|
|
68
75
|
bind(request: WorkspaceBindRequest, actionName: string): Promise<WorkspaceActionResult>;
|
|
69
76
|
rebind(request: WorkspaceBindRequest, actionName: string): Promise<WorkspaceActionResult>;
|
|
70
|
-
declareAttach(declaration: PersistedLocalHistoryAttachDeclaration): Promise<CausalAttachResult>;
|
|
77
|
+
declareAttach(declaration: PersistedLocalHistoryAttachDeclaration, execution?: WorkspaceExecutionContext | null): Promise<CausalAttachResult>;
|
|
71
78
|
private bindInternal;
|
|
79
|
+
private enqueueBindingCommit;
|
|
80
|
+
private commitBinding;
|
|
72
81
|
private createBoundWorkspace;
|
|
73
82
|
private requireBinding;
|
|
74
83
|
private requireRepoState;
|
|
@@ -81,7 +90,8 @@ export declare class WorkspaceRouter {
|
|
|
81
90
|
private buildPersistedLocalHistoryContextFromExecution;
|
|
82
91
|
private resolveCheckoutBoundaryHookEvent;
|
|
83
92
|
private captureCurrentExecutionContext;
|
|
84
|
-
private
|
|
93
|
+
private resolveWorkspaceHistoryScope;
|
|
94
|
+
private withBindingGraph;
|
|
85
95
|
private buildPersistedLocalHistoryGraphContextFromExecution;
|
|
86
96
|
}
|
|
87
97
|
//# sourceMappingURL=workspace-router.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-router.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,KAAK,4BAA4B,EAEjC,0BAA0B,EAC1B,KAAK,sCAAsC,EAE3C,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EAClC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-router.d.ts","sourceRoot":"","sources":["../../src/mcp/workspace-router.ts"],"names":[],"mappings":"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"}
|