dev-sessions 0.2.3 → 0.2.5
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 +2 -2
- package/dist/backends/backend.d.ts +1 -1
- package/dist/backends/claude-backend.d.ts +1 -1
- package/dist/backends/claude-backend.js +37 -22
- package/dist/backends/claude-backend.js.map +1 -1
- package/dist/gateway/daemon.d.ts +3 -2
- package/dist/gateway/daemon.js +14 -6
- package/dist/gateway/daemon.js.map +1 -1
- package/dist/gateway/server.d.ts +1 -1
- package/dist/gateway/server.js +27 -9
- package/dist/gateway/server.js.map +1 -1
- package/dist/session-manager.js +1 -1
- package/dist/session-manager.js.map +1 -1
- package/dist/session-store.d.ts +4 -0
- package/dist/session-store.js +99 -38
- package/dist/session-store.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -129,7 +129,7 @@ Sessions get human-readable IDs like `fizz-top`, `riven-jg` (League of Legends c
|
|
|
129
129
|
|
|
130
130
|
### Session Store
|
|
131
131
|
|
|
132
|
-
Persisted at `~/.dev-sessions/sessions.json`.
|
|
132
|
+
Persisted at `~/.dev-sessions/sessions.json`. All mutating operations use file-based locking (`mkdir` as atomic primitive) to serialize concurrent access.
|
|
133
133
|
|
|
134
134
|
---
|
|
135
135
|
|
|
@@ -201,7 +201,7 @@ Spawns Claude inside Docker via a `clauded` binary on the host. See [claude-ting
|
|
|
201
201
|
|
|
202
202
|
- **Codex ignores `--mode`**: Always runs with `approvalPolicy: never` / full access regardless of mode flag.
|
|
203
203
|
- **`docker` mode is Claude-only**: Codex + Docker not implemented.
|
|
204
|
-
- **Session store
|
|
204
|
+
- **Session store uses file locking**: Concurrent operations are serialized via lockfile. A crashed process holding the lock is auto-recovered after 30 seconds.
|
|
205
205
|
- **Gateway port conflict**: Default port 6767 can conflict with Docker. Use `DEV_SESSIONS_GATEWAY_PORT` to override.
|
|
206
206
|
- **No `respond` command**: No structured way to respond to `waiting_for_input` sessions. Only matters for non-native modes.
|
|
207
207
|
- **Claude permission prompts undetectable**: TUI-level prompts aren't written to JSONL — `status` reports `working` instead of `waiting_for_input`. Only affects `native` mode.
|
|
@@ -29,7 +29,7 @@ export interface Backend {
|
|
|
29
29
|
readonly deadSessionPolicy: 'prune' | 'deactivate';
|
|
30
30
|
isChampionIdTaken(championId: string): Promise<boolean>;
|
|
31
31
|
create(options: BackendCreateOptions): Promise<BackendCreateResult>;
|
|
32
|
-
preSendStoreFields(session: StoredSession, sendTime: string): Partial<StoredSession
|
|
32
|
+
preSendStoreFields(session: StoredSession, sendTime: string): Partial<StoredSession> | Promise<Partial<StoredSession>>;
|
|
33
33
|
send(session: StoredSession, message: string): Promise<Partial<StoredSession>>;
|
|
34
34
|
onSendError(session: StoredSession, error: Error): Partial<StoredSession>;
|
|
35
35
|
status(session: StoredSession): Promise<BackendStatusResult>;
|
|
@@ -8,7 +8,7 @@ export declare class ClaudeBackend implements Backend {
|
|
|
8
8
|
constructor(raw: ClaudeTmuxBackend);
|
|
9
9
|
isChampionIdTaken(championId: string): Promise<boolean>;
|
|
10
10
|
create(options: BackendCreateOptions): Promise<BackendCreateResult>;
|
|
11
|
-
preSendStoreFields(
|
|
11
|
+
preSendStoreFields(session: StoredSession, _sendTime: string): Promise<Partial<StoredSession>>;
|
|
12
12
|
send(session: StoredSession, message: string): Promise<Partial<StoredSession>>;
|
|
13
13
|
onSendError(_session: StoredSession, _error: Error): Partial<StoredSession>;
|
|
14
14
|
status(session: StoredSession): Promise<BackendStatusResult>;
|
|
@@ -22,8 +22,17 @@ class ClaudeBackend {
|
|
|
22
22
|
await this.raw.createSession(tmuxSessionName, options.workspacePath, mode, internalId);
|
|
23
23
|
return { internalId, mode };
|
|
24
24
|
}
|
|
25
|
-
preSendStoreFields(
|
|
26
|
-
|
|
25
|
+
async preSendStoreFields(session, _sendTime) {
|
|
26
|
+
// Snapshot the current system entry count so wait() knows the baseline
|
|
27
|
+
// even if it starts after the turn has already completed.
|
|
28
|
+
const transcriptPath = (0, claude_parser_1.getClaudeTranscriptPath)(session.path, session.internalId);
|
|
29
|
+
try {
|
|
30
|
+
const entries = await (0, claude_parser_1.readClaudeTranscript)(transcriptPath);
|
|
31
|
+
return { claudeSystemCountAtSend: (0, claude_parser_1.countSystemEntries)(entries) };
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return { claudeSystemCountAtSend: 0 };
|
|
35
|
+
}
|
|
27
36
|
}
|
|
28
37
|
async send(session, message) {
|
|
29
38
|
const tmuxSessionName = (0, champion_ids_1.toTmuxSessionName)(session.championId);
|
|
@@ -47,16 +56,31 @@ class ClaudeBackend {
|
|
|
47
56
|
}
|
|
48
57
|
async wait(session, timeoutMs, intervalMs) {
|
|
49
58
|
const transcriptPath = (0, claude_parser_1.getClaudeTranscriptPath)(session.path, session.internalId);
|
|
59
|
+
const tmuxSessionName = (0, champion_ids_1.toTmuxSessionName)(session.championId);
|
|
50
60
|
const startTime = Date.now();
|
|
51
61
|
const deadline = startTime + timeoutMs;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const baselineSystemCount =
|
|
55
|
-
const baselineFileHistoryCount = (0, claude_parser_1.countFileHistorySnapshots)(initialEntries);
|
|
62
|
+
// Use the system entry count snapshotted at send time as the baseline.
|
|
63
|
+
// This way wait() detects completion even if the turn finishes before wait starts.
|
|
64
|
+
const baselineSystemCount = session.claudeSystemCountAtSend ?? 0;
|
|
56
65
|
let lastMtimeMs = -1;
|
|
57
66
|
let shouldReadTranscript = false;
|
|
58
|
-
let cachedEntries =
|
|
67
|
+
let cachedEntries = [];
|
|
68
|
+
let pollCount = 0;
|
|
59
69
|
while (Date.now() <= deadline) {
|
|
70
|
+
// Periodically check if the tmux session is still alive (every 10th poll).
|
|
71
|
+
if (pollCount > 0 && pollCount % 10 === 0) {
|
|
72
|
+
const liveness = await this.raw.sessionExists(tmuxSessionName);
|
|
73
|
+
if (liveness === 'dead') {
|
|
74
|
+
return {
|
|
75
|
+
completed: false,
|
|
76
|
+
timedOut: false,
|
|
77
|
+
elapsedMs: Date.now() - startTime,
|
|
78
|
+
storeUpdate: { status: 'inactive', lastTurnError: 'tmux session died during wait' },
|
|
79
|
+
errorToThrow: new Error('tmux session died during wait')
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
pollCount++;
|
|
60
84
|
try {
|
|
61
85
|
const fileStat = await (0, promises_1.stat)(transcriptPath);
|
|
62
86
|
if (fileStat.mtimeMs !== lastMtimeMs) {
|
|
@@ -75,21 +99,12 @@ class ClaudeBackend {
|
|
|
75
99
|
cachedEntries = await (0, claude_parser_1.readClaudeTranscript)(transcriptPath);
|
|
76
100
|
shouldReadTranscript = false;
|
|
77
101
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
//
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
completed: true,
|
|
85
|
-
timedOut: false,
|
|
86
|
-
elapsedMs: Date.now() - startTime,
|
|
87
|
-
storeUpdate: { lastUsed: new Date().toISOString() }
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
// For turns that end without a system entry (e.g. long tool runs), Claude writes a
|
|
91
|
-
// file-history-snapshot at turn completion. Use that as the fallback signal.
|
|
92
|
-
if (hasNewFileHistorySnapshot && hasNewAssistant) {
|
|
102
|
+
// A system entry is the definitive turn-completion signal — Claude writes it only
|
|
103
|
+
// when the agent fully finishes (never mid-turn during tool calls).
|
|
104
|
+
// Compare against the baseline from send time so we detect completion even if
|
|
105
|
+
// the turn finishes before wait starts.
|
|
106
|
+
const currentSystemCount = (0, claude_parser_1.countSystemEntries)(cachedEntries);
|
|
107
|
+
if (currentSystemCount > baselineSystemCount) {
|
|
93
108
|
return {
|
|
94
109
|
completed: true,
|
|
95
110
|
timedOut: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-backend.js","sourceRoot":"","sources":["../../src/backends/claude-backend.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,+CAAwC;AACxC,kDAAoD;AACpD,+
|
|
1
|
+
{"version":3,"file":"claude-backend.js","sourceRoot":"","sources":["../../src/backends/claude-backend.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway/daemon.d.ts
CHANGED
|
@@ -3,14 +3,15 @@ export declare const SYSTEMD_SERVICE_NAME = "dev-sessions-gateway";
|
|
|
3
3
|
export declare function getLaunchdPlistPath(homeDir?: string): string;
|
|
4
4
|
export declare function getSystemdUnitPath(homeDir?: string): string;
|
|
5
5
|
export declare function getGatewayLogPath(homeDir?: string): string;
|
|
6
|
-
export declare function buildLaunchdPlist(binaryPath: string, port: number, logPath: string, nodePath?: string): string;
|
|
7
|
-
export declare function buildSystemdUnit(binaryPath: string, port: number, logPath: string, nodePath?: string): string;
|
|
6
|
+
export declare function buildLaunchdPlist(binaryPath: string, port: number, logPath: string, nodePath?: string, userPath?: string): string;
|
|
7
|
+
export declare function buildSystemdUnit(binaryPath: string, port: number, logPath: string, nodePath?: string, userPath?: string): string;
|
|
8
8
|
export declare function installGatewayDaemon(options?: {
|
|
9
9
|
binaryPath?: string;
|
|
10
10
|
port?: number;
|
|
11
11
|
platform?: string;
|
|
12
12
|
homeDir?: string;
|
|
13
13
|
nodePath?: string;
|
|
14
|
+
userPath?: string;
|
|
14
15
|
}): Promise<void>;
|
|
15
16
|
export declare function uninstallGatewayDaemon(options?: {
|
|
16
17
|
platform?: string;
|
package/dist/gateway/daemon.js
CHANGED
|
@@ -30,12 +30,17 @@ function getSystemdUnitPath(homeDir = node_os_1.default.homedir()) {
|
|
|
30
30
|
function getGatewayLogPath(homeDir = node_os_1.default.homedir()) {
|
|
31
31
|
return node_path_1.default.join(homeDir, '.dev-sessions', 'gateway.log');
|
|
32
32
|
}
|
|
33
|
-
function buildLaunchdPlist(binaryPath, port, logPath, nodePath) {
|
|
33
|
+
function buildLaunchdPlist(binaryPath, port, logPath, nodePath, userPath) {
|
|
34
34
|
// launchd runs with a minimal PATH that won't find NVM-managed node.
|
|
35
35
|
// If nodePath is provided, invoke node explicitly so the shebang is bypassed.
|
|
36
36
|
const programArgs = nodePath
|
|
37
37
|
? ` <string>${nodePath}</string>\n <string>${binaryPath}</string>`
|
|
38
38
|
: ` <string>${binaryPath}</string>`;
|
|
39
|
+
// Capture the user's PATH at install time so the daemon (and its child processes)
|
|
40
|
+
// can find tmux, claude, clauded, git, and other tools.
|
|
41
|
+
const pathEntry = userPath
|
|
42
|
+
? ` <key>PATH</key>\n <string>${userPath}</string>\n`
|
|
43
|
+
: '';
|
|
39
44
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
40
45
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
41
46
|
<plist version="1.0">
|
|
@@ -53,7 +58,7 @@ ${programArgs}
|
|
|
53
58
|
<dict>
|
|
54
59
|
<key>DEV_SESSIONS_GATEWAY_PORT</key>
|
|
55
60
|
<string>${port}</string>
|
|
56
|
-
</dict>
|
|
61
|
+
${pathEntry} </dict>
|
|
57
62
|
<key>KeepAlive</key>
|
|
58
63
|
<true/>
|
|
59
64
|
<key>StandardOutPath</key>
|
|
@@ -66,17 +71,18 @@ ${programArgs}
|
|
|
66
71
|
</plist>
|
|
67
72
|
`;
|
|
68
73
|
}
|
|
69
|
-
function buildSystemdUnit(binaryPath, port, logPath, nodePath) {
|
|
74
|
+
function buildSystemdUnit(binaryPath, port, logPath, nodePath, userPath) {
|
|
70
75
|
const execStart = nodePath
|
|
71
76
|
? `${nodePath} ${binaryPath} gateway --port ${port}`
|
|
72
77
|
: `${binaryPath} gateway --port ${port}`;
|
|
78
|
+
const pathLine = userPath ? `\nEnvironment=PATH=${userPath}` : '';
|
|
73
79
|
return `[Unit]
|
|
74
80
|
Description=dev-sessions gateway HTTP server
|
|
75
81
|
After=network.target
|
|
76
82
|
|
|
77
83
|
[Service]
|
|
78
84
|
ExecStart=${execStart}
|
|
79
|
-
Environment=DEV_SESSIONS_GATEWAY_PORT=${port}
|
|
85
|
+
Environment=DEV_SESSIONS_GATEWAY_PORT=${port}${pathLine}
|
|
80
86
|
Restart=on-failure
|
|
81
87
|
StandardOutput=append:${logPath}
|
|
82
88
|
StandardError=append:${logPath}
|
|
@@ -93,10 +99,12 @@ async function installGatewayDaemon(options = {}) {
|
|
|
93
99
|
const logPath = getGatewayLogPath(homeDir);
|
|
94
100
|
// Resolve node binary so launchd/systemd can find it regardless of PATH.
|
|
95
101
|
const nodePath = options.nodePath ?? process.execPath;
|
|
102
|
+
// Capture the user's PATH at install time so the daemon can find tmux, claude, etc.
|
|
103
|
+
const userPath = options.userPath ?? process.env.PATH;
|
|
96
104
|
await (0, promises_1.mkdir)(node_path_1.default.dirname(logPath), { recursive: true });
|
|
97
105
|
if (platform === 'darwin') {
|
|
98
106
|
const plistPath = getLaunchdPlistPath(homeDir);
|
|
99
|
-
const plistContent = buildLaunchdPlist(binaryPath, port, logPath, nodePath);
|
|
107
|
+
const plistContent = buildLaunchdPlist(binaryPath, port, logPath, nodePath, userPath);
|
|
100
108
|
await (0, promises_1.mkdir)(node_path_1.default.dirname(plistPath), { recursive: true });
|
|
101
109
|
await (0, promises_1.writeFile)(plistPath, plistContent, 'utf8');
|
|
102
110
|
try {
|
|
@@ -111,7 +119,7 @@ async function installGatewayDaemon(options = {}) {
|
|
|
111
119
|
}
|
|
112
120
|
if (platform === 'linux') {
|
|
113
121
|
const unitPath = getSystemdUnitPath(homeDir);
|
|
114
|
-
const unitContent = buildSystemdUnit(binaryPath, port, logPath, nodePath);
|
|
122
|
+
const unitContent = buildSystemdUnit(binaryPath, port, logPath, nodePath, userPath);
|
|
115
123
|
await (0, promises_1.mkdir)(node_path_1.default.dirname(unitPath), { recursive: true });
|
|
116
124
|
await (0, promises_1.writeFile)(unitPath, unitContent, 'utf8');
|
|
117
125
|
await execFileAsync('systemctl', ['--user', 'daemon-reload']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/gateway/daemon.ts"],"names":[],"mappings":";;;;;;AAYA,kDAEC;AAED,gDAEC;AAED,8CAEC;AAED,
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/gateway/daemon.ts"],"names":[],"mappings":";;;;;;AAYA,kDAEC;AAED,gDAEC;AAED,8CAEC;AAED,8CAgDC;AAED,4CA2BC;AAED,oDAmDC;AAED,wDAsDC;AAED,wDA6BC;AAjPD,2DAA8C;AAC9C,+CAA4D;AAC5D,sDAAyB;AACzB,0DAA6B;AAC7B,yCAAsC;AACtC,qCAAuE;AAEvE,MAAM,aAAa,GAAG,IAAA,qBAAS,EAAC,6BAAQ,CAAC,CAAC;AAE7B,QAAA,aAAa,GAAG,0BAA0B,CAAC;AAC3C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,SAAgB,mBAAmB,CAAC,UAAkB,iBAAE,CAAC,OAAO,EAAE;IAChE,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,qBAAa,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED,SAAgB,kBAAkB,CAAC,UAAkB,iBAAE,CAAC,OAAO,EAAE;IAC/D,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,4BAAoB,UAAU,CAAC,CAAC;AAC7F,CAAC;AAED,SAAgB,iBAAiB,CAAC,UAAkB,iBAAE,CAAC,OAAO,EAAE;IAC9D,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AAC5D,CAAC;AAED,SAAgB,iBAAiB,CAC/B,UAAkB,EAClB,IAAY,EACZ,OAAe,EACf,QAAiB,EACjB,QAAiB;IAEjB,qEAAqE;IACrE,8EAA8E;IAC9E,MAAM,WAAW,GAAG,QAAQ;QAC1B,CAAC,CAAC,eAAe,QAAQ,0BAA0B,UAAU,WAAW;QACxE,CAAC,CAAC,eAAe,UAAU,WAAW,CAAC;IAEzC,kFAAkF;IAClF,wDAAwD;IACxD,MAAM,SAAS,GAAG,QAAQ;QACxB,CAAC,CAAC,oCAAoC,QAAQ,aAAa;QAC3D,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;;;YAKG,qBAAa;;;EAGvB,WAAW;;;cAGC,IAAI;;;;;cAKJ,IAAI;EAChB,SAAS;;;;YAIC,OAAO;;YAEP,OAAO;;;;;CAKlB,CAAC;AACF,CAAC;AAED,SAAgB,gBAAgB,CAC9B,UAAkB,EAClB,IAAY,EACZ,OAAe,EACf,QAAiB,EACjB,QAAiB;IAEjB,MAAM,SAAS,GAAG,QAAQ;QACxB,CAAC,CAAC,GAAG,QAAQ,IAAI,UAAU,mBAAmB,IAAI,EAAE;QACpD,CAAC,CAAC,GAAG,UAAU,mBAAmB,IAAI,EAAE,CAAC;IAE3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAElE,OAAO;;;;;YAKG,SAAS;wCACmB,IAAI,GAAG,QAAQ;;wBAE/B,OAAO;uBACR,OAAO;;;;CAI7B,CAAC;AACF,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,UAOvC,EAAE;IACJ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,iBAAE,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAA,gCAAuB,GAAE,CAAC;IACnE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAA,2BAAkB,GAAE,CAAC;IAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC3C,yEAAyE;IACzE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,oFAAoF;IACpF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IAEtD,MAAM,IAAA,gBAAK,EAAC,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtF,MAAM,IAAA,gBAAK,EAAC,mBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,IAAA,oBAAS,EAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QAEjD,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;QAED,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpF,MAAM,IAAA,gBAAK,EAAC,mBAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,IAAA,oBAAS,EAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAC9D,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,4BAAoB,CAAC,CAAC,CAAC;QACtF,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,4DAA4D,CAC9F,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,UAGzC,EAAE;IACJ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,iBAAE,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAEtD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE/C,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAA,iBAAM,EAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,SAAS,GAAG,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,4BAAoB,CAAC,CAAC,CAAC;QACzF,CAAC;QAAC,MAAM,CAAC;YACP,6BAA6B;QAC/B,CAAC;QAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC;YACH,MAAM,IAAA,iBAAM,EAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,GAAG,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,8DAA8D,CAChG,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,UAGzC,EAAE;IACJ,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAA,2BAAkB,GAAE,CAAC;IAElD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,6EAA6E;YAC7E,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,qBAAa,CAAC,CAAC,CAAC;YAC1D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,4BAAoB,CAAC,CAAC,CAAC;YAC3F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,2DAA2D,CAC7F,CAAC;AACJ,CAAC"}
|
package/dist/gateway/server.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export declare class GatewayCommandError extends Error {
|
|
|
19
19
|
}
|
|
20
20
|
export declare function resolveGatewayPort(env?: NodeJS.ProcessEnv): number;
|
|
21
21
|
export declare function resolveGatewayCliBinary(argv?: readonly string[], moduleDir?: string): string;
|
|
22
|
-
export declare function createGatewayCommandExecutor(cliBinary?: string): GatewayCommandExecutor;
|
|
22
|
+
export declare function createGatewayCommandExecutor(cliBinary?: string, nodeBinary?: string): GatewayCommandExecutor;
|
|
23
23
|
export declare function createGatewayApp(executeCommand?: GatewayCommandExecutor): express.Express;
|
|
24
24
|
export declare function startGatewayServer(options?: StartGatewayServerOptions): Promise<{
|
|
25
25
|
app: express.Express;
|
package/dist/gateway/server.js
CHANGED
|
@@ -117,20 +117,38 @@ function resolveGatewayCliBinary(argv = process.argv, moduleDir = __dirname) {
|
|
|
117
117
|
}
|
|
118
118
|
return DEFAULT_GATEWAY_CLI_BINARY;
|
|
119
119
|
}
|
|
120
|
-
|
|
120
|
+
// Ensure the node binary directory is on PATH for child processes.
|
|
121
|
+
// The daemon plist/systemd unit captures the user's full PATH at install time,
|
|
122
|
+
// but this is a safety net for manual `dev-sessions gateway` runs.
|
|
123
|
+
function buildGatewayEnv(baseEnv = process.env) {
|
|
124
|
+
const nodeBinDir = node_path_1.default.dirname(process.execPath);
|
|
125
|
+
const currentPath = baseEnv.PATH ?? '';
|
|
126
|
+
const pathParts = currentPath.split(':').filter((p) => p.length > 0);
|
|
127
|
+
if (!pathParts.includes(nodeBinDir)) {
|
|
128
|
+
pathParts.unshift(nodeBinDir);
|
|
129
|
+
}
|
|
130
|
+
return {
|
|
131
|
+
...baseEnv,
|
|
132
|
+
PATH: pathParts.join(':'),
|
|
133
|
+
IS_SANDBOX: '0',
|
|
134
|
+
DEV_SESSIONS_GATEWAY_URL: ''
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function createGatewayCommandExecutor(cliBinary = resolveGatewayCliBinary(), nodeBinary = process.execPath) {
|
|
138
|
+
const env = buildGatewayEnv();
|
|
121
139
|
return async (args) => {
|
|
140
|
+
// Invoke the CLI script via node explicitly so the shebang (#!/usr/bin/env node)
|
|
141
|
+
// is bypassed. launchd/systemd environments have a minimal PATH that won't
|
|
142
|
+
// find NVM-managed node, causing "env: node: No such file or directory".
|
|
143
|
+
const fullArgs = [cliBinary, ...args];
|
|
122
144
|
try {
|
|
123
|
-
const { stdout, stderr } = await execFileAsync(
|
|
145
|
+
const { stdout, stderr } = await execFileAsync(nodeBinary, fullArgs, {
|
|
124
146
|
encoding: 'utf8',
|
|
125
147
|
maxBuffer: 1024 * 1024 * 4,
|
|
126
|
-
env
|
|
127
|
-
...process.env,
|
|
128
|
-
IS_SANDBOX: '0',
|
|
129
|
-
DEV_SESSIONS_GATEWAY_URL: ''
|
|
130
|
-
}
|
|
148
|
+
env
|
|
131
149
|
});
|
|
132
150
|
return {
|
|
133
|
-
command: [
|
|
151
|
+
command: [nodeBinary, ...fullArgs],
|
|
134
152
|
stdout,
|
|
135
153
|
stderr,
|
|
136
154
|
exitCode: 0
|
|
@@ -147,7 +165,7 @@ function createGatewayCommandExecutor(cliBinary = resolveGatewayCliBinary()) {
|
|
|
147
165
|
? candidate.stderr
|
|
148
166
|
: candidate.message;
|
|
149
167
|
throw new GatewayCommandError(`Command failed: ${cliBinary} ${args.join(' ')}`.trim(), {
|
|
150
|
-
command: [
|
|
168
|
+
command: [nodeBinary, ...fullArgs],
|
|
151
169
|
stdout: typeof candidate.stdout === 'string' ? candidate.stdout : '',
|
|
152
170
|
stderr,
|
|
153
171
|
exitCode
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"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"}
|
package/dist/session-manager.js
CHANGED
|
@@ -67,7 +67,7 @@ class SessionManager {
|
|
|
67
67
|
const session = await this.requireSession(championId);
|
|
68
68
|
const backend = this.getBackend(session.cli);
|
|
69
69
|
const sendTime = new Date().toISOString();
|
|
70
|
-
const preSendFields = backend.preSendStoreFields(session, sendTime);
|
|
70
|
+
const preSendFields = await backend.preSendStoreFields(session, sendTime);
|
|
71
71
|
if (Object.keys(preSendFields).length > 0) {
|
|
72
72
|
await this.store.updateSession(championId, preSendFields);
|
|
73
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":";;;;;;AA+PA,wEAEC;AAED,kEAcC;AAjRD,0DAA6B;AAC7B,iDAAoD;AAEpD,8DAA0D;AAC1D,wDAA2D;AAC3D,4DAAwD;AACxD,gEAAmE;AACnE,6CAAgF;AAChF,mDAA0E;AAgB1E,MAAa,cAAc;IAIN;IAHF,QAAQ,CAA2B;IAEpD,YACmB,KAAmB,EACpC,aAAsB,EACtB,YAAqB;QAFJ,UAAK,GAAL,KAAK,CAAc;QAIpC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC;YACtB,CAAC,QAAQ,EAAE,aAAa,CAAC;YACzB,CAAC,OAAO,EAAE,YAAY,CAAC;SACxB,CAAC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,GAAe;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B;QAC/C,MAAM,aAAa,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACxD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;YAClC,UAAU;YACV,aAAa;YACb,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAkB;YAC7B,UAAU;YACV,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,GAAG;YACH,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;YACnD,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,SAAS;SACpB,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB,EAAE,OAAe;QACnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE1C,MAAM,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/session-store.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { StoredSession } from './types';
|
|
2
2
|
export declare class SessionStore {
|
|
3
3
|
private readonly storePath;
|
|
4
|
+
private readonly lockPath;
|
|
4
5
|
constructor(storePath?: string);
|
|
5
6
|
get filePath(): string;
|
|
6
7
|
listSessions(): Promise<StoredSession[]>;
|
|
@@ -9,6 +10,9 @@ export declare class SessionStore {
|
|
|
9
10
|
updateSession(championId: string, partial: Partial<Omit<StoredSession, 'championId'>>): Promise<StoredSession | undefined>;
|
|
10
11
|
deleteSession(championId: string): Promise<boolean>;
|
|
11
12
|
pruneSessions(championIds: string[]): Promise<number>;
|
|
13
|
+
private withLock;
|
|
14
|
+
private acquireLock;
|
|
15
|
+
private releaseLock;
|
|
12
16
|
private readStore;
|
|
13
17
|
private writeStore;
|
|
14
18
|
}
|
package/dist/session-store.js
CHANGED
|
@@ -9,6 +9,9 @@ const promises_1 = require("node:fs/promises");
|
|
|
9
9
|
const node_os_1 = __importDefault(require("node:os"));
|
|
10
10
|
const node_path_1 = __importDefault(require("node:path"));
|
|
11
11
|
const CURRENT_VERSION = 1;
|
|
12
|
+
const LOCK_TIMEOUT_MS = 10_000;
|
|
13
|
+
const LOCK_RETRY_INTERVAL_MS = 20;
|
|
14
|
+
const LOCK_STALE_MS = 30_000;
|
|
12
15
|
function getDefaultStorePath() {
|
|
13
16
|
return node_path_1.default.join(node_os_1.default.homedir(), '.dev-sessions', 'sessions.json');
|
|
14
17
|
}
|
|
@@ -41,10 +44,15 @@ function isStoredSession(value) {
|
|
|
41
44
|
typeof candidate.createdAt === 'string' &&
|
|
42
45
|
typeof candidate.lastUsed === 'string');
|
|
43
46
|
}
|
|
47
|
+
function sleep(ms) {
|
|
48
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
49
|
+
}
|
|
44
50
|
class SessionStore {
|
|
45
51
|
storePath;
|
|
52
|
+
lockPath;
|
|
46
53
|
constructor(storePath = getDefaultStorePath()) {
|
|
47
54
|
this.storePath = storePath;
|
|
55
|
+
this.lockPath = `${storePath}.lock`;
|
|
48
56
|
}
|
|
49
57
|
get filePath() {
|
|
50
58
|
return this.storePath;
|
|
@@ -58,54 +66,107 @@ class SessionStore {
|
|
|
58
66
|
return store.sessions.find((session) => session.championId === championId);
|
|
59
67
|
}
|
|
60
68
|
async upsertSession(session) {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
await this.withLock(async () => {
|
|
70
|
+
const store = await this.readStore();
|
|
71
|
+
const index = store.sessions.findIndex((candidate) => candidate.championId === session.championId);
|
|
72
|
+
if (index >= 0) {
|
|
73
|
+
store.sessions[index] = session;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
store.sessions.push(session);
|
|
77
|
+
}
|
|
78
|
+
await this.writeStore(store);
|
|
79
|
+
});
|
|
70
80
|
}
|
|
71
81
|
async updateSession(championId, partial) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
82
|
+
return this.withLock(async () => {
|
|
83
|
+
const store = await this.readStore();
|
|
84
|
+
const index = store.sessions.findIndex((candidate) => candidate.championId === championId);
|
|
85
|
+
if (index < 0) {
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
const updatedSession = {
|
|
89
|
+
...store.sessions[index],
|
|
90
|
+
...partial,
|
|
91
|
+
championId: store.sessions[index].championId
|
|
92
|
+
};
|
|
93
|
+
store.sessions[index] = updatedSession;
|
|
94
|
+
await this.writeStore(store);
|
|
95
|
+
return updatedSession;
|
|
96
|
+
});
|
|
85
97
|
}
|
|
86
98
|
async deleteSession(championId) {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
99
|
+
return this.withLock(async () => {
|
|
100
|
+
const store = await this.readStore();
|
|
101
|
+
const initialLength = store.sessions.length;
|
|
102
|
+
store.sessions = store.sessions.filter((candidate) => candidate.championId !== championId);
|
|
103
|
+
if (store.sessions.length === initialLength) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
await this.writeStore(store);
|
|
107
|
+
return true;
|
|
108
|
+
});
|
|
95
109
|
}
|
|
96
110
|
async pruneSessions(championIds) {
|
|
97
111
|
if (championIds.length === 0) {
|
|
98
112
|
return 0;
|
|
99
113
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
114
|
+
return this.withLock(async () => {
|
|
115
|
+
const ids = new Set(championIds);
|
|
116
|
+
const store = await this.readStore();
|
|
117
|
+
const initialLength = store.sessions.length;
|
|
118
|
+
store.sessions = store.sessions.filter((candidate) => !ids.has(candidate.championId));
|
|
119
|
+
const removed = initialLength - store.sessions.length;
|
|
120
|
+
if (removed > 0) {
|
|
121
|
+
await this.writeStore(store);
|
|
122
|
+
}
|
|
123
|
+
return removed;
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
async withLock(fn) {
|
|
127
|
+
await this.acquireLock();
|
|
128
|
+
try {
|
|
129
|
+
return await fn();
|
|
130
|
+
}
|
|
131
|
+
finally {
|
|
132
|
+
await this.releaseLock();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
async acquireLock() {
|
|
136
|
+
await (0, promises_1.mkdir)(node_path_1.default.dirname(this.storePath), { recursive: true });
|
|
137
|
+
const deadline = Date.now() + LOCK_TIMEOUT_MS;
|
|
138
|
+
while (true) {
|
|
139
|
+
try {
|
|
140
|
+
await (0, promises_1.mkdir)(this.lockPath);
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
catch (error) {
|
|
144
|
+
if (error.code !== 'EEXIST') {
|
|
145
|
+
throw error;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Check for stale lock (e.g. process crashed while holding it)
|
|
149
|
+
try {
|
|
150
|
+
const lockStat = await (0, promises_1.stat)(this.lockPath);
|
|
151
|
+
if (Date.now() - lockStat.mtimeMs > LOCK_STALE_MS) {
|
|
152
|
+
await (0, promises_1.rm)(this.lockPath, { recursive: true, force: true });
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
// Lock dir vanished between our check — retry acquire
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
if (Date.now() >= deadline) {
|
|
161
|
+
throw new Error(`Timed out waiting for session store lock at ${this.lockPath}`);
|
|
162
|
+
}
|
|
163
|
+
// Jittered retry to reduce contention
|
|
164
|
+
const jitter = Math.random() * LOCK_RETRY_INTERVAL_MS;
|
|
165
|
+
await sleep(LOCK_RETRY_INTERVAL_MS + jitter);
|
|
107
166
|
}
|
|
108
|
-
|
|
167
|
+
}
|
|
168
|
+
async releaseLock() {
|
|
169
|
+
await (0, promises_1.rm)(this.lockPath, { recursive: true, force: true });
|
|
109
170
|
}
|
|
110
171
|
async readStore() {
|
|
111
172
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-store.js","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"session-store.js","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED