crewly 1.0.0 → 1.0.1

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.
Files changed (105) hide show
  1. package/config/constants.ts +40 -2
  2. package/config/skills/_common/lib.sh +2 -1
  3. package/config/skills/agent/computer-use/execute.sh +151 -0
  4. package/config/skills/agent/computer-use/instructions.md +60 -0
  5. package/config/skills/agent/computer-use/skill.json +22 -0
  6. package/config/skills/agent/heartbeat/execute.sh +22 -0
  7. package/config/skills/agent/heartbeat/instructions.md +23 -0
  8. package/config/skills/agent/heartbeat/skill.json +20 -0
  9. package/config/skills/orchestrator/schedule-check/execute.sh +1 -1
  10. package/config/skills/orchestrator/send-pdf-to-slack/execute.sh +28 -5
  11. package/config/skills/orchestrator/send-pdf-to-slack/instructions.md +49 -10
  12. package/config/skills/orchestrator/send-pdf-to-slack/skill.json +1 -1
  13. package/config/skills/orchestrator/subscribe-event/execute.sh +2 -2
  14. package/dist/backend/backend/src/constants.d.ts +24 -2
  15. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  16. package/dist/backend/backend/src/constants.js +13 -3
  17. package/dist/backend/backend/src/constants.js.map +1 -1
  18. package/dist/backend/backend/src/controllers/session/session.controller.d.ts.map +1 -1
  19. package/dist/backend/backend/src/controllers/session/session.controller.js +16 -7
  20. package/dist/backend/backend/src/controllers/session/session.controller.js.map +1 -1
  21. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  22. package/dist/backend/backend/src/controllers/team/team.controller.js +27 -0
  23. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  24. package/dist/backend/backend/src/index.d.ts +7 -0
  25. package/dist/backend/backend/src/index.d.ts.map +1 -1
  26. package/dist/backend/backend/src/index.js +131 -0
  27. package/dist/backend/backend/src/index.js.map +1 -1
  28. package/dist/backend/backend/src/middleware/agent-heartbeat.middleware.d.ts +3 -2
  29. package/dist/backend/backend/src/middleware/agent-heartbeat.middleware.d.ts.map +1 -1
  30. package/dist/backend/backend/src/middleware/agent-heartbeat.middleware.js +8 -2
  31. package/dist/backend/backend/src/middleware/agent-heartbeat.middleware.js.map +1 -1
  32. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts +185 -0
  33. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -0
  34. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +508 -0
  35. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -0
  36. package/dist/backend/backend/src/services/agent/agent-heartbeat.service.d.ts +5 -5
  37. package/dist/backend/backend/src/services/agent/agent-heartbeat.service.d.ts.map +1 -1
  38. package/dist/backend/backend/src/services/agent/agent-heartbeat.service.js +3 -3
  39. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  40. package/dist/backend/backend/src/services/agent/agent-registration.service.js +36 -13
  41. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  42. package/dist/backend/backend/src/services/agent/disk-cleanup.service.d.ts +24 -3
  43. package/dist/backend/backend/src/services/agent/disk-cleanup.service.d.ts.map +1 -1
  44. package/dist/backend/backend/src/services/agent/disk-cleanup.service.js +15 -3
  45. package/dist/backend/backend/src/services/agent/disk-cleanup.service.js.map +1 -1
  46. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
  47. package/dist/backend/backend/src/services/agent/idle-detection.service.js +18 -0
  48. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  49. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.d.ts +7 -2
  50. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.d.ts.map +1 -1
  51. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.js +11 -3
  52. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.js.map +1 -1
  53. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +42 -0
  54. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  55. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +190 -1
  56. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  57. package/dist/backend/backend/src/services/agent/tmux.service.js +2 -2
  58. package/dist/backend/backend/src/services/agent/tmux.service.js.map +1 -1
  59. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  60. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +13 -19
  61. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  62. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts +129 -0
  63. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts.map +1 -0
  64. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +253 -0
  65. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js.map +1 -0
  66. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  67. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +5 -1
  68. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  69. package/dist/backend/backend/src/services/session/session-state-persistence.d.ts +4 -1
  70. package/dist/backend/backend/src/services/session/session-state-persistence.d.ts.map +1 -1
  71. package/dist/backend/backend/src/services/session/session-state-persistence.js +3 -1
  72. package/dist/backend/backend/src/services/session/session-state-persistence.js.map +1 -1
  73. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +1 -0
  74. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  75. package/dist/backend/backend/src/services/workflow/scheduler.service.js +1 -0
  76. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  77. package/dist/backend/backend/src/types/index.d.ts +2 -0
  78. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  79. package/dist/backend/backend/src/types/index.js.map +1 -1
  80. package/dist/backend/backend/src/types/scheduler.types.d.ts +17 -0
  81. package/dist/backend/backend/src/types/scheduler.types.d.ts.map +1 -1
  82. package/dist/backend/backend/src/types/scheduler.types.js.map +1 -1
  83. package/dist/backend/config/constants.d.ts +36 -2
  84. package/dist/backend/config/constants.d.ts.map +1 -1
  85. package/dist/backend/config/constants.js +37 -2
  86. package/dist/backend/config/constants.js.map +1 -1
  87. package/dist/backend/config/index.d.ts +1 -1
  88. package/dist/cli/cli/src/constants.d.ts +1 -1
  89. package/dist/cli/cli/src/index.js +1 -1
  90. package/dist/cli/cli/src/index.js.map +1 -1
  91. package/dist/cli/config/constants.d.ts +36 -2
  92. package/dist/cli/config/constants.d.ts.map +1 -1
  93. package/dist/cli/config/constants.js +37 -2
  94. package/dist/cli/config/constants.js.map +1 -1
  95. package/dist/cli/config/index.d.ts +1 -1
  96. package/frontend/dist/assets/{index-77b6a2a0.js → index-4c56763b.js} +31 -31
  97. package/frontend/dist/assets/{index-5ddf71c8.css → index-c1dd0b10.css} +1 -1
  98. package/frontend/dist/index.html +2 -2
  99. package/package.json +8 -4
  100. package/config/constants.test.ts +0 -469
  101. package/config/quality-gates/default-gates.test.ts +0 -246
  102. package/config/skills/agent/nano-banana-image/.env +0 -2
  103. package/config/skills/agent/nano-banana-image/.env.example +0 -6
  104. package/config/skills/nano-banana-image/.env +0 -2
  105. package/config/skills/nano-banana-image/.env.example +0 -6
@@ -7,7 +7,7 @@ import { join } from 'path';
7
7
  import { homedir } from 'os';
8
8
  import { existsSync } from 'fs';
9
9
  import { CREWLY_CONSTANTS, CONTINUATION_CONSTANTS, AGENT_IDENTITY_CONSTANTS } from '../../constants.js';
10
- import { OrchestratorRestartService } from '../orchestrator/orchestrator-restart.service.js';
10
+ import { PtyActivityTrackerService } from '../agent/pty-activity-tracker.service.js';
11
11
  /**
12
12
  * Activity Monitor Service - NEW ARCHITECTURE
13
13
  *
@@ -153,24 +153,13 @@ export class ActivityMonitorService {
153
153
  await this.storageService.updateAgentStatus(sessionName, CREWLY_CONSTANTS.AGENT_STATUSES.INACTIVE);
154
154
  }
155
155
  else if (agentId === AGENT_IDENTITY_CONSTANTS.ORCHESTRATOR.ID) {
156
- // Orchestrator session exists but is stale - check if child process is alive
157
- const childAlive = backend.isChildProcessAlive?.(sessionName) ?? true;
158
- if (!childAlive) {
159
- this.logger.warn('Orchestrator child process is dead, triggering auto-restart', {
160
- sessionName,
161
- });
162
- // Fire-and-forget restart attempt
163
- OrchestratorRestartService.getInstance().attemptRestart().catch((err) => {
164
- this.logger.error('Orchestrator auto-restart failed', {
165
- error: err instanceof Error ? err.message : String(err),
166
- });
167
- });
168
- }
169
- else {
170
- this.logger.debug('Orchestrator is stale but child process is alive, skipping restart', {
171
- sessionName,
172
- });
173
- }
156
+ // DISABLED: Orchestrator auto-restart causes false restarts when
157
+ // the orchestrator is actively working but not producing PTY output.
158
+ // The pgrep-based child process check is unreliable on macOS.
159
+ // TODO: Re-enable with a more robust liveness check (e.g. API activity tracking).
160
+ this.logger.debug('Orchestrator is stale but auto-restart is disabled', {
161
+ sessionName,
162
+ });
174
163
  }
175
164
  }
176
165
  catch (agentError) {
@@ -200,6 +189,11 @@ export class ActivityMonitorService {
200
189
  const orchestratorOutput = await this.getTerminalOutput(CREWLY_CONSTANTS.SESSIONS.ORCHESTRATOR_NAME);
201
190
  const previousOutput = this.lastTerminalOutputs.get('orchestrator') || '';
202
191
  const outputChanged = orchestratorOutput !== previousOutput && orchestratorOutput.trim() !== '';
192
+ // Bridge to PtyActivityTracker so idle/heartbeat checks detect activity
193
+ // even when no WebSocket clients are connected
194
+ if (outputChanged) {
195
+ PtyActivityTrackerService.getInstance().recordActivity(CREWLY_CONSTANTS.SESSIONS.ORCHESTRATOR_NAME);
196
+ }
203
197
  const newWorkingStatus = outputChanged ? 'in_progress' : 'idle';
204
198
  if (workingStatusData.orchestrator.workingStatus !== newWorkingStatus) {
205
199
  workingStatusData.orchestrator.workingStatus = newWorkingStatus;
@@ -1 +1 @@
1
- {"version":3,"file":"activity-monitor.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/monitoring/activity-monitor.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activity-monitor.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/monitoring/activity-monitor.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Orchestrator Heartbeat Monitor Service
3
+ *
4
+ * Monitors the orchestrator's heartbeat and takes progressive action
5
+ * when the orchestrator becomes unresponsive:
6
+ *
7
+ * 1. Implicit heartbeat: Every API call with X-Agent-Session header
8
+ * automatically updates the orchestrator's heartbeat timestamp
9
+ * (handled by agentHeartbeatMiddleware — not this service).
10
+ *
11
+ * 2. Active heartbeat request: After HEARTBEAT_REQUEST_THRESHOLD_MS
12
+ * without any API activity, this service sends a heartbeat request
13
+ * message directly into the orchestrator's PTY session.
14
+ *
15
+ * 3. Auto-restart + resume: After an additional RESTART_THRESHOLD_MS
16
+ * with no response, this service triggers OrchestratorRestartService
17
+ * to kill and recreate the orchestrator PTY session.
18
+ *
19
+ * @module orchestrator-heartbeat-monitor.service
20
+ */
21
+ import type { ISessionBackend } from '../session/session-backend.interface.js';
22
+ /**
23
+ * Internal state for the heartbeat monitor.
24
+ */
25
+ export interface HeartbeatMonitorState {
26
+ /** Whether the monitor is currently running */
27
+ isRunning: boolean;
28
+ /** Timestamp when the heartbeat request was sent (null if none pending) */
29
+ heartbeatRequestSentAt: number | null;
30
+ /** Number of heartbeat requests sent since last successful heartbeat */
31
+ heartbeatRequestCount: number;
32
+ /** Number of auto-restarts triggered by this monitor */
33
+ autoRestartCount: number;
34
+ /** Timestamp when the service started monitoring */
35
+ startedAt: number | null;
36
+ }
37
+ /**
38
+ * Monitors the orchestrator's heartbeat and takes progressive action
39
+ * when it becomes unresponsive.
40
+ *
41
+ * The monitor uses PtyActivityTrackerService as the single source of truth
42
+ * for orchestrator activity. The agentHeartbeatMiddleware calls
43
+ * PtyActivityTrackerService.recordActivity() on every API call with
44
+ * X-Agent-Session header, so any skill call counts as a heartbeat.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const monitor = OrchestratorHeartbeatMonitorService.getInstance();
49
+ * monitor.setDependencies(sessionBackend);
50
+ * monitor.start();
51
+ * // ... later
52
+ * monitor.stop();
53
+ * ```
54
+ */
55
+ export declare class OrchestratorHeartbeatMonitorService {
56
+ private static instance;
57
+ private logger;
58
+ /** Interval timer handle */
59
+ private checkTimer;
60
+ /** When the heartbeat request was sent to the orchestrator PTY */
61
+ private heartbeatRequestSentAt;
62
+ /** Counter for heartbeat requests sent */
63
+ private heartbeatRequestCount;
64
+ /** Counter for auto-restarts triggered */
65
+ private autoRestartCount;
66
+ /** When monitoring started */
67
+ private startedAt;
68
+ /** Session backend for writing to orchestrator PTY */
69
+ private sessionBackend;
70
+ private constructor();
71
+ /**
72
+ * Get the singleton instance.
73
+ *
74
+ * @returns The OrchestratorHeartbeatMonitorService singleton
75
+ */
76
+ static getInstance(): OrchestratorHeartbeatMonitorService;
77
+ /**
78
+ * Reset the singleton (for testing).
79
+ */
80
+ static resetInstance(): void;
81
+ /**
82
+ * Inject the session backend dependency.
83
+ *
84
+ * @param sessionBackend - Session backend for accessing the orchestrator PTY
85
+ */
86
+ setDependencies(sessionBackend: ISessionBackend): void;
87
+ /**
88
+ * Start the heartbeat monitoring loop.
89
+ * Applies a startup grace period before the first check.
90
+ */
91
+ start(): void;
92
+ /**
93
+ * Stop the heartbeat monitoring loop.
94
+ */
95
+ stop(): void;
96
+ /**
97
+ * Check if the monitor is currently running.
98
+ *
99
+ * @returns True if the check loop is active
100
+ */
101
+ isRunning(): boolean;
102
+ /**
103
+ * Get the current state of the heartbeat monitor.
104
+ *
105
+ * @returns Current monitor state for diagnostics
106
+ */
107
+ getState(): HeartbeatMonitorState;
108
+ /**
109
+ * Perform a single heartbeat check cycle.
110
+ *
111
+ * Decision tree:
112
+ * 1. If within startup grace period → skip
113
+ * 2. If orchestrator session doesn't exist → skip (not started yet)
114
+ * 3. If recent API activity → clear any pending heartbeat request
115
+ * 4. If heartbeat request pending and RESTART_THRESHOLD_MS exceeded → auto-restart
116
+ * 5. If no activity for HEARTBEAT_REQUEST_THRESHOLD_MS → send heartbeat request
117
+ */
118
+ performCheck(): Promise<void>;
119
+ /**
120
+ * Send a heartbeat request message to the orchestrator PTY.
121
+ * This writes the heartbeat request directly into the orchestrator's terminal.
122
+ */
123
+ private sendHeartbeatRequest;
124
+ /**
125
+ * Trigger an auto-restart of the orchestrator via OrchestratorRestartService.
126
+ */
127
+ private triggerAutoRestart;
128
+ }
129
+ //# sourceMappingURL=orchestrator-heartbeat-monitor.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator-heartbeat-monitor.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AASH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,+CAA+C;IAC/C,SAAS,EAAE,OAAO,CAAC;IACnB,2EAA2E;IAC3E,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,wEAAwE;IACxE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,CAAC;IACzB,oDAAoD;IACpD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mCAAmC;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoD;IAC3E,OAAO,CAAC,MAAM,CAAkB;IAEhC,4BAA4B;IAC5B,OAAO,CAAC,UAAU,CAA+C;IAEjE,kEAAkE;IAClE,OAAO,CAAC,sBAAsB,CAAuB;IAErD,0CAA0C;IAC1C,OAAO,CAAC,qBAAqB,CAAK;IAElC,0CAA0C;IAC1C,OAAO,CAAC,gBAAgB,CAAK;IAE7B,8BAA8B;IAC9B,OAAO,CAAC,SAAS,CAAuB;IAExC,sDAAsD;IACtD,OAAO,CAAC,cAAc,CAAgC;IAEtD,OAAO;IAIP;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,mCAAmC;IAOzD;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAO5B;;;;OAIG;IACH,eAAe,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI;IAItD;;;OAGG;IACH,KAAK,IAAI,IAAI;IA0Bb;;OAEG;IACH,IAAI,IAAI,IAAI;IASZ;;;;OAIG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,QAAQ,IAAI,qBAAqB;IAUjC;;;;;;;;;OASG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAsDnC;;;OAGG;YACW,oBAAoB;IA2BlC;;OAEG;YACW,kBAAkB;CAmBhC"}
@@ -0,0 +1,253 @@
1
+ /**
2
+ * Orchestrator Heartbeat Monitor Service
3
+ *
4
+ * Monitors the orchestrator's heartbeat and takes progressive action
5
+ * when the orchestrator becomes unresponsive:
6
+ *
7
+ * 1. Implicit heartbeat: Every API call with X-Agent-Session header
8
+ * automatically updates the orchestrator's heartbeat timestamp
9
+ * (handled by agentHeartbeatMiddleware — not this service).
10
+ *
11
+ * 2. Active heartbeat request: After HEARTBEAT_REQUEST_THRESHOLD_MS
12
+ * without any API activity, this service sends a heartbeat request
13
+ * message directly into the orchestrator's PTY session.
14
+ *
15
+ * 3. Auto-restart + resume: After an additional RESTART_THRESHOLD_MS
16
+ * with no response, this service triggers OrchestratorRestartService
17
+ * to kill and recreate the orchestrator PTY session.
18
+ *
19
+ * @module orchestrator-heartbeat-monitor.service
20
+ */
21
+ import { LoggerService } from '../core/logger.service.js';
22
+ import { ORCHESTRATOR_SESSION_NAME, ORCHESTRATOR_HEARTBEAT_CONSTANTS, } from '../../constants.js';
23
+ import { PtyActivityTrackerService } from '../agent/pty-activity-tracker.service.js';
24
+ import { OrchestratorRestartService } from './orchestrator-restart.service.js';
25
+ /**
26
+ * Monitors the orchestrator's heartbeat and takes progressive action
27
+ * when it becomes unresponsive.
28
+ *
29
+ * The monitor uses PtyActivityTrackerService as the single source of truth
30
+ * for orchestrator activity. The agentHeartbeatMiddleware calls
31
+ * PtyActivityTrackerService.recordActivity() on every API call with
32
+ * X-Agent-Session header, so any skill call counts as a heartbeat.
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const monitor = OrchestratorHeartbeatMonitorService.getInstance();
37
+ * monitor.setDependencies(sessionBackend);
38
+ * monitor.start();
39
+ * // ... later
40
+ * monitor.stop();
41
+ * ```
42
+ */
43
+ export class OrchestratorHeartbeatMonitorService {
44
+ static instance = null;
45
+ logger;
46
+ /** Interval timer handle */
47
+ checkTimer = null;
48
+ /** When the heartbeat request was sent to the orchestrator PTY */
49
+ heartbeatRequestSentAt = null;
50
+ /** Counter for heartbeat requests sent */
51
+ heartbeatRequestCount = 0;
52
+ /** Counter for auto-restarts triggered */
53
+ autoRestartCount = 0;
54
+ /** When monitoring started */
55
+ startedAt = null;
56
+ /** Session backend for writing to orchestrator PTY */
57
+ sessionBackend = null;
58
+ constructor() {
59
+ this.logger = LoggerService.getInstance().createComponentLogger('OrchestratorHeartbeatMonitor');
60
+ }
61
+ /**
62
+ * Get the singleton instance.
63
+ *
64
+ * @returns The OrchestratorHeartbeatMonitorService singleton
65
+ */
66
+ static getInstance() {
67
+ if (!OrchestratorHeartbeatMonitorService.instance) {
68
+ OrchestratorHeartbeatMonitorService.instance = new OrchestratorHeartbeatMonitorService();
69
+ }
70
+ return OrchestratorHeartbeatMonitorService.instance;
71
+ }
72
+ /**
73
+ * Reset the singleton (for testing).
74
+ */
75
+ static resetInstance() {
76
+ if (OrchestratorHeartbeatMonitorService.instance) {
77
+ OrchestratorHeartbeatMonitorService.instance.stop();
78
+ }
79
+ OrchestratorHeartbeatMonitorService.instance = null;
80
+ }
81
+ /**
82
+ * Inject the session backend dependency.
83
+ *
84
+ * @param sessionBackend - Session backend for accessing the orchestrator PTY
85
+ */
86
+ setDependencies(sessionBackend) {
87
+ this.sessionBackend = sessionBackend;
88
+ }
89
+ /**
90
+ * Start the heartbeat monitoring loop.
91
+ * Applies a startup grace period before the first check.
92
+ */
93
+ start() {
94
+ if (this.checkTimer) {
95
+ this.logger.warn('Heartbeat monitor already running');
96
+ return;
97
+ }
98
+ this.startedAt = Date.now();
99
+ this.heartbeatRequestSentAt = null;
100
+ this.heartbeatRequestCount = 0;
101
+ this.logger.info('Starting orchestrator heartbeat monitor', {
102
+ checkIntervalMs: ORCHESTRATOR_HEARTBEAT_CONSTANTS.CHECK_INTERVAL_MS,
103
+ heartbeatRequestThresholdMs: ORCHESTRATOR_HEARTBEAT_CONSTANTS.HEARTBEAT_REQUEST_THRESHOLD_MS,
104
+ restartThresholdMs: ORCHESTRATOR_HEARTBEAT_CONSTANTS.RESTART_THRESHOLD_MS,
105
+ startupGracePeriodMs: ORCHESTRATOR_HEARTBEAT_CONSTANTS.STARTUP_GRACE_PERIOD_MS,
106
+ });
107
+ this.checkTimer = setInterval(() => {
108
+ this.performCheck().catch((err) => {
109
+ this.logger.error('Heartbeat check failed', {
110
+ error: err instanceof Error ? err.message : String(err),
111
+ });
112
+ });
113
+ }, ORCHESTRATOR_HEARTBEAT_CONSTANTS.CHECK_INTERVAL_MS);
114
+ }
115
+ /**
116
+ * Stop the heartbeat monitoring loop.
117
+ */
118
+ stop() {
119
+ if (this.checkTimer) {
120
+ clearInterval(this.checkTimer);
121
+ this.checkTimer = null;
122
+ this.logger.info('Orchestrator heartbeat monitor stopped');
123
+ }
124
+ this.heartbeatRequestSentAt = null;
125
+ }
126
+ /**
127
+ * Check if the monitor is currently running.
128
+ *
129
+ * @returns True if the check loop is active
130
+ */
131
+ isRunning() {
132
+ return this.checkTimer !== null;
133
+ }
134
+ /**
135
+ * Get the current state of the heartbeat monitor.
136
+ *
137
+ * @returns Current monitor state for diagnostics
138
+ */
139
+ getState() {
140
+ return {
141
+ isRunning: this.isRunning(),
142
+ heartbeatRequestSentAt: this.heartbeatRequestSentAt,
143
+ heartbeatRequestCount: this.heartbeatRequestCount,
144
+ autoRestartCount: this.autoRestartCount,
145
+ startedAt: this.startedAt,
146
+ };
147
+ }
148
+ /**
149
+ * Perform a single heartbeat check cycle.
150
+ *
151
+ * Decision tree:
152
+ * 1. If within startup grace period → skip
153
+ * 2. If orchestrator session doesn't exist → skip (not started yet)
154
+ * 3. If recent API activity → clear any pending heartbeat request
155
+ * 4. If heartbeat request pending and RESTART_THRESHOLD_MS exceeded → auto-restart
156
+ * 5. If no activity for HEARTBEAT_REQUEST_THRESHOLD_MS → send heartbeat request
157
+ */
158
+ async performCheck() {
159
+ // Guard: startup grace period
160
+ if (this.startedAt && (Date.now() - this.startedAt) < ORCHESTRATOR_HEARTBEAT_CONSTANTS.STARTUP_GRACE_PERIOD_MS) {
161
+ return;
162
+ }
163
+ // Guard: session backend not set
164
+ if (!this.sessionBackend) {
165
+ return;
166
+ }
167
+ // Guard: orchestrator session doesn't exist (not started yet)
168
+ if (!this.sessionBackend.sessionExists(ORCHESTRATOR_SESSION_NAME)) {
169
+ this.heartbeatRequestSentAt = null;
170
+ return;
171
+ }
172
+ const activityTracker = PtyActivityTrackerService.getInstance();
173
+ const idleTimeMs = activityTracker.getIdleTimeMs(ORCHESTRATOR_SESSION_NAME);
174
+ // If recent activity detected, clear any pending heartbeat request
175
+ if (idleTimeMs < ORCHESTRATOR_HEARTBEAT_CONSTANTS.HEARTBEAT_REQUEST_THRESHOLD_MS) {
176
+ if (this.heartbeatRequestSentAt !== null) {
177
+ this.logger.info('Orchestrator responded to heartbeat request, clearing pending state');
178
+ this.heartbeatRequestSentAt = null;
179
+ }
180
+ return;
181
+ }
182
+ // If we already sent a heartbeat request, check if it's time to restart
183
+ if (this.heartbeatRequestSentAt !== null) {
184
+ const timeSinceRequest = Date.now() - this.heartbeatRequestSentAt;
185
+ if (timeSinceRequest >= ORCHESTRATOR_HEARTBEAT_CONSTANTS.RESTART_THRESHOLD_MS) {
186
+ this.logger.warn('Orchestrator did not respond to heartbeat request, triggering auto-restart', {
187
+ timeSinceRequestMs: timeSinceRequest,
188
+ idleTimeMs,
189
+ heartbeatRequestCount: this.heartbeatRequestCount,
190
+ });
191
+ this.heartbeatRequestSentAt = null;
192
+ await this.triggerAutoRestart();
193
+ }
194
+ return;
195
+ }
196
+ // No activity for HEARTBEAT_REQUEST_THRESHOLD_MS — send a heartbeat request
197
+ this.logger.info('Orchestrator idle, sending heartbeat request', {
198
+ idleTimeMs,
199
+ });
200
+ await this.sendHeartbeatRequest();
201
+ }
202
+ /**
203
+ * Send a heartbeat request message to the orchestrator PTY.
204
+ * This writes the heartbeat request directly into the orchestrator's terminal.
205
+ */
206
+ async sendHeartbeatRequest() {
207
+ if (!this.sessionBackend) {
208
+ return;
209
+ }
210
+ try {
211
+ const session = this.sessionBackend.getSession(ORCHESTRATOR_SESSION_NAME);
212
+ if (!session) {
213
+ this.logger.warn('Orchestrator session not found, cannot send heartbeat request');
214
+ return;
215
+ }
216
+ session.write(ORCHESTRATOR_HEARTBEAT_CONSTANTS.HEARTBEAT_REQUEST_MESSAGE + '\n');
217
+ this.heartbeatRequestSentAt = Date.now();
218
+ this.heartbeatRequestCount++;
219
+ this.logger.info('Heartbeat request sent to orchestrator PTY', {
220
+ heartbeatRequestCount: this.heartbeatRequestCount,
221
+ });
222
+ }
223
+ catch (err) {
224
+ this.logger.error('Failed to send heartbeat request to orchestrator', {
225
+ error: err instanceof Error ? err.message : String(err),
226
+ });
227
+ }
228
+ }
229
+ /**
230
+ * Trigger an auto-restart of the orchestrator via OrchestratorRestartService.
231
+ */
232
+ async triggerAutoRestart() {
233
+ try {
234
+ const restartService = OrchestratorRestartService.getInstance();
235
+ const success = await restartService.attemptRestart();
236
+ if (success) {
237
+ this.autoRestartCount++;
238
+ this.logger.info('Orchestrator auto-restart triggered successfully', {
239
+ autoRestartCount: this.autoRestartCount,
240
+ });
241
+ }
242
+ else {
243
+ this.logger.warn('Orchestrator auto-restart was not allowed (cooldown or concurrent restart)');
244
+ }
245
+ }
246
+ catch (err) {
247
+ this.logger.error('Failed to trigger orchestrator auto-restart', {
248
+ error: err instanceof Error ? err.message : String(err),
249
+ });
250
+ }
251
+ }
252
+ }
253
+ //# sourceMappingURL=orchestrator-heartbeat-monitor.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator-heartbeat-monitor.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pty-session-backend.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/session/pty/pty-session-backend.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAI7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACxD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAsC;IAEtD;;OAEG;IACH,OAAO,CAAC,eAAe,CAA6C;IAEpE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAkB;IAEhC;;OAEG;;IAMH;;;;;;;;;;;;;;;;;;;OAmBG;IACG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IA4C7E;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAI9C;;;;;;;;;;OAUG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9C;;;;;;;;;;OAUG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpC;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAM,GAAG,MAAM;IAShD;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASvC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASnC;;;;;;;;;;OAUG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAc7B;;;;;;;;;OASG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B;;;;;;;;;;;;;;OAcG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAyDtC;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQ1C;;;;OAIG;IACH,eAAe,IAAI,MAAM;IAIzB;;;;;;;OAOG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAgB7D;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASvC;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;CAGtE"}
1
+ {"version":3,"file":"pty-session-backend.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/session/pty/pty-session-backend.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAK7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACxD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAsC;IAEtD;;OAEG;IACH,OAAO,CAAC,eAAe,CAA6C;IAEpE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAkB;IAEhC;;OAEG;;IAMH;;;;;;;;;;;;;;;;;;;OAmBG;IACG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IA+C7E;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAI9C;;;;;;;;;;OAUG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9C;;;;;;;;;;OAUG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpC;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAM,GAAG,MAAM;IAShD;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASvC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASnC;;;;;;;;;;OAUG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAc7B;;;;;;;;;OASG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B;;;;;;;;;;;;;;OAcG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAyDtC;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQ1C;;;;OAIG;IACH,eAAe,IAAI,MAAM;IAIzB;;;;;;;OAOG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAgB7D;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASvC;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;CAGtE"}
@@ -11,6 +11,7 @@ import { PtySession } from './pty-session.js';
11
11
  import { PtyTerminalBuffer } from './pty-terminal-buffer.js';
12
12
  import { LoggerService } from '../../core/logger.service.js';
13
13
  import { PTY_CONSTANTS } from '../../../constants.js';
14
+ import { PtyActivityTrackerService } from '../../agent/pty-activity-tracker.service.js';
14
15
  /**
15
16
  * PTY Session Backend implementation.
16
17
  *
@@ -95,9 +96,12 @@ export class PtySessionBackend {
95
96
  const cols = options.cols ?? DEFAULT_TERMINAL_COLS;
96
97
  const rows = options.rows ?? DEFAULT_TERMINAL_ROWS;
97
98
  const terminalBuffer = new PtyTerminalBuffer(cols, rows);
98
- // Pipe session output to terminal buffer
99
+ // Pipe session output to terminal buffer and record activity for idle detection.
100
+ // Recording here (at session creation) ensures activity is tracked even when
101
+ // no WebSocket client is viewing the terminal UI.
99
102
  session.onData((data) => {
100
103
  terminalBuffer.write(data);
104
+ PtyActivityTrackerService.getInstance().recordActivity(name);
101
105
  });
102
106
  // Clean up on session exit
103
107
  session.onExit((code) => {
@@ -1 +1 @@
1
- {"version":3,"file":"pty-session-backend.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/session/pty/pty-session-backend.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACN,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAmB,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,OAAO,iBAAiB;IAC7B;;OAEG;IACK,QAAQ,GAA4B,IAAI,GAAG,EAAE,CAAC;IAEtD;;OAEG;IACK,eAAe,GAAmC,IAAI,GAAG,EAAE,CAAC;IAEpE;;OAEG;IACK,MAAM,CAAkB;IAEhC;;OAEG;IACH;QACC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,OAAuB;QACxD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,kBAAkB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE;YACxC,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,EAAE,OAAO,CAAC,GAAG;SAChB,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE3D,0DAA0D;QAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,qBAAqB,CAAC;QACnD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,qBAAqB,CAAC;QACnD,MAAM,cAAc,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEzD,yCAAyC;QACzC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,gFAAgF;QACjF,CAAC,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAE/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACvC,IAAI;YACJ,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI;YACJ,IAAI;SACJ,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,IAAY;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACpB,cAAc,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;OAUG;IACH,YAAY;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,IAAY,EAAE,KAAK,GAAG,GAAG;QACtC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,IAAY;QAC7B,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO,cAAc,CAAC,aAAa,EAAE,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,IAAY;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO,cAAc,CAAC,kBAAkB,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;OAUG;IACH,iBAAiB;QAChB,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACJ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACR,sDAAsD;gBACvD,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YAClD,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;SAChC,CAAC,CAAC;QAEH,oBAAoB;QACpB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,eAAe;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACxC,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QAExE,sDAAsD;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5D,oDAAoD;QACpD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,IAAI,CAAC;gBACJ,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;oBACrD,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACvD,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,gDAAgD;QAChD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAExG,iDAAiD;QACjD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC;gBACR,+BAA+B;YAChC,CAAC;YAED,IAAI,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC;gBACR,qCAAqC;YACtC,CAAC;QACF,CAAC;QAED,iCAAiC;QACjC,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5D,cAAc,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAY;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,eAAe;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,kBAAkB,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3B,IAAI,cAAc,EAAE,CAAC;YACpB,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,IAAY;QAC7B,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO,cAAc,CAAC,kBAAkB,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAY;QACrC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACD"}
1
+ {"version":3,"file":"pty-session-backend.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/session/pty/pty-session-backend.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,8 @@ export interface PersistedSessionInfo {
26
26
  role?: string;
27
27
  /** Team ID if part of a team */
28
28
  teamId?: string;
29
+ /** Member ID if this is a team member session */
30
+ memberId?: string;
29
31
  /** Environment variables */
30
32
  env?: Record<string, string>;
31
33
  /** Claude session ID for resuming conversations on restart */
@@ -85,8 +87,9 @@ export declare class SessionStatePersistence {
85
87
  * @param runtimeType - Type of runtime (claude-code, gemini-cli, codex-cli)
86
88
  * @param role - Optional role for the agent
87
89
  * @param teamId - Optional team ID
90
+ * @param memberId - Optional member ID for team member sessions
88
91
  */
89
- registerSession(name: string, options: SessionOptions, runtimeType: RuntimeType, role?: string, teamId?: string): void;
92
+ registerSession(name: string, options: SessionOptions, runtimeType: RuntimeType, role?: string, teamId?: string, memberId?: string): void;
90
93
  /**
91
94
  * Remove a session from persistence tracking.
92
95
  *
@@ -1 +1 @@
1
- {"version":3,"file":"session-state-persistence.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/session/session-state-persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-state-persistence.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/session/session-state-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAiB,MAAM,oBAAoB,CAAC;AAShE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,iCAAiC;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,QAAQ,EAAE,oBAAoB,EAAE,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,uBAAuB;IACnC,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,sDAAsD;IACtD,OAAO,CAAC,eAAe,CAAgD;IAEvE,6EAA6E;IAC7E,OAAO,CAAC,oBAAoB,CAAqB;IAEjD,sBAAsB;IACtB,OAAO,CAAC,MAAM,CAAkB;IAEhC;;;;OAIG;gBACS,QAAQ,CAAC,EAAE,MAAM;IAK7B;;;;;;;;;OASG;IACH,eAAe,CACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,WAAW,EACxB,IAAI,CAAC,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,GACf,IAAI;IAqBP;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAYrC;;;;;OAKG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;;OAKG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IAIlE;;;;;;OAMG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAe5D;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI9C;;;;;;;;;OASG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxC;;;;OAIG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAIjC;;;;OAIG;IACH,wBAAwB,IAAI,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAI7D;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAQlB;;;;;OAKG;YACW,QAAQ;IAWtB;;;;;;;;OAQG;IACG,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB1D;;;;;;;OAOG;IACG,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAkE7D;;;;;;;;;;OAUG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAcjC;;;OAGG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5C;;OAEG;IACH,aAAa,IAAI,IAAI;IAMrB;;;;OAIG;IACH,WAAW,IAAI,MAAM;IAIrB;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAcjD;AAKD;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,uBAAuB,CAKpE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD"}
@@ -61,8 +61,9 @@ export class SessionStatePersistence {
61
61
  * @param runtimeType - Type of runtime (claude-code, gemini-cli, codex-cli)
62
62
  * @param role - Optional role for the agent
63
63
  * @param teamId - Optional team ID
64
+ * @param memberId - Optional member ID for team member sessions
64
65
  */
65
- registerSession(name, options, runtimeType, role, teamId) {
66
+ registerSession(name, options, runtimeType, role, teamId, memberId) {
66
67
  this.sessionMetadata.set(name, {
67
68
  name,
68
69
  cwd: options.cwd,
@@ -71,6 +72,7 @@ export class SessionStatePersistence {
71
72
  runtimeType,
72
73
  role,
73
74
  teamId,
75
+ memberId,
74
76
  env: options.env,
75
77
  });
76
78
  this.logger.debug('Registered session for persistence', { name, runtimeType, role });