beecork 1.1.0 → 1.3.0
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/dist/capabilities/index.d.ts +4 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/index.js +3 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/manager.d.ts +14 -0
- package/dist/capabilities/manager.d.ts.map +1 -0
- package/dist/capabilities/manager.js +112 -0
- package/dist/capabilities/manager.js.map +1 -0
- package/dist/capabilities/packs.d.ts +3 -0
- package/dist/capabilities/packs.d.ts.map +1 -0
- package/dist/capabilities/packs.js +112 -0
- package/dist/capabilities/packs.js.map +1 -0
- package/dist/capabilities/types.d.ts +22 -0
- package/dist/capabilities/types.d.ts.map +1 -0
- package/dist/capabilities/types.js +2 -0
- package/dist/capabilities/types.js.map +1 -0
- package/dist/channels/command-handler.d.ts +28 -0
- package/dist/channels/command-handler.d.ts.map +1 -0
- package/dist/channels/command-handler.js +242 -0
- package/dist/channels/command-handler.js.map +1 -0
- package/dist/channels/discord.d.ts +2 -2
- package/dist/channels/discord.d.ts.map +1 -1
- package/dist/channels/discord.js +37 -123
- package/dist/channels/discord.js.map +1 -1
- package/dist/channels/loader.d.ts.map +1 -1
- package/dist/channels/loader.js +2 -1
- package/dist/channels/loader.js.map +1 -1
- package/dist/channels/registry.d.ts +1 -4
- package/dist/channels/registry.d.ts.map +1 -1
- package/dist/channels/registry.js +0 -13
- package/dist/channels/registry.js.map +1 -1
- package/dist/channels/telegram.d.ts +2 -2
- package/dist/channels/telegram.d.ts.map +1 -1
- package/dist/channels/telegram.js +59 -225
- package/dist/channels/telegram.js.map +1 -1
- package/dist/channels/types.d.ts +2 -0
- package/dist/channels/types.d.ts.map +1 -1
- package/dist/channels/webhook.d.ts +4 -12
- package/dist/channels/webhook.d.ts.map +1 -1
- package/dist/channels/webhook.js +30 -30
- package/dist/channels/webhook.js.map +1 -1
- package/dist/channels/whatsapp.d.ts +2 -2
- package/dist/channels/whatsapp.d.ts.map +1 -1
- package/dist/channels/whatsapp.js +33 -103
- package/dist/channels/whatsapp.js.map +1 -1
- package/dist/cli/capabilities.d.ts +4 -0
- package/dist/cli/capabilities.d.ts.map +1 -0
- package/dist/cli/capabilities.js +73 -0
- package/dist/cli/capabilities.js.map +1 -0
- package/dist/cli/commands.d.ts +2 -0
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +40 -12
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/media.d.ts +1 -1
- package/dist/cli/media.d.ts.map +1 -1
- package/dist/cli/media.js +3 -3
- package/dist/cli/media.js.map +1 -1
- package/dist/cli/setup.d.ts +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +216 -144
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/store.d.ts +4 -0
- package/dist/cli/store.d.ts.map +1 -0
- package/dist/cli/store.js +92 -0
- package/dist/cli/store.js.map +1 -0
- package/dist/config.js +8 -0
- package/dist/config.js.map +1 -1
- package/dist/daemon.js +26 -14
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/html.d.ts.map +1 -1
- package/dist/dashboard/html.js +131 -11
- package/dist/dashboard/html.js.map +1 -1
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +253 -22
- package/dist/dashboard/server.js.map +1 -1
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +6 -3
- package/dist/db/index.js.map +1 -1
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js +72 -11
- package/dist/db/migrations.js.map +1 -1
- package/dist/index.js +162 -7
- package/dist/index.js.map +1 -1
- package/dist/knowledge/index.d.ts +3 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +2 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/manager.d.ts +18 -0
- package/dist/knowledge/manager.d.ts.map +1 -0
- package/dist/knowledge/manager.js +137 -0
- package/dist/knowledge/manager.js.map +1 -0
- package/dist/knowledge/types.d.ts +8 -0
- package/dist/knowledge/types.d.ts.map +1 -0
- package/dist/knowledge/types.js +2 -0
- package/dist/knowledge/types.js.map +1 -0
- package/dist/machines/forwarder.d.ts.map +1 -1
- package/dist/machines/forwarder.js +15 -5
- package/dist/machines/forwarder.js.map +1 -1
- package/dist/mcp/server.js +277 -40
- package/dist/mcp/server.js.map +1 -1
- package/dist/media/store.d.ts.map +1 -1
- package/dist/media/store.js +5 -2
- package/dist/media/store.js.map +1 -1
- package/dist/memory/extractor.js +38 -11
- package/dist/memory/extractor.js.map +1 -1
- package/dist/observability/analytics.d.ts +0 -1
- package/dist/observability/analytics.d.ts.map +1 -1
- package/dist/observability/analytics.js +1 -16
- package/dist/observability/analytics.js.map +1 -1
- package/dist/pipe/anthropic-client.js +1 -1
- package/dist/pipe/anthropic-client.js.map +1 -1
- package/dist/pipe/memory-store.d.ts.map +1 -1
- package/dist/pipe/memory-store.js +9 -13
- package/dist/pipe/memory-store.js.map +1 -1
- package/dist/pipe/project-scanner.js +3 -4
- package/dist/pipe/project-scanner.js.map +1 -1
- package/dist/pipe/types.d.ts +6 -5
- package/dist/pipe/types.d.ts.map +1 -1
- package/dist/projects/manager.d.ts.map +1 -1
- package/dist/projects/manager.js +9 -1
- package/dist/projects/manager.js.map +1 -1
- package/dist/projects/router.d.ts.map +1 -1
- package/dist/projects/router.js +22 -5
- package/dist/projects/router.js.map +1 -1
- package/dist/session/context-monitor.d.ts.map +1 -1
- package/dist/session/context-monitor.js +3 -2
- package/dist/session/context-monitor.js.map +1 -1
- package/dist/session/manager.d.ts +1 -0
- package/dist/session/manager.d.ts.map +1 -1
- package/dist/session/manager.js +23 -9
- package/dist/session/manager.js.map +1 -1
- package/dist/session/subprocess.d.ts +1 -0
- package/dist/session/subprocess.d.ts.map +1 -1
- package/dist/session/subprocess.js +9 -1
- package/dist/session/subprocess.js.map +1 -1
- package/dist/session/tool-classifier.d.ts +1 -0
- package/dist/session/tool-classifier.d.ts.map +1 -1
- package/dist/session/tool-classifier.js.map +1 -1
- package/dist/{cron → tasks}/scheduler.d.ts +7 -3
- package/dist/tasks/scheduler.d.ts.map +1 -0
- package/dist/{cron → tasks}/scheduler.js +29 -24
- package/dist/tasks/scheduler.js.map +1 -0
- package/dist/tasks/store.d.ts +14 -0
- package/dist/tasks/store.d.ts.map +1 -0
- package/dist/{cron → tasks}/store.js +15 -13
- package/dist/tasks/store.js.map +1 -0
- package/dist/timeline/index.d.ts +4 -0
- package/dist/timeline/index.d.ts.map +1 -0
- package/dist/timeline/index.js +3 -0
- package/dist/timeline/index.js.map +1 -0
- package/dist/timeline/logger.d.ts +9 -0
- package/dist/timeline/logger.d.ts.map +1 -0
- package/dist/timeline/logger.js +10 -0
- package/dist/timeline/logger.js.map +1 -0
- package/dist/timeline/query.d.ts +12 -0
- package/dist/timeline/query.d.ts.map +1 -0
- package/dist/timeline/query.js +57 -0
- package/dist/timeline/query.js.map +1 -0
- package/dist/timeline/types.d.ts +13 -0
- package/dist/timeline/types.d.ts.map +1 -0
- package/dist/timeline/types.js +2 -0
- package/dist/timeline/types.js.map +1 -0
- package/dist/types.d.ts +12 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/voice/stt.d.ts +2 -0
- package/dist/voice/stt.d.ts.map +1 -1
- package/dist/voice/stt.js +10 -0
- package/dist/voice/stt.js.map +1 -1
- package/dist/watchers/evaluator.d.ts +6 -0
- package/dist/watchers/evaluator.d.ts.map +1 -0
- package/dist/watchers/evaluator.js +30 -0
- package/dist/watchers/evaluator.js.map +1 -0
- package/dist/watchers/index.d.ts +5 -0
- package/dist/watchers/index.d.ts.map +1 -0
- package/dist/watchers/index.js +4 -0
- package/dist/watchers/index.js.map +1 -0
- package/dist/watchers/scheduler.d.ts +14 -0
- package/dist/watchers/scheduler.d.ts.map +1 -0
- package/dist/watchers/scheduler.js +134 -0
- package/dist/watchers/scheduler.js.map +1 -0
- package/dist/watchers/store.d.ts +11 -0
- package/dist/watchers/store.d.ts.map +1 -0
- package/dist/watchers/store.js +57 -0
- package/dist/watchers/store.js.map +1 -0
- package/dist/watchers/types.d.ts +16 -0
- package/dist/watchers/types.d.ts.map +1 -0
- package/dist/watchers/types.js +2 -0
- package/dist/watchers/types.js.map +1 -0
- package/package.json +2 -2
- package/dist/cron/scheduler.d.ts.map +0 -1
- package/dist/cron/scheduler.js.map +0 -1
- package/dist/cron/store.d.ts +0 -12
- package/dist/cron/store.d.ts.map +0 -1
- package/dist/cron/store.js.map +0 -1
package/dist/session/manager.js
CHANGED
|
@@ -6,6 +6,7 @@ import { getDb } from '../db/index.js';
|
|
|
6
6
|
import { resolveWorkingDir, validateTabName } from '../config.js';
|
|
7
7
|
import { logger } from '../util/logger.js';
|
|
8
8
|
import { extractMemories, getRelevantMemories } from '../memory/extractor.js';
|
|
9
|
+
import { logActivity } from '../timeline/index.js';
|
|
9
10
|
function rowToTab(row) {
|
|
10
11
|
return {
|
|
11
12
|
id: row.id,
|
|
@@ -83,7 +84,7 @@ export class TabManager {
|
|
|
83
84
|
logger.info(`[${tabName}] Message queued (queue size: ${this.messageQueues.get(tabName).length})`);
|
|
84
85
|
});
|
|
85
86
|
}
|
|
86
|
-
return this.executeMessage(tab, prompt, options?.resume ?? false, options?.onTextChunk, options?.skipExtraction, options?.onToolUse);
|
|
87
|
+
return this.executeMessage(tab, prompt, options?.resume ?? false, options?.onTextChunk, options?.skipExtraction, options?.onToolUse, options?._compactionDepth);
|
|
87
88
|
}
|
|
88
89
|
/** Get all tabs from the database */
|
|
89
90
|
listTabs() {
|
|
@@ -145,8 +146,9 @@ export class TabManager {
|
|
|
145
146
|
}
|
|
146
147
|
}
|
|
147
148
|
}
|
|
148
|
-
async executeMessage(tab, prompt, resume, onTextChunk, skipExtraction, onToolUse) {
|
|
149
|
+
async executeMessage(tab, prompt, resume, onTextChunk, skipExtraction, onToolUse, compactionDepth) {
|
|
149
150
|
const db = getDb();
|
|
151
|
+
logActivity('task_started', 'Processing message', { tabName: tab.name, details: prompt.slice(0, 500) });
|
|
150
152
|
// Budget check before spawning
|
|
151
153
|
if (this.config.claudeCode.maxBudgetUsd) {
|
|
152
154
|
const tabSpend = db.prepare('SELECT COALESCE(SUM(cost_usd), 0) as total FROM messages WHERE tab_id = ?').get(tab.id).total;
|
|
@@ -165,12 +167,21 @@ export class TabManager {
|
|
|
165
167
|
if (tabConfig?.approvalMode && tabConfig.approvalMode !== 'yolo') {
|
|
166
168
|
logger.warn(`Tab "${tab.name}" has approvalMode="${tabConfig.approvalMode}" — interactive approval not yet implemented, running in yolo mode`);
|
|
167
169
|
}
|
|
168
|
-
// Inject
|
|
169
|
-
const
|
|
170
|
+
// Inject knowledge from all three layers
|
|
171
|
+
const { getAllKnowledge, formatKnowledgeForContext } = await import('../knowledge/index.js');
|
|
172
|
+
const knowledge = getAllKnowledge(tab.workingDir, tab.name);
|
|
173
|
+
const knowledgeContext = formatKnowledgeForContext(knowledge);
|
|
170
174
|
let enrichedPrompt = prompt;
|
|
175
|
+
if (knowledgeContext) {
|
|
176
|
+
enrichedPrompt = `${knowledgeContext}\n\n${prompt}`;
|
|
177
|
+
}
|
|
178
|
+
// Also inject relevant memories as fallback (additive)
|
|
179
|
+
const memories = getRelevantMemories(tab.name);
|
|
171
180
|
if (memories.length > 0) {
|
|
172
181
|
const memoryContext = memories.map(m => `- ${m}`).join('\n');
|
|
173
|
-
|
|
182
|
+
if (!knowledgeContext) {
|
|
183
|
+
enrichedPrompt = `[Context from memory:\n${memoryContext}\n]\n\n${prompt}`;
|
|
184
|
+
}
|
|
174
185
|
}
|
|
175
186
|
// Store user message
|
|
176
187
|
db.prepare('INSERT INTO messages (tab_id, role, content) VALUES (?, ?, ?)')
|
|
@@ -269,13 +280,15 @@ export class TabManager {
|
|
|
269
280
|
// Update tab
|
|
270
281
|
db.prepare('UPDATE tabs SET status = ?, last_activity_at = ?, pid = NULL WHERE name = ?')
|
|
271
282
|
.run('idle', new Date().toISOString(), tab.name);
|
|
283
|
+
logActivity('task_completed', 'Message processed', { tabName: tab.name, durationMs: result.durationMs, costUsd: result.costUsd, details: result.text.slice(0, 500) });
|
|
272
284
|
// Context window compaction: if checkpoint was triggered, restart with summary
|
|
273
|
-
|
|
274
|
-
|
|
285
|
+
const currentDepth = compactionDepth ?? 0;
|
|
286
|
+
if (checkpointTriggered && !result.error && result.text && currentDepth < 2) {
|
|
287
|
+
logger.info(`[${tab.name}] Compacting context (depth ${currentDepth + 1}/2) — requesting summary then restarting session`);
|
|
275
288
|
this.onNotify?.(`🔄 [${tab.name}] Context window full — compacting and continuing...`).catch(err => logger.warn('Notify failed:', err));
|
|
276
289
|
// Ask Claude for a structured summary
|
|
277
290
|
const summaryPrompt = 'Summarize your progress in this session concisely: completed steps, current state, remaining steps, and all important identifiers (file paths, URLs, variable names). Output ONLY the summary.';
|
|
278
|
-
this.sendMessage(tab.name, summaryPrompt).then(summaryResult => {
|
|
291
|
+
this.sendMessage(tab.name, summaryPrompt, { _compactionDepth: currentDepth + 1 }).then(summaryResult => {
|
|
279
292
|
// Store summary as checkpoint memory
|
|
280
293
|
db.prepare('INSERT INTO memories (content, tab_name, source) VALUES (?, ?, ?)')
|
|
281
294
|
.run(`[checkpoint] ${summaryResult.text}`, tab.name, 'auto');
|
|
@@ -285,7 +298,7 @@ export class TabManager {
|
|
|
285
298
|
logger.info(`[${tab.name}] Context compacted — new session ${newSessionId.slice(0, 8)}...`);
|
|
286
299
|
// Continue with original goal using the summary as context
|
|
287
300
|
const continuationPrompt = `[CONTEXT RESTORED FROM PREVIOUS SESSION]\n${summaryResult.text}\n\n[Continue the original task: "${enrichedPrompt.slice(0, 500)}"]`;
|
|
288
|
-
this.sendMessage(tab.name, continuationPrompt, { onTextChunk }).then(resolve).catch(reject);
|
|
301
|
+
this.sendMessage(tab.name, continuationPrompt, { onTextChunk, _compactionDepth: currentDepth + 1 }).then(resolve).catch(reject);
|
|
289
302
|
}).catch(err => {
|
|
290
303
|
logger.error(`[${tab.name}] Compaction failed:`, err);
|
|
291
304
|
resolve(result); // Fall back to returning the original result
|
|
@@ -324,6 +337,7 @@ export class TabManager {
|
|
|
324
337
|
this.subprocesses.delete(tab.name);
|
|
325
338
|
this.circuitBreakers.delete(tab.name);
|
|
326
339
|
this.updateTabStatus(tab.name, 'error');
|
|
340
|
+
logActivity('task_failed', 'Message failed', { tabName: tab.name, details: err instanceof Error ? err.message : String(err) });
|
|
327
341
|
reject(err);
|
|
328
342
|
this.processNextInQueue(tab.name);
|
|
329
343
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/session/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/session/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export declare class ClaudeSubprocess {
|
|
|
11
11
|
private tabSystemPrompt?;
|
|
12
12
|
private proc;
|
|
13
13
|
private buffer;
|
|
14
|
+
private killTimer;
|
|
14
15
|
readonly sessionId: string;
|
|
15
16
|
constructor(tabName: string, workingDir: string, config: BeecorkConfig, sessionId?: string, tabSystemPrompt?: string | null | undefined);
|
|
16
17
|
send(prompt: string, callbacks: SubprocessCallbacks, resume?: boolean): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subprocess.d.ts","sourceRoot":"","sources":["../../src/session/subprocess.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAuB9D,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B;AAED,qBAAa,gBAAgB;
|
|
1
|
+
{"version":3,"file":"subprocess.d.ts","sourceRoot":"","sources":["../../src/session/subprocess.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAuB9D,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B;AAED,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IAEd,OAAO,CAAC,eAAe,CAAC;IAV1B,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAA8C;IAC/D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAGjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,MAAM,EACV,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,YAAA;IAKnC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDlG,IAAI,IAAI,IAAI;IAUZ,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,IAAI,CAEvB;IAED,OAAO,CAAC,SAAS;CAyClB"}
|
|
@@ -30,6 +30,7 @@ export class ClaudeSubprocess {
|
|
|
30
30
|
tabSystemPrompt;
|
|
31
31
|
proc = null;
|
|
32
32
|
buffer = '';
|
|
33
|
+
killTimer = null;
|
|
33
34
|
sessionId;
|
|
34
35
|
constructor(tabName, workingDir, config, sessionId, tabSystemPrompt) {
|
|
35
36
|
this.tabName = tabName;
|
|
@@ -80,6 +81,10 @@ export class ClaudeSubprocess {
|
|
|
80
81
|
});
|
|
81
82
|
this.proc.on('exit', (code) => {
|
|
82
83
|
this.proc = null;
|
|
84
|
+
if (this.killTimer) {
|
|
85
|
+
clearTimeout(this.killTimer);
|
|
86
|
+
this.killTimer = null;
|
|
87
|
+
}
|
|
83
88
|
logger.info(`[${this.tabName}] Claude subprocess exited (code: ${code})`);
|
|
84
89
|
callbacks.onExit(code);
|
|
85
90
|
});
|
|
@@ -90,7 +95,7 @@ export class ClaudeSubprocess {
|
|
|
90
95
|
logger.info(`[${this.tabName}] Killing subprocess (PID: ${this.proc.pid})`);
|
|
91
96
|
this.proc.kill('SIGTERM');
|
|
92
97
|
const proc = this.proc;
|
|
93
|
-
setTimeout(() => {
|
|
98
|
+
this.killTimer = setTimeout(() => {
|
|
94
99
|
try {
|
|
95
100
|
proc.kill('SIGKILL');
|
|
96
101
|
}
|
|
@@ -129,6 +134,9 @@ export class ClaudeSubprocess {
|
|
|
129
134
|
else {
|
|
130
135
|
args.push('--session-id', this.sessionId);
|
|
131
136
|
}
|
|
137
|
+
if (this.config.claudeCode.computerUse) {
|
|
138
|
+
args.push('--computer-use');
|
|
139
|
+
}
|
|
132
140
|
if (this.config.claudeCode.maxBudgetUsd) {
|
|
133
141
|
args.push('--max-budget-usd', String(this.config.claudeCode.maxBudgetUsd));
|
|
134
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../src/session/subprocess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGpD,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;6DAmB+B,CAAC;AAQ9D,MAAM,OAAO,gBAAgB;
|
|
1
|
+
{"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../src/session/subprocess.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** Reserved for future approval mode implementation. Not currently wired into the runtime. */
|
|
1
2
|
export type ToolRisk = 'safe' | 'dangerous';
|
|
2
3
|
/** Classify a tool call as safe or dangerous */
|
|
3
4
|
export declare function classifyTool(toolName: string, input: Record<string, unknown>): ToolRisk;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-classifier.d.ts","sourceRoot":"","sources":["../../src/session/tool-classifier.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAoC5C,gDAAgD;AAChD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAsBvF"}
|
|
1
|
+
{"version":3,"file":"tool-classifier.d.ts","sourceRoot":"","sources":["../../src/session/tool-classifier.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAoC5C,gDAAgD;AAChD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAsBvF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-classifier.js","sourceRoot":"","sources":["../../src/session/tool-classifier.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tool-classifier.js","sourceRoot":"","sources":["../../src/session/tool-classifier.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW;IACtD,YAAY,EAAE,SAAS,EAAE,UAAU;CACpC,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,OAAO,EAAE,MAAM,EAAE,cAAc;IAC/B,YAAY,EAAE,YAAY,EAAE,UAAU;CACvC,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG;IACzB,2DAA2D;IAC3D,mDAAmD;IACnD,kDAAkD;IAClD,yBAAyB;IACzB,4CAA4C;IAC5C,6CAA6C;IAC7C,qBAAqB;IACrB,kEAAkE;CACnE,CAAC;AAEF,MAAM,uBAAuB,GAAG;IAC9B,OAAO;IACP,4BAA4B;IAC5B,UAAU;IACV,UAAU;IACV,kDAAkD;IAClD,uCAAuC;IACvC,cAAc;IACd,2CAA2C;IAC3C,yBAAyB;IACzB,yCAAyC;CAC1C,CAAC;AAEF,gDAAgD;AAChD,MAAM,UAAU,YAAY,CAAC,QAAgB,EAAE,KAA8B;IAC3E,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,MAAM,CAAC;IAC5C,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAC;IAEtD,iCAAiC;IACjC,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,MAAM,CAAC;QAC3C,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,uBAAuB,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,WAAW,CAAC;QAChD,CAAC;QACD,+CAA+C;QAC/C,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,wDAAwD;IACxD,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,WAAW,CAAC;IAErD,sCAAsC;IACtC,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
|
+
import { exec } from 'node:child_process';
|
|
1
2
|
import type { TabManager, NotifyCallback } from '../session/manager.js';
|
|
2
|
-
export declare
|
|
3
|
+
export declare const execAsync: typeof exec.__promisify__;
|
|
4
|
+
export declare class TaskScheduler {
|
|
3
5
|
private tabManager;
|
|
4
6
|
private onNotify;
|
|
5
7
|
private scheduledJobs;
|
|
6
8
|
private store;
|
|
7
9
|
constructor(tabManager: TabManager, onNotify: NotifyCallback | null);
|
|
8
|
-
/** Load all
|
|
10
|
+
/** Load all tasks from store and schedule them */
|
|
9
11
|
loadAndSchedule(): void;
|
|
10
12
|
/** Check for the reload signal file and reload if present */
|
|
11
13
|
checkForReload(): void;
|
|
12
|
-
/** Stop all scheduled
|
|
14
|
+
/** Stop all scheduled tasks */
|
|
13
15
|
stopAll(): void;
|
|
14
16
|
private scheduleJob;
|
|
15
17
|
private fireJob;
|
|
16
18
|
private handleSystemEvent;
|
|
17
19
|
}
|
|
20
|
+
/** @deprecated Use TaskScheduler */
|
|
21
|
+
export { TaskScheduler as CronScheduler };
|
|
18
22
|
/** Convert human interval (30m, 2h, 1d, 1h30m, 2w) to milliseconds */
|
|
19
23
|
export declare function intervalToMs(interval: string): number | null;
|
|
20
24
|
/** Convert human interval (30m, 2h, 1d, 1h30m, 2w) to cron expression */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/tasks/scheduler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAK1C,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGxE,eAAO,MAAM,SAAS,2BAAkB,CAAC;AAMzC,qBAAa,aAAa;IAKtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,QAAQ;IALlB,OAAO,CAAC,aAAa,CAAqC;IAC1D,OAAO,CAAC,KAAK,CAAmB;gBAGtB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,cAAc,GAAG,IAAI;IAGzC,kDAAkD;IAClD,eAAe,IAAI,IAAI;IAiCvB,6DAA6D;IAC7D,cAAc,IAAI,IAAI;IAStB,+BAA+B;IAC/B,OAAO,IAAI,IAAI;IAOf,OAAO,CAAC,WAAW;YAmDL,OAAO;YAoDP,iBAAiB;CAehC;AAED,oCAAoC;AACpC,OAAO,EAAE,aAAa,IAAI,aAAa,EAAE,CAAC;AAE1C,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW5D;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyB9D"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import cron from 'node-cron';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
3
|
import path from 'node:path';
|
|
4
|
-
import {
|
|
4
|
+
import { exec } from 'node:child_process';
|
|
5
|
+
import { promisify } from 'node:util';
|
|
6
|
+
import { TaskStore } from './store.js';
|
|
5
7
|
import { getCronReloadSignalPath, getLogsDir } from '../util/paths.js';
|
|
6
8
|
import { logger } from '../util/logger.js';
|
|
7
|
-
export
|
|
9
|
+
export const execAsync = promisify(exec);
|
|
10
|
+
export class TaskScheduler {
|
|
8
11
|
tabManager;
|
|
9
12
|
onNotify;
|
|
10
13
|
scheduledJobs = new Map();
|
|
11
|
-
store = new
|
|
14
|
+
store = new TaskStore();
|
|
12
15
|
constructor(tabManager, onNotify) {
|
|
13
16
|
this.tabManager = tabManager;
|
|
14
17
|
this.onNotify = onNotify;
|
|
15
18
|
}
|
|
16
|
-
/** Load all
|
|
19
|
+
/** Load all tasks from store and schedule them */
|
|
17
20
|
loadAndSchedule() {
|
|
18
21
|
// Cancel existing
|
|
19
22
|
for (const [, task] of this.scheduledJobs) {
|
|
@@ -30,7 +33,7 @@ export class CronScheduler {
|
|
|
30
33
|
if (job.scheduleType === 'at' && !job.lastRunAt) {
|
|
31
34
|
const targetTime = new Date(job.schedule).getTime();
|
|
32
35
|
if (targetTime <= Date.now()) {
|
|
33
|
-
logger.warn(`
|
|
36
|
+
logger.warn(`Task: missed fire detected for "${job.name}" (was scheduled for ${job.schedule}), firing now`);
|
|
34
37
|
missedFires++;
|
|
35
38
|
this.fireJob(job);
|
|
36
39
|
this.store.update(job.id, { enabled: false }); // Disable after one-time execution
|
|
@@ -40,7 +43,7 @@ export class CronScheduler {
|
|
|
40
43
|
this.scheduleJob(job);
|
|
41
44
|
scheduled++;
|
|
42
45
|
}
|
|
43
|
-
logger.info(`
|
|
46
|
+
logger.info(`Tasks: loaded ${scheduled} active tasks (${jobs.length} total)${missedFires > 0 ? `, fired ${missedFires} missed` : ''}`);
|
|
44
47
|
}
|
|
45
48
|
/** Check for the reload signal file and reload if present */
|
|
46
49
|
checkForReload() {
|
|
@@ -50,11 +53,11 @@ export class CronScheduler {
|
|
|
50
53
|
fs.unlinkSync(signalPath);
|
|
51
54
|
}
|
|
52
55
|
catch { /* race condition, ok */ }
|
|
53
|
-
logger.info('
|
|
56
|
+
logger.info('Tasks: reload signal detected, reloading schedules');
|
|
54
57
|
this.loadAndSchedule();
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
|
-
/** Stop all scheduled
|
|
60
|
+
/** Stop all scheduled tasks */
|
|
58
61
|
stopAll() {
|
|
59
62
|
for (const [, task] of this.scheduledJobs) {
|
|
60
63
|
task.stop();
|
|
@@ -65,7 +68,7 @@ export class CronScheduler {
|
|
|
65
68
|
switch (job.scheduleType) {
|
|
66
69
|
case 'cron': {
|
|
67
70
|
if (!cron.validate(job.schedule)) {
|
|
68
|
-
logger.error(`
|
|
71
|
+
logger.error(`Task: invalid expression for "${job.name}": ${job.schedule}`);
|
|
69
72
|
return;
|
|
70
73
|
}
|
|
71
74
|
const task = cron.schedule(job.schedule, () => this.fireJob(job));
|
|
@@ -76,7 +79,7 @@ export class CronScheduler {
|
|
|
76
79
|
const cronExpr = intervalToCron(job.schedule);
|
|
77
80
|
if (cronExpr) {
|
|
78
81
|
if (!cron.validate(cronExpr)) {
|
|
79
|
-
logger.error(`
|
|
82
|
+
logger.error(`Task: invalid cron expression for "${job.name}": ${cronExpr}`);
|
|
80
83
|
return;
|
|
81
84
|
}
|
|
82
85
|
const task = cron.schedule(cronExpr, () => this.fireJob(job));
|
|
@@ -90,7 +93,7 @@ export class CronScheduler {
|
|
|
90
93
|
this.scheduledJobs.set(job.id, { stop: () => clearInterval(timer) });
|
|
91
94
|
}
|
|
92
95
|
else {
|
|
93
|
-
logger.error(`
|
|
96
|
+
logger.error(`Task: invalid interval for "${job.name}": ${job.schedule}`);
|
|
94
97
|
}
|
|
95
98
|
}
|
|
96
99
|
break;
|
|
@@ -99,7 +102,7 @@ export class CronScheduler {
|
|
|
99
102
|
const targetTime = new Date(job.schedule).getTime();
|
|
100
103
|
const delay = targetTime - Date.now();
|
|
101
104
|
if (delay <= 0) {
|
|
102
|
-
logger.warn(`
|
|
105
|
+
logger.warn(`Task: one-time task "${job.name}" is in the past, skipping`);
|
|
103
106
|
return;
|
|
104
107
|
}
|
|
105
108
|
const timer = setTimeout(() => {
|
|
@@ -112,9 +115,9 @@ export class CronScheduler {
|
|
|
112
115
|
}
|
|
113
116
|
}
|
|
114
117
|
async fireJob(job) {
|
|
115
|
-
logger.info(`
|
|
116
|
-
const logFile = path.join(getLogsDir(), `
|
|
117
|
-
// Handle systemEvent
|
|
118
|
+
logger.info(`Task firing: "${job.name}" (${job.payloadType || 'agentTurn'}) -> tab:${job.tabName}`);
|
|
119
|
+
const logFile = path.join(getLogsDir(), `task-${job.name}.log`);
|
|
120
|
+
// Handle systemEvent -- internal Beecork actions, not Claude Code
|
|
118
121
|
if (job.payloadType === 'systemEvent') {
|
|
119
122
|
try {
|
|
120
123
|
await this.handleSystemEvent(job);
|
|
@@ -135,27 +138,27 @@ export class CronScheduler {
|
|
|
135
138
|
const firstLine = result.text.split('\n')[0]?.slice(0, 200) || '(no output)';
|
|
136
139
|
// Log result
|
|
137
140
|
fs.appendFileSync(logFile, `[${new Date().toISOString()}] SUCCESS: ${firstLine}\n`);
|
|
138
|
-
// Notify (separate try/catch
|
|
141
|
+
// Notify (separate try/catch -- notification failure shouldn't be reported as job failure)
|
|
139
142
|
try {
|
|
140
143
|
if (this.onNotify) {
|
|
141
144
|
if (result.error) {
|
|
142
|
-
await this.onNotify(
|
|
145
|
+
await this.onNotify(`[${job.name}] Failed -- ${firstLine}`);
|
|
143
146
|
}
|
|
144
147
|
else {
|
|
145
|
-
await this.onNotify(
|
|
148
|
+
await this.onNotify(`[${job.name}] Done -- ${firstLine}`);
|
|
146
149
|
}
|
|
147
150
|
}
|
|
148
151
|
}
|
|
149
152
|
catch (notifyErr) {
|
|
150
|
-
logger.warn(`
|
|
153
|
+
logger.warn(`Task "${job.name}" notification failed:`, notifyErr);
|
|
151
154
|
}
|
|
152
155
|
}
|
|
153
156
|
catch (err) {
|
|
154
157
|
const errMsg = err instanceof Error ? err.message : String(err);
|
|
155
|
-
logger.error(`
|
|
158
|
+
logger.error(`Task "${job.name}" failed:`, err);
|
|
156
159
|
fs.appendFileSync(logFile, `[${new Date().toISOString()}] ERROR: ${errMsg}\n`);
|
|
157
160
|
try {
|
|
158
|
-
await this.onNotify?.(
|
|
161
|
+
await this.onNotify?.(`[${job.name}] Failed -- ${errMsg}`);
|
|
159
162
|
}
|
|
160
163
|
catch { /* notification best-effort */ }
|
|
161
164
|
}
|
|
@@ -163,9 +166,9 @@ export class CronScheduler {
|
|
|
163
166
|
async handleSystemEvent(job) {
|
|
164
167
|
switch (job.message) {
|
|
165
168
|
case 'health_check':
|
|
166
|
-
logger.info('System event: health check
|
|
169
|
+
logger.info('System event: health check -- daemon alive');
|
|
167
170
|
if (this.onNotify) {
|
|
168
|
-
await this.onNotify('
|
|
171
|
+
await this.onNotify('Beecork health check: all systems operational');
|
|
169
172
|
}
|
|
170
173
|
break;
|
|
171
174
|
case 'memory_compaction':
|
|
@@ -176,6 +179,8 @@ export class CronScheduler {
|
|
|
176
179
|
}
|
|
177
180
|
}
|
|
178
181
|
}
|
|
182
|
+
/** @deprecated Use TaskScheduler */
|
|
183
|
+
export { TaskScheduler as CronScheduler };
|
|
179
184
|
/** Convert human interval (30m, 2h, 1d, 1h30m, 2w) to milliseconds */
|
|
180
185
|
export function intervalToMs(interval) {
|
|
181
186
|
const match = interval.match(/^(?:(\d+)w)?(?:(\d+)d)?(?:(\d+)h)?(?:(\d+)m)?$/);
|
|
@@ -214,7 +219,7 @@ export function intervalToCron(interval) {
|
|
|
214
219
|
// Weekly intervals
|
|
215
220
|
if (mins === 0 && hours === 0 && days === 0 && weeks > 0)
|
|
216
221
|
return `0 0 * * 0`;
|
|
217
|
-
// Combined or large intervals
|
|
222
|
+
// Combined or large intervals -- return null, handled by setInterval in scheduleJob
|
|
218
223
|
return null;
|
|
219
224
|
}
|
|
220
225
|
//# sourceMappingURL=scheduler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/tasks/scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Task } from '../types.js';
|
|
2
|
+
export declare class TaskStore {
|
|
3
|
+
constructor();
|
|
4
|
+
list(): Task[];
|
|
5
|
+
get(id: string): Task | undefined;
|
|
6
|
+
add(job: Task): void;
|
|
7
|
+
update(id: string, updates: Partial<Task>): boolean;
|
|
8
|
+
delete(id: string): boolean;
|
|
9
|
+
/** One-time migration from crontab.json to SQLite */
|
|
10
|
+
private migrateFromJson;
|
|
11
|
+
}
|
|
12
|
+
/** @deprecated Use TaskStore */
|
|
13
|
+
export { TaskStore as CronStore };
|
|
14
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/tasks/store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAqBxC,qBAAa,SAAS;;IAKpB,IAAI,IAAI,IAAI,EAAE;IAKd,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAMjC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IASpB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO;IAanD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAM3B,qDAAqD;IACrD,OAAO,CAAC,eAAe;CAkCxB;AAED,gCAAgC;AAChC,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -2,7 +2,7 @@ import fs from 'node:fs';
|
|
|
2
2
|
import { getDb } from '../db/index.js';
|
|
3
3
|
import { getCrontabPath } from '../util/paths.js';
|
|
4
4
|
import { logger } from '../util/logger.js';
|
|
5
|
-
function
|
|
5
|
+
function rowToTask(row) {
|
|
6
6
|
return {
|
|
7
7
|
id: row.id, name: row.name,
|
|
8
8
|
scheduleType: row.schedule_type,
|
|
@@ -12,23 +12,23 @@ function rowToJob(row) {
|
|
|
12
12
|
lastRunAt: row.last_run_at, nextRunAt: row.next_run_at,
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
|
-
export class
|
|
15
|
+
export class TaskStore {
|
|
16
16
|
constructor() {
|
|
17
17
|
this.migrateFromJson();
|
|
18
18
|
}
|
|
19
19
|
list() {
|
|
20
20
|
const db = getDb();
|
|
21
|
-
return db.prepare('SELECT * FROM
|
|
21
|
+
return db.prepare('SELECT * FROM tasks WHERE user_id = ? ORDER BY created_at').all('local').map(rowToTask);
|
|
22
22
|
}
|
|
23
23
|
get(id) {
|
|
24
24
|
const db = getDb();
|
|
25
|
-
const row = db.prepare('SELECT * FROM
|
|
26
|
-
return row ?
|
|
25
|
+
const row = db.prepare('SELECT * FROM tasks WHERE id = ?').get(id);
|
|
26
|
+
return row ? rowToTask(row) : undefined;
|
|
27
27
|
}
|
|
28
28
|
add(job) {
|
|
29
29
|
const db = getDb();
|
|
30
|
-
db.prepare(`INSERT INTO
|
|
31
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(job.id, job.name, job.scheduleType, job.schedule, job.tabName, job.message, job.enabled ? 1 : 0, 'local', job.createdAt, job.lastRunAt, job.nextRunAt);
|
|
30
|
+
db.prepare(`INSERT INTO tasks (id, name, schedule_type, schedule, tab_name, message, payload_type, enabled, user_id, created_at, last_run_at, next_run_at)
|
|
31
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(job.id, job.name, job.scheduleType, job.schedule, job.tabName, job.message, job.payloadType || 'agentTurn', job.enabled ? 1 : 0, 'local', job.createdAt, job.lastRunAt, job.nextRunAt);
|
|
32
32
|
}
|
|
33
33
|
update(id, updates) {
|
|
34
34
|
const db = getDb();
|
|
@@ -36,12 +36,12 @@ export class CronStore {
|
|
|
36
36
|
if (!existing)
|
|
37
37
|
return false;
|
|
38
38
|
const merged = { ...existing, ...updates };
|
|
39
|
-
db.prepare(`UPDATE
|
|
39
|
+
db.prepare(`UPDATE tasks SET name=?, schedule_type=?, schedule=?, tab_name=?, message=?, enabled=?, last_run_at=?, next_run_at=? WHERE id=?`).run(merged.name, merged.scheduleType, merged.schedule, merged.tabName, merged.message, merged.enabled ? 1 : 0, merged.lastRunAt, merged.nextRunAt, id);
|
|
40
40
|
return true;
|
|
41
41
|
}
|
|
42
42
|
delete(id) {
|
|
43
43
|
const db = getDb();
|
|
44
|
-
const result = db.prepare('DELETE FROM
|
|
44
|
+
const result = db.prepare('DELETE FROM tasks WHERE id = ?').run(id);
|
|
45
45
|
return result.changes > 0;
|
|
46
46
|
}
|
|
47
47
|
/** One-time migration from crontab.json to SQLite */
|
|
@@ -50,7 +50,7 @@ export class CronStore {
|
|
|
50
50
|
if (!fs.existsSync(jsonPath))
|
|
51
51
|
return;
|
|
52
52
|
const db = getDb();
|
|
53
|
-
const count = db.prepare('SELECT COUNT(*) as count FROM
|
|
53
|
+
const count = db.prepare('SELECT COUNT(*) as count FROM tasks').get();
|
|
54
54
|
if (count.count > 0) {
|
|
55
55
|
// Already migrated, clean up JSON
|
|
56
56
|
try {
|
|
@@ -64,7 +64,7 @@ export class CronStore {
|
|
|
64
64
|
const jobs = data.jobs || [];
|
|
65
65
|
if (jobs.length === 0)
|
|
66
66
|
return;
|
|
67
|
-
const insert = db.prepare(`INSERT OR IGNORE INTO
|
|
67
|
+
const insert = db.prepare(`INSERT OR IGNORE INTO tasks (id, name, schedule_type, schedule, tab_name, message, enabled, user_id, created_at, last_run_at, next_run_at)
|
|
68
68
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
|
|
69
69
|
const tx = db.transaction(() => {
|
|
70
70
|
for (const j of jobs) {
|
|
@@ -73,11 +73,13 @@ export class CronStore {
|
|
|
73
73
|
});
|
|
74
74
|
tx();
|
|
75
75
|
fs.renameSync(jsonPath, jsonPath + '.bak');
|
|
76
|
-
logger.info(`Migrated ${jobs.length}
|
|
76
|
+
logger.info(`Migrated ${jobs.length} tasks from JSON to SQLite`);
|
|
77
77
|
}
|
|
78
78
|
catch (err) {
|
|
79
|
-
logger.error('Failed to migrate
|
|
79
|
+
logger.error('Failed to migrate tasks from JSON:', err);
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
+
/** @deprecated Use TaskStore */
|
|
84
|
+
export { TaskStore as CronStore };
|
|
83
85
|
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/tasks/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/timeline/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|