opencode-mux 1.2.0 → 1.3.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/README.md +56 -10
- package/dist/args.d.ts +2 -0
- package/dist/args.js +11 -1
- package/dist/args.js.map +1 -1
- package/dist/cli.d.ts +52 -1
- package/dist/cli.js +227 -25
- package/dist/cli.js.map +1 -1
- package/dist/session.d.ts +9 -0
- package/dist/session.js +7 -0
- package/dist/session.js.map +1 -1
- package/dist/tmux.d.ts +34 -1
- package/dist/tmux.js +86 -14
- package/dist/tmux.js.map +1 -1
- package/dist/tracker.d.ts +13 -1
- package/dist/tracker.js +20 -5
- package/dist/tracker.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/watch.d.ts +15 -0
- package/dist/watch.js +250 -13
- package/dist/watch.js.map +1 -1
- package/package.json +11 -6
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/session.d.ts
CHANGED
|
@@ -11,6 +11,15 @@ export type EventClass = {
|
|
|
11
11
|
} | {
|
|
12
12
|
kind: "busy";
|
|
13
13
|
sessionID: string;
|
|
14
|
+
}
|
|
15
|
+
/** The daemon (re)connected — possibly after a restart: re-adopt sessions. */
|
|
16
|
+
| {
|
|
17
|
+
kind: "connected";
|
|
18
|
+
}
|
|
19
|
+
/** A session changed directory, so cached project-scope verdicts are stale. */
|
|
20
|
+
| {
|
|
21
|
+
kind: "moved";
|
|
22
|
+
sessionID: string;
|
|
14
23
|
} | {
|
|
15
24
|
kind: "other";
|
|
16
25
|
};
|
package/dist/session.js
CHANGED
|
@@ -27,6 +27,13 @@ export function classifyEvent(event) {
|
|
|
27
27
|
if (event.data.status.type === "busy")
|
|
28
28
|
return { kind: "busy", sessionID: event.data.sessionID };
|
|
29
29
|
return { kind: "other" };
|
|
30
|
+
case "server.connected":
|
|
31
|
+
// Emitted on (re)connect; sessions created while the watcher was
|
|
32
|
+
// disconnected never reached it as events, so it must adopt again.
|
|
33
|
+
return { kind: "connected" };
|
|
34
|
+
case "session.moved":
|
|
35
|
+
// A session's directory can change, invalidating cached scope verdicts.
|
|
36
|
+
return { kind: "moved", sessionID: event.data.sessionID };
|
|
30
37
|
default:
|
|
31
38
|
return { kind: "other" };
|
|
32
39
|
}
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAYA,+DAA+D;AAC/D,MAAM,UAAU,aAAa,CAAC,KAAoB;IAChD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,iBAAiB;YACpB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS;gBAC/B,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;gBAC7B,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;gBACvB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;aACtB,CAAC;QACJ,KAAK,cAAc,CAAC;QACpB,KAAK,iBAAiB;YACpB,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/D,KAAK,2BAA2B;YAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC3D,KAAK,6BAA6B,CAAC;QACnC,KAAK,0BAA0B,CAAC;QAChC,KAAK,+BAA+B;YAClC,qEAAqE;YACrE,wEAAwE;YACxE,6CAA6C;YAC7C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/D,KAAK,gBAAgB;YACnB,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC3B,KAAK,kBAAkB;YACrB,iEAAiE;YACjE,mEAAmE;YACnE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC/B,KAAK,eAAe;YAClB,wEAAwE;YACxE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5D;YACE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,cAAc,CAAC,IAAiB;IAC9C,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC;AACrC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,UAAU,CAAC,KAAyB,EAAE,QAAgB;IACpE,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAChE,CAAC"}
|
package/dist/tmux.d.ts
CHANGED
|
@@ -1,20 +1,41 @@
|
|
|
1
1
|
import type { Layout } from "./config.js";
|
|
2
2
|
import type { Exec } from "./exec.js";
|
|
3
|
-
export interface
|
|
3
|
+
export interface TmuxLayoutInput {
|
|
4
4
|
targetPane: string;
|
|
5
5
|
layout: Layout;
|
|
6
6
|
/** Main pane size in percent (20-80) for main-* layouts; other layouts ignore it. */
|
|
7
7
|
mainPaneSize?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface TmuxSplitInput extends TmuxLayoutInput {
|
|
8
10
|
argv: string[];
|
|
9
11
|
}
|
|
10
12
|
export interface TmuxResult {
|
|
11
13
|
ok: boolean;
|
|
12
14
|
error: string | null;
|
|
13
15
|
paneId: string | null;
|
|
16
|
+
/**
|
|
17
|
+
* Appearance failure after a successful split-window: the pane exists, so the
|
|
18
|
+
* split is still ok, but the window could not be shaped. Only present when a
|
|
19
|
+
* layout failure actually happened (the watcher logs it).
|
|
20
|
+
*/
|
|
21
|
+
layoutError?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Set when the pane was created but the window-wide layout was deliberately
|
|
24
|
+
* not applied because another opencode-mux instance owns panes in the same
|
|
25
|
+
* window (see windowInstances). Mutually exclusive with layoutError: only a
|
|
26
|
+
* real failure sets that, so callers can tell "declined on purpose" from
|
|
27
|
+
* "tried and failed".
|
|
28
|
+
*/
|
|
29
|
+
layoutSkipped?: string;
|
|
14
30
|
}
|
|
15
31
|
export interface TmuxApplyResult {
|
|
16
32
|
ok: boolean;
|
|
17
33
|
error: string | null;
|
|
34
|
+
/**
|
|
35
|
+
* Set when the layout was deliberately not applied because another
|
|
36
|
+
* opencode-mux instance owns panes in the same window (see windowInstances).
|
|
37
|
+
*/
|
|
38
|
+
skipped?: string;
|
|
18
39
|
}
|
|
19
40
|
/** Window-scoped pane border styles, keyed by tmux option name. */
|
|
20
41
|
export interface BorderStyles {
|
|
@@ -27,6 +48,11 @@ export interface Tmux {
|
|
|
27
48
|
ok: boolean;
|
|
28
49
|
error: string | null;
|
|
29
50
|
}>;
|
|
51
|
+
/**
|
|
52
|
+
* Re-applies the configured layout to the target pane's window, e.g. after a
|
|
53
|
+
* pane closed so the remaining panes share the space evenly again.
|
|
54
|
+
*/
|
|
55
|
+
relayout(input: TmuxLayoutInput): Promise<TmuxApplyResult>;
|
|
30
56
|
applyBorderStyles(targetPane: string, styles: BorderStyles): Promise<TmuxApplyResult>;
|
|
31
57
|
clearBorderStyles(targetPane: string): Promise<TmuxApplyResult>;
|
|
32
58
|
}
|
|
@@ -34,4 +60,11 @@ export interface Tmux {
|
|
|
34
60
|
export declare function currentPane(env: NodeJS.ProcessEnv): string | null;
|
|
35
61
|
/** Shell-safe single-argument quoting (tmux joins trailing args into `sh -c`). */
|
|
36
62
|
export declare function shellQuote(arg: string): string;
|
|
63
|
+
/**
|
|
64
|
+
* Pane option (set per pane, never -g) recording which opencode-mux instance
|
|
65
|
+
* created a pane, keyed by that instance's target pane id. Used to detect a
|
|
66
|
+
* window shared by two instances, where a window-wide layout would otherwise
|
|
67
|
+
* make them re-tile over each other.
|
|
68
|
+
*/
|
|
69
|
+
export declare const MUX_INSTANCE_OPTION = "@mux-instance";
|
|
37
70
|
export declare function tmuxAdapter(exec: Exec): Tmux;
|
package/dist/tmux.js
CHANGED
|
@@ -9,6 +9,62 @@ export function shellQuote(arg) {
|
|
|
9
9
|
return arg;
|
|
10
10
|
return `'${arg.replaceAll("'", "'\\''")}'`;
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Pane option (set per pane, never -g) recording which opencode-mux instance
|
|
14
|
+
* created a pane, keyed by that instance's target pane id. Used to detect a
|
|
15
|
+
* window shared by two instances, where a window-wide layout would otherwise
|
|
16
|
+
* make them re-tile over each other.
|
|
17
|
+
*/
|
|
18
|
+
export const MUX_INSTANCE_OPTION = "@mux-instance";
|
|
19
|
+
/**
|
|
20
|
+
* Distinct instance tags of the panes in the target pane's window. A pane
|
|
21
|
+
* without the option contributes an empty string and is ignored, so the main
|
|
22
|
+
* pane and hand-made splits never count as another instance.
|
|
23
|
+
*/
|
|
24
|
+
async function windowInstances(exec, targetPane) {
|
|
25
|
+
const result = await exec.run("tmux", ["list-panes", "-t", targetPane, "-F", `#{${MUX_INSTANCE_OPTION}}`]);
|
|
26
|
+
if (!result.ok)
|
|
27
|
+
return [];
|
|
28
|
+
const tags = result.stdout
|
|
29
|
+
.split("\n")
|
|
30
|
+
.map((line) => line.trim())
|
|
31
|
+
.filter((line) => line !== "");
|
|
32
|
+
return [...new Set(tags)];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Applies the named preset layout to the target window (resolved from the
|
|
36
|
+
* target pane) and sizes the main pane for main-* layouts.
|
|
37
|
+
*
|
|
38
|
+
* main-* layouts size their main pane from the window options
|
|
39
|
+
* main-pane-width / main-pane-height, which accept a percentage.
|
|
40
|
+
* select-layout itself rejects a "layout,size" suffix ("invalid layout"),
|
|
41
|
+
* so the matching option is set first, then the plain preset layout is applied.
|
|
42
|
+
* Non-main layouts have no main pane and ignore the size entirely.
|
|
43
|
+
*
|
|
44
|
+
* A window shared with another opencode-mux instance is left alone: the layout
|
|
45
|
+
* is window-wide, so two instances would re-tile each other's panes on every
|
|
46
|
+
* event. Whichever instance created panes there first keeps the geometry.
|
|
47
|
+
*
|
|
48
|
+
* Best-effort on the sizing option: a failing set-option does not stop the
|
|
49
|
+
* layout from being applied; the first failure is reported.
|
|
50
|
+
*/
|
|
51
|
+
async function applyLayout(exec, { targetPane, layout, mainPaneSize }) {
|
|
52
|
+
const foreign = (await windowInstances(exec, targetPane)).filter((tag) => tag !== targetPane);
|
|
53
|
+
if (foreign.length > 0) {
|
|
54
|
+
return { ok: true, error: null, skipped: `window shared with opencode-mux ${foreign.join(", ")}` };
|
|
55
|
+
}
|
|
56
|
+
let firstError = null;
|
|
57
|
+
if (mainPaneSize !== undefined && layout.startsWith("main-")) {
|
|
58
|
+
const option = layout === "main-horizontal" ? "main-pane-height" : "main-pane-width";
|
|
59
|
+
const sizing = await exec.run("tmux", ["set-option", "-w", "-t", targetPane, option, `${mainPaneSize}%`]);
|
|
60
|
+
if (!sizing.ok)
|
|
61
|
+
firstError = sizing.stderr.trim() || sizing.error || "tmux failed";
|
|
62
|
+
}
|
|
63
|
+
const result = await exec.run("tmux", ["select-layout", "-t", targetPane, layout]);
|
|
64
|
+
if (!result.ok && firstError === null)
|
|
65
|
+
firstError = result.stderr.trim() || result.error || "tmux failed";
|
|
66
|
+
return { ok: firstError === null, error: firstError };
|
|
67
|
+
}
|
|
12
68
|
export function tmuxAdapter(exec) {
|
|
13
69
|
return {
|
|
14
70
|
async splitPane({ targetPane, layout, argv, mainPaneSize }) {
|
|
@@ -26,29 +82,33 @@ export function tmuxAdapter(exec) {
|
|
|
26
82
|
const raw = result.stdout.trim().split("\n")[0];
|
|
27
83
|
const paneId = raw === undefined || raw === "" ? null : raw;
|
|
28
84
|
const paneOk = paneId !== null && paneId !== "";
|
|
85
|
+
let layoutError = null;
|
|
86
|
+
let layoutSkipped = null;
|
|
29
87
|
if (result.ok && paneOk) {
|
|
30
88
|
// -d keeps the current (main) pane active: opening a subagent pane must
|
|
31
89
|
// not steal focus from the TUI the user is working in.
|
|
90
|
+
// Tag the pane with this instance's identity (pane-scoped, never -g) so
|
|
91
|
+
// a second instance in the same window can tell it is not alone.
|
|
92
|
+
await exec.run("tmux", ["set-option", "-p", "-t", paneId, MUX_INSTANCE_OPTION, targetPane]);
|
|
32
93
|
// Shape the whole window into the requested named layout (e.g. the main
|
|
33
|
-
// pane left with subagents stacked in a right column for main-vertical)
|
|
34
|
-
//
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
//
|
|
41
|
-
//
|
|
42
|
-
if (
|
|
43
|
-
|
|
44
|
-
await exec.run("tmux", ["set-option", "-w", "-t", targetPane, option, `${mainPaneSize}%`]);
|
|
45
|
-
}
|
|
46
|
-
await exec.run("tmux", ["select-layout", "-t", targetPane, layout]);
|
|
94
|
+
// pane left with subagents stacked in a right column for main-vertical),
|
|
95
|
+
// so repeated splits do not cascade or exhaust pane space. Appearance
|
|
96
|
+
// failures are non-fatal: the pane exists either way, but they are
|
|
97
|
+
// reported so the watcher can log them instead of failing silently.
|
|
98
|
+
const shaped = await applyLayout(exec, { targetPane, layout, mainPaneSize });
|
|
99
|
+
if (!shaped.ok && shaped.error !== null)
|
|
100
|
+
layoutError = shaped.error;
|
|
101
|
+
// A declined layout (window shared with another instance) is not a
|
|
102
|
+
// failure: the pane is fine, only the geometry was left alone.
|
|
103
|
+
else if (shaped.ok && shaped.skipped !== undefined)
|
|
104
|
+
layoutSkipped = shaped.skipped;
|
|
47
105
|
}
|
|
48
106
|
return {
|
|
49
107
|
ok: result.ok && paneOk,
|
|
50
108
|
error: result.ok ? (paneOk ? null : "no pane id returned") : result.stderr.trim() || result.error || "tmux failed",
|
|
51
109
|
paneId,
|
|
110
|
+
...(layoutError === null ? {} : { layoutError }),
|
|
111
|
+
...(layoutSkipped === null ? {} : { layoutSkipped }),
|
|
52
112
|
};
|
|
53
113
|
},
|
|
54
114
|
async killPane(paneId) {
|
|
@@ -58,6 +118,9 @@ export function tmuxAdapter(exec) {
|
|
|
58
118
|
error: result.ok ? null : result.stderr.trim() || result.error || "tmux failed",
|
|
59
119
|
};
|
|
60
120
|
},
|
|
121
|
+
async relayout(input) {
|
|
122
|
+
return applyLayout(exec, input);
|
|
123
|
+
},
|
|
61
124
|
/**
|
|
62
125
|
* Applies border styles to the target pane's window via window options (-w,
|
|
63
126
|
* never the server-wide -g), so only that window is affected. Best-effort:
|
|
@@ -91,6 +154,15 @@ export function tmuxAdapter(exec) {
|
|
|
91
154
|
* failure is reported.
|
|
92
155
|
*/
|
|
93
156
|
async clearBorderStyles(targetPane) {
|
|
157
|
+
// Never clear a window another instance also styles: the unset is
|
|
158
|
+
// window-wide, so it would permanently strip that instance's theme (its
|
|
159
|
+
// own "already applied" memo cannot notice). Leaving the styles in place
|
|
160
|
+
// is the lesser evil; applying our own styles is last-writer-wins and
|
|
161
|
+
// self-corrects on the next theme change.
|
|
162
|
+
const foreign = (await windowInstances(exec, targetPane)).filter((tag) => tag !== targetPane);
|
|
163
|
+
if (foreign.length > 0) {
|
|
164
|
+
return { ok: true, error: null, skipped: `window shared with opencode-mux ${foreign.join(", ")}` };
|
|
165
|
+
}
|
|
94
166
|
const options = ["pane-border-style", "pane-active-border-style"];
|
|
95
167
|
let firstError = null;
|
|
96
168
|
try {
|
package/dist/tmux.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.js","sourceRoot":"","sources":["../src/tmux.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tmux.js","sourceRoot":"","sources":["../src/tmux.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export type PaneState = {
|
|
|
10
10
|
phase: "closing";
|
|
11
11
|
paneId: string;
|
|
12
12
|
closeAt: number;
|
|
13
|
+
emitted: boolean;
|
|
13
14
|
} | {
|
|
14
15
|
phase: "kept";
|
|
15
16
|
paneId: string;
|
|
@@ -38,12 +39,23 @@ export declare class PaneTracker {
|
|
|
38
39
|
reserve(sessionID: string): boolean;
|
|
39
40
|
/** Drops any state, e.g. when the pane could not be opened. */
|
|
40
41
|
remove(sessionID: string): void;
|
|
42
|
+
/**
|
|
43
|
+
* Drops a session's state after its close was handled. Separate from
|
|
44
|
+
* `tick` on purpose: the state must survive the emitted close so a session
|
|
45
|
+
* that turns out to still be running can cancel the close again.
|
|
46
|
+
*/
|
|
47
|
+
forget(sessionID: string): void;
|
|
41
48
|
/** Resolves a pending session into an open pane. Returns the open action. */
|
|
42
49
|
open(sessionID: string, paneId: string, now: number): TrackerAction | null;
|
|
43
50
|
/** Marks a session terminal (idle or deleted). Never returns an action. */
|
|
44
51
|
markTerminal(sessionID: string, now: number): TrackerAction | null;
|
|
45
52
|
/** Cancels a pending close when the session comes back busy. Never returns an action. */
|
|
46
53
|
markBusy(sessionID: string): TrackerAction | null;
|
|
47
|
-
/**
|
|
54
|
+
/**
|
|
55
|
+
* Emits due close actions exactly once per closing session. The state is
|
|
56
|
+
* kept (marked emitted, never deleted) so a session that is actually still
|
|
57
|
+
* running can cancel the close via `markBusy`; the watcher calls `forget`
|
|
58
|
+
* once it handled the close.
|
|
59
|
+
*/
|
|
48
60
|
tick(now: number): TrackerAction[];
|
|
49
61
|
}
|
package/dist/tracker.js
CHANGED
|
@@ -20,13 +20,21 @@ export class PaneTracker {
|
|
|
20
20
|
remove(sessionID) {
|
|
21
21
|
this.states.delete(sessionID);
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Drops a session's state after its close was handled. Separate from
|
|
25
|
+
* `tick` on purpose: the state must survive the emitted close so a session
|
|
26
|
+
* that turns out to still be running can cancel the close again.
|
|
27
|
+
*/
|
|
28
|
+
forget(sessionID) {
|
|
29
|
+
this.states.delete(sessionID);
|
|
30
|
+
}
|
|
23
31
|
/** Resolves a pending session into an open pane. Returns the open action. */
|
|
24
32
|
open(sessionID, paneId, now) {
|
|
25
33
|
const st = this.states.get(sessionID);
|
|
26
34
|
if (st === undefined || st.phase !== "pending")
|
|
27
35
|
return null;
|
|
28
36
|
if (st.terminal) {
|
|
29
|
-
this.states.set(sessionID, { phase: "closing", paneId, closeAt: now });
|
|
37
|
+
this.states.set(sessionID, { phase: "closing", paneId, closeAt: now, emitted: false });
|
|
30
38
|
}
|
|
31
39
|
else {
|
|
32
40
|
this.states.set(sessionID, { phase: "open", paneId, closeAt: null });
|
|
@@ -44,7 +52,7 @@ export class PaneTracker {
|
|
|
44
52
|
}
|
|
45
53
|
if (st.phase === "open") {
|
|
46
54
|
if (this.opts.closePanes === "auto") {
|
|
47
|
-
this.states.set(sessionID, { phase: "closing", paneId: st.paneId, closeAt: now + this.opts.graceMs });
|
|
55
|
+
this.states.set(sessionID, { phase: "closing", paneId: st.paneId, closeAt: now + this.opts.graceMs, emitted: false });
|
|
48
56
|
}
|
|
49
57
|
else {
|
|
50
58
|
this.states.set(sessionID, { phase: "kept", paneId: st.paneId });
|
|
@@ -60,12 +68,19 @@ export class PaneTracker {
|
|
|
60
68
|
}
|
|
61
69
|
return null;
|
|
62
70
|
}
|
|
63
|
-
/**
|
|
71
|
+
/**
|
|
72
|
+
* Emits due close actions exactly once per closing session. The state is
|
|
73
|
+
* kept (marked emitted, never deleted) so a session that is actually still
|
|
74
|
+
* running can cancel the close via `markBusy`; the watcher calls `forget`
|
|
75
|
+
* once it handled the close.
|
|
76
|
+
*/
|
|
64
77
|
tick(now) {
|
|
65
78
|
const actions = [];
|
|
66
79
|
for (const [sessionID, st] of this.states) {
|
|
67
|
-
if (st.phase === "closing" && st.closeAt <= now) {
|
|
68
|
-
|
|
80
|
+
if (st.phase === "closing" && !st.emitted && st.closeAt <= now) {
|
|
81
|
+
// Replace the entry to record the emission without changing the
|
|
82
|
+
// deadline, so a repeated tick cannot emit a second close.
|
|
83
|
+
this.states.set(sessionID, { ...st, emitted: true });
|
|
69
84
|
actions.push({ kind: "close", sessionID, paneId: st.paneId });
|
|
70
85
|
}
|
|
71
86
|
}
|
package/dist/tracker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAiBA,yDAAyD;AACzD,MAAM,OAAO,WAAW;IAGO;IAFZ,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEvD,YAA6B,IAAwB;QAAxB,SAAI,GAAJ,IAAI,CAAoB;IAAG,CAAC;IAEzD,6EAA6E;IAC7E,QAAQ;QACN,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,2EAA2E;IAC3E,OAAO,CAAC,SAAiB;QACvB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,MAAM,CAAC,SAAiB;QACtB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAED,6EAA6E;IAC7E,IAAI,CAAC,SAAiB,EAAE,MAAc,EAAE,GAAW;QACjD,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAC5D,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "1.
|
|
1
|
+
export declare const VERSION = "1.3.0";
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "1.
|
|
1
|
+
export const VERSION = "1.3.0";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/dist/watch.d.ts
CHANGED
|
@@ -18,10 +18,25 @@ export interface WatchDeps {
|
|
|
18
18
|
current(): BorderStyles | null;
|
|
19
19
|
};
|
|
20
20
|
parentID: string | null;
|
|
21
|
+
/**
|
|
22
|
+
* Directories this instance's TUI may run in. Only used when no explicit
|
|
23
|
+
* parent is configured: a subagent is paned only when its parent session
|
|
24
|
+
* belongs to one of these directories, so concurrent opencode-mux instances
|
|
25
|
+
* on different projects never pane each other's subagents. Absent → watch
|
|
26
|
+
* every child session (single-instance behaviour).
|
|
27
|
+
*/
|
|
28
|
+
projectDirectories?: string[];
|
|
21
29
|
paneArgv?: (sessionID: string) => string[];
|
|
22
30
|
tickEveryMs: number;
|
|
23
31
|
now?: () => number;
|
|
24
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* True when both paths name the same project: equal, or one contains the other.
|
|
35
|
+
* Containment covers opencode reporting the project root while the wrapper runs
|
|
36
|
+
* in a subdirectory (and vice versa); component-aware so "/a/proj" and
|
|
37
|
+
* "/a/proj-2" stay distinct.
|
|
38
|
+
*/
|
|
39
|
+
export declare function isSameProject(left: string, right: string): boolean;
|
|
25
40
|
export interface Watcher {
|
|
26
41
|
adopt(): Promise<void>;
|
|
27
42
|
dispatch(event: OpenCodeEvent): Promise<void>;
|