agent-task-manager-mcp 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/README.md +187 -22
  2. package/dist/certs.d.ts +11 -0
  3. package/dist/certs.d.ts.map +1 -0
  4. package/dist/certs.js +56 -0
  5. package/dist/certs.js.map +1 -0
  6. package/dist/cli.d.ts +14 -0
  7. package/dist/cli.d.ts.map +1 -0
  8. package/dist/cli.js +35 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/hostValidation.d.ts +3 -0
  11. package/dist/hostValidation.d.ts.map +1 -0
  12. package/dist/hostValidation.js +58 -0
  13. package/dist/hostValidation.js.map +1 -0
  14. package/dist/http.server.d.ts +13 -0
  15. package/dist/http.server.d.ts.map +1 -0
  16. package/dist/http.server.js +188 -0
  17. package/dist/http.server.js.map +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +19 -62
  20. package/dist/index.js.map +1 -1
  21. package/dist/server.d.ts +36 -0
  22. package/dist/server.d.ts.map +1 -0
  23. package/dist/server.js +64 -0
  24. package/dist/server.js.map +1 -0
  25. package/dist/storage/adapters/json.adapter.d.ts +3 -0
  26. package/dist/storage/adapters/json.adapter.d.ts.map +1 -0
  27. package/dist/storage/adapters/json.adapter.js +314 -0
  28. package/dist/storage/adapters/json.adapter.js.map +1 -0
  29. package/dist/storage/adapters/mongodb.adapter.d.ts +3 -0
  30. package/dist/storage/adapters/mongodb.adapter.d.ts.map +1 -0
  31. package/dist/storage/adapters/mongodb.adapter.js +232 -0
  32. package/dist/storage/adapters/mongodb.adapter.js.map +1 -0
  33. package/dist/storage/adapters/postgres.adapter.d.ts +3 -0
  34. package/dist/storage/adapters/postgres.adapter.d.ts.map +1 -0
  35. package/dist/storage/adapters/postgres.adapter.js +440 -0
  36. package/dist/storage/adapters/postgres.adapter.js.map +1 -0
  37. package/dist/storage/adapters/sqlite.adapter.d.ts +3 -0
  38. package/dist/storage/adapters/sqlite.adapter.d.ts.map +1 -0
  39. package/dist/storage/adapters/sqlite.adapter.js +437 -0
  40. package/dist/storage/adapters/sqlite.adapter.js.map +1 -0
  41. package/dist/storage/index.d.ts +17 -0
  42. package/dist/storage/index.d.ts.map +1 -0
  43. package/dist/storage/index.js +22 -0
  44. package/dist/storage/index.js.map +1 -0
  45. package/dist/storage/interface.d.ts +72 -0
  46. package/dist/storage/interface.d.ts.map +1 -0
  47. package/dist/storage/interface.js +3 -0
  48. package/dist/storage/interface.js.map +1 -0
  49. package/dist/storage/json.adapter.d.ts +3 -0
  50. package/dist/storage/json.adapter.d.ts.map +1 -0
  51. package/dist/storage/json.adapter.js +314 -0
  52. package/dist/storage/json.adapter.js.map +1 -0
  53. package/dist/storage/mongodb.adapter.d.ts +3 -0
  54. package/dist/storage/mongodb.adapter.d.ts.map +1 -0
  55. package/dist/storage/mongodb.adapter.js +232 -0
  56. package/dist/storage/mongodb.adapter.js.map +1 -0
  57. package/dist/storage/router.d.ts +30 -0
  58. package/dist/storage/router.d.ts.map +1 -0
  59. package/dist/storage/router.js +100 -0
  60. package/dist/storage/router.js.map +1 -0
  61. package/dist/storage/sqlite.adapter.d.ts +3 -0
  62. package/dist/storage/sqlite.adapter.d.ts.map +1 -0
  63. package/dist/storage/sqlite.adapter.js +437 -0
  64. package/dist/storage/sqlite.adapter.js.map +1 -0
  65. package/dist/storage/types.d.ts +80 -0
  66. package/dist/storage/types.d.ts.map +1 -0
  67. package/dist/storage/types.js +7 -0
  68. package/dist/storage/types.js.map +1 -0
  69. package/dist/tools/checkpoint.tools.d.ts.map +1 -1
  70. package/dist/tools/checkpoint.tools.js +8 -21
  71. package/dist/tools/checkpoint.tools.js.map +1 -1
  72. package/dist/tools/session.tools.d.ts.map +1 -1
  73. package/dist/tools/session.tools.js +21 -30
  74. package/dist/tools/session.tools.js.map +1 -1
  75. package/dist/tools/subtask.tools.d.ts.map +1 -1
  76. package/dist/tools/subtask.tools.js +9 -32
  77. package/dist/tools/subtask.tools.js.map +1 -1
  78. package/dist/tools/task.tools.d.ts.map +1 -1
  79. package/dist/tools/task.tools.js +23 -50
  80. package/dist/tools/task.tools.js.map +1 -1
  81. package/package.json +18 -4
@@ -0,0 +1,440 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createPostgresAdapter = void 0;
7
+ const pg_1 = __importDefault(require("pg"));
8
+ const types_js_1 = require("../types.js");
9
+ const defaultContext = { workingDirectory: '/tmp', initScript: null, repoUrl: null, environmentVars: {} };
10
+ const initSchema = async (client) => {
11
+ await client.query(`
12
+ CREATE TABLE IF NOT EXISTS tasks (
13
+ id TEXT PRIMARY KEY,
14
+ title TEXT NOT NULL,
15
+ description TEXT NOT NULL,
16
+ status TEXT DEFAULT 'pending',
17
+ phase TEXT DEFAULT 'init',
18
+ priority INTEGER DEFAULT 5,
19
+ tags JSONB DEFAULT '[]',
20
+ agent_id TEXT,
21
+ locked_at TIMESTAMPTZ,
22
+ context JSONB DEFAULT '{}',
23
+ metadata JSONB DEFAULT '{}',
24
+ completed_at TIMESTAMPTZ,
25
+ deadline TIMESTAMPTZ,
26
+ created_at TIMESTAMPTZ NOT NULL,
27
+ updated_at TIMESTAMPTZ NOT NULL
28
+ );
29
+ CREATE TABLE IF NOT EXISTS subtasks (
30
+ id TEXT PRIMARY KEY,
31
+ task_id TEXT NOT NULL,
32
+ title TEXT NOT NULL,
33
+ description TEXT NOT NULL,
34
+ category TEXT DEFAULT 'functional',
35
+ steps JSONB DEFAULT '[]',
36
+ status TEXT DEFAULT 'pending',
37
+ priority INTEGER DEFAULT 5,
38
+ depends_on JSONB DEFAULT '[]',
39
+ agent_id TEXT,
40
+ attempts INTEGER DEFAULT 0,
41
+ last_error TEXT,
42
+ evidence TEXT,
43
+ created_at TIMESTAMPTZ NOT NULL,
44
+ updated_at TIMESTAMPTZ NOT NULL,
45
+ FOREIGN KEY (task_id) REFERENCES tasks(id)
46
+ );
47
+ CREATE TABLE IF NOT EXISTS sessions (
48
+ id TEXT PRIMARY KEY,
49
+ task_id TEXT NOT NULL,
50
+ agent_id TEXT NOT NULL,
51
+ phase TEXT NOT NULL,
52
+ started_at TIMESTAMPTZ NOT NULL,
53
+ ended_at TIMESTAMPTZ,
54
+ subtasks_attempted JSONB DEFAULT '[]',
55
+ subtasks_completed JSONB DEFAULT '[]',
56
+ progress_note TEXT DEFAULT '',
57
+ git_commit TEXT,
58
+ token_count INTEGER,
59
+ status TEXT DEFAULT 'active',
60
+ created_at TIMESTAMPTZ NOT NULL,
61
+ updated_at TIMESTAMPTZ NOT NULL,
62
+ FOREIGN KEY (task_id) REFERENCES tasks(id)
63
+ );
64
+ CREATE TABLE IF NOT EXISTS checkpoints (
65
+ id TEXT PRIMARY KEY,
66
+ task_id TEXT NOT NULL,
67
+ session_id TEXT NOT NULL,
68
+ label TEXT NOT NULL,
69
+ snapshot JSONB NOT NULL,
70
+ created_at TIMESTAMPTZ NOT NULL,
71
+ updated_at TIMESTAMPTZ NOT NULL,
72
+ FOREIGN KEY (task_id) REFERENCES tasks(id),
73
+ FOREIGN KEY (session_id) REFERENCES sessions(id)
74
+ );
75
+ CREATE INDEX IF NOT EXISTS idx_tasks_status ON tasks(status);
76
+ CREATE INDEX IF NOT EXISTS idx_subtasks_task_status ON subtasks(task_id, status);
77
+ CREATE INDEX IF NOT EXISTS idx_sessions_task ON sessions(task_id);
78
+ CREATE INDEX IF NOT EXISTS idx_checkpoints_task ON checkpoints(task_id);
79
+ `);
80
+ };
81
+ const toDate = (v) => v ? (v instanceof Date ? v : new Date(v)) : null;
82
+ const rowToTask = (r) => ({
83
+ id: r.id,
84
+ title: r.title,
85
+ description: r.description,
86
+ status: r.status,
87
+ phase: r.phase,
88
+ priority: r.priority,
89
+ tags: r.tags ?? [],
90
+ agentId: r.agent_id,
91
+ lockedAt: toDate(r.locked_at),
92
+ context: r.context ?? defaultContext,
93
+ metadata: r.metadata ?? {},
94
+ completedAt: toDate(r.completed_at),
95
+ deadline: toDate(r.deadline),
96
+ createdAt: toDate(r.created_at),
97
+ updatedAt: toDate(r.updated_at),
98
+ });
99
+ const rowToSubtask = (r) => ({
100
+ id: r.id,
101
+ taskId: r.task_id,
102
+ title: r.title,
103
+ description: r.description,
104
+ category: r.category,
105
+ steps: r.steps ?? [],
106
+ status: r.status,
107
+ priority: r.priority,
108
+ dependsOn: r.depends_on ?? [],
109
+ agentId: r.agent_id,
110
+ attempts: r.attempts ?? 0,
111
+ lastError: r.last_error,
112
+ evidence: r.evidence,
113
+ createdAt: toDate(r.created_at),
114
+ updatedAt: toDate(r.updated_at),
115
+ });
116
+ const rowToSession = (r) => ({
117
+ id: r.id,
118
+ taskId: r.task_id,
119
+ agentId: r.agent_id,
120
+ phase: r.phase,
121
+ startedAt: toDate(r.started_at),
122
+ endedAt: toDate(r.ended_at),
123
+ subtasksAttempted: r.subtasks_attempted ?? [],
124
+ subtasksCompleted: r.subtasks_completed ?? [],
125
+ progressNote: r.progress_note ?? '',
126
+ gitCommit: r.git_commit,
127
+ tokenCount: r.token_count,
128
+ status: r.status,
129
+ createdAt: toDate(r.created_at),
130
+ updatedAt: toDate(r.updated_at),
131
+ });
132
+ const rowToCheckpoint = (r) => ({
133
+ id: r.id,
134
+ taskId: r.task_id,
135
+ sessionId: r.session_id,
136
+ label: r.label,
137
+ snapshot: r.snapshot ?? {},
138
+ createdAt: toDate(r.created_at),
139
+ updatedAt: toDate(r.updated_at),
140
+ });
141
+ const createPostgresAdapter = (connectionUrl) => {
142
+ const pool = new pg_1.default.Pool({ connectionString: connectionUrl });
143
+ return {
144
+ connect: async () => {
145
+ const client = await pool.connect();
146
+ try {
147
+ await initSchema(client);
148
+ console.error('[DB] Connected to PostgreSQL');
149
+ }
150
+ finally {
151
+ client.release();
152
+ }
153
+ },
154
+ taskCreate: async (input) => {
155
+ const id = (0, types_js_1.generateId)();
156
+ const now = new Date();
157
+ const context = JSON.stringify({ ...defaultContext, ...input.context });
158
+ const tags = JSON.stringify(input.tags ?? []);
159
+ const metadata = JSON.stringify(input.metadata ?? {});
160
+ const deadline = input.deadline ? new Date(input.deadline) : null;
161
+ await pool.query(`INSERT INTO tasks (id, title, description, status, phase, priority, tags, context, metadata, deadline, created_at, updated_at)
162
+ VALUES ($1, $2, $3, 'pending', 'init', $4, $5::jsonb, $6::jsonb, $7::jsonb, $8, $9, $9)`, [id, input.title, input.description, input.priority ?? 5, tags, context, metadata, deadline, now]);
163
+ const res = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
164
+ return rowToTask(res.rows[0]);
165
+ },
166
+ taskFindById: async (id) => {
167
+ const res = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
168
+ return res.rows[0] ? rowToTask(res.rows[0]) : null;
169
+ },
170
+ taskList: async (filter) => {
171
+ const conditions = [];
172
+ const params = [];
173
+ let i = 1;
174
+ if (filter.status) {
175
+ conditions.push(`status = $${i++}`);
176
+ params.push(filter.status);
177
+ }
178
+ if (filter.phase) {
179
+ conditions.push(`phase = $${i++}`);
180
+ params.push(filter.phase);
181
+ }
182
+ if (filter.tags?.length) {
183
+ conditions.push(`tags ?| $${i}::text[]`);
184
+ params.push(filter.tags);
185
+ i++;
186
+ }
187
+ const where = conditions.length ? `WHERE ${conditions.join(' AND ')}` : '';
188
+ const countRes = await pool.query(`SELECT COUNT(*) as c FROM tasks ${where}`, params);
189
+ const listParams = [...params, filter.limit, filter.skip];
190
+ const res = await pool.query(`SELECT * FROM tasks ${where} ORDER BY priority DESC, created_at DESC LIMIT $${i} OFFSET $${i + 1}`, listParams);
191
+ return { tasks: res.rows.map(rowToTask), total: parseInt(countRes.rows[0].c, 10) };
192
+ },
193
+ taskUpdate: async (id, input) => {
194
+ const existing = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
195
+ if (existing.rows.length === 0)
196
+ return null;
197
+ const updates = [];
198
+ const params = [];
199
+ let i = 1;
200
+ if (input.title !== undefined) {
201
+ updates.push(`title = $${i++}`);
202
+ params.push(input.title);
203
+ }
204
+ if (input.description !== undefined) {
205
+ updates.push(`description = $${i++}`);
206
+ params.push(input.description);
207
+ }
208
+ if (input.status !== undefined) {
209
+ updates.push(`status = $${i++}`);
210
+ params.push(input.status);
211
+ }
212
+ if (input.phase !== undefined) {
213
+ updates.push(`phase = $${i++}`);
214
+ params.push(input.phase);
215
+ }
216
+ if (input.priority !== undefined) {
217
+ updates.push(`priority = $${i++}`);
218
+ params.push(input.priority);
219
+ }
220
+ if (input.tags !== undefined) {
221
+ updates.push(`tags = $${i++}::jsonb`);
222
+ params.push(JSON.stringify(input.tags));
223
+ }
224
+ if (input.context !== undefined) {
225
+ const ctx = existing.rows[0].context ?? {};
226
+ updates.push(`context = $${i++}::jsonb`);
227
+ params.push(JSON.stringify({ ...ctx, ...input.context }));
228
+ }
229
+ if (input.metadata !== undefined) {
230
+ updates.push(`metadata = $${i++}::jsonb`);
231
+ params.push(JSON.stringify(input.metadata));
232
+ }
233
+ if (input.deadline !== undefined) {
234
+ updates.push(`deadline = $${i++}`);
235
+ params.push(input.deadline ? new Date(input.deadline) : null);
236
+ }
237
+ if (updates.length === 0)
238
+ return rowToTask(existing.rows[0]);
239
+ updates.push(`updated_at = $${i++}`);
240
+ params.push(new Date(), id);
241
+ await pool.query(`UPDATE tasks SET ${updates.join(', ')} WHERE id = $${i}`, params);
242
+ const res = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
243
+ return rowToTask(res.rows[0]);
244
+ },
245
+ taskDelete: async (id) => {
246
+ await pool.query('DELETE FROM checkpoints WHERE task_id = $1', [id]);
247
+ await pool.query('DELETE FROM sessions WHERE task_id = $1', [id]);
248
+ await pool.query('DELETE FROM subtasks WHERE task_id = $1', [id]);
249
+ await pool.query('DELETE FROM tasks WHERE id = $1', [id]);
250
+ },
251
+ taskLock: async (id, agentId) => {
252
+ const res = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
253
+ if (res.rows.length === 0)
254
+ return null;
255
+ const row = res.rows[0];
256
+ const currentAgent = row.agent_id;
257
+ if (currentAgent !== null && currentAgent !== agentId)
258
+ return null;
259
+ const now = new Date();
260
+ await pool.query('UPDATE tasks SET agent_id = $1, locked_at = $2, updated_at = $2 WHERE id = $3', [agentId, now, id]);
261
+ const updated = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
262
+ return rowToTask(updated.rows[0]);
263
+ },
264
+ taskUnlock: async (id, agentId) => {
265
+ const res = await pool.query('SELECT * FROM tasks WHERE id = $1 AND agent_id = $2', [id, agentId]);
266
+ if (res.rows.length === 0)
267
+ return null;
268
+ const now = new Date();
269
+ await pool.query('UPDATE tasks SET agent_id = NULL, locked_at = NULL, updated_at = $1 WHERE id = $2', [now, id]);
270
+ const updated = await pool.query('SELECT * FROM tasks WHERE id = $1', [id]);
271
+ return rowToTask(updated.rows[0]);
272
+ },
273
+ subtaskCountByTask: async (taskId, status) => {
274
+ let sql = 'SELECT COUNT(*) as c FROM subtasks WHERE task_id = $1';
275
+ const params = [taskId];
276
+ if (status !== undefined) {
277
+ if (Array.isArray(status)) {
278
+ sql += ` AND status = ANY($2::text[])`;
279
+ params.push(status);
280
+ }
281
+ else {
282
+ sql += ' AND status = $2';
283
+ params.push(status);
284
+ }
285
+ }
286
+ const res = await pool.query(sql, params);
287
+ return parseInt(res.rows[0].c, 10);
288
+ },
289
+ subtaskCreateBulk: async (taskId, items) => {
290
+ const now = new Date();
291
+ const created = [];
292
+ for (const s of items) {
293
+ const id = (0, types_js_1.generateId)();
294
+ const dependsOn = JSON.stringify((s.dependsOn ?? []).map((d) => d));
295
+ const steps = JSON.stringify(s.steps ?? []);
296
+ await pool.query(`INSERT INTO subtasks (id, task_id, title, description, category, steps, priority, depends_on, created_at, updated_at)
297
+ VALUES ($1, $2, $3, $4, $5, $6::jsonb, $7, $8::jsonb, $9, $9)`, [id, taskId, s.title, s.description, s.category ?? 'functional', steps, s.priority ?? 5, dependsOn, now]);
298
+ created.push({
299
+ id,
300
+ taskId,
301
+ title: s.title,
302
+ description: s.description,
303
+ category: s.category ?? 'functional',
304
+ steps: s.steps ?? [],
305
+ status: 'pending',
306
+ priority: s.priority ?? 5,
307
+ dependsOn: s.dependsOn ?? [],
308
+ agentId: null,
309
+ attempts: 0,
310
+ lastError: null,
311
+ evidence: null,
312
+ createdAt: now,
313
+ updatedAt: now,
314
+ });
315
+ }
316
+ return created;
317
+ },
318
+ subtaskGetNext: async (taskId, agentId) => {
319
+ const passedRes = await pool.query('SELECT id FROM subtasks WHERE task_id = $1 AND status = $2', [taskId, 'passed']);
320
+ const passedSet = new Set(passedRes.rows.map((r) => r.id));
321
+ const pendingRes = await pool.query('SELECT * FROM subtasks WHERE task_id = $1 AND status = $2 ORDER BY priority DESC, created_at ASC', [taskId, 'pending']);
322
+ for (const row of pendingRes.rows) {
323
+ const deps = row.depends_on ?? [];
324
+ if (!deps.every((d) => passedSet.has(d)))
325
+ continue;
326
+ const id = row.id;
327
+ const now = new Date();
328
+ await pool.query('UPDATE subtasks SET status = $1, agent_id = $2, attempts = attempts + 1, updated_at = $3 WHERE id = $4', ['in_progress', agentId, now, id]);
329
+ const updated = await pool.query('SELECT * FROM subtasks WHERE id = $1', [id]);
330
+ return rowToSubtask(updated.rows[0]);
331
+ }
332
+ return null;
333
+ },
334
+ subtaskUpdateStatus: async (id, agentId, data) => {
335
+ const res = await pool.query('SELECT * FROM subtasks WHERE id = $1 AND agent_id = $2', [id, agentId]);
336
+ if (res.rows.length === 0)
337
+ return null;
338
+ const updates = [];
339
+ const params = [];
340
+ let idx = 1;
341
+ updates.push(`status = $${idx++}`);
342
+ params.push(data.status);
343
+ if (data.evidence !== undefined) {
344
+ updates.push(`evidence = $${idx++}`);
345
+ params.push(data.evidence);
346
+ }
347
+ if (data.lastError !== undefined) {
348
+ updates.push(`last_error = $${idx++}`);
349
+ params.push(data.lastError);
350
+ }
351
+ updates.push(`updated_at = $${idx++}`);
352
+ params.push(new Date(), id);
353
+ await pool.query(`UPDATE subtasks SET ${updates.join(', ')} WHERE id = $${idx}`, params);
354
+ const updated = await pool.query('SELECT * FROM subtasks WHERE id = $1', [id]);
355
+ return rowToSubtask(updated.rows[0]);
356
+ },
357
+ sessionCreate: async (data) => {
358
+ const id = (0, types_js_1.generateId)();
359
+ const now = new Date();
360
+ await pool.query(`INSERT INTO sessions (id, task_id, agent_id, phase, started_at, created_at, updated_at)
361
+ VALUES ($1, $2, $3, $4, $5, $5, $5)`, [id, data.taskId, data.agentId, data.phase, now]);
362
+ const res = await pool.query('SELECT * FROM sessions WHERE id = $1', [id]);
363
+ return rowToSession(res.rows[0]);
364
+ },
365
+ sessionFindLatestByTask: async (taskId, status) => {
366
+ let sql = 'SELECT * FROM sessions WHERE task_id = $1';
367
+ const params = [taskId];
368
+ if (status) {
369
+ sql += ' AND status = $2';
370
+ params.push(status);
371
+ }
372
+ sql += ' ORDER BY ended_at DESC NULLS LAST, created_at DESC LIMIT 1';
373
+ const res = await pool.query(sql, params);
374
+ return res.rows[0] ? rowToSession(res.rows[0]) : null;
375
+ },
376
+ sessionUpdate: async (id, agentId, data) => {
377
+ const res = await pool.query('SELECT * FROM sessions WHERE id = $1 AND agent_id = $2', [id, agentId]);
378
+ if (res.rows.length === 0)
379
+ return null;
380
+ const updates = [];
381
+ const params = [];
382
+ let idx = 1;
383
+ updates.push(`progress_note = $${idx++}`);
384
+ params.push(data.progressNote ?? res.rows[0].progress_note);
385
+ updates.push(`updated_at = $${idx++}`);
386
+ params.push(new Date());
387
+ if (data.gitCommit !== undefined) {
388
+ updates.push(`git_commit = $${idx++}`);
389
+ params.push(data.gitCommit);
390
+ }
391
+ if (data.tokenCount !== undefined) {
392
+ updates.push(`token_count = $${idx++}`);
393
+ params.push(data.tokenCount);
394
+ }
395
+ if (data.status !== undefined) {
396
+ updates.push(`status = $${idx++}`);
397
+ params.push(data.status);
398
+ }
399
+ if (data.endedAt !== undefined) {
400
+ updates.push(`ended_at = $${idx++}`);
401
+ params.push(data.endedAt);
402
+ }
403
+ if (data.subtasksAttempted) {
404
+ updates.push(`subtasks_attempted = $${idx++}::jsonb`);
405
+ params.push(JSON.stringify(data.subtasksAttempted));
406
+ }
407
+ if (data.subtasksCompleted) {
408
+ updates.push(`subtasks_completed = $${idx++}::jsonb`);
409
+ params.push(JSON.stringify(data.subtasksCompleted));
410
+ }
411
+ params.push(id);
412
+ await pool.query(`UPDATE sessions SET ${updates.join(', ')} WHERE id = $${idx}`, params);
413
+ const updated = await pool.query('SELECT * FROM sessions WHERE id = $1', [id]);
414
+ return rowToSession(updated.rows[0]);
415
+ },
416
+ checkpointCreate: async (data) => {
417
+ const id = (0, types_js_1.generateId)();
418
+ const now = new Date();
419
+ await pool.query(`INSERT INTO checkpoints (id, task_id, session_id, label, snapshot, created_at, updated_at)
420
+ VALUES ($1, $2, $3, $4, $5::jsonb, $6, $6)`, [id, data.taskId, data.sessionId, data.label, JSON.stringify(data.snapshot), now]);
421
+ const res = await pool.query('SELECT * FROM checkpoints WHERE id = $1', [id]);
422
+ return rowToCheckpoint(res.rows[0]);
423
+ },
424
+ checkpointFindByTaskAndLabel: async (taskId, label) => {
425
+ const res = await pool.query('SELECT * FROM checkpoints WHERE task_id = $1 AND label = $2 ORDER BY created_at DESC LIMIT 1', [taskId, label]);
426
+ return res.rows[0] ? rowToCheckpoint(res.rows[0]) : null;
427
+ },
428
+ checkpointFindAllByTask: async (taskId) => {
429
+ const res = await pool.query('SELECT id, label, created_at, session_id FROM checkpoints WHERE task_id = $1 ORDER BY created_at DESC', [taskId]);
430
+ return res.rows.map((r) => ({
431
+ id: r.id,
432
+ label: r.label,
433
+ createdAt: toDate(r.created_at),
434
+ sessionId: r.session_id,
435
+ }));
436
+ },
437
+ };
438
+ };
439
+ exports.createPostgresAdapter = createPostgresAdapter;
440
+ //# sourceMappingURL=postgres.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres.adapter.js","sourceRoot":"","sources":["../../../src/storage/adapters/postgres.adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { StorageAdapter } from '../interface.js';
2
+ export declare const createSqliteAdapter: (dbPath: string) => StorageAdapter;
3
+ //# sourceMappingURL=sqlite.adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.adapter.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/sqlite.adapter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAoFrD,eAAO,MAAM,mBAAmB,GAAI,QAAQ,MAAM,KAAG,cAwPpD,CAAA"}