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.
- package/agent/dist/db/index.d.ts +0 -1
- package/agent/dist/db/index.d.ts.map +1 -1
- package/agent/dist/db/index.js +62 -381
- package/agent/dist/db/index.js.map +1 -1
- package/agent/dist/db/schema.d.ts +2 -42
- package/agent/dist/db/schema.d.ts.map +1 -1
- package/agent/dist/db/schema.js +4 -40
- package/agent/dist/db/schema.js.map +1 -1
- package/agent/dist/db/sessions.d.ts +0 -33
- package/agent/dist/db/sessions.d.ts.map +1 -1
- package/agent/dist/db/sessions.js +3 -138
- package/agent/dist/db/sessions.js.map +1 -1
- package/agent/dist/routes/sessions.d.ts +1 -0
- package/agent/dist/routes/sessions.d.ts.map +1 -1
- package/agent/dist/routes/sessions.js +3 -309
- package/agent/dist/routes/sessions.js.map +1 -1
- package/agent/dist/services/index.d.ts +1 -6
- package/agent/dist/services/index.d.ts.map +1 -1
- package/agent/dist/services/index.js +4 -4
- package/agent/dist/services/index.js.map +1 -1
- package/agent/dist/status.d.ts +0 -6
- package/agent/dist/status.d.ts.map +1 -1
- package/agent/dist/status.js +2 -4
- package/agent/dist/status.js.map +1 -1
- package/agent/dist/terminal.d.ts +0 -11
- package/agent/dist/terminal.d.ts.map +1 -1
- package/agent/dist/terminal.js +6 -60
- package/agent/dist/terminal.js.map +1 -1
- package/agent/dist/websocket-handlers.d.ts +1 -0
- package/agent/dist/websocket-handlers.d.ts.map +1 -1
- package/agent/dist/websocket-handlers.js +2 -49
- package/agent/dist/websocket-handlers.js.map +1 -1
- package/agent/node_modules/247-shared/dist/types/index.d.ts +0 -85
- package/agent/node_modules/247-shared/dist/types/index.d.ts.map +1 -1
- package/agent/node_modules/247-shared/dist/types/index.js +1 -47
- package/agent/node_modules/247-shared/dist/types/index.js.map +1 -1
- package/agent/node_modules/247-shared/package.json +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/agent/dist/db/history.d.ts +0 -37
- package/agent/dist/db/history.d.ts.map +0 -1
- package/agent/dist/db/history.js +0 -98
- package/agent/dist/db/history.js.map +0 -1
- package/agent/dist/services/cleanup.d.ts +0 -45
- package/agent/dist/services/cleanup.d.ts.map +0 -1
- package/agent/dist/services/cleanup.js +0 -130
- package/agent/dist/services/cleanup.js.map +0 -1
- package/agent/dist/services/execution.d.ts +0 -53
- package/agent/dist/services/execution.d.ts.map +0 -1
- package/agent/dist/services/execution.js +0 -75
- package/agent/dist/services/execution.js.map +0 -1
- package/agent/dist/services/worktree.d.ts +0 -41
- package/agent/dist/services/worktree.d.ts.map +0 -1
- package/agent/dist/services/worktree.js +0 -139
- package/agent/dist/services/worktree.js.map +0 -1
package/agent/dist/db/index.d.ts
CHANGED
|
@@ -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;
|
|
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"}
|
package/agent/dist/db/index.js
CHANGED
|
@@ -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
|
-
//
|
|
69
|
-
|
|
70
|
-
|
|
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
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
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
|
|
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
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
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 (
|
|
288
|
-
console.log('[DB]
|
|
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
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
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
|
|
117
|
+
CREATE TABLE IF NOT EXISTS sessions_new (
|
|
372
118
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
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
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
.
|
|
444
|
-
.
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
database.exec('
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
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 =
|
|
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
|
|
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":"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,
|
|
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"}
|