247-cli 2.23.2 → 2.23.3

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 (55) hide show
  1. package/agent/dist/db/index.d.ts +0 -1
  2. package/agent/dist/db/index.d.ts.map +1 -1
  3. package/agent/dist/db/index.js +62 -381
  4. package/agent/dist/db/index.js.map +1 -1
  5. package/agent/dist/db/schema.d.ts +2 -42
  6. package/agent/dist/db/schema.d.ts.map +1 -1
  7. package/agent/dist/db/schema.js +4 -40
  8. package/agent/dist/db/schema.js.map +1 -1
  9. package/agent/dist/db/sessions.d.ts +0 -33
  10. package/agent/dist/db/sessions.d.ts.map +1 -1
  11. package/agent/dist/db/sessions.js +3 -138
  12. package/agent/dist/db/sessions.js.map +1 -1
  13. package/agent/dist/routes/sessions.d.ts +1 -0
  14. package/agent/dist/routes/sessions.d.ts.map +1 -1
  15. package/agent/dist/routes/sessions.js +3 -309
  16. package/agent/dist/routes/sessions.js.map +1 -1
  17. package/agent/dist/services/index.d.ts +1 -6
  18. package/agent/dist/services/index.d.ts.map +1 -1
  19. package/agent/dist/services/index.js +4 -4
  20. package/agent/dist/services/index.js.map +1 -1
  21. package/agent/dist/status.d.ts +0 -6
  22. package/agent/dist/status.d.ts.map +1 -1
  23. package/agent/dist/status.js +2 -4
  24. package/agent/dist/status.js.map +1 -1
  25. package/agent/dist/terminal.d.ts +0 -11
  26. package/agent/dist/terminal.d.ts.map +1 -1
  27. package/agent/dist/terminal.js +6 -60
  28. package/agent/dist/terminal.js.map +1 -1
  29. package/agent/dist/websocket-handlers.d.ts +1 -0
  30. package/agent/dist/websocket-handlers.d.ts.map +1 -1
  31. package/agent/dist/websocket-handlers.js +2 -49
  32. package/agent/dist/websocket-handlers.js.map +1 -1
  33. package/agent/node_modules/247-shared/dist/types/index.d.ts +0 -85
  34. package/agent/node_modules/247-shared/dist/types/index.d.ts.map +1 -1
  35. package/agent/node_modules/247-shared/dist/types/index.js +1 -47
  36. package/agent/node_modules/247-shared/dist/types/index.js.map +1 -1
  37. package/agent/node_modules/247-shared/package.json +1 -1
  38. package/dist/index.js +1 -1
  39. package/package.json +1 -1
  40. package/agent/dist/db/history.d.ts +0 -37
  41. package/agent/dist/db/history.d.ts.map +0 -1
  42. package/agent/dist/db/history.js +0 -98
  43. package/agent/dist/db/history.js.map +0 -1
  44. package/agent/dist/services/cleanup.d.ts +0 -45
  45. package/agent/dist/services/cleanup.d.ts.map +0 -1
  46. package/agent/dist/services/cleanup.js +0 -130
  47. package/agent/dist/services/cleanup.js.map +0 -1
  48. package/agent/dist/services/execution.d.ts +0 -53
  49. package/agent/dist/services/execution.d.ts.map +0 -1
  50. package/agent/dist/services/execution.js +0 -75
  51. package/agent/dist/services/execution.js.map +0 -1
  52. package/agent/dist/services/worktree.d.ts +0 -41
  53. package/agent/dist/services/worktree.d.ts.map +0 -1
  54. package/agent/dist/services/worktree.js +0 -139
  55. package/agent/dist/services/worktree.js.map +0 -1
@@ -25,7 +25,6 @@ export declare function closeDatabase(): void;
25
25
  */
26
26
  export declare function getDatabaseStats(): {
27
27
  sessions: number;
28
- history: number;
29
28
  };
30
29
  export { RETENTION_CONFIG };
31
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAqC,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAUlF;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAK/C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAqB/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,QAAQ,CAAC,QAAQ,CAIpD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAMpC;AA6fD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAcA;AAGD,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAqC,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAUlF;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAK/C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAqB/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,QAAQ,CAAC,QAAQ,CAIpD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAMpC;AAyJD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAUA;AAGD,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -65,47 +65,15 @@ function runMigrations(database) {
65
65
  const currentVersion = getCurrentSchemaVersion(database);
66
66
  if (currentVersion < SCHEMA_VERSION) {
67
67
  console.log(`[DB] Running migrations from v${currentVersion} to v${SCHEMA_VERSION}`);
68
- // Run all schema creation (idempotent with IF NOT EXISTS)
69
- database.exec(CREATE_TABLES_SQL);
70
- // Run incremental migrations for existing tables
71
- if (currentVersion < 2) {
72
- migrateToV2(database);
68
+ // For fresh databases or v15+, just run the simplified schema
69
+ if (currentVersion === 0) {
70
+ database.exec(CREATE_TABLES_SQL);
73
71
  }
74
- if (currentVersion < 3) {
75
- migrateToV3(database);
76
- }
77
- if (currentVersion < 4) {
78
- migrateToV4(database);
79
- }
80
- if (currentVersion < 5) {
81
- migrateToV5(database);
82
- }
83
- if (currentVersion < 6) {
84
- migrateToV6(database);
85
- }
86
- if (currentVersion < 7) {
87
- migrateToV7(database);
88
- }
89
- if (currentVersion < 8) {
90
- migrateToV8(database);
91
- }
92
- if (currentVersion < 9) {
93
- migrateToV9(database);
94
- }
95
- if (currentVersion < 10) {
96
- migrateToV10(database);
97
- }
98
- if (currentVersion < 11) {
99
- migrateToV11(database);
100
- }
101
- if (currentVersion < 12) {
102
- migrateToV12(database);
103
- }
104
- if (currentVersion < 13) {
105
- migrateToV13(database);
106
- }
107
- if (currentVersion < 14) {
108
- migrateToV14(database);
72
+ else {
73
+ // For existing databases, run the v15 migration to simplify
74
+ if (currentVersion < 15) {
75
+ migrateToV15(database);
76
+ }
109
77
  }
110
78
  // Record the new version
111
79
  database
@@ -119,358 +87,73 @@ function runMigrations(database) {
119
87
  else {
120
88
  console.log(`[DB] Database schema is up to date (v${currentVersion})`);
121
89
  }
122
- // Always ensure required columns exist (handles incomplete migrations)
123
- ensureRequiredColumns(database);
124
- }
125
- /**
126
- * Ensure all required columns exist (handles incomplete migrations)
127
- */
128
- function ensureRequiredColumns(database) {
129
- // Check sessions columns
130
- const sessionColumns = database.pragma('table_info(sessions)');
131
- const sessionColumnNames = new Set(sessionColumns.map((c) => c.name));
132
- // v3: archived_at
133
- if (!sessionColumnNames.has('archived_at')) {
134
- console.log('[DB] Adding missing archived_at column to sessions');
135
- database.exec('ALTER TABLE sessions ADD COLUMN archived_at INTEGER');
136
- }
137
- // v4: StatusLine metrics
138
- const metricsColumns = [
139
- { name: 'model', sql: 'ALTER TABLE sessions ADD COLUMN model TEXT' },
140
- { name: 'cost_usd', sql: 'ALTER TABLE sessions ADD COLUMN cost_usd REAL' },
141
- { name: 'context_usage', sql: 'ALTER TABLE sessions ADD COLUMN context_usage INTEGER' },
142
- { name: 'lines_added', sql: 'ALTER TABLE sessions ADD COLUMN lines_added INTEGER' },
143
- { name: 'lines_removed', sql: 'ALTER TABLE sessions ADD COLUMN lines_removed INTEGER' },
144
- ];
145
- for (const col of metricsColumns) {
146
- if (!sessionColumnNames.has(col.name)) {
147
- console.log(`[DB] Adding missing ${col.name} column to sessions`);
148
- database.exec(col.sql);
149
- }
150
- }
151
- // v6: Worktree isolation columns
152
- const worktreeColumns = [
153
- { name: 'worktree_path', sql: 'ALTER TABLE sessions ADD COLUMN worktree_path TEXT' },
154
- { name: 'branch_name', sql: 'ALTER TABLE sessions ADD COLUMN branch_name TEXT' },
155
- ];
156
- for (const col of worktreeColumns) {
157
- if (!sessionColumnNames.has(col.name)) {
158
- console.log(`[DB] Adding missing ${col.name} column to sessions`);
159
- database.exec(col.sql);
160
- }
161
- }
162
- // v9: Spawn/orchestration columns
163
- const spawnColumns = [
164
- { name: 'spawn_prompt', sql: 'ALTER TABLE sessions ADD COLUMN spawn_prompt TEXT' },
165
- { name: 'parent_session', sql: 'ALTER TABLE sessions ADD COLUMN parent_session TEXT' },
166
- { name: 'task_id', sql: 'ALTER TABLE sessions ADD COLUMN task_id TEXT' },
167
- { name: 'exit_code', sql: 'ALTER TABLE sessions ADD COLUMN exit_code INTEGER' },
168
- { name: 'exited_at', sql: 'ALTER TABLE sessions ADD COLUMN exited_at INTEGER' },
169
- ];
170
- for (const col of spawnColumns) {
171
- if (!sessionColumnNames.has(col.name)) {
172
- console.log(`[DB] Adding missing ${col.name} column to sessions`);
173
- database.exec(col.sql);
174
- }
175
- }
176
- // v10: Output capture columns
177
- const outputColumns = [
178
- { name: 'output_content', sql: 'ALTER TABLE sessions ADD COLUMN output_content TEXT' },
179
- {
180
- name: 'output_captured_at',
181
- sql: 'ALTER TABLE sessions ADD COLUMN output_captured_at INTEGER',
182
- },
183
- ];
184
- for (const col of outputColumns) {
185
- if (!sessionColumnNames.has(col.name)) {
186
- console.log(`[DB] Adding missing ${col.name} column to sessions`);
187
- database.exec(col.sql);
188
- }
189
- }
190
- }
191
- /**
192
- * Migration to v2: No-op (environments table removed)
193
- */
194
- function migrateToV2(_database) {
195
- // Previously added icon column to environments, but environments table has been removed
196
- console.log('[DB] v2 migration: No-op (environments table removed)');
197
- }
198
- /**
199
- * Migration to v3: Add archived_at column to sessions table
200
- */
201
- function migrateToV3(database) {
202
- // Check if archived_at column already exists
203
- const columns = database.pragma('table_info(sessions)');
204
- const hasArchivedAt = columns.some((c) => c.name === 'archived_at');
205
- if (!hasArchivedAt) {
206
- console.log('[DB] v3 migration: Adding archived_at column to sessions');
207
- database.exec('ALTER TABLE sessions ADD COLUMN archived_at INTEGER');
208
- }
209
- }
210
- /**
211
- * Migration to v4: Add StatusLine metric columns to sessions table
212
- */
213
- function migrateToV4(database) {
214
- const columns = database.pragma('table_info(sessions)');
215
- const columnNames = new Set(columns.map((c) => c.name));
216
- const metricsColumns = [
217
- { name: 'model', sql: 'ALTER TABLE sessions ADD COLUMN model TEXT' },
218
- { name: 'cost_usd', sql: 'ALTER TABLE sessions ADD COLUMN cost_usd REAL' },
219
- { name: 'context_usage', sql: 'ALTER TABLE sessions ADD COLUMN context_usage INTEGER' },
220
- { name: 'lines_added', sql: 'ALTER TABLE sessions ADD COLUMN lines_added INTEGER' },
221
- { name: 'lines_removed', sql: 'ALTER TABLE sessions ADD COLUMN lines_removed INTEGER' },
222
- ];
223
- for (const col of metricsColumns) {
224
- if (!columnNames.has(col.name)) {
225
- console.log(`[DB] v4 migration: Adding ${col.name} column to sessions`);
226
- database.exec(col.sql);
227
- }
228
- }
229
- }
230
- /**
231
- * Migration to v5: Add Ralph mode columns to sessions table
232
- */
233
- function migrateToV5(database) {
234
- const columns = database.pragma('table_info(sessions)');
235
- const columnNames = new Set(columns.map((c) => c.name));
236
- const ralphColumns = [
237
- {
238
- name: 'ralph_enabled',
239
- sql: 'ALTER TABLE sessions ADD COLUMN ralph_enabled INTEGER DEFAULT 0',
240
- },
241
- { name: 'ralph_config', sql: 'ALTER TABLE sessions ADD COLUMN ralph_config TEXT' },
242
- {
243
- name: 'ralph_iteration',
244
- sql: 'ALTER TABLE sessions ADD COLUMN ralph_iteration INTEGER DEFAULT 0',
245
- },
246
- { name: 'ralph_status', sql: 'ALTER TABLE sessions ADD COLUMN ralph_status TEXT' },
247
- ];
248
- for (const col of ralphColumns) {
249
- if (!columnNames.has(col.name)) {
250
- console.log(`[DB] v5 migration: Adding ${col.name} column to sessions`);
251
- database.exec(col.sql);
252
- }
253
- }
254
- }
255
- /**
256
- * Migration to v6: Add worktree isolation columns to sessions table
257
- */
258
- function migrateToV6(database) {
259
- const columns = database.pragma('table_info(sessions)');
260
- const columnNames = new Set(columns.map((c) => c.name));
261
- const worktreeColumns = [
262
- { name: 'worktree_path', sql: 'ALTER TABLE sessions ADD COLUMN worktree_path TEXT' },
263
- { name: 'branch_name', sql: 'ALTER TABLE sessions ADD COLUMN branch_name TEXT' },
264
- ];
265
- for (const col of worktreeColumns) {
266
- if (!columnNames.has(col.name)) {
267
- console.log(`[DB] v6 migration: Adding ${col.name} column to sessions`);
268
- database.exec(col.sql);
269
- }
270
- }
271
- }
272
- /**
273
- * Migration to v7: No-op (projects/issues tables removed)
274
- */
275
- function migrateToV7(_database) {
276
- // Previously created projects and issues tables, but this feature has been removed
277
- console.log('[DB] v7 migration: No-op (projects/issues feature removed)');
278
90
  }
279
91
  /**
280
- * Migration to v8: Add push_subscriptions table for Web Push notifications
92
+ * Migration to v15: Simplification - remove unused columns and tables
93
+ * SQLite doesn't support dropping columns easily, so we recreate the sessions table
281
94
  */
282
- function migrateToV8(database) {
283
- // Check if table already exists
284
- const tableExists = database
285
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='push_subscriptions'`)
95
+ function migrateToV15(database) {
96
+ console.log('[DB] v15 migration: Simplifying schema');
97
+ // Drop status_history table if it exists
98
+ const historyTableExists = database
99
+ .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='status_history'`)
286
100
  .get();
287
- if (!tableExists) {
288
- console.log('[DB] v8 migration: Creating push_subscriptions table');
289
- database.exec(`
290
- CREATE TABLE push_subscriptions (
291
- id INTEGER PRIMARY KEY AUTOINCREMENT,
292
- endpoint TEXT UNIQUE NOT NULL,
293
- keys_p256dh TEXT NOT NULL,
294
- keys_auth TEXT NOT NULL,
295
- user_agent TEXT,
296
- created_at INTEGER NOT NULL
297
- );
298
- CREATE INDEX idx_push_endpoint ON push_subscriptions(endpoint);
299
- `);
101
+ if (historyTableExists) {
102
+ console.log('[DB] v15 migration: Dropping status_history table');
103
+ database.exec('DROP TABLE IF EXISTS status_history');
300
104
  }
301
- }
302
- /**
303
- * Migration to v9: Add spawn/orchestration columns to sessions table
304
- */
305
- function migrateToV9(database) {
105
+ // Check if sessions table has the old columns we want to remove
306
106
  const columns = database.pragma('table_info(sessions)');
307
107
  const columnNames = new Set(columns.map((c) => c.name));
308
- const spawnColumns = [
309
- { name: 'spawn_prompt', sql: 'ALTER TABLE sessions ADD COLUMN spawn_prompt TEXT' },
310
- { name: 'parent_session', sql: 'ALTER TABLE sessions ADD COLUMN parent_session TEXT' },
311
- { name: 'task_id', sql: 'ALTER TABLE sessions ADD COLUMN task_id TEXT' },
312
- { name: 'exit_code', sql: 'ALTER TABLE sessions ADD COLUMN exit_code INTEGER' },
313
- { name: 'exited_at', sql: 'ALTER TABLE sessions ADD COLUMN exited_at INTEGER' },
314
- ];
315
- for (const col of spawnColumns) {
316
- if (!columnNames.has(col.name)) {
317
- console.log(`[DB] v9 migration: Adding ${col.name} column to sessions`);
318
- database.exec(col.sql);
319
- }
320
- }
321
- // Add indexes for spawn fields
322
- try {
323
- database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_parent ON sessions(parent_session)');
324
- database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_task ON sessions(task_id)');
325
- console.log('[DB] v9 migration: Added indexes for parent_session and task_id');
326
- }
327
- catch {
328
- // Indexes might already exist
329
- }
330
- }
331
- /**
332
- * Migration to v10: Add output capture columns to sessions table
333
- */
334
- function migrateToV10(database) {
335
- const columns = database.pragma('table_info(sessions)');
336
- const columnNames = new Set(columns.map((c) => c.name));
337
- const outputColumns = [
338
- { name: 'output_content', sql: 'ALTER TABLE sessions ADD COLUMN output_content TEXT' },
339
- {
340
- name: 'output_captured_at',
341
- sql: 'ALTER TABLE sessions ADD COLUMN output_captured_at INTEGER',
342
- },
343
- ];
344
- for (const col of outputColumns) {
345
- if (!columnNames.has(col.name)) {
346
- console.log(`[DB] v10 migration: Adding ${col.name} column to sessions`);
347
- database.exec(col.sql);
348
- }
349
- }
350
- }
351
- /**
352
- * Migration to v11: Add stream-json support
353
- * - Add output_format column to sessions
354
- * - Create session_events table
355
- */
356
- function migrateToV11(database) {
357
- // Add output_format column to sessions
358
- const columns = database.pragma('table_info(sessions)');
359
- const columnNames = new Set(columns.map((c) => c.name));
360
- if (!columnNames.has('output_format')) {
361
- console.log('[DB] v11 migration: Adding output_format column to sessions');
362
- database.exec("ALTER TABLE sessions ADD COLUMN output_format TEXT DEFAULT 'terminal'");
363
- }
364
- // Create session_events table
365
- const tableExists = database
366
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='session_events'`)
367
- .get();
368
- if (!tableExists) {
369
- console.log('[DB] v11 migration: Creating session_events table');
108
+ // If we have old columns like model, cost_usd, worktree_path, etc., recreate the table
109
+ const hasOldColumns = columnNames.has('model') ||
110
+ columnNames.has('cost_usd') ||
111
+ columnNames.has('worktree_path') ||
112
+ columnNames.has('spawn_prompt');
113
+ if (hasOldColumns) {
114
+ console.log('[DB] v15 migration: Recreating sessions table with simplified schema');
115
+ // Create new simplified sessions table
370
116
  database.exec(`
371
- CREATE TABLE session_events (
117
+ CREATE TABLE IF NOT EXISTS sessions_new (
372
118
  id INTEGER PRIMARY KEY AUTOINCREMENT,
373
- session_name TEXT NOT NULL,
374
- event_type TEXT NOT NULL,
375
- timestamp INTEGER NOT NULL,
376
- tool_name TEXT,
377
- tool_input TEXT,
378
- tool_id TEXT,
379
- tool_output TEXT,
380
- tool_error INTEGER,
381
- text_content TEXT,
382
- success INTEGER,
383
- duration_ms INTEGER,
384
- total_cost_usd REAL,
385
- num_turns INTEGER
386
- );
387
- CREATE INDEX idx_events_session ON session_events(session_name);
388
- CREATE INDEX idx_events_timestamp ON session_events(timestamp);
389
- CREATE INDEX idx_events_type ON session_events(event_type);
390
- `);
391
- }
392
- }
393
- /**
394
- * Migration to v12: Simplification - remove unused features
395
- * - Drop session_events table (stream-json mode removed)
396
- * - Note: Ralph columns are left in place (SQLite doesn't easily drop columns)
397
- * but they are no longer used
398
- */
399
- function migrateToV12(database) {
400
- // Drop session_events table if it exists
401
- const tableExists = database
402
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='session_events'`)
403
- .get();
404
- if (tableExists) {
405
- console.log('[DB] v12 migration: Dropping session_events table');
406
- database.exec('DROP TABLE IF EXISTS session_events');
407
- }
408
- console.log('[DB] v12 migration: Simplification complete (Ralph and stream-json features removed)');
409
- }
410
- /**
411
- * Migration to v13: Add webhooks table for external notifications
412
- */
413
- function migrateToV13(database) {
414
- // Check if webhooks table already exists
415
- const tableExists = database
416
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='webhooks'`)
417
- .get();
418
- if (!tableExists) {
419
- console.log('[DB] v13 migration: Creating webhooks table');
420
- database.exec(`
421
- CREATE TABLE webhooks (
422
- id TEXT PRIMARY KEY,
423
- name TEXT NOT NULL,
424
- url TEXT NOT NULL,
425
- type TEXT NOT NULL DEFAULT 'generic',
426
- enabled INTEGER NOT NULL DEFAULT 1,
427
- events TEXT NOT NULL DEFAULT '["needs_attention"]',
428
- secret TEXT,
119
+ name TEXT NOT NULL UNIQUE,
120
+ project TEXT NOT NULL,
121
+ status TEXT NOT NULL DEFAULT 'init',
122
+ attention_reason TEXT,
123
+ last_event TEXT,
124
+ last_activity INTEGER NOT NULL,
125
+ last_status_change INTEGER NOT NULL,
126
+ archived_at INTEGER,
429
127
  created_at INTEGER NOT NULL,
430
128
  updated_at INTEGER NOT NULL
431
129
  );
432
- CREATE INDEX idx_webhooks_enabled ON webhooks(enabled);
433
130
  `);
434
- }
435
- console.log('[DB] v13 migration: Webhooks support added');
436
- }
437
- /**
438
- * Migration to v14: Simplification - remove push notifications and webhooks
439
- */
440
- function migrateToV14(database) {
441
- // Drop push_subscriptions table
442
- const pushTableExists = database
443
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='push_subscriptions'`)
444
- .get();
445
- if (pushTableExists) {
446
- console.log('[DB] v14 migration: Dropping push_subscriptions table');
447
- database.exec('DROP TABLE IF EXISTS push_subscriptions');
448
- }
449
- // Drop webhooks table
450
- const webhooksTableExists = database
451
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='webhooks'`)
452
- .get();
453
- if (webhooksTableExists) {
454
- console.log('[DB] v14 migration: Dropping webhooks table');
455
- database.exec('DROP TABLE IF EXISTS webhooks');
456
- }
457
- // Drop environments table
458
- const envTableExists = database
459
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='environments'`)
460
- .get();
461
- if (envTableExists) {
462
- console.log('[DB] v14 migration: Dropping environments table');
463
- database.exec('DROP TABLE IF EXISTS environments');
464
- }
465
- // Drop session_environments table
466
- const sessionEnvTableExists = database
467
- .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='session_environments'`)
468
- .get();
469
- if (sessionEnvTableExists) {
470
- console.log('[DB] v14 migration: Dropping session_environments table');
471
- database.exec('DROP TABLE IF EXISTS session_environments');
472
- }
473
- console.log('[DB] v14 migration: Simplification complete - removed push, webhooks, environments');
131
+ // Copy data from old table to new table (only the columns we're keeping)
132
+ database.exec(`
133
+ INSERT INTO sessions_new (name, project, status, attention_reason, last_event,
134
+ last_activity, last_status_change, archived_at, created_at, updated_at)
135
+ SELECT name, project, status, attention_reason, last_event,
136
+ last_activity, last_status_change, archived_at, created_at, updated_at
137
+ FROM sessions;
138
+ `);
139
+ // Drop old table and rename new one
140
+ database.exec('DROP TABLE sessions');
141
+ database.exec('ALTER TABLE sessions_new RENAME TO sessions');
142
+ // Recreate indexes
143
+ database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_name ON sessions(name)');
144
+ database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project)');
145
+ database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_status ON sessions(status)');
146
+ database.exec('CREATE INDEX IF NOT EXISTS idx_sessions_last_activity ON sessions(last_activity)');
147
+ console.log('[DB] v15 migration: Sessions table simplified');
148
+ }
149
+ // Ensure schema_version table exists
150
+ database.exec(`
151
+ CREATE TABLE IF NOT EXISTS schema_version (
152
+ version INTEGER PRIMARY KEY,
153
+ applied_at INTEGER NOT NULL
154
+ );
155
+ `);
156
+ console.log('[DB] v15 migration: Simplification complete');
474
157
  }
475
158
  /**
476
159
  * Get current schema version
@@ -504,10 +187,8 @@ function getCurrentSchemaVersion(database) {
504
187
  export function getDatabaseStats() {
505
188
  const database = getDatabase();
506
189
  const sessions = database.prepare('SELECT COUNT(*) as count FROM sessions').get();
507
- const history = database.prepare('SELECT COUNT(*) as count FROM status_history').get();
508
190
  return {
509
191
  sessions: sessions.count,
510
- history: history.count,
511
192
  };
512
193
  }
513
194
  // Export retention config for use in cleanup
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"}
@@ -8,32 +8,9 @@ export interface DbSession {
8
8
  last_event: string | null;
9
9
  last_activity: number;
10
10
  last_status_change: number;
11
- environment_id: string | null;
12
11
  archived_at: number | null;
13
12
  created_at: number;
14
13
  updated_at: number;
15
- model: string | null;
16
- cost_usd: number | null;
17
- context_usage: number | null;
18
- lines_added: number | null;
19
- lines_removed: number | null;
20
- worktree_path: string | null;
21
- branch_name: string | null;
22
- spawn_prompt: string | null;
23
- parent_session: string | null;
24
- task_id: string | null;
25
- exit_code: number | null;
26
- exited_at: number | null;
27
- output_content: string | null;
28
- output_captured_at: number | null;
29
- }
30
- export interface DbStatusHistory {
31
- id: number;
32
- session_name: string;
33
- status: SessionStatus;
34
- attention_reason: AttentionReason | null;
35
- event: string | null;
36
- timestamp: number;
37
14
  }
38
15
  export interface DbSchemaVersion {
39
16
  version: number;
@@ -46,31 +23,14 @@ export interface UpsertSessionInput {
46
23
  lastEvent?: string | null;
47
24
  lastActivity?: number;
48
25
  lastStatusChange?: number;
49
- environmentId?: string | null;
50
- model?: string | null;
51
- costUsd?: number | null;
52
- contextUsage?: number | null;
53
- linesAdded?: number | null;
54
- linesRemoved?: number | null;
55
- worktreePath?: string | null;
56
- branchName?: string | null;
57
- spawn_prompt?: string | null;
58
- parent_session?: string | null;
59
- task_id?: string | null;
60
- exit_code?: number | null;
61
- exited_at?: number | null;
62
- output_content?: string | null;
63
- output_captured_at?: number | null;
64
26
  }
65
- export declare const SCHEMA_VERSION = 14;
66
- export declare const CREATE_TABLES_SQL = "\n-- Sessions: current state of terminal sessions\nCREATE TABLE IF NOT EXISTS sessions (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT NOT NULL UNIQUE,\n project TEXT NOT NULL,\n status TEXT NOT NULL DEFAULT 'init',\n attention_reason TEXT,\n last_event TEXT,\n last_activity INTEGER NOT NULL,\n last_status_change INTEGER NOT NULL,\n environment_id TEXT,\n archived_at INTEGER,\n created_at INTEGER NOT NULL,\n updated_at INTEGER NOT NULL,\n -- StatusLine metrics (v4)\n model TEXT,\n cost_usd REAL,\n context_usage INTEGER,\n lines_added INTEGER,\n lines_removed INTEGER,\n -- Worktree isolation (v6)\n worktree_path TEXT,\n branch_name TEXT,\n -- Spawn/orchestration fields (v9)\n spawn_prompt TEXT,\n parent_session TEXT,\n task_id TEXT,\n exit_code INTEGER,\n exited_at INTEGER,\n -- Output capture (v10)\n output_content TEXT,\n output_captured_at INTEGER\n);\n\nCREATE INDEX IF NOT EXISTS idx_sessions_name ON sessions(name);\nCREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project);\nCREATE INDEX IF NOT EXISTS idx_sessions_status ON sessions(status);\nCREATE INDEX IF NOT EXISTS idx_sessions_last_activity ON sessions(last_activity);\nCREATE INDEX IF NOT EXISTS idx_sessions_parent ON sessions(parent_session);\nCREATE INDEX IF NOT EXISTS idx_sessions_task ON sessions(task_id);\n\n-- Status history: audit trail of status changes\nCREATE TABLE IF NOT EXISTS status_history (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n session_name TEXT NOT NULL,\n status TEXT NOT NULL,\n attention_reason TEXT,\n event TEXT,\n timestamp INTEGER NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_history_session ON status_history(session_name);\nCREATE INDEX IF NOT EXISTS idx_history_timestamp ON status_history(timestamp);\n\n-- Schema version tracking\nCREATE TABLE IF NOT EXISTS schema_version (\n version INTEGER PRIMARY KEY,\n applied_at INTEGER NOT NULL\n);\n";
27
+ export declare const SCHEMA_VERSION = 15;
28
+ export declare const CREATE_TABLES_SQL = "\n-- Sessions: current state of terminal sessions (simplified)\nCREATE TABLE IF NOT EXISTS sessions (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n name TEXT NOT NULL UNIQUE,\n project TEXT NOT NULL,\n status TEXT NOT NULL DEFAULT 'init',\n attention_reason TEXT,\n last_event TEXT,\n last_activity INTEGER NOT NULL,\n last_status_change INTEGER NOT NULL,\n archived_at INTEGER,\n created_at INTEGER NOT NULL,\n updated_at INTEGER NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sessions_name ON sessions(name);\nCREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project);\nCREATE INDEX IF NOT EXISTS idx_sessions_status ON sessions(status);\nCREATE INDEX IF NOT EXISTS idx_sessions_last_activity ON sessions(last_activity);\n\n-- Schema version tracking\nCREATE TABLE IF NOT EXISTS schema_version (\n version INTEGER PRIMARY KEY,\n applied_at INTEGER NOT NULL\n);\n";
67
29
  export declare const RETENTION_CONFIG: {
68
30
  /** Max age for sessions before cleanup (24 hours) */
69
31
  sessionMaxAge: number;
70
32
  /** Max age for archived sessions before cleanup (30 days) */
71
33
  archivedMaxAge: number;
72
- /** Max age for status history (7 days) */
73
- historyMaxAge: number;
74
34
  /** Cleanup interval (1 hour) */
75
35
  cleanupInterval: number;
76
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAMjE,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,aAAa,CAAC;IACtB,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAMD,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,eAAO,MAAM,iBAAiB,y3BA0B7B,CAAC;AAMF,eAAO,MAAM,gBAAgB;IAC3B,qDAAqD;;IAErD,6DAA6D;;IAE7D,gCAAgC;;CAEjC,CAAC"}