@cerbur/clutch-dsh-worktree 0.1.8 → 0.1.9
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 +18 -23
- package/README.zh.md +17 -21
- package/lib/client/WorktreeContext.d.ts +1 -1
- package/lib/client/WorktreeContext.d.ts.map +1 -1
- package/lib/client/WorktreeContext.js +1 -1
- package/lib/client/WorktreeContext.js.map +1 -1
- package/lib/client/WorktreeHeroContext.d.ts.map +1 -1
- package/lib/client/WorktreeHeroContext.js +1 -1
- package/lib/client/WorktreeHeroContext.js.map +1 -1
- package/lib/client/WorktreeModeAction.d.ts.map +1 -1
- package/lib/client/WorktreeModeAction.js.map +1 -1
- package/lib/client/WorktreeSurface.d.ts +1 -1
- package/lib/client/WorktreeSurface.d.ts.map +1 -1
- package/lib/client/WorktreeSurface.js +221 -45
- package/lib/client/WorktreeSurface.js.map +1 -1
- package/lib/client/dsh-rc1-slot-contract.d.ts +43 -0
- package/lib/client/dsh-rc1-slot-contract.d.ts.map +1 -0
- package/lib/client/dsh-rc1-slot-contract.js +2 -0
- package/lib/client/dsh-rc1-slot-contract.js.map +1 -0
- package/lib/client/dsh-slot-contract.d.ts +43 -0
- package/lib/client/dsh-slot-contract.d.ts.map +1 -0
- package/lib/client/dsh-slot-contract.js +2 -0
- package/lib/client/dsh-slot-contract.js.map +1 -0
- package/lib/client/entry.d.ts +2 -2
- package/lib/client/entry.d.ts.map +1 -1
- package/lib/client/entry.js +144 -26
- package/lib/client/entry.js.map +1 -1
- package/lib/client/view-mode-store.d.ts +1 -1
- package/lib/client/view-mode-store.d.ts.map +1 -1
- package/lib/client/view-mode-store.js +1 -1
- package/lib/client/view-mode-store.js.map +1 -1
- package/lib/client/view-mode.d.ts +20 -6
- package/lib/client/view-mode.d.ts.map +1 -1
- package/lib/client/view-mode.js +35 -10
- package/lib/client/view-mode.js.map +1 -1
- package/lib/client/virtual-workspace-membership.d.ts +12 -10
- package/lib/client/virtual-workspace-membership.d.ts.map +1 -1
- package/lib/client/virtual-workspace-membership.js +82 -57
- package/lib/client/virtual-workspace-membership.js.map +1 -1
- package/lib/client/worktree-context-store.d.ts +7 -15
- package/lib/client/worktree-context-store.d.ts.map +1 -1
- package/lib/client/worktree-context-store.js +20 -13
- package/lib/client/worktree-context-store.js.map +1 -1
- package/lib/client/worktree-expand-state.d.ts +5 -4
- package/lib/client/worktree-expand-state.d.ts.map +1 -1
- package/lib/client/worktree-expand-state.js.map +1 -1
- package/lib/client/worktree-session-fork.d.ts +18 -3
- package/lib/client/worktree-session-fork.d.ts.map +1 -1
- package/lib/client/worktree-session-fork.js +125 -36
- package/lib/client/worktree-session-fork.js.map +1 -1
- package/lib/client/worktree-session-order.d.ts +2 -2
- package/lib/client/worktree-session-order.d.ts.map +1 -1
- package/lib/client/worktree-surface-rows.d.ts.map +1 -1
- package/lib/client/worktree-surface-rows.js +1 -1
- package/lib/client/worktree-surface-rows.js.map +1 -1
- package/lib/client/worktree-surface-types.d.ts +19 -1
- package/lib/client/worktree-surface-types.d.ts.map +1 -1
- package/lib/client/worktree-view-read.d.ts +18 -8
- package/lib/client/worktree-view-read.d.ts.map +1 -1
- package/lib/client/worktree-view-read.js +75 -10
- package/lib/client/worktree-view-read.js.map +1 -1
- package/lib/client.js +1359 -169
- package/lib/client.js.map +1 -1
- package/lib/host/worktree-permission.d.ts +3 -2
- package/lib/host/worktree-permission.d.ts.map +1 -1
- package/lib/host/worktree-permission.js +29 -5
- package/lib/host/worktree-permission.js.map +1 -1
- package/lib/manage/manager-worktrees.d.ts.map +1 -1
- package/lib/manage/manager-worktrees.js +5 -2
- package/lib/manage/manager-worktrees.js.map +1 -1
- package/lib/manage/manager.d.ts.map +1 -1
- package/lib/manage/manager.js +2 -0
- package/lib/manage/manager.js.map +1 -1
- package/lib/provider/git.d.ts.map +1 -1
- package/lib/provider/git.js +4 -0
- package/lib/provider/git.js.map +1 -1
- package/lib/provider/sidecar.js +1 -1
- package/lib/provider/sidecar.js.map +1 -1
- package/lib/provider/subprocess.d.ts.map +1 -1
- package/lib/provider/subprocess.js +8 -0
- package/lib/provider/subprocess.js.map +1 -1
- package/lib/provider/transaction.js +2 -2
- package/lib/provider/transaction.js.map +1 -1
- package/package.json +48 -34
|
@@ -8,76 +8,97 @@ function normalizeBindings(bindings) {
|
|
|
8
8
|
}
|
|
9
9
|
return [...bySession.values()];
|
|
10
10
|
}
|
|
11
|
-
function
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const other = right.items[index];
|
|
16
|
-
if (item === other)
|
|
17
|
-
return true;
|
|
18
|
-
if (typeof item !== 'object' ||
|
|
19
|
-
item === null ||
|
|
20
|
-
typeof other !== 'object' ||
|
|
21
|
-
other === null ||
|
|
22
|
-
!('workspaceId' in item) ||
|
|
23
|
-
!('workspaceId' in other) ||
|
|
24
|
-
!('sessionIds' in item) ||
|
|
25
|
-
!('sessionIds' in other)) {
|
|
26
|
-
return false;
|
|
27
|
-
}
|
|
28
|
-
const leftSessionIds = item.sessionIds;
|
|
29
|
-
const rightSessionIds = other.sessionIds;
|
|
30
|
-
return (item.workspaceId === other.workspaceId &&
|
|
31
|
-
Array.isArray(leftSessionIds) &&
|
|
32
|
-
Array.isArray(rightSessionIds) &&
|
|
33
|
-
leftSessionIds.length === rightSessionIds.length &&
|
|
34
|
-
leftSessionIds.every((sessionId, sessionIndex) => sessionId === rightSessionIds[sessionIndex]));
|
|
11
|
+
function sameBindings(left, right) {
|
|
12
|
+
return left.length === right.length && left.every((binding, index) => {
|
|
13
|
+
const other = right[index];
|
|
14
|
+
return binding.workspaceId === other.workspaceId && binding.sessionId === other.sessionId;
|
|
35
15
|
});
|
|
36
16
|
}
|
|
37
17
|
/**
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
18
|
+
* Decorate DSH's read-only WorkspaceSource with a browser-local membership
|
|
19
|
+
* projection. The source's native model is never written: the wrapper keeps
|
|
20
|
+
* the current sidecar bindings in memory, reprojects every native snapshot,
|
|
21
|
+
* and publishes only the projected view to subscribers.
|
|
41
22
|
*/
|
|
42
23
|
export function createVirtualWorkspaceMembership(list) {
|
|
24
|
+
if (!Object.isExtensible(list)) {
|
|
25
|
+
throw new Error('Workspace membership projection requires an extensible WorkspaceSource');
|
|
26
|
+
}
|
|
27
|
+
const nativeGetSnapshot = list.getSnapshot.bind(list);
|
|
28
|
+
const nativeSubscribe = list.subscribe.bind(list);
|
|
29
|
+
const originalGetSnapshot = Object.getOwnPropertyDescriptor(list, 'getSnapshot');
|
|
30
|
+
const originalSubscribe = Object.getOwnPropertyDescriptor(list, 'subscribe');
|
|
31
|
+
const listeners = new Set();
|
|
43
32
|
let bindings = [];
|
|
33
|
+
let nativeSnapshot = nativeGetSnapshot();
|
|
34
|
+
let projectedSnapshot = projectVirtualWorkspaceMembership(nativeSnapshot, [], bindings);
|
|
44
35
|
let disposed = false;
|
|
45
|
-
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
};
|
|
56
|
-
// The current upstream DSH publishes Workspace baselines through `set()`. Decorate that
|
|
57
|
-
// browser-local write seam so native subscribers receive the projection in
|
|
58
|
-
// the same notification instead of observing a raw snapshot first.
|
|
59
|
-
list.set = (next) => {
|
|
60
|
-
write(projectVirtualWorkspaceMembership(next, bindings, bindings));
|
|
36
|
+
const project = (nextNativeSnapshot, previousBindings, nextBindings) => projectVirtualWorkspaceMembership(nextNativeSnapshot, previousBindings, nextBindings);
|
|
37
|
+
const refreshSnapshot = () => {
|
|
38
|
+
const nextNativeSnapshot = nativeGetSnapshot();
|
|
39
|
+
if (nextNativeSnapshot === nativeSnapshot)
|
|
40
|
+
return false;
|
|
41
|
+
nativeSnapshot = nextNativeSnapshot;
|
|
42
|
+
const nextProjectedSnapshot = project(nextNativeSnapshot, bindings, bindings);
|
|
43
|
+
const changed = nextProjectedSnapshot !== projectedSnapshot;
|
|
44
|
+
projectedSnapshot = nextProjectedSnapshot;
|
|
45
|
+
return changed;
|
|
61
46
|
};
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
const next = projectVirtualWorkspaceMembership(current, bindings, nextBindings);
|
|
65
|
-
if (sameWorkspaceItems(current, next))
|
|
47
|
+
const notify = () => {
|
|
48
|
+
if (disposed)
|
|
66
49
|
return;
|
|
67
|
-
|
|
68
|
-
};
|
|
69
|
-
const replay = () => {
|
|
70
|
-
if (disposed || applying)
|
|
50
|
+
if (!refreshSnapshot())
|
|
71
51
|
return;
|
|
72
|
-
|
|
52
|
+
for (const listener of [...listeners])
|
|
53
|
+
listener();
|
|
54
|
+
};
|
|
55
|
+
const getSnapshot = () => {
|
|
56
|
+
if (disposed)
|
|
57
|
+
return nativeGetSnapshot();
|
|
58
|
+
refreshSnapshot();
|
|
59
|
+
return projectedSnapshot;
|
|
60
|
+
};
|
|
61
|
+
const subscribe = (listener) => {
|
|
62
|
+
if (disposed)
|
|
63
|
+
return () => undefined;
|
|
64
|
+
listeners.add(listener);
|
|
65
|
+
return () => listeners.delete(listener);
|
|
73
66
|
};
|
|
74
|
-
|
|
67
|
+
Object.defineProperty(list, 'getSnapshot', {
|
|
68
|
+
configurable: true,
|
|
69
|
+
enumerable: false,
|
|
70
|
+
writable: true,
|
|
71
|
+
value: getSnapshot,
|
|
72
|
+
});
|
|
73
|
+
Object.defineProperty(list, 'subscribe', {
|
|
74
|
+
configurable: true,
|
|
75
|
+
enumerable: false,
|
|
76
|
+
writable: true,
|
|
77
|
+
value: subscribe,
|
|
78
|
+
});
|
|
79
|
+
const unsubscribeNative = nativeSubscribe(notify);
|
|
75
80
|
const sync = (nextBindings) => {
|
|
76
81
|
if (disposed)
|
|
77
82
|
return;
|
|
78
83
|
const normalized = normalizeBindings(nextBindings);
|
|
79
|
-
|
|
84
|
+
if (sameBindings(bindings, normalized))
|
|
85
|
+
return;
|
|
86
|
+
const previousBindings = bindings;
|
|
80
87
|
bindings = normalized;
|
|
88
|
+
nativeSnapshot = nativeGetSnapshot();
|
|
89
|
+
const previousProjectedSnapshot = projectedSnapshot;
|
|
90
|
+
projectedSnapshot = project(nativeSnapshot, previousBindings, bindings);
|
|
91
|
+
if (projectedSnapshot === previousProjectedSnapshot)
|
|
92
|
+
return;
|
|
93
|
+
for (const listener of [...listeners])
|
|
94
|
+
listener();
|
|
95
|
+
};
|
|
96
|
+
const restoreMethod = (name, descriptor) => {
|
|
97
|
+
if (descriptor === undefined) {
|
|
98
|
+
delete list[name];
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
Object.defineProperty(list, name, descriptor);
|
|
81
102
|
};
|
|
82
103
|
return {
|
|
83
104
|
ensure(binding) {
|
|
@@ -95,11 +116,15 @@ export function createVirtualWorkspaceMembership(list) {
|
|
|
95
116
|
dispose() {
|
|
96
117
|
if (disposed)
|
|
97
118
|
return;
|
|
98
|
-
apply([]);
|
|
99
119
|
bindings = [];
|
|
120
|
+
projectedSnapshot = nativeGetSnapshot();
|
|
100
121
|
disposed = true;
|
|
101
|
-
|
|
102
|
-
|
|
122
|
+
for (const listener of [...listeners])
|
|
123
|
+
listener();
|
|
124
|
+
unsubscribeNative();
|
|
125
|
+
listeners.clear();
|
|
126
|
+
restoreMethod('getSnapshot', originalGetSnapshot);
|
|
127
|
+
restoreMethod('subscribe', originalSubscribe);
|
|
103
128
|
},
|
|
104
129
|
};
|
|
105
130
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"virtual-workspace-membership.js","sourceRoot":"","sources":["../../src/client/virtual-workspace-membership.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,GAElC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"virtual-workspace-membership.js","sourceRoot":"","sources":["../../src/client/virtual-workspace-membership.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,10 @@
|
|
|
1
|
-
import type { ObservableSnapshot, SnapshotStore } from '@deepseek-ai/dsh-client-
|
|
2
|
-
import type {
|
|
1
|
+
import type { ObservableSnapshot, SnapshotStore } from '@deepseek-ai/dsh-client-store';
|
|
2
|
+
import type { SessionListState } from '@deepseek-ai/dsh-api-session-controller/client';
|
|
3
|
+
import type { WorkspaceSnapshot as DshWorkspaceSnapshot } from '@deepseek-ai/dsh-api-workspace-controller/client';
|
|
3
4
|
import { type WorktreeSessionContext } from './worktree-context.js';
|
|
4
|
-
import { type WorktreeViewError } from './worktree-view.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
interface WorkspaceSnapshot {
|
|
9
|
-
readonly items: readonly {
|
|
10
|
-
readonly workspaceId: string;
|
|
11
|
-
readonly title: string;
|
|
12
|
-
readonly sessionIds: readonly string[];
|
|
13
|
-
}[];
|
|
14
|
-
readonly recentWorkspaceId?: string;
|
|
15
|
-
}
|
|
5
|
+
import { type WorktreeViewReader, type WorktreeViewError } from './worktree-view.js';
|
|
6
|
+
type SessionSnapshot = Pick<SessionListState, 'current' | 'byId'>;
|
|
7
|
+
type WorkspaceSnapshot = Pick<DshWorkspaceSnapshot, 'items' | 'archivedSessionIds' | 'state' | 'phase' | 'error'>;
|
|
16
8
|
export interface WorktreeContextState {
|
|
17
9
|
readonly status: 'idle' | 'loading' | 'ready' | 'error';
|
|
18
10
|
readonly sessionId?: string;
|
|
@@ -32,7 +24,7 @@ export type WorktreeContextStoreFactory = <State>(initial: State) => SnapshotSto
|
|
|
32
24
|
export interface WorktreeContextProjectionInput {
|
|
33
25
|
readonly sessions: ObservableSnapshot<SessionSnapshot>;
|
|
34
26
|
readonly workspaces: ObservableSnapshot<WorkspaceSnapshot>;
|
|
35
|
-
readonly
|
|
27
|
+
readonly viewReader: WorktreeViewReader;
|
|
36
28
|
readonly storeFactory: WorktreeContextStoreFactory;
|
|
37
29
|
}
|
|
38
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-context-store.d.ts","sourceRoot":"","sources":["../../src/client/worktree-context-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACd,MAAM,
|
|
1
|
+
{"version":3,"file":"worktree-context-store.d.ts","sourceRoot":"","sources":["../../src/client/worktree-context-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACd,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,KAAK,EAAE,iBAAiB,IAAI,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAElH,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,KAAK,kBAAkB,EAGvB,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,KAAK,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;AAElE,KAAK,iBAAiB,GAAG,IAAI,CAC3B,oBAAoB,EACpB,OAAO,GAAG,oBAAoB,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAC7D,CAAC;AAYF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACpC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,8EAA8E;AAC9E,MAAM,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC;AAE1F,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACvD,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC3D,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAAC;CACpD;AAsCD;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,8BAA8B,GACpC,yBAAyB,CAuO3B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolveWorktreeSessionContext, } from './worktree-context.js';
|
|
2
|
-
import {
|
|
2
|
+
import { deriveRecentWorkspaceId } from './view-mode.js';
|
|
3
|
+
import { toWorktreeViewError, } from './worktree-view.js';
|
|
3
4
|
const notReady = () => ({ kind: 'none', reason: 'not-ready' });
|
|
4
5
|
function scheduledRefresh() {
|
|
5
6
|
let resolve;
|
|
@@ -9,11 +10,15 @@ function scheduledRefresh() {
|
|
|
9
10
|
return { promise, resolve };
|
|
10
11
|
}
|
|
11
12
|
function identityFrom(sessions, workspaces) {
|
|
12
|
-
const
|
|
13
|
+
const sessionSnapshot = sessions.getSnapshot();
|
|
14
|
+
const workspaceSnapshot = workspaces.getSnapshot();
|
|
15
|
+
const sessionId = sessionSnapshot.current;
|
|
13
16
|
if (sessionId === undefined) {
|
|
14
|
-
return {
|
|
17
|
+
return {
|
|
18
|
+
workspaceId: deriveRecentWorkspaceId({ items: workspaceSnapshot.items }, sessionSnapshot.byId),
|
|
19
|
+
};
|
|
15
20
|
}
|
|
16
|
-
const workspace =
|
|
21
|
+
const workspace = workspaceSnapshot.items.find((candidate) => candidate.sessionIds.includes(sessionId));
|
|
17
22
|
return { sessionId, workspaceId: workspace?.workspaceId };
|
|
18
23
|
}
|
|
19
24
|
/**
|
|
@@ -32,7 +37,6 @@ export function createWorktreeContextProjection(input) {
|
|
|
32
37
|
let scheduleTicket = 0;
|
|
33
38
|
let scheduledCompletion;
|
|
34
39
|
let latestRefresh = Promise.resolve();
|
|
35
|
-
const viewCache = new Map();
|
|
36
40
|
let lastObservedIdentity;
|
|
37
41
|
const sameIdentity = (left, right) => left?.sessionId === right.sessionId
|
|
38
42
|
&& left?.workspaceId === right.workspaceId;
|
|
@@ -72,14 +76,18 @@ export function createWorktreeContextProjection(input) {
|
|
|
72
76
|
});
|
|
73
77
|
return;
|
|
74
78
|
}
|
|
75
|
-
const
|
|
76
|
-
if (
|
|
79
|
+
const current = store.getSnapshot();
|
|
80
|
+
if (current.status === 'ready' && current.workspaceId !== identity.workspaceId) {
|
|
81
|
+
// Keep the last valid context visible until the new Workspace facts arrive.
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (current.status === 'ready' && current.workspaceId === identity.workspaceId) {
|
|
77
85
|
store.set({
|
|
78
86
|
status: 'ready',
|
|
79
87
|
...(identity.sessionId === undefined ? {} : { sessionId: identity.sessionId }),
|
|
80
88
|
workspaceId: identity.workspaceId,
|
|
81
89
|
workspaceTitle: workspaceTitleFor(identity.workspaceId),
|
|
82
|
-
value:
|
|
90
|
+
value: current.value,
|
|
83
91
|
});
|
|
84
92
|
return;
|
|
85
93
|
}
|
|
@@ -111,7 +119,7 @@ export function createWorktreeContextProjection(input) {
|
|
|
111
119
|
workspaceId: identity.workspaceId,
|
|
112
120
|
};
|
|
113
121
|
try {
|
|
114
|
-
const data = await
|
|
122
|
+
const data = await input.viewReader.read(request.workspaceId);
|
|
115
123
|
if (!matchesCurrent(request, requestGeneration))
|
|
116
124
|
return;
|
|
117
125
|
const workspace = input.workspaces.getSnapshot().items.find((candidate) => candidate.workspaceId === request.workspaceId);
|
|
@@ -126,9 +134,6 @@ export function createWorktreeContextProjection(input) {
|
|
|
126
134
|
});
|
|
127
135
|
return;
|
|
128
136
|
}
|
|
129
|
-
if (data.readiness.status === 'ready') {
|
|
130
|
-
viewCache.set(request.workspaceId, data);
|
|
131
|
-
}
|
|
132
137
|
store.set({
|
|
133
138
|
status: 'ready',
|
|
134
139
|
...(request.sessionId === undefined ? {} : { sessionId: request.sessionId }),
|
|
@@ -220,6 +225,9 @@ export function createWorktreeContextProjection(input) {
|
|
|
220
225
|
const identity = identityFrom(input.sessions, input.workspaces);
|
|
221
226
|
if (workspaceId !== undefined && workspaceId !== identity.workspaceId)
|
|
222
227
|
return;
|
|
228
|
+
if (identity.workspaceId === undefined)
|
|
229
|
+
return;
|
|
230
|
+
input.viewReader.invalidate(identity.workspaceId);
|
|
223
231
|
await refresh();
|
|
224
232
|
await waitForLatestRefresh(workspaceId ?? identity.workspaceId);
|
|
225
233
|
},
|
|
@@ -231,7 +239,6 @@ export function createWorktreeContextProjection(input) {
|
|
|
231
239
|
cancelScheduledRefresh();
|
|
232
240
|
unsubscribeSessions();
|
|
233
241
|
unsubscribeWorkspaces();
|
|
234
|
-
viewCache.clear();
|
|
235
242
|
store.set({ status: 'idle', value: notReady() });
|
|
236
243
|
},
|
|
237
244
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-context-store.js","sourceRoot":"","sources":["../../src/client/worktree-context-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worktree-context-store.js","sourceRoot":"","sources":["../../src/client/worktree-context-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { createSnapshotStore as
|
|
1
|
+
import type { createSnapshotStore as dshCreateSnapshotStore, SnapshotStore } from '@deepseek-ai/dsh-client-store';
|
|
2
2
|
/** Browser-local storage identity; never sent to DSH or the plugin sidecar. */
|
|
3
3
|
export declare const WORKTREE_EXPAND_STATE_STORAGE_KEY = "clutch-dsh-worktree.expand-state";
|
|
4
4
|
/** Persisted structural exceptions; absent IDs are expanded. */
|
|
@@ -19,10 +19,11 @@ export interface WorktreeExpandStateStore extends SnapshotStore<WorktreeExpandSt
|
|
|
19
19
|
readonly actions: WorktreeExpandStateActions;
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
|
-
* The public rc.
|
|
23
|
-
*
|
|
22
|
+
* The public rc.1 SnapshotStore factory consumed by this browser-local state.
|
|
23
|
+
* Client entry passes DSH's `createSnapshotStore` here so this state remains
|
|
24
|
+
* independent from the concrete DSH UI runtime.
|
|
24
25
|
*/
|
|
25
|
-
export type SnapshotStoreFactory = typeof
|
|
26
|
+
export type SnapshotStoreFactory = typeof dshCreateSnapshotStore;
|
|
26
27
|
/** Turn any persisted JSON value into the current state shape. */
|
|
27
28
|
export declare function normalizeWorktreeExpandState(value: unknown): WorktreeExpandState;
|
|
28
29
|
export declare function isWorkspaceExpanded(state: WorktreeExpandState, workspaceId: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-expand-state.d.ts","sourceRoot":"","sources":["../../src/client/worktree-expand-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,IAAI,
|
|
1
|
+
{"version":3,"file":"worktree-expand-state.d.ts","sourceRoot":"","sources":["../../src/client/worktree-expand-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,IAAI,sBAAsB,EAC7C,aAAa,EACd,MAAM,+BAA+B,CAAC;AAEvC,+EAA+E;AAC/E,eAAO,MAAM,iCAAiC,qCAAqC,CAAC;AAEpF,gEAAgE;AAChE,MAAM,WAAW,mBAAmB;IAClC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChD,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC5C;AAED,kEAAkE;AAClE,MAAM,WAAW,0BAA0B;IACzC,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,cAAc,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;CACnF;AAED,2DAA2D;AAC3D,MAAM,WAAW,wBAAyB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAClF,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC;CAC9C;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,sBAAsB,CAAC;AAqBjE,kEAAkE;AAClE,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAOhF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAE5F;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAEvF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAE1F;AAcD,6EAA6E;AAC7E,wBAAgB,8BAA8B,CAC5C,oBAAoB,EAAE,oBAAoB,GACzC,wBAAwB,CAkC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-expand-state.js","sourceRoot":"","sources":["../../src/client/worktree-expand-state.ts"],"names":[],"mappings":"AAKA,+EAA+E;AAC/E,MAAM,CAAC,MAAM,iCAAiC,GAAG,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"worktree-expand-state.js","sourceRoot":"","sources":["../../src/client/worktree-expand-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,16 +29,29 @@ export interface WorktreeForkRecovery {
|
|
|
29
29
|
export interface WorktreeForkRecoverySnapshot {
|
|
30
30
|
readonly revision: number;
|
|
31
31
|
readonly pending: readonly WorktreeForkRecovery[];
|
|
32
|
+
readonly affectedWorkspaceIds: readonly string[];
|
|
32
33
|
}
|
|
33
34
|
export interface WorktreeForkRecoveryStore {
|
|
34
35
|
getSnapshot(): WorktreeForkRecoverySnapshot;
|
|
35
36
|
subscribe(listener: () => void): () => void;
|
|
36
37
|
}
|
|
38
|
+
export type WorktreeForkBindingLookupResult = {
|
|
39
|
+
readonly status: 'found';
|
|
40
|
+
readonly binding: SessionBinding;
|
|
41
|
+
} | {
|
|
42
|
+
readonly status: 'missing';
|
|
43
|
+
} | {
|
|
44
|
+
readonly status: 'error';
|
|
45
|
+
readonly error: unknown;
|
|
46
|
+
};
|
|
47
|
+
export interface WorktreeForkBindingIndex {
|
|
48
|
+
readonly bySessionId: ReadonlyMap<string, WorktreeForkBindingLookupResult>;
|
|
49
|
+
}
|
|
37
50
|
export interface WorktreeForkCoordinatorOptions {
|
|
38
51
|
/** The unwrapped DSH fork method. */
|
|
39
52
|
readonly fork: (input: WorktreeForkInput) => Promise<string>;
|
|
40
|
-
/** Find
|
|
41
|
-
readonly
|
|
53
|
+
/** Find active sidecar bindings across all native Workspaces. */
|
|
54
|
+
readonly findBindings: (sessionIds: readonly string[]) => Promise<WorktreeForkBindingIndex>;
|
|
42
55
|
/** Existing Worktree sidecar mutation; it remains the only binding writer. */
|
|
43
56
|
readonly bindSession: (input: {
|
|
44
57
|
workspaceId: string;
|
|
@@ -52,7 +65,9 @@ export interface WorktreeForkCoordinatorOptions {
|
|
|
52
65
|
export interface WorktreeForkCoordinator {
|
|
53
66
|
readonly recovery: WorktreeForkRecoveryStore;
|
|
54
67
|
fork(input: WorktreeForkInput): Promise<string>;
|
|
55
|
-
reconcile(
|
|
68
|
+
reconcile(options?: {
|
|
69
|
+
readonly force?: boolean;
|
|
70
|
+
}): Promise<void>;
|
|
56
71
|
retry(key: string): Promise<boolean>;
|
|
57
72
|
dispose(): void;
|
|
58
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-session-fork.d.ts","sourceRoot":"","sources":["../../src/client/worktree-session-fork.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,0EAA0E;AAC1E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,+DAA+D;AAC/D,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,SAAS,CAAC,CAAC,CAAC;CACjF;AAED,MAAM,WAAW,6BAA6B;IAC5C,WAAW,IAAI,+BAA+B,CAAC;CAChD;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"worktree-session-fork.d.ts","sourceRoot":"","sources":["../../src/client/worktree-session-fork.ts"],"names":[],"mappings":"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"}
|