@opengoat/core 2026.2.18-2 → 2026.2.19
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/core/agents/application/agent.service.d.ts +2 -0
- package/dist/core/agents/application/agent.service.js +32 -9
- package/dist/core/agents/application/agent.service.js.map +1 -1
- package/dist/core/boards/application/board.service.d.ts +5 -1
- package/dist/core/boards/application/board.service.js +115 -29
- package/dist/core/boards/application/board.service.js.map +1 -1
- package/dist/core/boards/domain/board.d.ts +1 -2
- package/dist/core/opengoat/application/opengoat.service.d.ts +6 -1
- package/dist/core/opengoat/application/opengoat.service.helpers.d.ts +52 -0
- package/dist/core/opengoat/application/opengoat.service.helpers.js +129 -3
- package/dist/core/opengoat/application/opengoat.service.helpers.js.map +1 -1
- package/dist/core/opengoat/application/opengoat.service.js +229 -45
- package/dist/core/opengoat/application/opengoat.service.js.map +1 -1
- package/dist/core/orchestration/application/orchestration.service.js +6 -1
- package/dist/core/orchestration/application/orchestration.service.js.map +1 -1
- package/dist/core/providers/application/provider.service.d.ts +3 -0
- package/dist/core/providers/application/provider.service.js +126 -0
- package/dist/core/providers/application/provider.service.js.map +1 -1
- package/dist/core/providers/cli-provider.d.ts +1 -0
- package/dist/core/providers/cli-provider.js +11 -8
- package/dist/core/providers/cli-provider.js.map +1 -1
- package/dist/core/providers/openclaw-gateway-rpc.js +70 -17
- package/dist/core/providers/openclaw-gateway-rpc.js.map +1 -1
- package/dist/core/providers/providers/codex/provider.d.ts +1 -0
- package/dist/core/providers/providers/codex/provider.js +24 -0
- package/dist/core/providers/providers/codex/provider.js.map +1 -1
- package/dist/core/providers/types.d.ts +1 -0
- package/dist/core/templates/assets/skills/og-board-manager/SKILL.md +3 -6
- package/package.json +1 -1
|
@@ -25,6 +25,8 @@ export interface AgentWorkspaceBootstrapInput {
|
|
|
25
25
|
}
|
|
26
26
|
export interface AgentWorkspaceBootstrapOptions {
|
|
27
27
|
syncBootstrapMarkdown?: boolean;
|
|
28
|
+
keepFirstRunSection?: boolean;
|
|
29
|
+
removeBootstrapMarkdownWhenDisabled?: boolean;
|
|
28
30
|
roleSkillDirectories?: string[];
|
|
29
31
|
managedRoleSkillDirectories?: string[];
|
|
30
32
|
roleSkillIdsByType?: RoleSkillIdsByType;
|
|
@@ -92,7 +92,9 @@ export class AgentService {
|
|
|
92
92
|
const removedPaths = [];
|
|
93
93
|
await this.ensureDirectory(workspaceDir, createdPaths, skippedPaths);
|
|
94
94
|
await this.writeOpenGoatWorkspaceShim(workspaceDir, createdPaths, skippedPaths);
|
|
95
|
-
await this.rewriteAgentsMarkdown(agentsPath,
|
|
95
|
+
await this.rewriteAgentsMarkdown(agentsPath, {
|
|
96
|
+
keepFirstRunSection: options.keepFirstRunSection ?? isDefaultAgentId(normalizedAgentId),
|
|
97
|
+
}, createdPaths, skippedPaths);
|
|
96
98
|
await this.writeRoleMarkdown(rolePath, {
|
|
97
99
|
agentId: normalizedAgentId,
|
|
98
100
|
displayName: input.displayName.trim() || normalizedAgentId,
|
|
@@ -111,7 +113,12 @@ export class AgentService {
|
|
|
111
113
|
await this.writeBootstrapMarkdown(bootstrapPath, createdPaths, skippedPaths);
|
|
112
114
|
}
|
|
113
115
|
else if (isDefaultAgentId(normalizedAgentId)) {
|
|
114
|
-
|
|
116
|
+
if (options.removeBootstrapMarkdownWhenDisabled) {
|
|
117
|
+
await this.removePathIfExists(bootstrapPath, removedPaths, skippedPaths);
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
skippedPaths.push(bootstrapPath);
|
|
121
|
+
}
|
|
115
122
|
}
|
|
116
123
|
else {
|
|
117
124
|
await this.removePathIfExists(bootstrapPath, removedPaths, skippedPaths);
|
|
@@ -382,16 +389,18 @@ export class AgentService {
|
|
|
382
389
|
}
|
|
383
390
|
createdPaths.push(filePath);
|
|
384
391
|
}
|
|
385
|
-
async rewriteAgentsMarkdown(filePath,
|
|
392
|
+
async rewriteAgentsMarkdown(filePath, options, createdPaths, skippedPaths) {
|
|
386
393
|
const exists = await this.fileSystem.exists(filePath);
|
|
387
394
|
if (!exists) {
|
|
388
395
|
skippedPaths.push(filePath);
|
|
389
396
|
return;
|
|
390
397
|
}
|
|
391
398
|
const source = await this.fileSystem.readFile(filePath);
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
399
|
+
if (hasOrganizationSectionHeading(source)) {
|
|
400
|
+
skippedPaths.push(filePath);
|
|
401
|
+
return;
|
|
402
|
+
}
|
|
403
|
+
const next = normalizeAgentsMarkdown(source, options);
|
|
395
404
|
if (source === next) {
|
|
396
405
|
skippedPaths.push(filePath);
|
|
397
406
|
return;
|
|
@@ -629,15 +638,24 @@ function normalizeAgentsMarkdown(markdown, options) {
|
|
|
629
638
|
const withFirstRunApplied = options.keepFirstRunSection
|
|
630
639
|
? markdown
|
|
631
640
|
: rewriteSecondLevelSection(markdown, /^##\s+first run\s*$/i, null);
|
|
632
|
-
return rewriteSecondLevelSection(withFirstRunApplied, /^##\s+every session\s*$/i, EVERY_SESSION_SECTION_LINES
|
|
641
|
+
return rewriteSecondLevelSection(withFirstRunApplied, /^##\s+every session\s*$/i, EVERY_SESSION_SECTION_LINES, {
|
|
642
|
+
consumeFollowingHeadingPatterns: [
|
|
643
|
+
/^##\s+the organization\s*$/i,
|
|
644
|
+
/^##\s+repositories\s*$/i,
|
|
645
|
+
],
|
|
646
|
+
});
|
|
647
|
+
}
|
|
648
|
+
function hasOrganizationSectionHeading(markdown) {
|
|
649
|
+
return /the organization/i.test(markdown);
|
|
633
650
|
}
|
|
634
|
-
function rewriteSecondLevelSection(markdown, headingPattern, replacementLines) {
|
|
651
|
+
function rewriteSecondLevelSection(markdown, headingPattern, replacementLines, options = {}) {
|
|
635
652
|
const lineBreak = markdown.includes("\r\n") ? "\r\n" : "\n";
|
|
636
653
|
const lines = markdown.split(/\r?\n/);
|
|
637
654
|
const hasTrailingLineBreak = /\r?\n$/.test(markdown);
|
|
638
655
|
const kept = [];
|
|
639
656
|
let index = 0;
|
|
640
657
|
let replaced = false;
|
|
658
|
+
const consumeFollowingHeadingPatterns = options.consumeFollowingHeadingPatterns ?? [];
|
|
641
659
|
while (index < lines.length) {
|
|
642
660
|
const line = lines[index];
|
|
643
661
|
if (line === undefined) {
|
|
@@ -653,7 +671,12 @@ function rewriteSecondLevelSection(markdown, headingPattern, replacementLines) {
|
|
|
653
671
|
index += 1;
|
|
654
672
|
while (index < lines.length) {
|
|
655
673
|
const nextLine = lines[index];
|
|
656
|
-
|
|
674
|
+
const nextTrimmed = nextLine?.trim() ?? "";
|
|
675
|
+
const isSecondLevelHeading = /^##\s+/.test(nextTrimmed);
|
|
676
|
+
const shouldConsumeFollowingHeading = isSecondLevelHeading &&
|
|
677
|
+
(headingPattern.test(nextTrimmed) ||
|
|
678
|
+
consumeFollowingHeadingPatterns.some((pattern) => pattern.test(nextTrimmed)));
|
|
679
|
+
if (isSecondLevelHeading && !shouldConsumeFollowingHeading) {
|
|
657
680
|
break;
|
|
658
681
|
}
|
|
659
682
|
index += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.service.js","sourceRoot":"","sources":["../../../../src/core/agents/application/agent.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.service.js","sourceRoot":"","sources":["../../../../src/core/agents/application/agent.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,8 @@ export declare class BoardService {
|
|
|
41
41
|
}>;
|
|
42
42
|
updateTaskStatus(paths: OpenGoatPaths, actorId: string, taskId: string, status: string, reason?: string): Promise<TaskRecord>;
|
|
43
43
|
listPendingTaskIdsOlderThan(paths: OpenGoatPaths, olderThanMinutes: number): Promise<string[]>;
|
|
44
|
+
listDoingTaskIdsOlderThan(paths: OpenGoatPaths, olderThanMinutes: number): Promise<string[]>;
|
|
45
|
+
resetTaskStatusTimeout(paths: OpenGoatPaths, taskId: string, status: string): Promise<boolean>;
|
|
44
46
|
addTaskBlocker(paths: OpenGoatPaths, actorId: string, taskId: string, blocker: string): Promise<TaskRecord>;
|
|
45
47
|
addTaskArtifact(paths: OpenGoatPaths, actorId: string, taskId: string, content: string): Promise<TaskRecord>;
|
|
46
48
|
addTaskWorklog(paths: OpenGoatPaths, actorId: string, taskId: string, content: string): Promise<TaskRecord>;
|
|
@@ -58,9 +60,11 @@ export declare class BoardService {
|
|
|
58
60
|
private execute;
|
|
59
61
|
private queryAll;
|
|
60
62
|
private queryOne;
|
|
61
|
-
private
|
|
63
|
+
private ensureTaskProjectColumnRemoved;
|
|
62
64
|
private ensureTaskStatusReasonColumn;
|
|
63
65
|
private ensureTaskStatusUpdatedAtColumn;
|
|
66
|
+
private ensureTaskUpdatedAtColumn;
|
|
64
67
|
private ensureBoardDefaultColumn;
|
|
68
|
+
private touchTaskUpdatedAt;
|
|
65
69
|
}
|
|
66
70
|
export {};
|
|
@@ -4,7 +4,6 @@ import { createRequire } from "node:module";
|
|
|
4
4
|
import initSqlJs from "sql.js";
|
|
5
5
|
import { DEFAULT_AGENT_ID, normalizeAgentId } from "../../domain/agent-id.js";
|
|
6
6
|
const TASK_STATUSES = ["todo", "doing", "pending", "blocked", "done"];
|
|
7
|
-
const DEFAULT_TASK_PROJECT = "~";
|
|
8
7
|
const MAX_TASK_LIST_LIMIT = 100;
|
|
9
8
|
const INTERNAL_TASK_BUCKET_ID = "tasks";
|
|
10
9
|
const INTERNAL_TASK_BUCKET_TITLE = "Tasks";
|
|
@@ -50,15 +49,14 @@ export class BoardService {
|
|
|
50
49
|
throw new Error("Agents can only assign tasks to themselves or their reportees (direct or indirect).");
|
|
51
50
|
}
|
|
52
51
|
const status = normalizeTaskStatus(options.status);
|
|
53
|
-
const project = normalizeTaskProject(options.project);
|
|
54
52
|
const taskId = createEntityId(`task-${title}`);
|
|
55
53
|
const createdAt = this.nowIso();
|
|
56
54
|
this.execute(db, `INSERT INTO tasks (
|
|
57
55
|
task_id,
|
|
58
56
|
board_id,
|
|
59
57
|
created_at,
|
|
58
|
+
updated_at,
|
|
60
59
|
status_updated_at,
|
|
61
|
-
project,
|
|
62
60
|
owner_agent_id,
|
|
63
61
|
assigned_to_agent_id,
|
|
64
62
|
title,
|
|
@@ -70,7 +68,7 @@ export class BoardService {
|
|
|
70
68
|
INTERNAL_TASK_BUCKET_ID,
|
|
71
69
|
createdAt,
|
|
72
70
|
createdAt,
|
|
73
|
-
|
|
71
|
+
createdAt,
|
|
74
72
|
normalizedActorId,
|
|
75
73
|
assignedTo,
|
|
76
74
|
title,
|
|
@@ -86,12 +84,12 @@ export class BoardService {
|
|
|
86
84
|
const limit = resolveTaskListLimit(options.limit);
|
|
87
85
|
const assignee = normalizeOptionalAssignee(options.assignee);
|
|
88
86
|
const rows = assignee
|
|
89
|
-
? this.queryAll(db, `SELECT task_id, board_id, created_at,
|
|
87
|
+
? this.queryAll(db, `SELECT task_id, board_id, created_at, updated_at, status_updated_at, owner_agent_id, assigned_to_agent_id, title, description, status, status_reason
|
|
90
88
|
FROM tasks
|
|
91
89
|
WHERE assigned_to_agent_id = ?
|
|
92
90
|
ORDER BY created_at DESC, task_id DESC
|
|
93
91
|
LIMIT ?`, [assignee, limit])
|
|
94
|
-
: this.queryAll(db, `SELECT task_id, board_id, created_at,
|
|
92
|
+
: this.queryAll(db, `SELECT task_id, board_id, created_at, updated_at, status_updated_at, owner_agent_id, assigned_to_agent_id, title, description, status, status_reason
|
|
95
93
|
FROM tasks
|
|
96
94
|
ORDER BY created_at DESC, task_id DESC
|
|
97
95
|
LIMIT ?`, [limit]);
|
|
@@ -126,7 +124,7 @@ export class BoardService {
|
|
|
126
124
|
const whereClause = conditions.length > 0 ? `WHERE ${conditions.join(" AND ")}` : "";
|
|
127
125
|
const countRow = this.queryOne(db, `SELECT COUNT(*) as count FROM tasks ${whereClause}`, params);
|
|
128
126
|
const total = countRow?.count ?? 0;
|
|
129
|
-
const rows = this.queryAll(db, `SELECT task_id, board_id, created_at,
|
|
127
|
+
const rows = this.queryAll(db, `SELECT task_id, board_id, created_at, updated_at, status_updated_at, owner_agent_id, assigned_to_agent_id, title, description, status, status_reason
|
|
130
128
|
FROM tasks
|
|
131
129
|
${whereClause}
|
|
132
130
|
ORDER BY created_at DESC, task_id DESC
|
|
@@ -187,9 +185,10 @@ export class BoardService {
|
|
|
187
185
|
this.assertTaskUpdatePermission(task, normalizedActorId, manifests);
|
|
188
186
|
const nextStatus = normalizeTaskStatus(status, true);
|
|
189
187
|
const nextStatusReason = normalizeTaskStatusReason(nextStatus, reason);
|
|
188
|
+
const updatedAt = this.nowIso();
|
|
190
189
|
this.execute(db, `UPDATE tasks
|
|
191
|
-
SET status = ?, status_reason = ?, status_updated_at = ?
|
|
192
|
-
WHERE task_id = ?`, [nextStatus, nextStatusReason,
|
|
190
|
+
SET status = ?, status_reason = ?, updated_at = ?, status_updated_at = ?
|
|
191
|
+
WHERE task_id = ?`, [nextStatus, nextStatusReason, updatedAt, updatedAt, resolvedTaskId]);
|
|
193
192
|
await this.persistDatabase(paths, db);
|
|
194
193
|
return this.requireTask(db, resolvedTaskId);
|
|
195
194
|
}
|
|
@@ -208,6 +207,33 @@ export class BoardService {
|
|
|
208
207
|
ORDER BY COALESCE(status_updated_at, created_at) ASC, task_id ASC`, [cutoffIso]);
|
|
209
208
|
return rows.map((row) => row.task_id);
|
|
210
209
|
}
|
|
210
|
+
async listDoingTaskIdsOlderThan(paths, olderThanMinutes) {
|
|
211
|
+
if (!Number.isFinite(olderThanMinutes) || olderThanMinutes <= 0) {
|
|
212
|
+
return [];
|
|
213
|
+
}
|
|
214
|
+
const db = await this.getDatabase(paths);
|
|
215
|
+
const nowMs = Date.parse(this.nowIso());
|
|
216
|
+
const referenceNowMs = Number.isFinite(nowMs) ? nowMs : Date.now();
|
|
217
|
+
const cutoffIso = new Date(referenceNowMs - Math.floor(olderThanMinutes) * 60_000).toISOString();
|
|
218
|
+
const rows = this.queryAll(db, `SELECT task_id
|
|
219
|
+
FROM tasks
|
|
220
|
+
WHERE status = 'doing'
|
|
221
|
+
AND COALESCE(status_updated_at, created_at) <= ?
|
|
222
|
+
ORDER BY COALESCE(status_updated_at, created_at) ASC, task_id ASC`, [cutoffIso]);
|
|
223
|
+
return rows.map((row) => row.task_id);
|
|
224
|
+
}
|
|
225
|
+
async resetTaskStatusTimeout(paths, taskId, status) {
|
|
226
|
+
const db = await this.getDatabase(paths);
|
|
227
|
+
const normalizedStatus = normalizeTaskStatus(status, true);
|
|
228
|
+
const resolvedTaskId = this.resolveTaskId(db, taskId);
|
|
229
|
+
const now = this.nowIso();
|
|
230
|
+
this.execute(db, `UPDATE tasks
|
|
231
|
+
SET status_updated_at = ?
|
|
232
|
+
WHERE task_id = ? AND status = ?`, [now, resolvedTaskId, normalizedStatus]);
|
|
233
|
+
const changesRow = this.queryOne(db, "SELECT changes() as changed");
|
|
234
|
+
await this.persistDatabase(paths, db);
|
|
235
|
+
return (changesRow?.changed ?? 0) > 0;
|
|
236
|
+
}
|
|
211
237
|
async addTaskBlocker(paths, actorId, taskId, blocker) {
|
|
212
238
|
const db = await this.getDatabase(paths);
|
|
213
239
|
const normalizedActorId = normalizeAgentId(actorId) || DEFAULT_AGENT_ID;
|
|
@@ -221,6 +247,7 @@ export class BoardService {
|
|
|
221
247
|
this.assertTaskUpdatePermission(task, normalizedActorId, manifests);
|
|
222
248
|
this.execute(db, `INSERT INTO task_blockers (task_id, created_at, created_by_agent_id, content)
|
|
223
249
|
VALUES (?, ?, ?, ?)`, [resolvedTaskId, this.nowIso(), normalizedActorId, content]);
|
|
250
|
+
this.touchTaskUpdatedAt(db, resolvedTaskId);
|
|
224
251
|
await this.persistDatabase(paths, db);
|
|
225
252
|
return this.requireTask(db, resolvedTaskId);
|
|
226
253
|
}
|
|
@@ -237,6 +264,7 @@ export class BoardService {
|
|
|
237
264
|
this.assertTaskUpdatePermission(task, normalizedActorId, manifests);
|
|
238
265
|
this.execute(db, `INSERT INTO task_artifacts (task_id, created_at, created_by_agent_id, content)
|
|
239
266
|
VALUES (?, ?, ?, ?)`, [resolvedTaskId, this.nowIso(), normalizedActorId, cleaned]);
|
|
267
|
+
this.touchTaskUpdatedAt(db, resolvedTaskId);
|
|
240
268
|
await this.persistDatabase(paths, db);
|
|
241
269
|
return this.requireTask(db, resolvedTaskId);
|
|
242
270
|
}
|
|
@@ -253,6 +281,7 @@ export class BoardService {
|
|
|
253
281
|
this.assertTaskUpdatePermission(task, normalizedActorId, manifests);
|
|
254
282
|
this.execute(db, `INSERT INTO task_worklog (task_id, created_at, created_by_agent_id, content)
|
|
255
283
|
VALUES (?, ?, ?, ?)`, [resolvedTaskId, this.nowIso(), normalizedActorId, cleaned]);
|
|
284
|
+
this.touchTaskUpdatedAt(db, resolvedTaskId);
|
|
256
285
|
await this.persistDatabase(paths, db);
|
|
257
286
|
return this.requireTask(db, resolvedTaskId);
|
|
258
287
|
}
|
|
@@ -274,7 +303,7 @@ export class BoardService {
|
|
|
274
303
|
return tasks;
|
|
275
304
|
}
|
|
276
305
|
requireTask(db, taskId) {
|
|
277
|
-
const row = this.queryOne(db, `SELECT task_id, board_id, created_at,
|
|
306
|
+
const row = this.queryOne(db, `SELECT task_id, board_id, created_at, updated_at, status_updated_at, owner_agent_id, assigned_to_agent_id, title, description, status, status_reason
|
|
278
307
|
FROM tasks
|
|
279
308
|
WHERE task_id = ?`, [taskId]);
|
|
280
309
|
if (!row) {
|
|
@@ -318,7 +347,9 @@ export class BoardService {
|
|
|
318
347
|
return {
|
|
319
348
|
taskId: row.task_id,
|
|
320
349
|
createdAt: row.created_at,
|
|
321
|
-
|
|
350
|
+
updatedAt: row.updated_at?.trim() ||
|
|
351
|
+
row.status_updated_at?.trim() ||
|
|
352
|
+
row.created_at,
|
|
322
353
|
owner: row.owner_agent_id,
|
|
323
354
|
assignedTo: row.assigned_to_agent_id,
|
|
324
355
|
title: row.title,
|
|
@@ -366,8 +397,8 @@ export class BoardService {
|
|
|
366
397
|
task_id TEXT PRIMARY KEY,
|
|
367
398
|
board_id TEXT NOT NULL,
|
|
368
399
|
created_at TEXT NOT NULL,
|
|
400
|
+
updated_at TEXT NOT NULL,
|
|
369
401
|
status_updated_at TEXT,
|
|
370
|
-
project TEXT NOT NULL DEFAULT '${DEFAULT_TASK_PROJECT}',
|
|
371
402
|
owner_agent_id TEXT NOT NULL,
|
|
372
403
|
assigned_to_agent_id TEXT NOT NULL,
|
|
373
404
|
title TEXT NOT NULL,
|
|
@@ -376,9 +407,10 @@ export class BoardService {
|
|
|
376
407
|
status_reason TEXT,
|
|
377
408
|
FOREIGN KEY(board_id) REFERENCES boards(board_id) ON DELETE CASCADE
|
|
378
409
|
);`);
|
|
379
|
-
this.ensureTaskProjectColumn(db);
|
|
380
410
|
this.ensureTaskStatusReasonColumn(db);
|
|
381
411
|
this.ensureTaskStatusUpdatedAtColumn(db);
|
|
412
|
+
this.ensureTaskProjectColumnRemoved(db);
|
|
413
|
+
this.ensureTaskUpdatedAtColumn(db);
|
|
382
414
|
this.execute(db, `CREATE TABLE IF NOT EXISTS task_blockers (
|
|
383
415
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
384
416
|
task_id TEXT NOT NULL,
|
|
@@ -481,19 +513,64 @@ export class BoardService {
|
|
|
481
513
|
const all = this.queryAll(db, sql, params);
|
|
482
514
|
return all[0];
|
|
483
515
|
}
|
|
484
|
-
|
|
516
|
+
ensureTaskProjectColumnRemoved(db) {
|
|
485
517
|
const columns = this.queryAll(db, "PRAGMA table_info(tasks);");
|
|
486
518
|
const hasProject = columns.some((column) => column.name === "project");
|
|
487
|
-
if (hasProject) {
|
|
519
|
+
if (!hasProject) {
|
|
488
520
|
return;
|
|
489
521
|
}
|
|
490
|
-
|
|
491
|
-
const
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
522
|
+
const hasStatusUpdatedAt = columns.some((column) => column.name === "status_updated_at");
|
|
523
|
+
const hasStatusReason = columns.some((column) => column.name === "status_reason");
|
|
524
|
+
const hasUpdatedAt = columns.some((column) => column.name === "updated_at");
|
|
525
|
+
this.execute(db, "PRAGMA foreign_keys = OFF;");
|
|
526
|
+
try {
|
|
527
|
+
this.execute(db, `CREATE TABLE tasks_without_project (
|
|
528
|
+
task_id TEXT PRIMARY KEY,
|
|
529
|
+
board_id TEXT NOT NULL,
|
|
530
|
+
created_at TEXT NOT NULL,
|
|
531
|
+
updated_at TEXT NOT NULL,
|
|
532
|
+
status_updated_at TEXT,
|
|
533
|
+
owner_agent_id TEXT NOT NULL,
|
|
534
|
+
assigned_to_agent_id TEXT NOT NULL,
|
|
535
|
+
title TEXT NOT NULL,
|
|
536
|
+
description TEXT NOT NULL,
|
|
537
|
+
status TEXT NOT NULL,
|
|
538
|
+
status_reason TEXT,
|
|
539
|
+
FOREIGN KEY(board_id) REFERENCES boards(board_id) ON DELETE CASCADE
|
|
540
|
+
);`);
|
|
541
|
+
this.execute(db, `INSERT INTO tasks_without_project (
|
|
542
|
+
task_id,
|
|
543
|
+
board_id,
|
|
544
|
+
created_at,
|
|
545
|
+
updated_at,
|
|
546
|
+
status_updated_at,
|
|
547
|
+
owner_agent_id,
|
|
548
|
+
assigned_to_agent_id,
|
|
549
|
+
title,
|
|
550
|
+
description,
|
|
551
|
+
status,
|
|
552
|
+
status_reason
|
|
553
|
+
)
|
|
554
|
+
SELECT
|
|
555
|
+
task_id,
|
|
556
|
+
board_id,
|
|
557
|
+
created_at,
|
|
558
|
+
${hasUpdatedAt
|
|
559
|
+
? "COALESCE(updated_at, status_updated_at, created_at)"
|
|
560
|
+
: "COALESCE(status_updated_at, created_at)"},
|
|
561
|
+
${hasStatusUpdatedAt ? "status_updated_at" : "created_at"},
|
|
562
|
+
owner_agent_id,
|
|
563
|
+
assigned_to_agent_id,
|
|
564
|
+
title,
|
|
565
|
+
description,
|
|
566
|
+
status,
|
|
567
|
+
${hasStatusReason ? "status_reason" : "NULL"}
|
|
568
|
+
FROM tasks;`);
|
|
569
|
+
this.execute(db, "DROP TABLE tasks;");
|
|
570
|
+
this.execute(db, "ALTER TABLE tasks_without_project RENAME TO tasks;");
|
|
571
|
+
}
|
|
572
|
+
finally {
|
|
573
|
+
this.execute(db, "PRAGMA foreign_keys = ON;");
|
|
497
574
|
}
|
|
498
575
|
}
|
|
499
576
|
ensureTaskStatusReasonColumn(db) {
|
|
@@ -515,6 +592,17 @@ export class BoardService {
|
|
|
515
592
|
WHERE status_updated_at IS NULL
|
|
516
593
|
OR TRIM(status_updated_at) = '';`);
|
|
517
594
|
}
|
|
595
|
+
ensureTaskUpdatedAtColumn(db) {
|
|
596
|
+
const columns = this.queryAll(db, "PRAGMA table_info(tasks);");
|
|
597
|
+
const hasUpdatedAt = columns.some((column) => column.name === "updated_at");
|
|
598
|
+
if (!hasUpdatedAt) {
|
|
599
|
+
this.execute(db, "ALTER TABLE tasks ADD COLUMN updated_at TEXT;");
|
|
600
|
+
}
|
|
601
|
+
this.execute(db, `UPDATE tasks
|
|
602
|
+
SET updated_at = COALESCE(status_updated_at, created_at)
|
|
603
|
+
WHERE updated_at IS NULL
|
|
604
|
+
OR TRIM(updated_at) = '';`);
|
|
605
|
+
}
|
|
518
606
|
ensureBoardDefaultColumn(db) {
|
|
519
607
|
const columns = this.queryAll(db, "PRAGMA table_info(boards);");
|
|
520
608
|
const hasDefaultColumn = columns.some((column) => column.name === "is_default");
|
|
@@ -523,6 +611,11 @@ export class BoardService {
|
|
|
523
611
|
}
|
|
524
612
|
this.execute(db, "ALTER TABLE boards ADD COLUMN is_default INTEGER NOT NULL DEFAULT 0;");
|
|
525
613
|
}
|
|
614
|
+
touchTaskUpdatedAt(db, taskId) {
|
|
615
|
+
this.execute(db, `UPDATE tasks
|
|
616
|
+
SET updated_at = ?
|
|
617
|
+
WHERE task_id = ?`, [this.nowIso(), taskId]);
|
|
618
|
+
}
|
|
526
619
|
}
|
|
527
620
|
function normalizeEntityId(value, label) {
|
|
528
621
|
const normalized = normalizeAgentId(value);
|
|
@@ -548,13 +641,6 @@ function normalizeTaskStatusReason(status, rawReason) {
|
|
|
548
641
|
}
|
|
549
642
|
return reason || null;
|
|
550
643
|
}
|
|
551
|
-
function normalizeTaskProject(rawProject) {
|
|
552
|
-
const normalized = rawProject?.trim();
|
|
553
|
-
if (!normalized) {
|
|
554
|
-
return DEFAULT_TASK_PROJECT;
|
|
555
|
-
}
|
|
556
|
-
return normalized;
|
|
557
|
-
}
|
|
558
644
|
function toTaskEntry(row) {
|
|
559
645
|
return {
|
|
560
646
|
createdAt: row.created_at,
|