devchain-cli 0.20.0 → 0.20.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 (184) hide show
  1. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts +0 -1
  2. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts.map +1 -1
  3. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js +0 -2
  4. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js.map +1 -1
  5. package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts +114 -11
  6. package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts.map +1 -1
  7. package/dist/node_modules/@devchain/shared/schemas/export-schema.js +11 -8
  8. package/dist/node_modules/@devchain/shared/schemas/export-schema.js.map +1 -1
  9. package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
  10. package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts.map +1 -1
  11. package/dist/node_modules/@devchain/shared/tunnel-protocol.js +0 -1
  12. package/dist/node_modules/@devchain/shared/tunnel-protocol.js.map +1 -1
  13. package/dist/server/app.main.module.js +0 -2
  14. package/dist/server/app.main.module.js.map +1 -1
  15. package/dist/server/app.normal.module.js +0 -2
  16. package/dist/server/app.normal.module.js.map +1 -1
  17. package/dist/server/common/test/app-bootstrap.helper.js +1 -0
  18. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  19. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js +0 -5
  20. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js.map +1 -1
  21. package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.d.ts +1 -3
  22. package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js +1 -1
  23. package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js.map +1 -1
  24. package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js +0 -2
  25. package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js.map +1 -1
  26. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +1 -3
  27. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -1
  28. package/dist/server/modules/agent-message-delivery/dtos/delivery.types.d.ts +1 -3
  29. package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.d.ts +1 -3
  30. package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.js.map +1 -1
  31. package/dist/server/modules/agents/controllers/agents.controller.js +4 -1
  32. package/dist/server/modules/agents/controllers/agents.controller.js.map +1 -1
  33. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
  34. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.d.ts +1 -1
  35. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +0 -8
  36. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -1
  37. package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.d.ts +6 -0
  38. package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.js +111 -34
  39. package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.js.map +1 -1
  40. package/dist/server/modules/events/catalog/broadcast-registry.js +0 -21
  41. package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
  42. package/dist/server/modules/events/catalog/index.d.ts +6 -16
  43. package/dist/server/modules/events/catalog/index.js +0 -2
  44. package/dist/server/modules/events/catalog/index.js.map +1 -1
  45. package/dist/server/modules/events/catalog/session.stopped.d.ts +14 -0
  46. package/dist/server/modules/events/catalog/session.stopped.js +10 -1
  47. package/dist/server/modules/events/catalog/session.stopped.js.map +1 -1
  48. package/dist/server/modules/mcp/constants.d.ts +0 -4
  49. package/dist/server/modules/mcp/constants.js +1 -15
  50. package/dist/server/modules/mcp/constants.js.map +1 -1
  51. package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +0 -319
  52. package/dist/server/modules/mcp/dtos/mcp.dto.js +1 -100
  53. package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
  54. package/dist/server/modules/mcp/mcp-full.module.js +0 -2
  55. package/dist/server/modules/mcp/mcp-full.module.js.map +1 -1
  56. package/dist/server/modules/mcp/services/handlers/chat-context.d.ts +0 -4
  57. package/dist/server/modules/mcp/services/handlers/chat-tools.d.ts +0 -3
  58. package/dist/server/modules/mcp/services/handlers/chat-tools.js +71 -382
  59. package/dist/server/modules/mcp/services/handlers/chat-tools.js.map +1 -1
  60. package/dist/server/modules/mcp/services/mcp.service.d.ts +1 -4
  61. package/dist/server/modules/mcp/services/mcp.service.js +22 -44
  62. package/dist/server/modules/mcp/services/mcp.service.js.map +1 -1
  63. package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js +0 -3
  64. package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js.map +1 -1
  65. package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js +4 -59
  66. package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js.map +1 -1
  67. package/dist/server/modules/mcp/tool-descriptors/index.js +0 -4
  68. package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -1
  69. package/dist/server/modules/projects/controllers/projects.controller.d.ts +2 -10
  70. package/dist/server/modules/projects/helpers/project-export.d.ts +1 -5
  71. package/dist/server/modules/projects/helpers/project-runtime.helpers.d.ts +2 -5
  72. package/dist/server/modules/projects/helpers/project-runtime.helpers.js.map +1 -1
  73. package/dist/server/modules/projects/services/projects.service.d.ts +1 -5
  74. package/dist/server/modules/projects/template-codec/codecs/subscribers.codec.d.ts +3 -10
  75. package/dist/server/modules/projects/template-codec/codecs/subscribers.codec.js.map +1 -1
  76. package/dist/server/modules/registry/controllers/templates.controller.d.ts +12 -1
  77. package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.js +0 -1
  78. package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.js.map +1 -1
  79. package/dist/server/modules/session-reader/data/pricing.json +1 -1
  80. package/dist/server/modules/sessions/controllers/sessions.controller.js +4 -1
  81. package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
  82. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js +8 -2
  83. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js.map +1 -1
  84. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +2 -0
  85. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +2 -0
  86. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
  87. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +3 -5
  88. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
  89. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +3 -5
  90. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
  91. package/dist/server/modules/sessions/services/sessions.service.d.ts +2 -2
  92. package/dist/server/modules/sessions/services/sessions.service.js +70 -97
  93. package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
  94. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +0 -1
  95. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  96. package/dist/server/modules/storage/local/delegates/review.delegate.d.ts +0 -1
  97. package/dist/server/modules/storage/local/delegates/review.delegate.js +0 -20
  98. package/dist/server/modules/storage/local/delegates/review.delegate.js.map +1 -1
  99. package/dist/server/modules/storage/local/local-storage.service.d.ts +0 -1
  100. package/dist/server/modules/storage/local/local-storage.service.js +0 -3
  101. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  102. package/dist/server/modules/storage/models/domain.models.d.ts +7 -2
  103. package/dist/server/modules/subscribers/actions/restart-agent.action.js +4 -1
  104. package/dist/server/modules/subscribers/actions/restart-agent.action.js.map +1 -1
  105. package/dist/server/modules/subscribers/dtos/subscriber.dto.d.ts +227 -19
  106. package/dist/server/modules/subscribers/dtos/subscriber.dto.js +10 -5
  107. package/dist/server/modules/subscribers/dtos/subscriber.dto.js.map +1 -1
  108. package/dist/server/modules/subscribers/events/event-fields-catalog.js +6 -1
  109. package/dist/server/modules/subscribers/events/event-fields-catalog.js.map +1 -1
  110. package/dist/server/modules/subscribers/services/subscriber-executor.service.d.ts +3 -0
  111. package/dist/server/modules/subscribers/services/subscriber-executor.service.js +44 -0
  112. package/dist/server/modules/subscribers/services/subscriber-executor.service.js.map +1 -1
  113. package/dist/server/modules/teams/services/teams.service.js +4 -1
  114. package/dist/server/modules/teams/services/teams.service.js.map +1 -1
  115. package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.js +3 -1
  116. package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.js.map +1 -1
  117. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +0 -6
  118. package/dist/server/modules/terminal/gateways/terminal.gateway.js +1 -33
  119. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  120. package/dist/server/modules/terminal/services/terminal-io/lifecycle.d.ts +2 -1
  121. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +38 -0
  122. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
  123. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +13 -2
  124. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +141 -25
  125. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
  126. package/dist/server/modules/terminal/services/terminal-io/types.d.ts +15 -0
  127. package/dist/server/templates/teams-dev.json +157 -104
  128. package/dist/server/tsconfig.tsbuildinfo +1 -1
  129. package/dist/server/ui/assets/{ReviewDetailPage-Cf5ED0R0.js → ReviewDetailPage-BZoAe0G2.js} +1 -1
  130. package/dist/server/ui/assets/{ReviewsPage-BfP9P3QO.js → ReviewsPage-J3XZDw7k.js} +1 -1
  131. package/dist/server/ui/assets/index-CxmSxl5f.css +32 -0
  132. package/dist/server/ui/assets/index-DoKUmi74.js +1153 -0
  133. package/dist/server/ui/assets/{useReviewSubscription-QJSfZ3FX.js → useReviewSubscription-CNUx-AWQ.js} +19 -19
  134. package/dist/server/ui/index.html +2 -2
  135. package/dist/templates/teams-dev.json +157 -104
  136. package/package.json +8 -1
  137. package/dist/drizzle/PHASE2_MIGRATION_GUIDE.md +0 -109
  138. package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.d.ts +0 -22
  139. package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js +0 -64
  140. package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js.map +0 -1
  141. package/dist/server/modules/chat/chat.module.d.ts +0 -2
  142. package/dist/server/modules/chat/chat.module.js +0 -38
  143. package/dist/server/modules/chat/chat.module.js.map +0 -1
  144. package/dist/server/modules/chat/controllers/chat-settings.controller.d.ts +0 -8
  145. package/dist/server/modules/chat/controllers/chat-settings.controller.js +0 -67
  146. package/dist/server/modules/chat/controllers/chat-settings.controller.js.map +0 -1
  147. package/dist/server/modules/chat/controllers/chat.controller.d.ts +0 -15
  148. package/dist/server/modules/chat/controllers/chat.controller.js +0 -153
  149. package/dist/server/modules/chat/controllers/chat.controller.js.map +0 -1
  150. package/dist/server/modules/chat/dtos/chat-settings.dto.d.ts +0 -31
  151. package/dist/server/modules/chat/dtos/chat-settings.dto.js +0 -17
  152. package/dist/server/modules/chat/dtos/chat-settings.dto.js.map +0 -1
  153. package/dist/server/modules/chat/dtos/chat.dto.d.ts +0 -309
  154. package/dist/server/modules/chat/dtos/chat.dto.js +0 -80
  155. package/dist/server/modules/chat/dtos/chat.dto.js.map +0 -1
  156. package/dist/server/modules/chat/services/chat-session-invite.service.d.ts +0 -16
  157. package/dist/server/modules/chat/services/chat-session-invite.service.js +0 -200
  158. package/dist/server/modules/chat/services/chat-session-invite.service.js.map +0 -1
  159. package/dist/server/modules/chat/services/chat-settings.service.d.ts +0 -12
  160. package/dist/server/modules/chat/services/chat-settings.service.js +0 -123
  161. package/dist/server/modules/chat/services/chat-settings.service.js.map +0 -1
  162. package/dist/server/modules/chat/services/chat.service.d.ts +0 -47
  163. package/dist/server/modules/chat/services/chat.service.js +0 -693
  164. package/dist/server/modules/chat/services/chat.service.js.map +0 -1
  165. package/dist/server/modules/chat/services/invite-template.util.d.ts +0 -17
  166. package/dist/server/modules/chat/services/invite-template.util.js +0 -70
  167. package/dist/server/modules/chat/services/invite-template.util.js.map +0 -1
  168. package/dist/server/modules/events/catalog/chat.message.read.d.ts +0 -21
  169. package/dist/server/modules/events/catalog/chat.message.read.js +0 -14
  170. package/dist/server/modules/events/catalog/chat.message.read.js.map +0 -1
  171. package/dist/server/modules/mcp/services/handlers/activity-context.d.ts +0 -6
  172. package/dist/server/modules/mcp/services/handlers/activity-context.js +0 -3
  173. package/dist/server/modules/mcp/services/handlers/activity-context.js.map +0 -1
  174. package/dist/server/modules/mcp/services/handlers/activity-tools.d.ts +0 -4
  175. package/dist/server/modules/mcp/services/handlers/activity-tools.js +0 -179
  176. package/dist/server/modules/mcp/services/handlers/activity-tools.js.map +0 -1
  177. package/dist/server/modules/mcp/tool-descriptors/activity.bindings.d.ts +0 -2
  178. package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js +0 -9
  179. package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js.map +0 -1
  180. package/dist/server/modules/mcp/tool-descriptors/activity.metadata.d.ts +0 -2
  181. package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js +0 -49
  182. package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js.map +0 -1
  183. package/dist/server/ui/assets/index-B5ZC_DQU.css +0 -32
  184. package/dist/server/ui/assets/index-DptgqA22.js +0 -1156
@@ -58,17 +58,22 @@ let TerminalIOService = class TerminalIOService {
58
58
  executor;
59
59
  eventsService;
60
60
  gap;
61
- healthCheckIntervals = new Map();
61
+ healthMonitors = new Map();
62
+ lifecycleStates = new Map();
63
+ nextMonitorToken = 0;
64
+ destroyed = false;
62
65
  constructor(executor, eventsService) {
63
66
  this.executor = executor;
64
67
  this.eventsService = eventsService;
65
68
  this.gap = new InMemorySendGap();
66
69
  }
67
70
  onModuleDestroy() {
68
- for (const interval of this.healthCheckIntervals.values()) {
69
- clearInterval(interval);
71
+ this.destroyed = true;
72
+ for (const monitor of this.healthMonitors.values()) {
73
+ clearInterval(monitor.interval);
70
74
  }
71
- this.healthCheckIntervals.clear();
75
+ this.healthMonitors.clear();
76
+ this.lifecycleStates.clear();
72
77
  this.gap.clear();
73
78
  }
74
79
  async createSession(name, command, options) {
@@ -77,6 +82,22 @@ let TerminalIOService = class TerminalIOService {
77
82
  async destroySession(target) {
78
83
  return lifecycle.destroySession(this.executor, target);
79
84
  }
85
+ async destroyExpectedSession(target, policy) {
86
+ return this.runSerializedLifecycle(target.name, async (state) => {
87
+ const retiredMonitor = this.healthMonitors.get(target.name);
88
+ state.fence += 1;
89
+ if (retiredMonitor)
90
+ this.retireMonitor(retiredMonitor);
91
+ const result = await lifecycle.destroyExpectedSession(this.executor, target);
92
+ if (result.outcome === 'unknown-error' &&
93
+ policy.onUnknownError === 'rearm' &&
94
+ !this.destroyed &&
95
+ !this.healthMonitors.has(target.name)) {
96
+ this.armHealthCheck(target.name, policy.sessionId, policy.intervalMs ?? retiredMonitor?.intervalMs ?? 5000, state);
97
+ }
98
+ return result;
99
+ });
100
+ }
80
101
  async listSessions() {
81
102
  return lifecycle.listSessions(this.executor);
82
103
  }
@@ -157,29 +178,124 @@ let TerminalIOService = class TerminalIOService {
157
178
  return monitoring.healthCheck(this.executor, target);
158
179
  }
159
180
  startHealthCheck(sessionName, sessionId, intervalMs = 5000) {
160
- this.stopHealthCheck(sessionName);
161
- const interval = setInterval(async () => {
162
- try {
163
- const result = await this.healthCheck({ name: sessionName });
164
- if (!result.alive) {
165
- logger.warn({ sessionName, sessionId }, 'Tmux session lost - emitting crashed event');
166
- await this.eventsService.publish('session.crashed', { sessionId, sessionName });
167
- this.stopHealthCheck(sessionName);
168
- }
169
- }
170
- catch (error) {
171
- logger.error({ sessionName, sessionId, error: String(error) }, 'Health check failed');
172
- }
173
- }, intervalMs);
174
- this.healthCheckIntervals.set(sessionName, interval);
175
- logger.info({ sessionName, intervalMs }, 'Started health check');
181
+ const existing = this.healthMonitors.get(sessionName);
182
+ if (existing)
183
+ this.retireMonitor(existing);
184
+ this.armHealthCheck(sessionName, sessionId, intervalMs, this.getLifecycleState(sessionName));
176
185
  }
177
186
  stopHealthCheck(sessionName) {
178
- const interval = this.healthCheckIntervals.get(sessionName);
179
- if (interval) {
180
- clearInterval(interval);
181
- this.healthCheckIntervals.delete(sessionName);
182
- logger.info({ sessionName }, 'Stopped health check');
187
+ const monitor = this.healthMonitors.get(sessionName);
188
+ if (monitor)
189
+ this.retireMonitor(monitor);
190
+ const state = this.lifecycleStates.get(sessionName);
191
+ if (state)
192
+ this.maybeDeleteLifecycleState(sessionName, state);
193
+ }
194
+ armHealthCheck(sessionName, sessionId, intervalMs, state) {
195
+ const token = ++this.nextMonitorToken;
196
+ const monitor = {
197
+ token,
198
+ sessionName,
199
+ sessionId,
200
+ intervalMs,
201
+ fence: state.fence,
202
+ interval: setInterval(() => {
203
+ void this.runHealthCheck(monitor).catch((error) => {
204
+ logger.error({ sessionName, sessionId, token, fence: monitor.fence, error: String(error) }, 'Health check or crash publication failed');
205
+ });
206
+ }, intervalMs),
207
+ };
208
+ monitor.interval.unref?.();
209
+ this.healthMonitors.set(sessionName, monitor);
210
+ logger.info({ sessionName, sessionId, token, fence: state.fence, intervalMs }, 'Started health check');
211
+ }
212
+ async runHealthCheck(monitor) {
213
+ const state = this.lifecycleStates.get(monitor.sessionName);
214
+ if (!state || !this.isActiveMonitor(monitor, state))
215
+ return;
216
+ state.observers += 1;
217
+ try {
218
+ const result = await this.healthCheck({ name: monitor.sessionName });
219
+ if (result.alive || !this.isActiveMonitor(monitor, state))
220
+ return;
221
+ await this.runSerializedLifecycle(monitor.sessionName, async (serializedState) => {
222
+ if (!this.isActiveMonitor(monitor, serializedState))
223
+ return;
224
+ this.retireMonitor(monitor);
225
+ logger.warn({
226
+ sessionName: monitor.sessionName,
227
+ sessionId: monitor.sessionId,
228
+ token: monitor.token,
229
+ fence: monitor.fence,
230
+ }, 'Tmux session lost - publishing crashed event');
231
+ try {
232
+ await this.eventsService.publish('session.crashed', {
233
+ sessionId: monitor.sessionId,
234
+ sessionName: monitor.sessionName,
235
+ });
236
+ }
237
+ catch (error) {
238
+ if (!this.destroyed &&
239
+ serializedState.fence === monitor.fence &&
240
+ !this.healthMonitors.has(monitor.sessionName)) {
241
+ this.armHealthCheck(monitor.sessionName, monitor.sessionId, monitor.intervalMs, serializedState);
242
+ }
243
+ throw error;
244
+ }
245
+ });
246
+ }
247
+ finally {
248
+ state.observers -= 1;
249
+ this.maybeDeleteLifecycleState(monitor.sessionName, state);
250
+ }
251
+ }
252
+ isActiveMonitor(monitor, state) {
253
+ return (this.healthMonitors.get(monitor.sessionName) === monitor && state.fence === monitor.fence);
254
+ }
255
+ retireMonitor(monitor) {
256
+ clearInterval(monitor.interval);
257
+ if (this.healthMonitors.get(monitor.sessionName) !== monitor)
258
+ return;
259
+ this.healthMonitors.delete(monitor.sessionName);
260
+ logger.info({
261
+ sessionName: monitor.sessionName,
262
+ sessionId: monitor.sessionId,
263
+ token: monitor.token,
264
+ fence: monitor.fence,
265
+ }, 'Stopped health check');
266
+ }
267
+ getLifecycleState(sessionName) {
268
+ const existing = this.lifecycleStates.get(sessionName);
269
+ if (existing)
270
+ return existing;
271
+ const state = {
272
+ fence: 0,
273
+ tail: Promise.resolve(),
274
+ pendingOperations: 0,
275
+ observers: 0,
276
+ };
277
+ this.lifecycleStates.set(sessionName, state);
278
+ return state;
279
+ }
280
+ async runSerializedLifecycle(sessionName, operation) {
281
+ const state = this.getLifecycleState(sessionName);
282
+ state.pendingOperations += 1;
283
+ const result = state.tail.then(() => operation(state));
284
+ state.tail = result.then(() => undefined, () => undefined);
285
+ try {
286
+ return await result;
287
+ }
288
+ finally {
289
+ state.pendingOperations -= 1;
290
+ this.maybeDeleteLifecycleState(sessionName, state);
291
+ }
292
+ }
293
+ maybeDeleteLifecycleState(sessionName, state) {
294
+ if (this.lifecycleStates.get(sessionName) === state &&
295
+ state.pendingOperations === 0 &&
296
+ state.observers === 0 &&
297
+ !this.healthMonitors.has(sessionName)) {
298
+ this.lifecycleStates.delete(sessionName);
183
299
  }
184
300
  }
185
301
  async deliver(target, text, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-io.service.js","sourceRoot":"","sources":["../../../../../src/modules/terminal/services/terminal-io/terminal-io.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-io.service.js","sourceRoot":"","sources":["../../../../../src/modules/terminal/services/terminal-io/terminal-io.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,21 @@
1
1
  export interface SessionTarget {
2
2
  readonly name: string;
3
3
  }
4
+ export type ExpectedSessionDestroyResult = {
5
+ readonly outcome: 'destroyed';
6
+ } | {
7
+ readonly outcome: 'known-absent';
8
+ } | {
9
+ readonly outcome: 'unknown-error';
10
+ readonly error: Error;
11
+ };
12
+ export type ExpectedSessionDestroyPolicy = {
13
+ readonly onUnknownError: 'rearm';
14
+ readonly sessionId: string;
15
+ readonly intervalMs?: number;
16
+ } | {
17
+ readonly onUnknownError: 'retire';
18
+ };
4
19
  export interface CreateSessionOptions {
5
20
  readonly cwd: string;
6
21
  readonly env?: Readonly<Record<string, string>>;