@rubytech/create-maxy-code 0.1.214 → 0.1.219
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/package.json +1 -1
- package/payload/platform/lib/mcp-eager/dist/index.d.ts +0 -55
- package/payload/platform/lib/mcp-eager/dist/index.d.ts.map +1 -1
- package/payload/platform/lib/mcp-eager/dist/index.js +0 -76
- package/payload/platform/lib/mcp-eager/dist/index.js.map +1 -1
- package/payload/platform/lib/mcp-eager/src/index.ts +0 -101
- package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/admin/PLUGIN.md +4 -1
- package/payload/platform/plugins/admin/hooks/__tests__/hook-emit-stale-lock-ttl.test.sh +102 -0
- package/payload/platform/plugins/admin/hooks/__tests__/post-tool-use-agent.test.sh +97 -1
- package/payload/platform/plugins/admin/hooks/__tests__/pre-tool-use-admin-tool-gate.test.sh +55 -74
- package/payload/platform/plugins/admin/hooks/lib/hook-emit.sh +58 -0
- package/payload/platform/plugins/admin/hooks/post-tool-use-agent.sh +100 -29
- package/payload/platform/plugins/admin/hooks/pre-tool-use.sh +0 -55
- package/payload/platform/plugins/admin/mcp/dist/__tests__/capabilities-here.test.d.ts +2 -0
- package/payload/platform/plugins/admin/mcp/dist/__tests__/capabilities-here.test.d.ts.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/__tests__/capabilities-here.test.js +130 -0
- package/payload/platform/plugins/admin/mcp/dist/__tests__/capabilities-here.test.js.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/index.js +63 -0
- package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/admin/mcp/dist/lib/catalogue-census.d.ts +14 -0
- package/payload/platform/plugins/admin/mcp/dist/lib/catalogue-census.d.ts.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/lib/catalogue-census.js +50 -0
- package/payload/platform/plugins/admin/mcp/dist/lib/catalogue-census.js.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/capabilities-here.d.ts +28 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/capabilities-here.d.ts.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/capabilities-here.js +68 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/capabilities-here.js.map +1 -0
- package/payload/platform/plugins/admin/skills/capabilities-here/SKILL.md +31 -0
- package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +39 -30
- package/payload/platform/plugins/browser/mcp/dist/index.js +19 -19
- package/payload/platform/plugins/browser/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/docs/references/platform.md +28 -25
- package/payload/platform/plugins/docs/references/plugins-guide.md +2 -0
- package/payload/platform/plugins/email/mcp/dist/index.js +12 -12
- package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/index.js +8 -8
- package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/url-get/mcp/dist/index.js +2 -2
- package/payload/platform/plugins/url-get/mcp/dist/index.js.map +1 -1
- package/payload/platform/scripts/check-architecture-skill-no-drift.mjs +89 -42
- package/payload/platform/scripts/check-roles-doc-completeness.mjs +96 -0
- package/payload/platform/scripts/check-specialist-tool-surface.mjs +1 -1
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.d.ts +0 -14
- package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.js +54 -21
- package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/index.js +20 -9
- package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/jsonl-tail.d.ts +21 -0
- package/payload/platform/services/claude-session-manager/dist/jsonl-tail.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/jsonl-tail.js +118 -1
- package/payload/platform/services/claude-session-manager/dist/jsonl-tail.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +1 -1
- package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts +28 -17
- package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/rc-daemon.js +110 -60
- package/payload/platform/services/claude-session-manager/dist/rc-daemon.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/rc-life.d.ts +4 -0
- package/payload/platform/services/claude-session-manager/dist/rc-life.d.ts.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/rc-life.js +16 -0
- package/payload/platform/services/claude-session-manager/dist/rc-life.js.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/rc-script-spawn.d.ts +80 -0
- package/payload/platform/services/claude-session-manager/dist/rc-script-spawn.d.ts.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/rc-script-spawn.js +306 -0
- package/payload/platform/services/claude-session-manager/dist/rc-script-spawn.js.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts +9 -0
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.js +6 -2
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/systemd-scope.d.ts +12 -46
- package/payload/platform/services/claude-session-manager/dist/systemd-scope.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/systemd-scope.js +24 -73
- package/payload/platform/services/claude-session-manager/dist/systemd-scope.js.map +1 -1
- package/payload/platform/templates/agents/admin/IDENTITY.md +6 -4
- package/payload/platform/templates/specialists/agents/content-producer.md +1 -1
- package/payload/premium-plugins/writer-craft/mcp/dist/index.d.ts.map +1 -1
- package/payload/premium-plugins/writer-craft/mcp/dist/index.js +4 -5
- package/payload/premium-plugins/writer-craft/mcp/dist/index.js.map +1 -1
- package/payload/premium-plugins/writer-craft/mcp/src/index.ts +4 -5
- package/payload/premium-plugins/writer-craft/lib/mcp-eager/dist/index.d.ts +0 -116
- package/payload/premium-plugins/writer-craft/lib/mcp-eager/dist/index.d.ts.map +0 -1
- package/payload/premium-plugins/writer-craft/lib/mcp-eager/dist/index.js +0 -125
- package/payload/premium-plugins/writer-craft/lib/mcp-eager/dist/index.js.map +0 -1
- package/payload/premium-plugins/writer-craft/lib/mcp-eager/package.json +0 -7
|
@@ -40,6 +40,7 @@ import { join, dirname } from 'node:path';
|
|
|
40
40
|
import { readFileSync, writeFileSync, mkdirSync, renameSync } from 'node:fs';
|
|
41
41
|
import { createConnection } from 'node:net';
|
|
42
42
|
import { randomUUID } from 'node:crypto';
|
|
43
|
+
import { emitRcLife } from './rc-life.js';
|
|
43
44
|
const TAG = '[claude-session-manager]';
|
|
44
45
|
const BACKOFF_BASE_MS = 1_000;
|
|
45
46
|
const BACKOFF_MAX_MS = 60_000;
|
|
@@ -195,6 +196,7 @@ export function startRcDaemon(deps) {
|
|
|
195
196
|
// plugins' `${ACCOUNT_ID}`/`${NEO4J_*}` blocks resolve without a project file.
|
|
196
197
|
deps.logger(`${TAG} rc-daemon mcp-channel=installed-plugins accountId=${deps.accountId} (no project .mcp.json; long-prefix only)`);
|
|
197
198
|
const daemonEnv = buildDaemonEnv(deps);
|
|
199
|
+
const pidFileTimeoutMs = deps.pidFileTimeoutMs ?? 30_000;
|
|
198
200
|
let stopped = false;
|
|
199
201
|
let current = null;
|
|
200
202
|
let backoffMs = BACKOFF_BASE_MS;
|
|
@@ -204,7 +206,7 @@ export function startRcDaemon(deps) {
|
|
|
204
206
|
if (stopped || permanentlyFailed)
|
|
205
207
|
return;
|
|
206
208
|
const startedAt = now();
|
|
207
|
-
let
|
|
209
|
+
let pty;
|
|
208
210
|
// Task 531 — unique unitToken per spawn attempt. A fixed token
|
|
209
211
|
// (`'rc-daemon'`) reused on a fast restart races systemd's cleanup of
|
|
210
212
|
// the prior transient scope: the next `systemd-run --user --scope
|
|
@@ -216,68 +218,106 @@ export function startRcDaemon(deps) {
|
|
|
216
218
|
// greps still recognise the scope as the rc-daemon's.
|
|
217
219
|
const unitToken = `rc-daemon-${randomUUID()}`;
|
|
218
220
|
try {
|
|
219
|
-
|
|
220
|
-
//
|
|
221
|
-
//
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
cleanEnv[k] = v;
|
|
226
|
-
}
|
|
227
|
-
handle = await deps.systemdSpawn({
|
|
228
|
-
claudeBin: deps.claudeBin,
|
|
229
|
-
// --no-create-session-in-dir: do not pre-create the daemon's in-dir
|
|
230
|
-
// session. The daemon starts at platform boot, ahead of any operator
|
|
231
|
-
// intent, so a pre-created session would sit idle until composer
|
|
232
|
-
// creates a real on-demand session anyway.
|
|
233
|
-
claudeArgs: ['rc', '--spawn', 'same-dir', '--no-create-session-in-dir', '--remote-control-session-name-prefix', deps.brandProductName],
|
|
234
|
-
env: cleanEnv,
|
|
235
|
-
cwd: deps.spawnCwd,
|
|
236
|
-
unitToken,
|
|
237
|
-
// Task 556 — per-spawn script(1) typescript capture file.
|
|
238
|
-
captureFilePath: join(dirname(deps.claudeConfigDir), 'logs', `spawn-${unitToken}.log`),
|
|
239
|
-
});
|
|
221
|
+
pty = deps.spawnPty(deps.claudeBin,
|
|
222
|
+
// --no-create-session-in-dir: do not pre-create the daemon's in-dir
|
|
223
|
+
// session. The daemon starts at platform boot, ahead of any operator
|
|
224
|
+
// intent, so a pre-created session would sit idle until composer
|
|
225
|
+
// creates a real on-demand session anyway.
|
|
226
|
+
['rc', '--spawn', 'same-dir', '--no-create-session-in-dir', '--remote-control-session-name-prefix', deps.brandProductName], daemonEnv, unitToken);
|
|
240
227
|
}
|
|
241
228
|
catch (err) {
|
|
242
|
-
|
|
229
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
230
|
+
deps.logger(`${TAG} rc-daemon spawn-failed err=${msg}`);
|
|
231
|
+
emitRcLife(deps.logger, 'spawn-failed', 'rc-daemon', 'node-pty', 'daemon', unitToken, { err: JSON.stringify(msg) });
|
|
243
232
|
scheduleRestart(startedAt);
|
|
244
233
|
return;
|
|
245
234
|
}
|
|
246
|
-
current =
|
|
247
|
-
deps.logger(`${TAG} rc-daemon start accountId=${deps.accountId} cwd=${deps.spawnCwd} pid=${
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
//
|
|
253
|
-
//
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
deps.logger(`${TAG} rc-daemon fast-exit-output accountId=${deps.accountId} pid=${handle.pid} ranMs=${ranMs} bytes=${bytes} output<<<\n${body}\n>>>`);
|
|
235
|
+
current = pty;
|
|
236
|
+
deps.logger(`${TAG} rc-daemon start accountId=${deps.accountId} cwd=${deps.spawnCwd} pid=${pty.pid} model=${adminModel ?? 'default'} name-prefix=${deps.brandProductName} spawnMethod=node-pty`);
|
|
237
|
+
emitRcLife(deps.logger, 'spawned', 'rc-daemon', 'node-pty', 'daemon', unitToken, {
|
|
238
|
+
pid: pty.pid,
|
|
239
|
+
scopeUnit: `claude-session-${unitToken}.scope`,
|
|
240
|
+
});
|
|
241
|
+
// Ring buffer for the child's own stdout/stderr. Sized to fit a
|
|
242
|
+
// multi-line stack trace or single-instance/lock error without
|
|
243
|
+
// unbounded growth on a chatty boot sequence; the head wins because
|
|
244
|
+
// the bounded buffer truncates once full, capturing the early
|
|
245
|
+
// boot output that precedes a fast exit.
|
|
246
|
+
let outputBuf = '';
|
|
247
|
+
pty.onData((data) => {
|
|
248
|
+
if (outputBuf.length >= FAST_EXIT_OUTPUT_MAX_BYTES)
|
|
249
|
+
return;
|
|
250
|
+
const remaining = FAST_EXIT_OUTPUT_MAX_BYTES - outputBuf.length;
|
|
251
|
+
outputBuf += remaining >= data.length ? data : data.slice(0, remaining);
|
|
252
|
+
});
|
|
253
|
+
// Liveness poll — matches the rc-spawn arm's cadence so the endurance
|
|
254
|
+
// signature is directly comparable. Cleared on exit (below).
|
|
255
|
+
const livenessTimer = setInterval(() => {
|
|
256
|
+
if (current !== pty) {
|
|
257
|
+
clearInterval(livenessTimer);
|
|
258
|
+
return;
|
|
271
259
|
}
|
|
272
|
-
|
|
260
|
+
let pidAlive = false;
|
|
261
|
+
try {
|
|
262
|
+
process.kill(pty.pid, 0);
|
|
263
|
+
pidAlive = true;
|
|
264
|
+
}
|
|
265
|
+
catch {
|
|
266
|
+
pidAlive = false;
|
|
267
|
+
}
|
|
268
|
+
emitRcLife(deps.logger, 'liveness', 'rc-daemon', 'node-pty', 'daemon', unitToken, {
|
|
269
|
+
ageMs: now() - startedAt,
|
|
270
|
+
pidAlive,
|
|
271
|
+
remoteBound: true,
|
|
272
|
+
});
|
|
273
|
+
}, 15_000);
|
|
274
|
+
livenessTimer.unref?.();
|
|
275
|
+
// Task 573 — success signal is the on-disk PID file. `waitForPid`
|
|
276
|
+
// resolves once `claude rc` writes `<CLAUDE_CONFIG_DIR>/sessions/<pid>.json`.
|
|
277
|
+
// The fire-and-forget chain emits `op=pidfile-present` (success) or
|
|
278
|
+
// `op=wait-pid-failed` (timeout). Neither outcome aborts the
|
|
279
|
+
// supervised lifetime; the child may still be running with the file
|
|
280
|
+
// absent (logged failure surfaces it).
|
|
281
|
+
let pidFileSeen = false;
|
|
282
|
+
void deps.waitForPid(pty.pid, pidFileTimeoutMs)
|
|
283
|
+
.then((row) => {
|
|
284
|
+
pidFileSeen = true;
|
|
285
|
+
emitRcLife(deps.logger, 'pidfile-present', 'rc-daemon', 'node-pty', 'daemon', unitToken, {
|
|
286
|
+
pid: pty.pid,
|
|
287
|
+
path: row.pidFilePath ?? 'unknown',
|
|
288
|
+
ageMs: now() - startedAt,
|
|
289
|
+
});
|
|
273
290
|
})
|
|
274
291
|
.catch((err) => {
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
292
|
+
emitRcLife(deps.logger, 'wait-pid-failed', 'rc-daemon', 'node-pty', 'daemon', unitToken, {
|
|
293
|
+
pid: pty.pid,
|
|
294
|
+
err: JSON.stringify(err instanceof Error ? err.message : String(err)),
|
|
295
|
+
});
|
|
296
|
+
});
|
|
297
|
+
pty.onExit((e) => {
|
|
298
|
+
if (current === pty)
|
|
279
299
|
current = null;
|
|
280
|
-
|
|
300
|
+
clearInterval(livenessTimer);
|
|
301
|
+
const ranMs = now() - startedAt;
|
|
302
|
+
const exitCode = e.exitCode ?? null;
|
|
303
|
+
const signal = e.signal ?? null;
|
|
304
|
+
deps.logger(`${TAG} rc-daemon exit accountId=${deps.accountId} pid=${pty.pid} exitCode=${exitCode ?? 'null'} signal=${signal ?? 'null'} ranMs=${ranMs}`);
|
|
305
|
+
emitRcLife(deps.logger, 'exit', 'rc-daemon', 'node-pty', 'daemon', unitToken, {
|
|
306
|
+
pid: pty.pid,
|
|
307
|
+
lifetimeMs: ranMs,
|
|
308
|
+
exitCode: exitCode ?? 'null',
|
|
309
|
+
signal: signal ?? 'null',
|
|
310
|
+
pidFileSeen,
|
|
311
|
+
});
|
|
312
|
+
if (ranMs < FAST_EXIT_THRESHOLD_MS) {
|
|
313
|
+
const bytes = outputBuf.length;
|
|
314
|
+
const body = bytes > 0 ? outputBuf : '<no child output captured>';
|
|
315
|
+
deps.logger(`${TAG} rc-daemon fast-exit-output accountId=${deps.accountId} pid=${pty.pid} ranMs=${ranMs} bytes=${bytes} output<<<\n${body}\n>>>`);
|
|
316
|
+
}
|
|
317
|
+
try {
|
|
318
|
+
pty.destroy?.();
|
|
319
|
+
}
|
|
320
|
+
catch { /* fd may already be gone */ }
|
|
281
321
|
scheduleRestart(startedAt);
|
|
282
322
|
});
|
|
283
323
|
};
|
|
@@ -371,15 +411,25 @@ export function startRcDaemon(deps) {
|
|
|
371
411
|
};
|
|
372
412
|
void waitForNeo4jThenSpawn();
|
|
373
413
|
return {
|
|
414
|
+
alive() {
|
|
415
|
+
return current ? 1 : 0;
|
|
416
|
+
},
|
|
374
417
|
stop() {
|
|
375
418
|
stopped = true;
|
|
376
419
|
if (current) {
|
|
377
|
-
// Task
|
|
378
|
-
//
|
|
379
|
-
//
|
|
380
|
-
//
|
|
381
|
-
//
|
|
382
|
-
|
|
420
|
+
// Task 573 — node-pty: send SIGTERM to the claude child and
|
|
421
|
+
// release the master fd. The scope's TimeoutStopSec=5 still
|
|
422
|
+
// caps any in-cgroup escalation systemd performs against the
|
|
423
|
+
// reparented pid when the manager exits; node-pty itself does
|
|
424
|
+
// not orchestrate SIGTERM→SIGKILL.
|
|
425
|
+
try {
|
|
426
|
+
current.kill('SIGTERM');
|
|
427
|
+
}
|
|
428
|
+
catch { /* already gone */ }
|
|
429
|
+
try {
|
|
430
|
+
current.destroy?.();
|
|
431
|
+
}
|
|
432
|
+
catch { /* fd may already be gone */ }
|
|
383
433
|
current = null;
|
|
384
434
|
}
|
|
385
435
|
deps.logger(`${TAG} rc-daemon stopped accountId=${deps.accountId}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rc-daemon.js","sourceRoot":"","sources":["../src/rc-daemon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rc-daemon.js","sourceRoot":"","sources":["../src/rc-daemon.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Logger } from './types.js';
|
|
2
|
+
export type RcSpawnMode = 'new' | 'resume';
|
|
3
|
+
export declare function emitRcLife(logger: Logger, op: string, source: 'rc-spawn' | 'rc-daemon', path: 'node-pty', mode: RcSpawnMode | 'daemon', unitToken: string, fields?: Record<string, string | number | boolean | null>): void;
|
|
4
|
+
//# sourceMappingURL=rc-life.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rc-life.d.ts","sourceRoot":"","sources":["../src/rc-life.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,QAAQ,CAAA;AAE1C,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,UAAU,GAAG,WAAW,EAChC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,WAAW,GAAG,QAAQ,EAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAM,GAC5D,IAAI,CAMN"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Cross-arm `[rc-life]` log schema. One emitter shared by rc-spawn and
|
|
2
|
+
// rc-daemon so a single `grep '\[rc-life\]'` covers every spawn surface
|
|
3
|
+
// under one shape. Field order + null-handling stay identical between
|
|
4
|
+
// the arms.
|
|
5
|
+
//
|
|
6
|
+
// Task 573 — both arms spawn via node-pty + systemd-scope. `path` is
|
|
7
|
+
// therefore always `node-pty`; the parameter is preserved for log
|
|
8
|
+
// compatibility with prior tooling.
|
|
9
|
+
export function emitRcLife(logger, op, source, path, mode, unitToken, fields = {}) {
|
|
10
|
+
const base = `[rc-life] op=${op} source=${source} path=${path} mode=${mode} unitToken=${unitToken}`;
|
|
11
|
+
const extras = Object.entries(fields)
|
|
12
|
+
.map(([k, v]) => `${k}=${v === null ? 'null' : typeof v === 'string' && v.includes(' ') ? JSON.stringify(v) : v}`)
|
|
13
|
+
.join(' ');
|
|
14
|
+
logger(extras ? `${base} ${extras}` : base);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=rc-life.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rc-life.js","sourceRoot":"","sources":["../src/rc-life.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,wEAAwE;AACxE,sEAAsE;AACtE,YAAY;AACZ,EAAE;AACF,qEAAqE;AACrE,kEAAkE;AAClE,oCAAoC;AAMpC,MAAM,UAAU,UAAU,CACxB,MAAc,EACd,EAAU,EACV,MAAgC,EAChC,IAAgB,EAChB,IAA4B,EAC5B,SAAiB,EACjB,SAA2D,EAAE;IAE7D,MAAM,IAAI,GAAG,gBAAgB,EAAE,WAAW,MAAM,SAAS,IAAI,SAAS,IAAI,cAAc,SAAS,EAAE,CAAA;IACnG,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAClC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACjH,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { Logger } from './types.js';
|
|
2
|
+
import type { SystemdScopeHandle } from './systemd-spawn.js';
|
|
3
|
+
export type RcSpawnMode = 'new' | 'resume';
|
|
4
|
+
export interface RcScriptSpawnDeps {
|
|
5
|
+
claudeBin: string;
|
|
6
|
+
spawnCwd: string;
|
|
7
|
+
accountId: string;
|
|
8
|
+
platformRoot: string;
|
|
9
|
+
claudeConfigDir: string;
|
|
10
|
+
brandedNeo4jUri: string;
|
|
11
|
+
brandedNeo4jPassword: string;
|
|
12
|
+
uiPort: string;
|
|
13
|
+
pidFileTimeoutMs: number;
|
|
14
|
+
logger: Logger;
|
|
15
|
+
systemdSpawn: (params: {
|
|
16
|
+
claudeBin: string;
|
|
17
|
+
claudeArgs: readonly string[];
|
|
18
|
+
env: Readonly<Record<string, string>>;
|
|
19
|
+
cwd: string;
|
|
20
|
+
unitToken: string;
|
|
21
|
+
captureFilePath: string;
|
|
22
|
+
}) => Promise<SystemdScopeHandle>;
|
|
23
|
+
/** waitForPid binding from the fs watcher (resolves once claude writes
|
|
24
|
+
* its pid file under sessions/<pid>.json). Injectable for tests. */
|
|
25
|
+
waitForPid: (pid: number, timeoutMs: number) => Promise<{
|
|
26
|
+
pidFilePath: string | null;
|
|
27
|
+
bridgeSessionId: string | null;
|
|
28
|
+
}>;
|
|
29
|
+
/** Injectable clock for tests. Defaults to Date.now. */
|
|
30
|
+
now?: () => number;
|
|
31
|
+
/** Liveness poll interval. Default 15_000 ms. Brief permits up to 30 s. */
|
|
32
|
+
livenessPollIntervalMs?: number;
|
|
33
|
+
}
|
|
34
|
+
export interface RcScriptSpawnRequest {
|
|
35
|
+
sessionId: string | null;
|
|
36
|
+
name: string | null;
|
|
37
|
+
}
|
|
38
|
+
export interface RcScriptSpawnResult {
|
|
39
|
+
spawnedPid: number;
|
|
40
|
+
sessionId: string | null;
|
|
41
|
+
unitToken: string;
|
|
42
|
+
mode: RcSpawnMode;
|
|
43
|
+
}
|
|
44
|
+
export interface RcScriptSpawnEntry {
|
|
45
|
+
unitToken: string;
|
|
46
|
+
pid: number;
|
|
47
|
+
sessionId: string | null;
|
|
48
|
+
mode: RcSpawnMode;
|
|
49
|
+
spawnedAt: number;
|
|
50
|
+
captureFilePath: string;
|
|
51
|
+
handle: SystemdScopeHandle;
|
|
52
|
+
pidFileSeen: boolean;
|
|
53
|
+
remoteBound: boolean;
|
|
54
|
+
exited: boolean;
|
|
55
|
+
}
|
|
56
|
+
/** For tests + the census sweep. Read-only iteration. */
|
|
57
|
+
export declare function forEachLiveScriptScopeRcSpawn(cb: (entry: RcScriptSpawnEntry) => void): void;
|
|
58
|
+
export declare function liveScriptScopeRcSpawnCount(): number;
|
|
59
|
+
/** Clear the tracker map. Test-only seam — production never calls. */
|
|
60
|
+
export declare function __resetScriptScopeRcSpawnsForTests(): void;
|
|
61
|
+
/** Schema-tagged line emitter. Every consumer of the cross-arm `[rc-life]`
|
|
62
|
+
* surface must use this so the field order + null-handling stays
|
|
63
|
+
* identical between rc-spawn and rc-daemon. */
|
|
64
|
+
export declare function emitRcLife(logger: Logger, op: string, source: 'rc-spawn' | 'rc-daemon', path: 'script-scope' | 'node-pty', mode: RcSpawnMode | 'daemon', unitToken: string, fields?: Record<string, string | number | boolean | null>): void;
|
|
65
|
+
/** Run the script-scope rc-spawn. Returns once `systemdSpawn` resolves
|
|
66
|
+
* (scope is active, cgroup pid captured). Liveness polling, pid-file
|
|
67
|
+
* binding, and exit observation run in the background — the route
|
|
68
|
+
* responds immediately with `spawnedPid` like the node-pty arm does. */
|
|
69
|
+
export declare function handleRcSpawnScriptScope(deps: RcScriptSpawnDeps, req: RcScriptSpawnRequest): Promise<RcScriptSpawnResult>;
|
|
70
|
+
/** Census sweep — reconciles expected (dashboard-initiated sessions) vs
|
|
71
|
+
* actual (live tracked entries). Detects a leaked entry whose pid is
|
|
72
|
+
* gone but the tracker still holds it, or a tracker whose handle's
|
|
73
|
+
* scope vanished without an exit event. Traffic-independent — runs on
|
|
74
|
+
* a timer in index.ts so a quiet failure surfaces within one interval.
|
|
75
|
+
*
|
|
76
|
+
* The daemon's live handle is supplied via `daemonAlive`; the daemon
|
|
77
|
+
* itself owns the canonical accounting (a single handle reference),
|
|
78
|
+
* but exposing it here keeps the schema unified. */
|
|
79
|
+
export declare function runRcLifeCensus(logger: Logger, daemonAlive: number): void;
|
|
80
|
+
//# sourceMappingURL=rc-script-spawn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rc-script-spawn.d.ts","sourceRoot":"","sources":["../src/rc-script-spawn.ts"],"names":[],"mappings":"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"}
|