crewly 1.4.78 → 1.4.80

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 (153) hide show
  1. package/config/skills/agent/core/heartbeat/execute.sh +3 -24
  2. package/config/skills/agent/core/report-progress/execute.sh +0 -2
  3. package/config/skills/agent/core/report-status/execute.sh +6 -0
  4. package/config/skills/orchestrator/get-agent-status/execute.sh +10 -28
  5. package/config/sops/developer/git-workflow.md +3 -48
  6. package/dist/backend/backend/src/constants.d.ts +15 -19
  7. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  8. package/dist/backend/backend/src/constants.js +15 -35
  9. package/dist/backend/backend/src/constants.js.map +1 -1
  10. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  11. package/dist/backend/backend/src/controllers/chat/chat.controller.js +2 -11
  12. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  13. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.d.ts.map +1 -1
  14. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js +25 -0
  15. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js.map +1 -1
  16. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  17. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +2 -3
  18. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  19. package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts.map +1 -1
  20. package/dist/backend/backend/src/controllers/cloud/relay.controller.js +1 -12
  21. package/dist/backend/backend/src/controllers/cloud/relay.controller.js.map +1 -1
  22. package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts.map +1 -1
  23. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js +1 -4
  24. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js.map +1 -1
  25. package/dist/backend/backend/src/controllers/project/project.controller.d.ts.map +1 -1
  26. package/dist/backend/backend/src/controllers/project/project.controller.js +3 -9
  27. package/dist/backend/backend/src/controllers/project/project.controller.js.map +1 -1
  28. package/dist/backend/backend/src/controllers/system/system.controller.d.ts.map +1 -1
  29. package/dist/backend/backend/src/controllers/system/system.controller.js +1 -3
  30. package/dist/backend/backend/src/controllers/system/system.controller.js.map +1 -1
  31. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  32. package/dist/backend/backend/src/controllers/team/team.controller.js +29 -39
  33. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  34. package/dist/backend/backend/src/index.d.ts.map +1 -1
  35. package/dist/backend/backend/src/index.js +54 -105
  36. package/dist/backend/backend/src/index.js.map +1 -1
  37. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts +9 -17
  38. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts.map +1 -1
  39. package/dist/backend/backend/src/middleware/require-auth.middleware.js +10 -60
  40. package/dist/backend/backend/src/middleware/require-auth.middleware.js.map +1 -1
  41. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  42. package/dist/backend/backend/src/routes/api.routes.js +0 -27
  43. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  44. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
  45. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +1 -24
  46. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
  47. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  48. package/dist/backend/backend/src/services/agent/agent-registration.service.js +7 -5
  49. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  50. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts +4 -13
  51. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
  52. package/dist/backend/backend/src/services/agent/claude-runtime.service.js +7 -37
  53. package/dist/backend/backend/src/services/agent/claude-runtime.service.js.map +1 -1
  54. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +0 -18
  55. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
  56. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +5 -79
  57. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
  58. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  59. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +0 -7
  60. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  61. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  62. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +3 -24
  63. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  64. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts +1 -1
  65. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  66. package/dist/backend/backend/src/services/ai/prompt-builder.service.js +48 -5
  67. package/dist/backend/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  68. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
  69. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js +8 -2
  70. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
  71. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +10 -2
  72. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  73. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +48 -29
  74. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  75. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +2 -2
  76. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  77. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js +1 -1
  78. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  79. package/dist/backend/backend/src/services/core/config.service.js +1 -1
  80. package/dist/backend/backend/src/services/core/storage.service.d.ts.map +1 -1
  81. package/dist/backend/backend/src/services/core/storage.service.js +0 -15
  82. package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
  83. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts +2 -0
  84. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  85. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +31 -1
  86. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  87. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts +1 -1
  88. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts.map +1 -1
  89. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +2 -9
  90. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  91. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +32 -47
  92. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  93. package/dist/backend/backend/src/services/messaging/response-router.service.d.ts +3 -21
  94. package/dist/backend/backend/src/services/messaging/response-router.service.d.ts.map +1 -1
  95. package/dist/backend/backend/src/services/messaging/response-router.service.js +5 -68
  96. package/dist/backend/backend/src/services/messaging/response-router.service.js.map +1 -1
  97. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +1 -3
  99. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  100. package/dist/backend/backend/src/services/monitoring/monitoring.service.d.ts.map +1 -1
  101. package/dist/backend/backend/src/services/monitoring/monitoring.service.js +6 -12
  102. package/dist/backend/backend/src/services/monitoring/monitoring.service.js.map +1 -1
  103. package/dist/backend/backend/src/services/monitoring/teams-json-watcher.service.d.ts.map +1 -1
  104. package/dist/backend/backend/src/services/monitoring/teams-json-watcher.service.js +0 -17
  105. package/dist/backend/backend/src/services/monitoring/teams-json-watcher.service.js.map +1 -1
  106. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
  107. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js +0 -31
  108. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
  109. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts +0 -8
  110. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts.map +1 -1
  111. package/dist/backend/backend/src/services/project/task-tracking.service.js +0 -29
  112. package/dist/backend/backend/src/services/project/task-tracking.service.js.map +1 -1
  113. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +2 -2
  114. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  115. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts +0 -9
  116. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
  117. package/dist/backend/backend/src/services/session/pty/pty-session.js +0 -61
  118. package/dist/backend/backend/src/services/session/pty/pty-session.js.map +1 -1
  119. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  120. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +52 -84
  121. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  122. package/dist/backend/backend/src/services/slack/slack.service.d.ts +15 -0
  123. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  124. package/dist/backend/backend/src/services/slack/slack.service.js +57 -10
  125. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  126. package/dist/backend/backend/src/services/workflow/cron-task.service.d.ts +82 -46
  127. package/dist/backend/backend/src/services/workflow/cron-task.service.d.ts.map +1 -1
  128. package/dist/backend/backend/src/services/workflow/cron-task.service.js +160 -185
  129. package/dist/backend/backend/src/services/workflow/cron-task.service.js.map +1 -1
  130. package/dist/backend/backend/src/types/event-bus.types.d.ts +1 -1
  131. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  132. package/dist/backend/backend/src/types/event-bus.types.js +1 -1
  133. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  134. package/dist/backend/backend/src/types/task-tracking.types.d.ts +1 -1
  135. package/dist/backend/backend/src/types/task-tracking.types.d.ts.map +1 -1
  136. package/dist/backend/backend/src/types/task-tracking.types.js.map +1 -1
  137. package/dist/backend/backend/src/utils/file-io.utils.d.ts.map +1 -1
  138. package/dist/backend/backend/src/utils/file-io.utils.js +1 -14
  139. package/dist/backend/backend/src/utils/file-io.utils.js.map +1 -1
  140. package/dist/cli/backend/src/constants.d.ts +15 -19
  141. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  142. package/dist/cli/backend/src/constants.js +15 -35
  143. package/dist/cli/backend/src/constants.js.map +1 -1
  144. package/dist/cli/backend/src/services/core/config.service.js +1 -1
  145. package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -1
  146. package/dist/cli/backend/src/services/core/storage.service.js +0 -15
  147. package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
  148. package/dist/cli/backend/src/utils/file-io.utils.d.ts.map +1 -1
  149. package/dist/cli/backend/src/utils/file-io.utils.js +1 -14
  150. package/dist/cli/backend/src/utils/file-io.utils.js.map +1 -1
  151. package/frontend/dist/assets/{index-0837baf4.js → index-e830dc67.js} +78 -78
  152. package/frontend/dist/index.html +1 -1
  153. package/package.json +1 -1
@@ -32,6 +32,10 @@ export class SlackService extends EventEmitter {
32
32
  messagesReceived: 0,
33
33
  };
34
34
  conversationContexts = new Map();
35
+ /** Cached Bolt App constructor from the first successful dynamic import */
36
+ cachedAppConstructor = null;
37
+ /** Cached Bolt LogLevel enum from the first successful dynamic import */
38
+ cachedLogLevelEnum = null;
35
39
  /**
36
40
  * Message deduplication tracker.
37
41
  * Maps a fingerprint (channelId:threadTs:textHash) to the timestamp it was sent.
@@ -63,10 +67,14 @@ export class SlackService extends EventEmitter {
63
67
  this.intentionalDisconnect = false;
64
68
  this.reconnectAttempts = 0;
65
69
  try {
66
- // Dynamic import of @slack/bolt (CJS module requires default import handling)
70
+ // Dynamic import of @slack/bolt (CJS module requires default import handling).
71
+ // Cache the constructor and LogLevel on first import for reuse in reconnect.
67
72
  const boltModule = await import('@slack/bolt');
68
- const App = boltModule.App ?? boltModule.default?.App;
69
- const LogLevel = boltModule.LogLevel ?? boltModule.default?.LogLevel;
73
+ const defaultExport = boltModule.default;
74
+ const App = (boltModule.App ?? defaultExport?.App);
75
+ const LogLevel = (boltModule.LogLevel ?? defaultExport?.LogLevel);
76
+ this.cachedAppConstructor = App;
77
+ this.cachedLogLevelEnum = LogLevel ?? null;
70
78
  this.app = new App({
71
79
  token: config.botToken,
72
80
  appToken: config.appToken,
@@ -366,6 +374,10 @@ export class SlackService extends EventEmitter {
366
374
  return;
367
375
  }
368
376
  try {
377
+ // Guard: cached App constructor must be available from initialize()
378
+ if (!this.cachedAppConstructor) {
379
+ throw new Error('App constructor not cached — initialize() must be called before reconnect');
380
+ }
369
381
  // Tear down existing app
370
382
  if (this.app) {
371
383
  try {
@@ -377,10 +389,9 @@ export class SlackService extends EventEmitter {
377
389
  this.app = null;
378
390
  this.client = null;
379
391
  }
380
- // Re-initialize
381
- const boltModule = await import('@slack/bolt');
382
- const App = boltModule.App ?? boltModule.default?.App;
383
- const LogLevel = boltModule.LogLevel ?? boltModule.default?.LogLevel;
392
+ // Re-initialize using cached constructor (avoids stale dynamic import issues)
393
+ const App = this.cachedAppConstructor;
394
+ const LogLevel = this.cachedLogLevelEnum;
384
395
  this.app = new App({
385
396
  token: this.config.botToken,
386
397
  appToken: this.config.appToken,
@@ -403,11 +414,21 @@ export class SlackService extends EventEmitter {
403
414
  }
404
415
  catch (error) {
405
416
  this.reconnecting = false;
406
- this.status.lastError = `Reconnect failed: ${error instanceof Error ? error.message : String(error)}`;
417
+ const errorMessage = error instanceof Error ? error.message : String(error);
418
+ this.status.lastError = `Reconnect failed: ${errorMessage}`;
407
419
  this.status.lastErrorAt = new Date().toISOString();
408
- this.logger.error('Reconnection attempt failed', {
420
+ // Classify error: fatal errors stop the loop, transient errors retry
421
+ if (this.isFatalReconnectError(error)) {
422
+ this.logger.error('Fatal reconnection error — stopping retry loop', {
423
+ attempt: this.reconnectAttempts,
424
+ error: errorMessage,
425
+ });
426
+ this.emit('error', error instanceof Error ? error : new Error(errorMessage));
427
+ return;
428
+ }
429
+ this.logger.error('Transient reconnection error — will retry', {
409
430
  attempt: this.reconnectAttempts,
410
- error: error instanceof Error ? error.message : String(error),
431
+ error: errorMessage,
411
432
  });
412
433
  // Schedule next attempt — the health check will also retry if this doesn't fire
413
434
  if (!this.intentionalDisconnect) {
@@ -415,6 +436,32 @@ export class SlackService extends EventEmitter {
415
436
  }
416
437
  }
417
438
  }
439
+ /**
440
+ * Classify whether a reconnection error is fatal (non-recoverable)
441
+ * or transient (may succeed on retry).
442
+ *
443
+ * Fatal errors: missing constructor, invalid config, auth errors.
444
+ * Transient errors: network timeouts, temporary server errors.
445
+ *
446
+ * @param error - The error caught during reconnection
447
+ * @returns True if the error is fatal and retrying would be futile
448
+ */
449
+ isFatalReconnectError(error) {
450
+ const message = error instanceof Error ? error.message : String(error);
451
+ const lowerMessage = message.toLowerCase();
452
+ /** Patterns that indicate a non-recoverable configuration or code error */
453
+ const fatalPatterns = [
454
+ 'not a constructor',
455
+ 'is not a function',
456
+ 'constructor not cached',
457
+ 'invalid_auth',
458
+ 'token_revoked',
459
+ 'account_inactive',
460
+ 'missing required',
461
+ 'config',
462
+ ];
463
+ return fatalPatterns.some(pattern => lowerMessage.includes(pattern));
464
+ }
418
465
  /**
419
466
  * Send a message to Slack with content-based deduplication.
420
467
  *
@@ -1 +1 @@
1
- {"version":3,"file":"slack.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/slack/slack.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/slack/slack.service.ts"],"names":[],"mappings":"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"}
@@ -10,22 +10,76 @@
10
10
  * @module services/workflow/cron-task.service
11
11
  */
12
12
  import type { CronTask, CreateCronTaskRequest, UpdateCronTaskRequest } from '../../types/cron-task.types.js';
13
+ /**
14
+ * Extract date/time parts from a Date in a specific IANA timezone.
15
+ *
16
+ * Uses Intl.DateTimeFormat to convert the UTC instant into the target
17
+ * timezone, then extracts numeric minute, hour, dayOfWeek, dayOfMonth,
18
+ * and month fields.
19
+ *
20
+ * @param date - The Date object (represents a UTC instant)
21
+ * @param tz - IANA timezone string (e.g. "America/New_York", "Asia/Shanghai")
22
+ * @returns Object with minute, hour, dayOfWeek (0=Sun), dayOfMonth, month (1-12)
23
+ */
24
+ export declare function getDatePartsInTimezone(date: Date, tz: string): {
25
+ minute: number;
26
+ hour: number;
27
+ dayOfWeek: number;
28
+ dayOfMonth: number;
29
+ month: number;
30
+ };
31
+ /**
32
+ * Parse a single cron field spec into a set of allowed values.
33
+ * Supports: `*`, single number, ranges (`1-5`), lists (`1,3,5`),
34
+ * and step values (`*\/5`, `10-30/5`).
35
+ *
36
+ * @param spec - The cron field string (e.g. "*", "5", "1-5", "1,3,5", "*\/10")
37
+ * @param min - Minimum allowed value for this field (inclusive)
38
+ * @param max - Maximum allowed value for this field (inclusive)
39
+ * @returns Set of matching integer values, or null for wildcard (match any)
40
+ */
41
+ export declare function parseCronField(spec: string, min: number, max: number): Set<number> | null;
13
42
  /**
14
43
  * Parse a cron expression and calculate the next run time.
15
44
  * Supports standard 5-field cron: minute hour day-of-month month day-of-week.
45
+ * Each field supports: `*`, numbers, ranges (`1-5`), lists (`1,3,5`),
46
+ * and step values (`*\/5`).
16
47
  *
17
- * All time matching is performed in the given timezone (#268), ensuring cron
18
- * expressions like "45 8 * * 1-5" with timezone "Asia/Shanghai" fire at
19
- * 08:45 CST, not 08:45 UTC.
48
+ * All field matching is done in the specified timezone so that a cron like
49
+ * "0 9 * * *" in Asia/Shanghai fires at 09:00 Shanghai time regardless of
50
+ * the server's local timezone.
20
51
  *
21
52
  * @param cronExpression - Standard 5-field cron expression
22
- * @param timezone - IANA timezone (e.g. 'Asia/Shanghai', 'America/New_York')
53
+ * @param timezone - IANA timezone (e.g. "UTC", "America/New_York")
23
54
  * @param after - Calculate next run after this date (defaults to now)
24
- * @returns ISO string of next run time (UTC)
55
+ * @returns ISO string of next run time (always UTC)
25
56
  */
26
57
  export declare function getNextRunTime(cronExpression: string, timezone: string, after?: Date): string;
58
+ /**
59
+ * Callback type for checking whether an agent is online.
60
+ * Should return true if the agent is reachable and can receive tasks.
61
+ *
62
+ * @param sessionName - The agent's PTY session name
63
+ * @param teamId - The team ID the agent belongs to
64
+ * @returns True if the agent is online and ready
65
+ */
66
+ export type AgentStatusCallback = (sessionName: string, teamId: string) => Promise<boolean>;
67
+ /**
68
+ * Callback type for auto-starting an offline agent.
69
+ *
70
+ * @param sessionName - The agent's PTY session name
71
+ * @param teamId - The team ID the agent belongs to
72
+ * @returns True if the agent was successfully started
73
+ */
74
+ export type AgentStartCallback = (sessionName: string, teamId: string) => Promise<boolean>;
27
75
  /**
28
76
  * Service for managing cron tasks.
77
+ *
78
+ * Lifecycle:
79
+ * 1. Get singleton via `getInstance()`
80
+ * 2. Wire callbacks: `setExecutionCallback()`, `setAgentStatusCallback()`, `setAgentStartCallback()`
81
+ * 3. Call `start()` to begin the evaluation loop
82
+ * 4. On startup, call `recalculateAllNextRunTimes()` to self-heal stale values
29
83
  */
30
84
  export declare class CronTaskService {
31
85
  private static instance;
@@ -52,33 +106,23 @@ export declare class CronTaskService {
52
106
  */
53
107
  setExecutionCallback(callback: (task: CronTask) => Promise<void>): void;
54
108
  /**
55
- * Set the callback to check whether a target agent is online.
56
- *
57
- * @param callback - Returns true if the agent is online/active
58
- */
59
- setAgentStatusCallback(callback: (sessionName: string) => Promise<boolean>): void;
60
- /**
61
- * Set the callback to auto-start an offline agent before dispatching a cron task.
109
+ * Set the callback for checking agent online status.
110
+ * Called before executing a task to verify the target agent is reachable.
111
+ * Should treat both 'active' and 'started' states as online.
62
112
  *
63
- * @param callback - Attempts to start the agent, returns true on success
113
+ * @param callback - Async function returning true if agent is online
64
114
  */
65
- setAgentStartCallback(callback: (sessionName: string, teamId: string) => Promise<boolean>): void;
115
+ setAgentStatusCallback(callback: AgentStatusCallback): void;
66
116
  /**
67
- * Recalculate nextRunAt for all enabled tasks using their stored timezone.
68
- *
69
- * On backend startup, existing tasks may have stale nextRunAt values computed
70
- * with a different server timezone (e.g. 12h off for Asia/Shanghai vs EDT).
71
- * This self-heal step ensures every task's nextRunAt is correct for its timezone.
117
+ * Set the callback for auto-starting an offline agent.
118
+ * Called when a cron task fires but the target agent is offline.
72
119
  *
73
- * @returns Number of tasks whose nextRunAt was updated
120
+ * @param callback - Async function that starts an agent, returns true on success
74
121
  */
75
- recalculateAllNextRunTimes(): Promise<number>;
122
+ setAgentStartCallback(callback: AgentStartCallback): void;
76
123
  /**
77
124
  * Start the cron task evaluation loop.
78
125
  * Checks every minute for tasks whose nextRunAt has passed.
79
- *
80
- * On startup, recalculates nextRunAt for all tasks to self-heal stale
81
- * timezone-dependent values (#286).
82
126
  */
83
127
  start(): void;
84
128
  /**
@@ -89,6 +133,16 @@ export declare class CronTaskService {
89
133
  * Whether the service is running.
90
134
  */
91
135
  isRunning(): boolean;
136
+ /**
137
+ * Recalculate nextRunAt for all enabled tasks using the stored timezone.
138
+ * This self-heals stale values from older versions that computed nextRunAt
139
+ * in the server's local timezone instead of the task's specified timezone.
140
+ *
141
+ * Should be called once on backend startup, before start().
142
+ *
143
+ * @returns Number of tasks whose nextRunAt was updated
144
+ */
145
+ recalculateAllNextRunTimes(): Promise<number>;
92
146
  /**
93
147
  * Create a new cron task.
94
148
  *
@@ -131,35 +185,17 @@ export declare class CronTaskService {
131
185
  delete(id: string): Promise<boolean>;
132
186
  /**
133
187
  * Evaluate all enabled tasks and execute those whose nextRunAt has passed.
134
- *
135
- * #268: Before dispatching, checks whether the target agent is online.
136
- * If offline and an agentStartCallback is configured, attempts to auto-start
137
- * the agent. If still offline, skips the task and logs a warning instead of
138
- * silently dropping it.
188
+ * If an agentStatusCallback is set, checks whether the target agent is online
189
+ * before execution. If the agent is offline and an agentStartCallback is set,
190
+ * attempts to auto-start the agent before executing.
139
191
  */
140
192
  evaluateTasks(): Promise<void>;
141
193
  /**
142
194
  * Load the cron task store from disk.
143
- *
144
- * Recovery strategy:
145
- * 1. Try the main file (cron-tasks.json)
146
- * 2. If corrupted (JSON parse error), try the backup (.bak)
147
- * 3. Only return empty store for genuine ENOENT (file never existed)
148
- *
149
- * This prevents data loss when the main file is corrupted by a
150
- * crash during write.
151
195
  */
152
196
  private loadStore;
153
197
  /**
154
- * Save the cron task store to disk atomically.
155
- *
156
- * Uses write-to-temp-then-rename pattern to prevent corruption:
157
- * 1. Write new data to a .tmp file
158
- * 2. Copy current file to .bak (backup)
159
- * 3. Atomically rename .tmp to main file
160
- *
161
- * If the process crashes during step 1, the main file is untouched.
162
- * If it crashes during step 3, the .bak file has the previous state.
198
+ * Save the cron task store to disk.
163
199
  */
164
200
  private saveStore;
165
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cron-task.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/workflow/cron-task.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EACX,QAAQ,EAER,qBAAqB,EACrB,qBAAqB,EACrB,MAAM,gCAAgC,CAAC;AA0DxC;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAsC7F;AAED;;GAEG;AACH,qBAAa,eAAe;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgC;IACvD,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,iBAAiB,CAAoD;IAC7E,OAAO,CAAC,mBAAmB,CAA4D;IACvF,OAAO,CAAC,kBAAkB,CAA4E;gBAE1F,UAAU,CAAC,EAAE,MAAM;IAM/B;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,eAAe;IAOrC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAO5B;;;;;OAKG;IACH,oBAAoB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIvE;;;;OAIG;IACH,sBAAsB,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI;IAIjF;;;;OAIG;IACH,qBAAqB,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI;IAIhG;;;;;;;;OAQG;IACG,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;IA6BnD;;;;;;OAMG;IACH,KAAK,IAAI,IAAI;IAuBb;;OAEG;IACH,IAAI,IAAI,IAAI;IAQZ;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA0B/D;;;;;OAKG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAcrF;;;;;OAKG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAK/C;;;;;;;OAOG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAyBlF;;;;;OAKG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1C;;;;;;;OAOG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IA6FpC;;;;;;;;;;OAUG;YACW,SAAS;IAyCvB;;;;;;;;;;OAUG;YACW,SAAS;CAqBvB"}
1
+ {"version":3,"file":"cron-task.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/workflow/cron-task.service.ts"],"names":[],"mappings":"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"}