@redplanethq/corebrain 2.8.17 → 2.8.18

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.
@@ -1 +1 @@
1
- {"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/config/folders.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAEjD,KAAK,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAmB5C,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAE5C;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;CAChB,GAAG,YAAY,CAqCf;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAenD;AAED,wBAAgB,YAAY,CAC3B,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE;IAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;CAAC,GACnC,YAAY,CAuBd;AAED,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,GACV;IAAC,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GAAG,IAAI,CAiChD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAElE"}
1
+ {"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/config/folders.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAEjD,KAAK,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AA+B5C,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAE5C;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;CAChB,GAAG,YAAY,CAqCf;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAenD;AAED,wBAAgB,YAAY,CAC3B,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE;IAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;CAAC,GACnC,YAAY,CAuBd;AAED,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,GACV;IAAC,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GAAG,IAAI,CAqChD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAElE"}
@@ -18,19 +18,31 @@ const COREBRAIN_HOME_FOLDER = {
18
18
  function isUnderCorebrainHome(abs) {
19
19
  return abs === COREBRAIN_HOME || abs.startsWith(COREBRAIN_HOME + '/');
20
20
  }
21
+ // Best-effort realpath. Used only for security in `resolveFolderForPath` —
22
+ // the stored folder path stays in the user-supplied form so symlinked
23
+ // workspaces (e.g. Railway's `/app → /mnt/volume/workspace`) show as `/app`
24
+ // in the UI and match the terminal's `pwd`.
25
+ function realpathSafe(p) {
26
+ try {
27
+ return realpathSync(p);
28
+ }
29
+ catch {
30
+ return p;
31
+ }
32
+ }
21
33
  export function listFolders() {
22
34
  return getPreferences().gateway?.folders ?? [];
23
35
  }
24
36
  export function addFolder(input) {
25
- const abs = realpathSync(resolve(input.path));
26
- if (!existsSync(abs) || !statSync(abs).isDirectory()) {
27
- throw new Error(`Not a directory: ${abs}`);
37
+ const inputPath = resolve(input.path);
38
+ if (!existsSync(inputPath) || !statSync(inputPath).isDirectory()) {
39
+ throw new Error(`Not a directory: ${inputPath}`);
28
40
  }
29
41
  const folders = listFolders();
30
- if (folders.some(f => f.path === abs)) {
31
- throw new Error(`Folder already registered: ${abs}`);
42
+ if (folders.some(f => f.path === inputPath)) {
43
+ throw new Error(`Folder already registered: ${inputPath}`);
32
44
  }
33
- const name = input.name ?? abs.split('/').filter(Boolean).pop() ?? 'folder';
45
+ const name = input.name ?? inputPath.split('/').filter(Boolean).pop() ?? 'folder';
34
46
  if (folders.some(f => f.name === name)) {
35
47
  throw new Error(`Folder name in use: ${name}`);
36
48
  }
@@ -40,9 +52,9 @@ export function addFolder(input) {
40
52
  const folder = {
41
53
  id: `fld_${randomUUID()}`,
42
54
  name,
43
- path: abs,
55
+ path: inputPath,
44
56
  scopes: Array.from(new Set(input.scopes)),
45
- gitRepo: existsSync(`${abs}/.git`),
57
+ gitRepo: existsSync(`${inputPath}/.git`),
46
58
  };
47
59
  const prefs = getPreferences();
48
60
  updatePreferences({
@@ -123,8 +135,17 @@ export function resolveFolderForPath(target, scope) {
123
135
  if (isUnderCorebrainHome(abs)) {
124
136
  return { folder: COREBRAIN_HOME_FOLDER, absPath: abs };
125
137
  }
126
- const folder = listFolders().find(f => f.scopes.includes(scope) &&
127
- (abs === f.path || abs.startsWith(f.path + '/')));
138
+ // Compare against realpath of `f.path` too — `f.path` may be a symlink
139
+ // (e.g. Railway's `/app /mnt/volume/workspace`) while `abs` is already
140
+ // the physical path.
141
+ const folder = listFolders().find(f => {
142
+ if (!f.scopes.includes(scope))
143
+ return false;
144
+ if (abs === f.path || abs.startsWith(f.path + '/'))
145
+ return true;
146
+ const real = realpathSafe(f.path);
147
+ return abs === real || abs.startsWith(real + '/');
148
+ });
128
149
  return folder ? { folder, absPath: abs } : null;
129
150
  }
130
151
  export function getFolderById(id) {
@@ -1 +1 @@
1
- {"version":3,"file":"folders.js","sourceRoot":"","sources":["../../src/config/folders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"folders.js","sourceRoot":"","sources":["../../src/config/folders.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,KAAK,QAAQ,EAGb,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAgB,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAmHhE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,YAAY,GACtB,OAAO,CAOT;AAED,wBAAgB,aAAa,IAAI;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAyDlE"}
1
+ {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,KAAK,QAAQ,EAGb,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAgB,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAqHhE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,YAAY,GACtB,OAAO,CAOT;AAED,wBAAgB,aAAa,IAAI;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CA0DlE"}
@@ -82,9 +82,10 @@ function detectAvailableAgents(configuredAgents, coding) {
82
82
  return result;
83
83
  }
84
84
  function detectDeployMode() {
85
- // Explicit env wins (Dockerfile sets COREBRAIN_DEPLOY_MODE=docker).
85
+ // Explicit env wins (Dockerfile sets COREBRAIN_DEPLOY_MODE=docker; Railway
86
+ // deploys override to `railway`).
86
87
  const envMode = process.env.COREBRAIN_DEPLOY_MODE;
87
- if (envMode === 'docker' || envMode === 'native')
88
+ if (envMode === 'docker' || envMode === 'native' || envMode === 'railway')
88
89
  return envMode;
89
90
  // Fallback heuristic — `/.dockerenv` is created by Docker on container init.
90
91
  if (existsSync('/.dockerenv'))
@@ -156,6 +157,7 @@ export function buildManifest() {
156
157
  gateway: {
157
158
  id: gw.id ?? 'pending',
158
159
  name: gw.name ?? `${hostname()}-gateway`,
160
+ ...(gw.description ? { description: gw.description } : {}),
159
161
  version: cliVersion,
160
162
  platform: platform(),
161
163
  hostname: hostname(),
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-builder.js","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest-builder.js","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,3 @@
1
1
  import type { FastifyPluginAsync } from 'fastify';
2
- /**
3
- * General-purpose shell PTY for the webapp's per-gateway Terminal tab.
4
- *
5
- * POST /api/shell/spawn
6
- * body: { cwd?: string }
7
- * → 200 { ok: true, sessionId, pid }
8
- *
9
- * Spawns the user's `$SHELL` (falling back to `/bin/bash` → `/bin/sh`) inside
10
- * a PTY managed by `ptyManager`. The browser attaches via the existing xterm
11
- * WS endpoint — no CodingSession involved.
12
- *
13
- * Auth is handled by the global gateway auth hook (security key), so anyone
14
- * able to hit this can already exec arbitrary tools — no extra guardrails.
15
- */
16
2
  export declare const shellRoutes: FastifyPluginAsync;
17
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/api/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAOhD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW,EAAE,kBA8CzB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/api/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAyBhD,eAAO,MAAM,WAAW,EAAE,kBAyEzB,CAAC"}
@@ -7,19 +7,41 @@ import { gatewayLog } from '../../../server/gateway-log.js';
7
7
  * General-purpose shell PTY for the webapp's per-gateway Terminal tab.
8
8
  *
9
9
  * POST /api/shell/spawn
10
- * body: { cwd?: string }
11
- * → 200 { ok: true, sessionId, pid }
10
+ * body: { cwd?: string, fresh?: boolean }
11
+ * → 200 { ok: true, sessionId, pid, resumed }
12
12
  *
13
- * Spawns the user's `$SHELL` (falling back to `/bin/bash` `/bin/sh`) inside
14
- * a PTY managed by `ptyManager`. The browser attaches via the existing xterm
15
- * WS endpoint no CodingSession involved.
13
+ * Singleton model: the gateway tracks one active shell session at a time.
14
+ * Without `fresh`, calls return the existing session if it's still alive
15
+ * (the browser then replays scrollback over the xterm WS — see
16
+ * `ptyManager.attach`). With `fresh: true`, the previous session is killed
17
+ * and a new one spawned. `resumed` distinguishes the two outcomes for the UI.
16
18
  *
17
19
  * Auth is handled by the global gateway auth hook (security key), so anyone
18
20
  * able to hit this can already exec arbitrary tools — no extra guardrails.
19
21
  */
22
+ let currentShellSessionId = null;
20
23
  export const shellRoutes = async (app) => {
21
24
  app.post('/spawn', async (req, reply) => {
22
25
  const body = (req.body ?? {});
26
+ // Resume path: an existing session is still running and the caller
27
+ // didn't ask for a fresh one. Skip the spawn.
28
+ if (!body.fresh &&
29
+ currentShellSessionId &&
30
+ ptyManager.isRunning(currentShellSessionId)) {
31
+ const pid = ptyManager.getPid(currentShellSessionId) ?? 0;
32
+ return {
33
+ ok: true,
34
+ sessionId: currentShellSessionId,
35
+ pid,
36
+ resumed: true,
37
+ };
38
+ }
39
+ // Either no session yet, the previous one exited, or `fresh` was set.
40
+ // Kill any lingering session first so we don't leak PTYs.
41
+ if (currentShellSessionId) {
42
+ ptyManager.kill(currentShellSessionId);
43
+ currentShellSessionId = null;
44
+ }
23
45
  // Resolve a usable shell. SHELL → /bin/zsh → /bin/bash → /bin/sh.
24
46
  const candidates = [
25
47
  process.env.SHELL,
@@ -48,7 +70,8 @@ export const shellRoutes = async (app) => {
48
70
  cwd,
49
71
  agent: 'shell',
50
72
  });
51
- return { ok: true, sessionId, pid };
73
+ currentShellSessionId = sessionId;
74
+ return { ok: true, sessionId, pid, resumed: false };
52
75
  }
53
76
  catch (err) {
54
77
  const msg = err instanceof Error ? err.message : 'spawn failed';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/api/shell/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAChC,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAEhD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,WAAW,GAAuB,KAAK,EAAE,GAAG,EAAE,EAAE;IAC5D,GAAG,CAAC,IAAI,CAAyB,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAmB,CAAC;QAEhD,kEAAkE;QAClE,MAAM,UAAU,GAAG;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK;YACjB,UAAU;YACV,WAAW;YACX,SAAS;SACT,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAC,CAAC;QACtD,CAAC;QAED,MAAM,GAAG,GACR,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;YAC/B,CAAC,CAAC,IAAI,CAAC,GAAG;YACV,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B;gBACtC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;gBACrD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B;gBACzC,CAAC,CAAC,OAAO,EAAE,CAAC;QAEf,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAC/B,UAAU,CACT,sBAAsB,KAAK,QAAQ,GAAG,cAAc,SAAS,EAAE,CAC/D,CAAC;QAEF,IAAI,CAAC;YACJ,MAAM,EAAC,GAAG,EAAC,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC9B,SAAS;gBACT,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,iDAAiD;gBAChE,GAAG;gBACH,KAAK,EAAE,OAAO;aACd,CAAC,CAAC;YACH,OAAO,EAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAC,CAAC;QACnC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;YAChE,UAAU,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAC,CAAC;QAChC,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/api/shell/index.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { getPreferences, updatePreferences } from '../config/preferences.js';
8
8
  import { startServer } from './api/server.js';
9
9
  import { ptyManager } from './pty/manager.js';
10
10
  import { gatewayLog, GATEWAY_LOG_FILE } from './gateway-log.js';
11
+ import { clearStaleProfileLocks, closeAllSessions } from '../utils/browser-manager.js';
11
12
  const LOG_MAX_AGE_DAYS = 3;
12
13
  function clearOldLogs() {
13
14
  try {
@@ -31,6 +32,19 @@ const log = gatewayLog;
31
32
  async function main() {
32
33
  clearOldLogs();
33
34
  log('Starting gateway daemon...');
35
+ // Containers (Railway et al.) hard-kill the previous gateway, leaving
36
+ // Chromium SingletonLock symlinks in browser-profile dirs that point at
37
+ // the prior container's hostname/pid. Brave refuses to launch against
38
+ // those, so evict them before any browser session can start.
39
+ try {
40
+ const { cleared } = clearStaleProfileLocks();
41
+ if (cleared.length > 0) {
42
+ log(`Cleared stale browser-profile locks: ${cleared.join(', ')}`);
43
+ }
44
+ }
45
+ catch (err) {
46
+ log(`clearStaleProfileLocks failed: ${err.message}`);
47
+ }
34
48
  const prefs = getPreferences();
35
49
  const gw = prefs.gateway;
36
50
  const port = Number(process.env.COREBRAIN_GATEWAY_HTTP_PORT ?? gw?.httpPort ?? 7787);
@@ -47,13 +61,32 @@ async function main() {
47
61
  log(`Failed to start HTTP server: ${err.message}`);
48
62
  process.exit(1);
49
63
  }
50
- const shutdown = (signal) => {
64
+ let shuttingDown = false;
65
+ const shutdown = async (signal) => {
66
+ if (shuttingDown)
67
+ return;
68
+ shuttingDown = true;
51
69
  log(`Shutting down (${signal})...`);
52
70
  ptyManager.killAll();
71
+ try {
72
+ // Bound the wait so a wedged Playwright doesn't keep us past the
73
+ // container's grace period (Railway sends SIGKILL after ~30s).
74
+ await Promise.race([
75
+ closeAllSessions(),
76
+ new Promise(resolve => setTimeout(resolve, 5000)),
77
+ ]);
78
+ }
79
+ catch (err) {
80
+ log(`closeAllSessions error: ${err instanceof Error ? err.message : String(err)}`);
81
+ }
53
82
  process.exit(0);
54
83
  };
55
- process.on('SIGTERM', () => shutdown('SIGTERM'));
56
- process.on('SIGINT', () => shutdown('SIGINT'));
84
+ process.on('SIGTERM', () => {
85
+ void shutdown('SIGTERM');
86
+ });
87
+ process.on('SIGINT', () => {
88
+ void shutdown('SIGINT');
89
+ });
57
90
  process.on('uncaughtException', (err) => {
58
91
  log(`Uncaught exception: ${err.message}`);
59
92
  log(err.stack || '');
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-entry.js","sourceRoot":"","sources":["../../src/server/gateway-entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-entry.js","sourceRoot":"","sources":["../../src/server/gateway-entry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coding-tools.d.ts","sourceRoot":"","sources":["../../../src/server/tools/coding-tools.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAUjD,OAAO,EAON,KAAK,MAAM,EACX,MAAM,uBAAuB,CAAC;AA2K/B,eAAO,MAAM,WAAW,EAAE,WAAW,EA0CpC,CAAC;AAylBF,wBAAsB,iBAAiB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CA6B/D"}
1
+ {"version":3,"file":"coding-tools.d.ts","sourceRoot":"","sources":["../../../src/server/tools/coding-tools.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAUjD,OAAO,EAON,KAAK,MAAM,EACX,MAAM,uBAAuB,CAAC;AA2K/B,eAAO,MAAM,WAAW,EAAE,WAAW,EA0CpC,CAAC;AAmnBF,wBAAsB,iBAAiB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CA6B/D"}
@@ -310,6 +310,15 @@ function removeWorktree(worktreePath, repoDir) {
310
310
  }
311
311
  }
312
312
  // ============ Handlers ============
313
+ async function waitForProcessExit(sessionId, timeoutMs) {
314
+ const deadline = Date.now() + timeoutMs;
315
+ while (Date.now() < deadline) {
316
+ if (!isProcessRunning(sessionId))
317
+ return true;
318
+ await new Promise(resolve => setTimeout(resolve, 100));
319
+ }
320
+ return !isProcessRunning(sessionId);
321
+ }
313
322
  async function handleAsk(params, logger = gatewayLog) {
314
323
  if (!existsSync(params.dir)) {
315
324
  return { success: false, error: `Directory "${params.dir}" does not exist` };
@@ -344,12 +353,26 @@ async function handleAsk(params, logger = gatewayLog) {
344
353
  }
345
354
  const isResume = Boolean(params.sessionId);
346
355
  let sessionId = params.sessionId || randomUUID();
347
- // For resume, verify process is not already running
356
+ // On resume, if a previous PTY is still alive for this id, kill it before
357
+ // respawning. The TUI has no API to inject a new prompt into a running
358
+ // instance, so the only way to deliver `params.prompt` is a fresh
359
+ // `--resume <id>` process. SIGTERM gives the agent a chance to flush its
360
+ // transcript; we escalate to SIGKILL only if it doesn't exit in time.
348
361
  if (isResume && isProcessRunning(sessionId)) {
349
- return {
350
- success: false,
351
- error: `Session "${sessionId}" is already running. Wait for it to finish before sending another prompt.`,
352
- };
362
+ logger(`coding_ask resume: killing running pty for sessionId=${sessionId}`);
363
+ stopProcess(sessionId);
364
+ let exited = await waitForProcessExit(sessionId, 5_000);
365
+ if (!exited) {
366
+ logger(`coding_ask resume: SIGTERM did not exit, escalating to SIGKILL`);
367
+ ptyManager.kill(sessionId, 'SIGKILL');
368
+ exited = await waitForProcessExit(sessionId, 2_000);
369
+ }
370
+ if (!exited) {
371
+ return {
372
+ success: false,
373
+ error: `Session "${sessionId}" did not exit after SIGTERM/SIGKILL — cannot resume.`,
374
+ };
375
+ }
353
376
  }
354
377
  // Set up worktree for new sessions when requested
355
378
  let workingDir = params.dir;
@@ -1 +1 @@
1
- {"version":3,"file":"coding-tools.js","sourceRoot":"","sources":["../../../src/server/tools/coding-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coding-tools.js","sourceRoot":"","sources":["../../../src/server/tools/coding-tools.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,17 @@ export declare function closeSession(sessionName: string): Promise<{
42
42
  export declare function closeAllSessions(): Promise<{
43
43
  success: boolean;
44
44
  }>;
45
+ /**
46
+ * Walk every profile under `~/.corebrain/browser-profiles/` and remove
47
+ * Chromium singleton files left over from a prior process (different
48
+ * container hostname, or same host but the pid is gone). Safe to call only
49
+ * at gateway boot — within a live process, `sessionMap` is the source of
50
+ * truth for which profiles are in use, and Chromium manages the lock files
51
+ * itself.
52
+ */
53
+ export declare function clearStaleProfileLocks(): {
54
+ cleared: string[];
55
+ };
45
56
  export declare function getLiveSessions(): string[];
46
57
  export {};
47
58
  //# sourceMappingURL=browser-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-manager.d.ts","sourceRoot":"","sources":["../../src/utils/browser-manager.ts"],"names":[],"mappings":"AAIA,UAAU,cAAc;IACvB,OAAO,EAAE,OAAO,YAAY,EAAE,cAAc,CAAC;IAC7C,IAAI,EAAE,OAAO,YAAY,EAAE,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA0DD,wBAAsB,kBAAkB,CACvC,WAAW,EAAE,MAAM,EACnB,MAAM,UAAQ,GACZ,OAAO,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAiEpD;AAED,wBAAsB,aAAa,CAClC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,GACb,OAAO,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CA8DpD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,MAAM,GACjB;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAAG,IAAI,CAQjE;AAED,wBAAsB,YAAY,CACjC,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAgB7C;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAAC,CAIpE;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
1
+ {"version":3,"file":"browser-manager.d.ts","sourceRoot":"","sources":["../../src/utils/browser-manager.ts"],"names":[],"mappings":"AAMA,UAAU,cAAc;IACvB,OAAO,EAAE,OAAO,YAAY,EAAE,cAAc,CAAC;IAC7C,IAAI,EAAE,OAAO,YAAY,EAAE,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA0DD,wBAAsB,kBAAkB,CACvC,WAAW,EAAE,MAAM,EACnB,MAAM,UAAQ,GACZ,OAAO,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAiEpD;AAED,wBAAsB,aAAa,CAClC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,GACb,OAAO,CAAC;IAAC,OAAO,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CA8DpD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,MAAM,GACjB;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAAG,IAAI,CAQjE;AAED,wBAAsB,YAAY,CACjC,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAgB7C;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAAC,CAIpE;AAyCD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,IAAI;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAC,CAkC5D;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
@@ -1,4 +1,6 @@
1
1
  import fs from 'node:fs';
2
+ import os from 'node:os';
3
+ import path from 'node:path';
2
4
  import { getProfileDir, getBrowserExecutable, getSessionConfig } from '../utils/browser-config.js';
3
5
  import { gatewayLog } from '../server/gateway-log.js';
4
6
  const sessionMap = new Map();
@@ -201,6 +203,90 @@ export async function closeAllSessions() {
201
203
  await Promise.allSettled(names.map(async (name) => closeSession(name)));
202
204
  return { success: true };
203
205
  }
206
+ const SINGLETON_FILES = ['SingletonLock', 'SingletonCookie', 'SingletonSocket'];
207
+ /**
208
+ * Decide whether `profileDir` holds a stale Chromium SingletonLock. Chromium
209
+ * writes the lock as a symlink whose target is `<hostname>-<pid>`. If the
210
+ * hostname differs from ours (different container) or the pid isn't alive,
211
+ * the lock is left over from a prior process and Brave will refuse to launch
212
+ * until it's removed.
213
+ */
214
+ function lockIsStale(profileDir) {
215
+ const lockPath = path.join(profileDir, 'SingletonLock');
216
+ let target;
217
+ try {
218
+ target = fs.readlinkSync(lockPath);
219
+ }
220
+ catch (err) {
221
+ if (err.code === 'ENOENT')
222
+ return false;
223
+ // File exists but isn't a symlink we can read — unparseable, treat as
224
+ // stale so we clear it rather than leave Brave wedged.
225
+ return true;
226
+ }
227
+ // Hostnames can contain hyphens (Docker uses 12-char hex which can't, but
228
+ // be defensive), so split from the right.
229
+ const dash = target.lastIndexOf('-');
230
+ if (dash < 0)
231
+ return true;
232
+ const host = target.slice(0, dash);
233
+ const pid = Number(target.slice(dash + 1));
234
+ if (host !== os.hostname())
235
+ return true;
236
+ if (!Number.isFinite(pid) || pid <= 0)
237
+ return true;
238
+ try {
239
+ process.kill(pid, 0);
240
+ return false;
241
+ }
242
+ catch {
243
+ return true;
244
+ }
245
+ }
246
+ /**
247
+ * Walk every profile under `~/.corebrain/browser-profiles/` and remove
248
+ * Chromium singleton files left over from a prior process (different
249
+ * container hostname, or same host but the pid is gone). Safe to call only
250
+ * at gateway boot — within a live process, `sessionMap` is the source of
251
+ * truth for which profiles are in use, and Chromium manages the lock files
252
+ * itself.
253
+ */
254
+ export function clearStaleProfileLocks() {
255
+ const profilesRoot = path.join(os.homedir(), '.corebrain', 'browser-profiles');
256
+ const cleared = [];
257
+ if (!fs.existsSync(profilesRoot))
258
+ return { cleared };
259
+ let entries;
260
+ try {
261
+ entries = fs.readdirSync(profilesRoot);
262
+ }
263
+ catch {
264
+ return { cleared };
265
+ }
266
+ for (const entry of entries) {
267
+ const profileDir = path.join(profilesRoot, entry);
268
+ try {
269
+ if (!fs.statSync(profileDir).isDirectory())
270
+ continue;
271
+ }
272
+ catch {
273
+ continue;
274
+ }
275
+ if (!lockIsStale(profileDir))
276
+ continue;
277
+ for (const name of SINGLETON_FILES) {
278
+ try {
279
+ fs.rmSync(path.join(profileDir, name), { force: true });
280
+ }
281
+ catch {
282
+ /* best effort */
283
+ }
284
+ }
285
+ cleared.push(entry);
286
+ gatewayLog(`browser: cleared stale profile lock for "${entry}"`);
287
+ }
288
+ return { cleared };
289
+ }
204
290
  export function getLiveSessions() {
205
291
  return [...sessionMap.keys()];
206
292
  }
@@ -1 +1 @@
1
- {"version":3,"file":"browser-manager.js","sourceRoot":"","sources":["../../src/utils/browser-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-manager.js","sourceRoot":"","sources":["../../src/utils/browser-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"env-bootstrap.d.ts","sourceRoot":"","sources":["../../src/utils/env-bootstrap.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CA6K3C"}
1
+ {"version":3,"file":"env-bootstrap.d.ts","sourceRoot":"","sources":["../../src/utils/env-bootstrap.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAmL3C"}
@@ -1,5 +1,5 @@
1
1
  import { randomUUID } from 'node:crypto';
2
- import { existsSync, realpathSync, statSync } from 'node:fs';
2
+ import { existsSync, statSync } from 'node:fs';
3
3
  import { resolve } from 'node:path';
4
4
  import { updateConfig, getConfig } from '../config/index.js';
5
5
  import { getPreferences, updatePreferences } from '../config/preferences.js';
@@ -98,14 +98,19 @@ export function bootstrapFromEnv() {
98
98
  // as a coding+files+exec folder so a brand-new container is immediately
99
99
  // usable from the webapp's "New coding session" dialog without the user
100
100
  // having to add a folder manually.
101
+ //
102
+ // We store the env-supplied path as-is (e.g. `/app`) instead of its
103
+ // realpath. On Railway the workspace is a symlink to `/mnt/volume/...`
104
+ // so the volume persists across restarts, but `/app` is the form the
105
+ // terminal prompt and tooling use — that's what should appear in the UI.
101
106
  const foldersPatch = {};
102
107
  if (defaultWorkspace && existsSync(defaultWorkspace)) {
103
108
  try {
104
- const abs = realpathSync(resolve(defaultWorkspace));
105
- if (statSync(abs).isDirectory()) {
109
+ const inputPath = resolve(defaultWorkspace);
110
+ if (statSync(inputPath).isDirectory()) {
106
111
  const existingFolders = existing.folders ?? [];
107
- if (!existingFolders.some(f => f.path === abs)) {
108
- const baseName = abs.split('/').filter(Boolean).pop() ?? 'app';
112
+ if (!existingFolders.some(f => f.path === inputPath)) {
113
+ const baseName = inputPath.split('/').filter(Boolean).pop() ?? 'app';
109
114
  let name = baseName;
110
115
  for (let i = 2; existingFolders.some(f => f.name === name); i++) {
111
116
  name = `${baseName}-${i}`;
@@ -115,12 +120,12 @@ export function bootstrapFromEnv() {
115
120
  {
116
121
  id: `fld_${randomUUID()}`,
117
122
  name,
118
- path: abs,
123
+ path: inputPath,
119
124
  scopes: ['files', 'coding', 'exec'],
120
- gitRepo: existsSync(`${abs}/.git`),
125
+ gitRepo: existsSync(`${inputPath}/.git`),
121
126
  },
122
127
  ];
123
- applied.push(`folder:${name}=${abs}`);
128
+ applied.push(`folder:${name}=${inputPath}`);
124
129
  }
125
130
  }
126
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"env-bootstrap.js","sourceRoot":"","sources":["../../src/utils/env-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-bootstrap.js","sourceRoot":"","sources":["../../src/utils/env-bootstrap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redplanethq/corebrain",
3
- "version": "2.8.17",
3
+ "version": "2.8.18",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=16"