crewly 1.20.233 → 1.20.236
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/skills/agent/core/app-comments/SKILL.md +2 -0
- package/dist/backend/backend/src/constants.d.ts +9 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +6 -1
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js +10 -0
- package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts +17 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +193 -124
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +30 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.js +5 -9
- package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts +127 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.js +264 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/restore-queue.d.ts +103 -0
- package/dist/backend/backend/src/services/agent/restore-queue.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/restore-queue.js +184 -0
- package/dist/backend/backend/src/services/agent/restore-queue.js.map +1 -0
- package/dist/backend/backend/src/services/apps/app-comments-slack.service.d.ts +129 -0
- package/dist/backend/backend/src/services/apps/app-comments-slack.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/apps/app-comments-slack.service.js +235 -0
- package/dist/backend/backend/src/services/apps/app-comments-slack.service.js.map +1 -0
- package/dist/backend/backend/src/services/apps/app-wake.service.d.ts +8 -1
- package/dist/backend/backend/src/services/apps/app-wake.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/apps/app-wake.service.js +8 -0
- package/dist/backend/backend/src/services/apps/app-wake.service.js.map +1 -1
- package/dist/backend/backend/src/services/apps/apps.service.d.ts +5 -0
- package/dist/backend/backend/src/services/apps/apps.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/apps/apps.service.js +8 -2
- package/dist/backend/backend/src/services/apps/apps.service.js.map +1 -1
- package/dist/backend/backend/src/services/apps/apps.wiring.d.ts +16 -0
- package/dist/backend/backend/src/services/apps/apps.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/apps/apps.wiring.js +74 -0
- package/dist/backend/backend/src/services/apps/apps.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.d.ts +13 -0
- package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js +29 -0
- package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.d.ts +52 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js +47 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.js +1 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js +3 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts +23 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js +134 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts +9 -0
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js +16 -2
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts +4 -0
- package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/settings.types.js +8 -0
- package/dist/backend/backend/src/types/settings.types.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +9 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +6 -1
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +30 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts +127 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.js +264 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.js.map +1 -0
- package/dist/cli/backend/src/services/agent/restore-queue.d.ts +103 -0
- package/dist/cli/backend/src/services/agent/restore-queue.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/restore-queue.js +184 -0
- package/dist/cli/backend/src/services/agent/restore-queue.js.map +1 -0
- package/dist/cli/backend/src/services/core/system-health.util.d.ts +89 -0
- package/dist/cli/backend/src/services/core/system-health.util.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/system-health.util.js +220 -0
- package/dist/cli/backend/src/services/core/system-health.util.js.map +1 -0
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts +9 -0
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js +16 -2
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts +4 -0
- package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/settings.types.js +8 -0
- package/dist/cli/backend/src/types/settings.types.js.map +1 -1
- package/frontend/dist/assets/{index-bc4e2a93.js → index-a719c15a.js} +54 -54
- package/frontend/dist/index.html +1 -1
- package/package.json +1 -1
package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-tickets.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/project-tickets/project-tickets.controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project-tickets.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/project-tickets/project-tickets.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -111,6 +111,23 @@ export declare class CrewlyServer {
|
|
|
111
111
|
* @param sessions - Entries loaded from session-state.json.
|
|
112
112
|
*/
|
|
113
113
|
private pruneUnboundPersistedSessions;
|
|
114
|
+
/** WorkItems to recover after boot, grouped by target session. */
|
|
115
|
+
private recoveryBySession;
|
|
116
|
+
/**
|
|
117
|
+
* In-progress WorkItems worth re-sending after a restart: active status,
|
|
118
|
+
* with a target, touched within the last hour of `referenceMs`.
|
|
119
|
+
*
|
|
120
|
+
* @param referenceMs - Boot time (age is measured at boot, not after the restore)
|
|
121
|
+
* @returns Items grouped by target session
|
|
122
|
+
*/
|
|
123
|
+
private collectRecoverableTasks;
|
|
124
|
+
/**
|
|
125
|
+
* Send the task-recovery messages of one session (once), e.g. right after
|
|
126
|
+
* that agent registered.
|
|
127
|
+
*
|
|
128
|
+
* @param sessionName - Target session
|
|
129
|
+
*/
|
|
130
|
+
private sendRecoveryFor;
|
|
114
131
|
/**
|
|
115
132
|
* Auto-restore agent sessions that were running before the last shutdown.
|
|
116
133
|
* Loads persisted session state and calls createAgentSession() for each
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../backend/src/index.ts"],"names":[],"mappings":";AA4CA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../backend/src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ import { TerminalGateway, setTerminalGateway } from './websocket/terminal.gatewa
|
|
|
23
23
|
import { initializeChatGateway } from './websocket/chat.gateway.js';
|
|
24
24
|
import { LoggerService } from './services/core/logger.service.js';
|
|
25
25
|
import { retryWithBackoff } from './services/core/retry.util.js';
|
|
26
|
-
import { CREWLY_CONSTANTS, ORCHESTRATOR_SESSION_NAME, OWNER_MESSAGE_WATCHDOG_CONSTANTS, TURN_STATE_CONSTANTS, CLOUD_DISCONNECT_NOTICE_CONSTANTS, ORCHESTRATOR_ROLE, ORCHESTRATOR_WINDOW_NAME, MESSAGE_QUEUE_CONSTANTS, RUNTIME_TYPES, AUDITOR_CONSTANTS, AUDITOR_SCHEDULER_CONSTANTS, API_SECURITY_CONSTANTS, } from './constants.js';
|
|
26
|
+
import { CREWLY_CONSTANTS, ORCHESTRATOR_SESSION_NAME, AGENT_SUSPEND_CONSTANTS, OWNER_MESSAGE_WATCHDOG_CONSTANTS, TURN_STATE_CONSTANTS, CLOUD_DISCONNECT_NOTICE_CONSTANTS, ORCHESTRATOR_ROLE, ORCHESTRATOR_WINDOW_NAME, MESSAGE_QUEUE_CONSTANTS, RUNTIME_TYPES, AUDITOR_CONSTANTS, AUDITOR_SCHEDULER_CONSTANTS, API_SECURITY_CONSTANTS, TEAM_LEAD_CONSTANTS, } from './constants.js';
|
|
27
27
|
import { getSettingsService } from './services/settings/index.js';
|
|
28
28
|
import { MemoryService } from './services/memory/memory.service.js';
|
|
29
29
|
import { getImprovementStartupService } from './services/orchestrator/improvement-startup.service.js';
|
|
@@ -169,6 +169,8 @@ import { TaskPoolService } from './services/task-pool/task-pool.service.js';
|
|
|
169
169
|
import { PENDING_WORK_STATUSES } from './services/agent/idle-detection.service.js';
|
|
170
170
|
import { WorkItemWorktreeService } from './services/worktree/workitem-worktree.service.js';
|
|
171
171
|
import { WorkItemWorktreeSubscriber, createTerminalNotifier } from './services/worktree/workitem-worktree.subscriber.js';
|
|
172
|
+
import { ResourceModeService, RESOURCE_MODE_CONSTANTS } from './services/agent/resource-mode.service.js';
|
|
173
|
+
import { getRestoreQueue, RESTORE_TIER } from './services/agent/restore-queue.js';
|
|
172
174
|
import { sessionsToRestore } from './services/agent/restore-filter.js';
|
|
173
175
|
import { ProjectMemoryService } from './services/memory/project-memory.service.js';
|
|
174
176
|
import { TaskHistorySubscriber } from './services/memory/task-history.subscriber.js';
|
|
@@ -1701,6 +1703,10 @@ export class CrewlyServer {
|
|
|
1701
1703
|
// Agents whose deliveries the input guard keeps refusing (crewly#1028).
|
|
1702
1704
|
input_circuit: inputCircuitStats(),
|
|
1703
1705
|
cloud: cloudHealthBlock(),
|
|
1706
|
+
// Boot restore progress (staggered restore queue).
|
|
1707
|
+
restoreQueue: getRestoreQueue().stats(),
|
|
1708
|
+
// Adaptive agent limits: normal | pressure, running count, cap.
|
|
1709
|
+
...ResourceModeService.getInstance().stats(),
|
|
1704
1710
|
});
|
|
1705
1711
|
});
|
|
1706
1712
|
// H5 quick entry static page (served regardless of headless mode)
|
|
@@ -1926,6 +1932,44 @@ export class CrewlyServer {
|
|
|
1926
1932
|
return items.some((wi) => wi.target === sessionName && PENDING_WORK_STATUSES.has(wi.status));
|
|
1927
1933
|
});
|
|
1928
1934
|
idleDetection.start();
|
|
1935
|
+
// Adaptive agent limits (pressure mode cap + start queue).
|
|
1936
|
+
const resourceMode = ResourceModeService.getInstance();
|
|
1937
|
+
const agentRegistration = this.apiController.agentRegistrationService;
|
|
1938
|
+
resourceMode.setDeps({
|
|
1939
|
+
limits: async () => {
|
|
1940
|
+
const g = (await getSettingsService().getSettings()).general;
|
|
1941
|
+
return {
|
|
1942
|
+
maxRunning: Math.max(1, g.pressureMaxRunningAgents ?? RESOURCE_MODE_CONSTANTS.DEFAULT_MAX_RUNNING_AGENTS),
|
|
1943
|
+
idleTimeoutMinutes: g.pressureIdleTimeoutMinutes ?? RESOURCE_MODE_CONSTANTS.DEFAULT_IDLE_TIMEOUT_MINUTES,
|
|
1944
|
+
};
|
|
1945
|
+
},
|
|
1946
|
+
listRunning: async () => {
|
|
1947
|
+
const teams = await StorageService.getInstance().getTeams();
|
|
1948
|
+
const tracker = PtyActivityTrackerService.getInstance();
|
|
1949
|
+
const out = [];
|
|
1950
|
+
for (const t of teams) {
|
|
1951
|
+
for (const m of t.members || []) {
|
|
1952
|
+
if (m.agentStatus !== CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVE && m.agentStatus !== CREWLY_CONSTANTS.AGENT_STATUSES.STARTED)
|
|
1953
|
+
continue;
|
|
1954
|
+
if (m.sessionName === ORCHESTRATOR_SESSION_NAME || AGENT_SUSPEND_CONSTANTS.ALWAYS_ON_ROLES.includes(m.role))
|
|
1955
|
+
continue;
|
|
1956
|
+
let busy = m.agentStatus === CREWLY_CONSTANTS.AGENT_STATUSES.STARTED;
|
|
1957
|
+
try {
|
|
1958
|
+
busy = busy || (await this.activityMonitorService.getWorkingStatusForSession(m.sessionName)) === 'in_progress';
|
|
1959
|
+
}
|
|
1960
|
+
catch { /* unknown status: treat as not busy */ }
|
|
1961
|
+
out.push({ sessionName: m.sessionName, role: m.role, idleMs: tracker.getIdleTimeMs(m.sessionName), busy });
|
|
1962
|
+
}
|
|
1963
|
+
}
|
|
1964
|
+
return out;
|
|
1965
|
+
},
|
|
1966
|
+
hasOwnerMessage: (name) => SubAgentMessageQueue.getInstance().peek(name).some((m) => m.meta?.owner === true),
|
|
1967
|
+
stopAgent: async (name, role) => {
|
|
1968
|
+
await agentRegistration.terminateAgentSession(name, role);
|
|
1969
|
+
await StorageService.getInstance().updateAgentStatus(name, CREWLY_CONSTANTS.AGENT_STATUSES.INACTIVE, 'idle_exit');
|
|
1970
|
+
},
|
|
1971
|
+
});
|
|
1972
|
+
resourceMode.start();
|
|
1929
1973
|
// Wire OrchestratorRestartService with dependencies for auto-restart
|
|
1930
1974
|
try {
|
|
1931
1975
|
const sessionBackend = getSessionBackendSync();
|
|
@@ -3487,67 +3531,26 @@ export class CrewlyServer {
|
|
|
3487
3531
|
});
|
|
3488
3532
|
// Auto-start orchestrator if enabled in settings
|
|
3489
3533
|
await this.autoStartOrchestratorIfEnabled();
|
|
3490
|
-
//
|
|
3534
|
+
// Work age for the recovery below is measured at boot, not after the
|
|
3535
|
+
// restore: restoring a dozen agents on a loaded machine takes 30–50
|
|
3536
|
+
// minutes, and measuring afterwards dropped work that was minutes old
|
|
3537
|
+
// when the backend went down (CE-128 / CE-132, 2026-10-05).
|
|
3538
|
+
const recoveryReferenceMs = Date.now();
|
|
3539
|
+
// #166/#196: in-progress WorkItems to re-send after the restart (not
|
|
3540
|
+
// older than 1 hour at boot). Each restored agent gets its own recovery
|
|
3541
|
+
// messages right after it registers; agents outside the restore queue
|
|
3542
|
+
// (already live, or not restored) get theirs now.
|
|
3543
|
+
this.recoveryBySession = await this.collectRecoverableTasks(recoveryReferenceMs);
|
|
3544
|
+
// Auto-restore agent sessions that were running before the last shutdown.
|
|
3545
|
+
// Starts the staggered restore queue; it drains in the background.
|
|
3491
3546
|
await this.autoRestoreAgentSessionsIfEnabled();
|
|
3492
3547
|
// Re-deliver interrupted turns now that their agents are coming back.
|
|
3493
3548
|
// Background: the orchestrator may take minutes to register.
|
|
3494
3549
|
void this.resumeInterruptedTurnsAfterBoot();
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
// `TaskTrackingService.getAllInProgressTasks()` call).
|
|
3500
|
-
try {
|
|
3501
|
-
const TASK_RECOVERY_MAX_AGE_MS = 60 * 60 * 1000; // 1 hour
|
|
3502
|
-
const { TaskPoolService } = await import('./services/task-pool/task-pool.service.js');
|
|
3503
|
-
const allItems = await TaskPoolService.getInstance().getAllItems();
|
|
3504
|
-
const now = Date.now();
|
|
3505
|
-
const activeTasks = allItems.filter(wi => {
|
|
3506
|
-
if (wi.status !== 'queued' && wi.status !== 'accepted' && wi.status !== 'running')
|
|
3507
|
-
return false;
|
|
3508
|
-
if (!wi.target)
|
|
3509
|
-
return false;
|
|
3510
|
-
// Skip stale tasks — startedAt/createdAt older than threshold
|
|
3511
|
-
const taskTime = new Date(wi.startedAt || wi.createdAt || 0).getTime();
|
|
3512
|
-
if (now - taskTime > TASK_RECOVERY_MAX_AGE_MS) {
|
|
3513
|
-
this.logger.info('Skipping stale task recovery (older than 1 hour)', {
|
|
3514
|
-
workItemId: wi.id,
|
|
3515
|
-
taskName: wi.title,
|
|
3516
|
-
age: `${Math.round((now - taskTime) / 60000)} minutes`,
|
|
3517
|
-
});
|
|
3518
|
-
return false;
|
|
3519
|
-
}
|
|
3520
|
-
return true;
|
|
3521
|
-
});
|
|
3522
|
-
if (activeTasks.length > 0) {
|
|
3523
|
-
this.logger.info('Found in-progress WorkItems to recover after restart', {
|
|
3524
|
-
count: activeTasks.length,
|
|
3525
|
-
});
|
|
3526
|
-
for (const wi of activeTasks) {
|
|
3527
|
-
try {
|
|
3528
|
-
const recoveryMessage = `[SYSTEM — TASK RECOVERY] You were working on this task before the server restarted. Please continue:\n\nTask: ${wi.title}\nWorkItem: ${wi.id}\n\nFetch full brief: bash config/skills/agent/core/read-task/execute.sh '{"workItemId":"${wi.id}"}'\n\nPlease check the current state and continue working.`;
|
|
3529
|
-
await this.apiController.agentRegistrationService.sendMessageToAgent(wi.target, recoveryMessage, undefined);
|
|
3530
|
-
this.logger.info('Task recovery message sent', {
|
|
3531
|
-
workItemId: wi.id,
|
|
3532
|
-
sessionName: wi.target,
|
|
3533
|
-
taskName: wi.title,
|
|
3534
|
-
});
|
|
3535
|
-
}
|
|
3536
|
-
catch (err) {
|
|
3537
|
-
// Agent might not be online yet — DLQ in scheduler will handle it
|
|
3538
|
-
this.logger.warn('Task recovery delivery deferred (agent may not be online yet)', {
|
|
3539
|
-
workItemId: wi.id,
|
|
3540
|
-
sessionName: wi.target,
|
|
3541
|
-
error: err instanceof Error ? err.message : String(err),
|
|
3542
|
-
});
|
|
3543
|
-
}
|
|
3544
|
-
}
|
|
3545
|
-
}
|
|
3546
|
-
}
|
|
3547
|
-
catch (err) {
|
|
3548
|
-
this.logger.warn('Task auto-recovery failed (non-critical)', {
|
|
3549
|
-
error: err instanceof Error ? err.message : String(err),
|
|
3550
|
-
});
|
|
3550
|
+
const queued = new Set(getRestoreQueue().stats().order);
|
|
3551
|
+
for (const session of [...this.recoveryBySession.keys()]) {
|
|
3552
|
+
if (!queued.has(session))
|
|
3553
|
+
await this.sendRecoveryFor(session);
|
|
3551
3554
|
}
|
|
3552
3555
|
// Start log rotation service (non-critical — logs cleanup)
|
|
3553
3556
|
try {
|
|
@@ -3977,6 +3980,77 @@ export class CrewlyServer {
|
|
|
3977
3980
|
});
|
|
3978
3981
|
}
|
|
3979
3982
|
}
|
|
3983
|
+
/** WorkItems to recover after boot, grouped by target session. */
|
|
3984
|
+
recoveryBySession = new Map();
|
|
3985
|
+
/**
|
|
3986
|
+
* In-progress WorkItems worth re-sending after a restart: active status,
|
|
3987
|
+
* with a target, touched within the last hour of `referenceMs`.
|
|
3988
|
+
*
|
|
3989
|
+
* @param referenceMs - Boot time (age is measured at boot, not after the restore)
|
|
3990
|
+
* @returns Items grouped by target session
|
|
3991
|
+
*/
|
|
3992
|
+
async collectRecoverableTasks(referenceMs) {
|
|
3993
|
+
const out = new Map();
|
|
3994
|
+
try {
|
|
3995
|
+
const TASK_RECOVERY_MAX_AGE_MS = 60 * 60 * 1000; // 1 hour
|
|
3996
|
+
const allItems = await TaskPoolService.getInstance().getAllItems();
|
|
3997
|
+
for (const wi of allItems) {
|
|
3998
|
+
if (wi.status !== 'queued' && wi.status !== 'accepted' && wi.status !== 'running')
|
|
3999
|
+
continue;
|
|
4000
|
+
if (!wi.target)
|
|
4001
|
+
continue;
|
|
4002
|
+
// Last sign of life: a re-claim / status change counts, not only creation.
|
|
4003
|
+
const taskTime = Math.max(new Date(wi.startedAt || wi.createdAt || 0).getTime() || 0, new Date(wi.statusChangedAt || 0).getTime() || 0);
|
|
4004
|
+
if (referenceMs - taskTime > TASK_RECOVERY_MAX_AGE_MS) {
|
|
4005
|
+
this.logger.info('Skipping stale task recovery (older than 1 hour)', {
|
|
4006
|
+
workItemId: wi.id,
|
|
4007
|
+
taskName: wi.title,
|
|
4008
|
+
age: `${Math.round((referenceMs - taskTime) / 60000)} minutes`,
|
|
4009
|
+
});
|
|
4010
|
+
continue;
|
|
4011
|
+
}
|
|
4012
|
+
const list = out.get(wi.target) ?? [];
|
|
4013
|
+
list.push(wi);
|
|
4014
|
+
out.set(wi.target, list);
|
|
4015
|
+
}
|
|
4016
|
+
if (out.size > 0) {
|
|
4017
|
+
this.logger.info('Found in-progress WorkItems to recover after restart', {
|
|
4018
|
+
count: [...out.values()].reduce((n, l) => n + l.length, 0),
|
|
4019
|
+
});
|
|
4020
|
+
}
|
|
4021
|
+
}
|
|
4022
|
+
catch (err) {
|
|
4023
|
+
this.logger.warn('Task auto-recovery failed (non-critical)', {
|
|
4024
|
+
error: err instanceof Error ? err.message : String(err),
|
|
4025
|
+
});
|
|
4026
|
+
}
|
|
4027
|
+
return out;
|
|
4028
|
+
}
|
|
4029
|
+
/**
|
|
4030
|
+
* Send the task-recovery messages of one session (once), e.g. right after
|
|
4031
|
+
* that agent registered.
|
|
4032
|
+
*
|
|
4033
|
+
* @param sessionName - Target session
|
|
4034
|
+
*/
|
|
4035
|
+
async sendRecoveryFor(sessionName) {
|
|
4036
|
+
const items = this.recoveryBySession.get(sessionName);
|
|
4037
|
+
this.recoveryBySession.delete(sessionName);
|
|
4038
|
+
for (const wi of items ?? []) {
|
|
4039
|
+
try {
|
|
4040
|
+
const recoveryMessage = `[SYSTEM — TASK RECOVERY] You were working on this task before the server restarted. Please continue:\n\nTask: ${wi.title}\nWorkItem: ${wi.id}\n\nFetch full brief: bash config/skills/agent/core/read-task/execute.sh '{"workItemId":"${wi.id}"}'\n\nPlease check the current state and continue working.`;
|
|
4041
|
+
await this.apiController.agentRegistrationService.sendMessageToAgent(sessionName, recoveryMessage, undefined);
|
|
4042
|
+
this.logger.info('Task recovery message sent', { workItemId: wi.id, sessionName, taskName: wi.title });
|
|
4043
|
+
}
|
|
4044
|
+
catch (err) {
|
|
4045
|
+
// Agent might not be online yet — DLQ in scheduler will handle it
|
|
4046
|
+
this.logger.warn('Task recovery delivery deferred (agent may not be online yet)', {
|
|
4047
|
+
workItemId: wi.id,
|
|
4048
|
+
sessionName,
|
|
4049
|
+
error: err instanceof Error ? err.message : String(err),
|
|
4050
|
+
});
|
|
4051
|
+
}
|
|
4052
|
+
}
|
|
4053
|
+
}
|
|
3980
4054
|
/**
|
|
3981
4055
|
* Auto-restore agent sessions that were running before the last shutdown.
|
|
3982
4056
|
* Loads persisted session state and calls createAgentSession() for each
|
|
@@ -4071,76 +4145,67 @@ export class CrewlyServer {
|
|
|
4071
4145
|
count: agentSessions.length,
|
|
4072
4146
|
sessions: agentSessions.map((s) => s.name),
|
|
4073
4147
|
});
|
|
4074
|
-
|
|
4075
|
-
|
|
4076
|
-
|
|
4077
|
-
const
|
|
4078
|
-
|
|
4079
|
-
|
|
4080
|
-
|
|
4081
|
-
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
|
|
4086
|
-
|
|
4087
|
-
|
|
4088
|
-
|
|
4089
|
-
|
|
4090
|
-
|
|
4091
|
-
|
|
4092
|
-
|
|
4093
|
-
|
|
4094
|
-
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
|
|
4099
|
-
}
|
|
4100
|
-
|
|
4101
|
-
|
|
4102
|
-
|
|
4103
|
-
|
|
4104
|
-
role: session.role || 'developer',
|
|
4105
|
-
projectPath: session.cwd || process.cwd(),
|
|
4106
|
-
runtimeType: session.runtimeType,
|
|
4107
|
-
teamId: session.teamId,
|
|
4108
|
-
memberId: session.memberId,
|
|
4109
|
-
forceRecreate: true,
|
|
4110
|
-
});
|
|
4111
|
-
if (result.success) {
|
|
4112
|
-
restored++;
|
|
4113
|
-
this.logger.info('Restored agent session', {
|
|
4114
|
-
name: session.name,
|
|
4115
|
-
role: session.role,
|
|
4148
|
+
// Staggered restore: one agent at a time (CREWLY_RESTORE_CONCURRENCY,
|
|
4149
|
+
// max 3), the next starts when the previous one registered or timed out.
|
|
4150
|
+
// Owner-waiting agents first, then orchestrator, leads, everyone else.
|
|
4151
|
+
const queueMessages = SubAgentMessageQueue.getInstance();
|
|
4152
|
+
const owedSince = new Map();
|
|
4153
|
+
for (const c of this.openCommitmentsAtBoot) {
|
|
4154
|
+
const due = c.due ? Date.parse(c.due) : NaN;
|
|
4155
|
+
owedSince.set(c.sessionName, Math.min(owedSince.get(c.sessionName) ?? Infinity, Number.isFinite(due) ? due : 0));
|
|
4156
|
+
}
|
|
4157
|
+
const leadRoles = TEAM_LEAD_CONSTANTS.LEAD_ROLES;
|
|
4158
|
+
const entries = agentSessions.map((session) => {
|
|
4159
|
+
const ownerTimes = queueMessages.peek(session.name).filter((m) => m.meta?.owner === true).map((m) => m.queuedAt);
|
|
4160
|
+
if (owedSince.has(session.name))
|
|
4161
|
+
ownerTimes.push(owedSince.get(session.name));
|
|
4162
|
+
const base = {
|
|
4163
|
+
name: session.name,
|
|
4164
|
+
run: async (attempt) => {
|
|
4165
|
+
// PTYs live in this process, so none survive a restart: a session
|
|
4166
|
+
// that exists now was started this boot by another launcher (a
|
|
4167
|
+
// reconciler wake, a team start). forceRecreate would kill it and
|
|
4168
|
+
// resume the same conversation again — a second kickoff in one
|
|
4169
|
+
// chat (2026-09-25 startup-prompt loop). Leave it be.
|
|
4170
|
+
if (attempt === 0 && await this.apiController.agentRegistrationService.isSessionLiveOrLaunching(session.name)) {
|
|
4171
|
+
this.logger.info('Skipping restore — session already started this boot by another launcher', { name: session.name });
|
|
4172
|
+
return { success: true };
|
|
4173
|
+
}
|
|
4174
|
+
const result = await this.apiController.agentRegistrationService.createAgentSession({
|
|
4175
|
+
sessionName: session.name,
|
|
4176
|
+
role: session.role || 'developer',
|
|
4177
|
+
projectPath: session.cwd || process.cwd(),
|
|
4116
4178
|
runtimeType: session.runtimeType,
|
|
4117
|
-
|
|
4118
|
-
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
failed.push(session.name);
|
|
4122
|
-
this.logger.warn('Failed to restore agent session', {
|
|
4123
|
-
name: session.name,
|
|
4124
|
-
error: result.error,
|
|
4179
|
+
teamId: session.teamId,
|
|
4180
|
+
memberId: session.memberId,
|
|
4181
|
+
// A retry joins the launch still in flight instead of killing it.
|
|
4182
|
+
forceRecreate: attempt === 0,
|
|
4125
4183
|
});
|
|
4126
|
-
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
this.
|
|
4131
|
-
|
|
4132
|
-
|
|
4133
|
-
}
|
|
4184
|
+
if (!result.success)
|
|
4185
|
+
this.logger.warn('Failed to restore agent session', { name: session.name, error: result.error });
|
|
4186
|
+
return { success: result.success };
|
|
4187
|
+
},
|
|
4188
|
+
onReady: () => this.sendRecoveryFor(session.name),
|
|
4189
|
+
};
|
|
4190
|
+
if (ownerTimes.length > 0) {
|
|
4191
|
+
return { ...base, tier: RESTORE_TIER.OWNER, ownerSince: Math.min(...ownerTimes), reason: 'owner message waiting' };
|
|
4134
4192
|
}
|
|
4135
|
-
|
|
4136
|
-
|
|
4137
|
-
|
|
4138
|
-
|
|
4139
|
-
|
|
4140
|
-
|
|
4193
|
+
if (session.role === ORCHESTRATOR_ROLE)
|
|
4194
|
+
return { ...base, tier: RESTORE_TIER.ORCHESTRATOR, reason: 'orchestrator' };
|
|
4195
|
+
if (leadRoles.includes(session.role ?? ''))
|
|
4196
|
+
return { ...base, tier: RESTORE_TIER.LEAD, reason: 'team lead with work in hand' };
|
|
4197
|
+
return { ...base, tier: RESTORE_TIER.OTHER, reason: 'work in hand' };
|
|
4198
|
+
});
|
|
4199
|
+
// Runs in the background; boot continues while agents come back.
|
|
4200
|
+
void getRestoreQueue()
|
|
4201
|
+
.start(entries)
|
|
4202
|
+
.then(async () => {
|
|
4203
|
+
// Clear persisted state after the restore to avoid double-restore
|
|
4204
|
+
await persistence.clearState();
|
|
4205
|
+
})
|
|
4206
|
+
.catch((error) => {
|
|
4207
|
+
this.logger.error('Restore queue failed', { error: error instanceof Error ? error.message : String(error) });
|
|
4141
4208
|
});
|
|
4142
|
-
// Clear persisted state after restore attempt to avoid double-restore
|
|
4143
|
-
await persistence.clearState();
|
|
4144
4209
|
}
|
|
4145
4210
|
catch (error) {
|
|
4146
4211
|
this.logger.error('Failed to auto-restore agent sessions', {
|
|
@@ -5356,6 +5421,10 @@ export class CrewlyServer {
|
|
|
5356
5421
|
attachDecisionSlackListeners(decisions);
|
|
5357
5422
|
// "skip all old cards" / 「清掉旧卡片」 in the owner's orc DM.
|
|
5358
5423
|
await attachSkipAllCommand(decisions).catch((err) => this.logger.warn('Skip-all command not wired (non-critical)', { error: err instanceof Error ? err.message : String(err) }));
|
|
5424
|
+
// The owner's replies in an App comment's Slack thread go to the comment.
|
|
5425
|
+
await import('./services/apps/apps.wiring.js')
|
|
5426
|
+
.then((m) => m.attachAppCommentsSlackInterceptor())
|
|
5427
|
+
.catch((err) => this.logger.warn('App comment Slack replies not wired (non-critical)', { error: err instanceof Error ? err.message : String(err) }));
|
|
5359
5428
|
decisions.start();
|
|
5360
5429
|
this.logger.info('Decision cards started');
|
|
5361
5430
|
// Daily signal digest (#987, specs/2026-10-03-signal-digest.md): Do / Skip
|