surface-cli 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -12
- package/dist/cli.js +158 -14
- package/dist/cli.js.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/contracts/account.js +8 -0
- package/dist/contracts/account.js.map +1 -1
- package/dist/paths.js +2 -0
- package/dist/paths.js.map +1 -1
- package/dist/providers/gmail/adapter.js +10 -28
- package/dist/providers/gmail/adapter.js.map +1 -1
- package/dist/providers/gmail/oauth.js +3 -0
- package/dist/providers/gmail/oauth.js.map +1 -1
- package/dist/providers/outlook/adapter.js +138 -127
- package/dist/providers/outlook/adapter.js.map +1 -1
- package/dist/refs.js +3 -0
- package/dist/refs.js.map +1 -1
- package/dist/session-daemon.js +218 -0
- package/dist/session-daemon.js.map +1 -0
- package/dist/session.js +283 -0
- package/dist/session.js.map +1 -0
- package/dist/state/database.js +480 -4
- package/dist/state/database.js.map +1 -1
- package/dist/summarizer.js +259 -76
- package/dist/summarizer.js.map +1 -1
- package/package.json +1 -1
package/dist/state/database.js
CHANGED
|
@@ -24,6 +24,19 @@ export class SurfaceDatabase {
|
|
|
24
24
|
updated_at TEXT NOT NULL
|
|
25
25
|
);
|
|
26
26
|
|
|
27
|
+
CREATE TABLE IF NOT EXISTS account_identities (
|
|
28
|
+
account_id TEXT PRIMARY KEY,
|
|
29
|
+
primary_email TEXT NOT NULL,
|
|
30
|
+
display_name TEXT,
|
|
31
|
+
email_aliases_json TEXT NOT NULL DEFAULT '[]',
|
|
32
|
+
name_aliases_json TEXT NOT NULL DEFAULT '[]',
|
|
33
|
+
primary_email_source TEXT NOT NULL DEFAULT 'configured',
|
|
34
|
+
display_name_source TEXT,
|
|
35
|
+
verified_at TEXT,
|
|
36
|
+
updated_at TEXT NOT NULL,
|
|
37
|
+
FOREIGN KEY(account_id) REFERENCES accounts(account_id) ON DELETE CASCADE
|
|
38
|
+
);
|
|
39
|
+
|
|
27
40
|
CREATE TABLE IF NOT EXISTS threads (
|
|
28
41
|
thread_ref TEXT PRIMARY KEY,
|
|
29
42
|
account_id TEXT NOT NULL,
|
|
@@ -101,13 +114,34 @@ export class SurfaceDatabase {
|
|
|
101
114
|
brief TEXT NOT NULL,
|
|
102
115
|
needs_action INTEGER NOT NULL DEFAULT 0,
|
|
103
116
|
importance TEXT NOT NULL,
|
|
117
|
+
fingerprint TEXT,
|
|
104
118
|
generated_at TEXT NOT NULL,
|
|
105
119
|
FOREIGN KEY(thread_ref) REFERENCES threads(thread_ref) ON DELETE CASCADE
|
|
106
120
|
);
|
|
121
|
+
|
|
122
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
123
|
+
session_id TEXT PRIMARY KEY,
|
|
124
|
+
account_id TEXT NOT NULL,
|
|
125
|
+
provider TEXT NOT NULL,
|
|
126
|
+
transport TEXT NOT NULL,
|
|
127
|
+
socket_path TEXT NOT NULL,
|
|
128
|
+
auth_token TEXT NOT NULL,
|
|
129
|
+
status TEXT NOT NULL,
|
|
130
|
+
pid INTEGER,
|
|
131
|
+
idle_timeout_seconds INTEGER NOT NULL,
|
|
132
|
+
max_age_seconds INTEGER NOT NULL,
|
|
133
|
+
error_detail TEXT,
|
|
134
|
+
created_at TEXT NOT NULL,
|
|
135
|
+
last_used_at TEXT NOT NULL,
|
|
136
|
+
closed_at TEXT,
|
|
137
|
+
FOREIGN KEY(account_id) REFERENCES accounts(account_id) ON DELETE CASCADE
|
|
138
|
+
);
|
|
107
139
|
`);
|
|
108
140
|
this.ensureColumn("threads", "participants_json", "TEXT NOT NULL DEFAULT '[]'");
|
|
109
141
|
this.ensureColumn("messages", "invite_json", "TEXT");
|
|
142
|
+
this.ensureColumn("summaries", "fingerprint", "TEXT");
|
|
110
143
|
this.ensureProviderLocatorSchema();
|
|
144
|
+
this.seedMissingAccountIdentities();
|
|
111
145
|
}
|
|
112
146
|
tableColumns(tableName) {
|
|
113
147
|
return this.connection
|
|
@@ -158,6 +192,153 @@ export class SurfaceDatabase {
|
|
|
158
192
|
}
|
|
159
193
|
this.connection.exec("DROP TABLE IF EXISTS provider_locators_legacy;");
|
|
160
194
|
}
|
|
195
|
+
parseStringArray(rawValue) {
|
|
196
|
+
try {
|
|
197
|
+
const parsed = JSON.parse(rawValue);
|
|
198
|
+
return Array.isArray(parsed)
|
|
199
|
+
? parsed.filter((entry) => typeof entry === "string" && entry.trim().length > 0)
|
|
200
|
+
: [];
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
return [];
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
normalizeEmailList(values) {
|
|
207
|
+
const seen = new Set();
|
|
208
|
+
const normalized = [];
|
|
209
|
+
for (const value of values) {
|
|
210
|
+
const candidate = value.trim().toLowerCase();
|
|
211
|
+
if (!candidate || seen.has(candidate)) {
|
|
212
|
+
continue;
|
|
213
|
+
}
|
|
214
|
+
seen.add(candidate);
|
|
215
|
+
normalized.push(candidate);
|
|
216
|
+
}
|
|
217
|
+
return normalized;
|
|
218
|
+
}
|
|
219
|
+
isPlaceholderEmail(value) {
|
|
220
|
+
return value.trim().toLowerCase().endsWith("@placeholder.local");
|
|
221
|
+
}
|
|
222
|
+
normalizeNameList(values) {
|
|
223
|
+
const seen = new Set();
|
|
224
|
+
const normalized = [];
|
|
225
|
+
for (const value of values) {
|
|
226
|
+
const candidate = value.trim().replace(/\s+/g, " ");
|
|
227
|
+
const key = candidate.toLowerCase();
|
|
228
|
+
if (!candidate || seen.has(key)) {
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
seen.add(key);
|
|
232
|
+
normalized.push(candidate);
|
|
233
|
+
}
|
|
234
|
+
return normalized;
|
|
235
|
+
}
|
|
236
|
+
rowToAccountIdentity(row) {
|
|
237
|
+
return {
|
|
238
|
+
account_id: row.account_id,
|
|
239
|
+
primary_email: row.primary_email,
|
|
240
|
+
display_name: row.display_name,
|
|
241
|
+
email_aliases: this.parseStringArray(row.email_aliases_json),
|
|
242
|
+
name_aliases: this.parseStringArray(row.name_aliases_json),
|
|
243
|
+
primary_email_source: row.primary_email_source,
|
|
244
|
+
display_name_source: row.display_name_source,
|
|
245
|
+
verified_at: row.verified_at,
|
|
246
|
+
updated_at: row.updated_at,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
seedMissingAccountIdentities() {
|
|
250
|
+
const timestamp = nowIsoUtc();
|
|
251
|
+
this.connection
|
|
252
|
+
.prepare(`
|
|
253
|
+
INSERT OR IGNORE INTO account_identities (
|
|
254
|
+
account_id,
|
|
255
|
+
primary_email,
|
|
256
|
+
email_aliases_json,
|
|
257
|
+
name_aliases_json,
|
|
258
|
+
primary_email_source,
|
|
259
|
+
display_name_source,
|
|
260
|
+
verified_at,
|
|
261
|
+
updated_at
|
|
262
|
+
)
|
|
263
|
+
SELECT
|
|
264
|
+
account_id,
|
|
265
|
+
lower(email),
|
|
266
|
+
'[]',
|
|
267
|
+
'[]',
|
|
268
|
+
'configured',
|
|
269
|
+
NULL,
|
|
270
|
+
NULL,
|
|
271
|
+
@updated_at
|
|
272
|
+
FROM accounts
|
|
273
|
+
`)
|
|
274
|
+
.run({ updated_at: timestamp });
|
|
275
|
+
}
|
|
276
|
+
seedOrUpdateConfiguredIdentity(account) {
|
|
277
|
+
const existing = this.findAccountIdentity(account);
|
|
278
|
+
const timestamp = nowIsoUtc();
|
|
279
|
+
if (!existing) {
|
|
280
|
+
this.connection
|
|
281
|
+
.prepare(`
|
|
282
|
+
INSERT INTO account_identities (
|
|
283
|
+
account_id,
|
|
284
|
+
primary_email,
|
|
285
|
+
email_aliases_json,
|
|
286
|
+
name_aliases_json,
|
|
287
|
+
primary_email_source,
|
|
288
|
+
display_name_source,
|
|
289
|
+
verified_at,
|
|
290
|
+
updated_at
|
|
291
|
+
) VALUES (
|
|
292
|
+
@account_id,
|
|
293
|
+
@primary_email,
|
|
294
|
+
'[]',
|
|
295
|
+
'[]',
|
|
296
|
+
'configured',
|
|
297
|
+
NULL,
|
|
298
|
+
NULL,
|
|
299
|
+
@updated_at
|
|
300
|
+
)
|
|
301
|
+
`)
|
|
302
|
+
.run({
|
|
303
|
+
account_id: account.account_id,
|
|
304
|
+
primary_email: account.email.trim().toLowerCase(),
|
|
305
|
+
updated_at: timestamp,
|
|
306
|
+
});
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
if (existing.primary_email_source !== "configured") {
|
|
310
|
+
return;
|
|
311
|
+
}
|
|
312
|
+
const primaryEmail = account.email.trim().toLowerCase();
|
|
313
|
+
if (existing.primary_email === primaryEmail) {
|
|
314
|
+
return;
|
|
315
|
+
}
|
|
316
|
+
this.connection
|
|
317
|
+
.prepare(`
|
|
318
|
+
UPDATE account_identities
|
|
319
|
+
SET primary_email = @primary_email,
|
|
320
|
+
updated_at = @updated_at
|
|
321
|
+
WHERE account_id = @account_id
|
|
322
|
+
`)
|
|
323
|
+
.run({
|
|
324
|
+
account_id: account.account_id,
|
|
325
|
+
primary_email: primaryEmail,
|
|
326
|
+
updated_at: timestamp,
|
|
327
|
+
});
|
|
328
|
+
this.clearSummariesForAccount(account.account_id);
|
|
329
|
+
}
|
|
330
|
+
clearSummariesForAccount(accountId) {
|
|
331
|
+
this.connection
|
|
332
|
+
.prepare(`
|
|
333
|
+
DELETE FROM summaries
|
|
334
|
+
WHERE thread_ref IN (
|
|
335
|
+
SELECT thread_ref
|
|
336
|
+
FROM threads
|
|
337
|
+
WHERE account_id = ?
|
|
338
|
+
)
|
|
339
|
+
`)
|
|
340
|
+
.run(accountId);
|
|
341
|
+
}
|
|
161
342
|
upsertAccount(input) {
|
|
162
343
|
const existing = this.findAccountByName(input.name);
|
|
163
344
|
const timestamp = nowIsoUtc();
|
|
@@ -178,7 +359,9 @@ export class SurfaceDatabase {
|
|
|
178
359
|
email: input.email,
|
|
179
360
|
updated_at: timestamp,
|
|
180
361
|
});
|
|
181
|
-
|
|
362
|
+
const account = this.findAccountByName(input.name);
|
|
363
|
+
this.seedOrUpdateConfiguredIdentity(account);
|
|
364
|
+
return account;
|
|
182
365
|
}
|
|
183
366
|
const account = {
|
|
184
367
|
account_id: makeAccountId(),
|
|
@@ -210,8 +393,144 @@ export class SurfaceDatabase {
|
|
|
210
393
|
)
|
|
211
394
|
`)
|
|
212
395
|
.run(account);
|
|
396
|
+
this.seedOrUpdateConfiguredIdentity(account);
|
|
213
397
|
return account;
|
|
214
398
|
}
|
|
399
|
+
findAccountIdentity(account) {
|
|
400
|
+
const row = this.connection
|
|
401
|
+
.prepare(`
|
|
402
|
+
SELECT
|
|
403
|
+
account_id,
|
|
404
|
+
primary_email,
|
|
405
|
+
display_name,
|
|
406
|
+
email_aliases_json,
|
|
407
|
+
name_aliases_json,
|
|
408
|
+
primary_email_source,
|
|
409
|
+
display_name_source,
|
|
410
|
+
verified_at,
|
|
411
|
+
updated_at
|
|
412
|
+
FROM account_identities
|
|
413
|
+
WHERE account_id = ?
|
|
414
|
+
LIMIT 1
|
|
415
|
+
`)
|
|
416
|
+
.get(account.account_id);
|
|
417
|
+
return row ? this.rowToAccountIdentity(row) : undefined;
|
|
418
|
+
}
|
|
419
|
+
getAccountIdentity(account) {
|
|
420
|
+
const existing = this.findAccountIdentity(account);
|
|
421
|
+
if (existing) {
|
|
422
|
+
return existing;
|
|
423
|
+
}
|
|
424
|
+
this.seedOrUpdateConfiguredIdentity(account);
|
|
425
|
+
const seeded = this.findAccountIdentity(account);
|
|
426
|
+
if (!seeded) {
|
|
427
|
+
throw new Error(`Account identity could not be created for account '${account.name}'.`);
|
|
428
|
+
}
|
|
429
|
+
return seeded;
|
|
430
|
+
}
|
|
431
|
+
updateAccountIdentityFromUser(account, input) {
|
|
432
|
+
const existing = this.getAccountIdentity(account);
|
|
433
|
+
const timestamp = nowIsoUtc();
|
|
434
|
+
const primaryEmail = input.primary_email?.trim().toLowerCase() ?? existing.primary_email;
|
|
435
|
+
const displayName = input.display_name?.trim().replace(/\s+/g, " ") ?? existing.display_name;
|
|
436
|
+
const emailAliases = this.normalizeEmailList([
|
|
437
|
+
...(input.clear_email_aliases ? [] : existing.email_aliases),
|
|
438
|
+
...(input.email_aliases ?? []),
|
|
439
|
+
].filter((email) => email.trim().toLowerCase() !== primaryEmail));
|
|
440
|
+
const nameAliases = this.normalizeNameList([
|
|
441
|
+
...(input.clear_name_aliases ? [] : existing.name_aliases),
|
|
442
|
+
...(input.name_aliases ?? []),
|
|
443
|
+
].filter((name) => name.trim().replace(/\s+/g, " ") !== displayName));
|
|
444
|
+
this.connection
|
|
445
|
+
.prepare(`
|
|
446
|
+
UPDATE account_identities
|
|
447
|
+
SET primary_email = @primary_email,
|
|
448
|
+
display_name = @display_name,
|
|
449
|
+
email_aliases_json = @email_aliases_json,
|
|
450
|
+
name_aliases_json = @name_aliases_json,
|
|
451
|
+
primary_email_source = @primary_email_source,
|
|
452
|
+
display_name_source = @display_name_source,
|
|
453
|
+
verified_at = @verified_at,
|
|
454
|
+
updated_at = @updated_at
|
|
455
|
+
WHERE account_id = @account_id
|
|
456
|
+
`)
|
|
457
|
+
.run({
|
|
458
|
+
account_id: account.account_id,
|
|
459
|
+
primary_email: primaryEmail,
|
|
460
|
+
display_name: displayName,
|
|
461
|
+
email_aliases_json: JSON.stringify(emailAliases),
|
|
462
|
+
name_aliases_json: JSON.stringify(nameAliases),
|
|
463
|
+
primary_email_source: input.primary_email ? "user_confirmed" : existing.primary_email_source,
|
|
464
|
+
display_name_source: input.display_name ? "user_confirmed" : existing.display_name_source,
|
|
465
|
+
verified_at: input.primary_email ? timestamp : existing.verified_at,
|
|
466
|
+
updated_at: timestamp,
|
|
467
|
+
});
|
|
468
|
+
if (input.primary_email) {
|
|
469
|
+
this.connection
|
|
470
|
+
.prepare(`
|
|
471
|
+
UPDATE accounts
|
|
472
|
+
SET email = @email,
|
|
473
|
+
updated_at = @updated_at
|
|
474
|
+
WHERE account_id = @account_id
|
|
475
|
+
`)
|
|
476
|
+
.run({
|
|
477
|
+
account_id: account.account_id,
|
|
478
|
+
email: primaryEmail,
|
|
479
|
+
updated_at: timestamp,
|
|
480
|
+
});
|
|
481
|
+
}
|
|
482
|
+
this.clearSummariesForAccount(account.account_id);
|
|
483
|
+
return this.getAccountIdentity(account);
|
|
484
|
+
}
|
|
485
|
+
updateAccountIdentityFromProvider(account, authenticatedEmail) {
|
|
486
|
+
const existing = this.getAccountIdentity(account);
|
|
487
|
+
const timestamp = nowIsoUtc();
|
|
488
|
+
const primaryEmail = authenticatedEmail.trim().toLowerCase();
|
|
489
|
+
const emailAliases = this.normalizeEmailList([
|
|
490
|
+
...existing.email_aliases,
|
|
491
|
+
...(existing.primary_email
|
|
492
|
+
&& existing.primary_email !== primaryEmail
|
|
493
|
+
&& !this.isPlaceholderEmail(existing.primary_email)
|
|
494
|
+
? [existing.primary_email]
|
|
495
|
+
: []),
|
|
496
|
+
].filter((email) => email.trim().toLowerCase() !== primaryEmail));
|
|
497
|
+
const identityChanged = primaryEmail !== existing.primary_email
|
|
498
|
+
|| existing.primary_email_source !== "provider_verified"
|
|
499
|
+
|| JSON.stringify(emailAliases) !== JSON.stringify(existing.email_aliases);
|
|
500
|
+
this.connection
|
|
501
|
+
.prepare(`
|
|
502
|
+
UPDATE account_identities
|
|
503
|
+
SET primary_email = @primary_email,
|
|
504
|
+
email_aliases_json = @email_aliases_json,
|
|
505
|
+
primary_email_source = 'provider_verified',
|
|
506
|
+
verified_at = @verified_at,
|
|
507
|
+
updated_at = @updated_at
|
|
508
|
+
WHERE account_id = @account_id
|
|
509
|
+
`)
|
|
510
|
+
.run({
|
|
511
|
+
account_id: account.account_id,
|
|
512
|
+
primary_email: primaryEmail,
|
|
513
|
+
email_aliases_json: JSON.stringify(emailAliases),
|
|
514
|
+
verified_at: timestamp,
|
|
515
|
+
updated_at: timestamp,
|
|
516
|
+
});
|
|
517
|
+
this.connection
|
|
518
|
+
.prepare(`
|
|
519
|
+
UPDATE accounts
|
|
520
|
+
SET email = @email,
|
|
521
|
+
updated_at = @updated_at
|
|
522
|
+
WHERE account_id = @account_id
|
|
523
|
+
`)
|
|
524
|
+
.run({
|
|
525
|
+
account_id: account.account_id,
|
|
526
|
+
email: primaryEmail,
|
|
527
|
+
updated_at: timestamp,
|
|
528
|
+
});
|
|
529
|
+
if (identityChanged) {
|
|
530
|
+
this.clearSummariesForAccount(account.account_id);
|
|
531
|
+
}
|
|
532
|
+
return this.getAccountIdentity({ ...account, email: primaryEmail });
|
|
533
|
+
}
|
|
215
534
|
listAccounts() {
|
|
216
535
|
return this.connection
|
|
217
536
|
.prepare(`
|
|
@@ -509,7 +828,7 @@ export class SurfaceDatabase {
|
|
|
509
828
|
`)
|
|
510
829
|
.run(savedTo, attachmentId);
|
|
511
830
|
}
|
|
512
|
-
upsertSummary(threadRef, summary) {
|
|
831
|
+
upsertSummary(threadRef, summary, fingerprint) {
|
|
513
832
|
this.connection
|
|
514
833
|
.prepare(`
|
|
515
834
|
INSERT INTO summaries (
|
|
@@ -519,6 +838,7 @@ export class SurfaceDatabase {
|
|
|
519
838
|
brief,
|
|
520
839
|
needs_action,
|
|
521
840
|
importance,
|
|
841
|
+
fingerprint,
|
|
522
842
|
generated_at
|
|
523
843
|
) VALUES (
|
|
524
844
|
@thread_ref,
|
|
@@ -527,6 +847,7 @@ export class SurfaceDatabase {
|
|
|
527
847
|
@brief,
|
|
528
848
|
@needs_action,
|
|
529
849
|
@importance,
|
|
850
|
+
@fingerprint,
|
|
530
851
|
@generated_at
|
|
531
852
|
)
|
|
532
853
|
ON CONFLICT(thread_ref) DO UPDATE SET
|
|
@@ -535,6 +856,7 @@ export class SurfaceDatabase {
|
|
|
535
856
|
brief = excluded.brief,
|
|
536
857
|
needs_action = excluded.needs_action,
|
|
537
858
|
importance = excluded.importance,
|
|
859
|
+
fingerprint = excluded.fingerprint,
|
|
538
860
|
generated_at = excluded.generated_at
|
|
539
861
|
`)
|
|
540
862
|
.run({
|
|
@@ -544,13 +866,22 @@ export class SurfaceDatabase {
|
|
|
544
866
|
brief: summary.brief,
|
|
545
867
|
needs_action: summary.needs_action ? 1 : 0,
|
|
546
868
|
importance: summary.importance,
|
|
869
|
+
fingerprint,
|
|
547
870
|
generated_at: nowIsoUtc(),
|
|
548
871
|
});
|
|
549
872
|
}
|
|
550
|
-
|
|
873
|
+
clearSummary(threadRef) {
|
|
874
|
+
this.connection
|
|
875
|
+
.prepare(`
|
|
876
|
+
DELETE FROM summaries
|
|
877
|
+
WHERE thread_ref = ?
|
|
878
|
+
`)
|
|
879
|
+
.run(threadRef);
|
|
880
|
+
}
|
|
881
|
+
findStoredSummary(threadRef) {
|
|
551
882
|
const row = this.connection
|
|
552
883
|
.prepare(`
|
|
553
|
-
SELECT backend, model, brief, needs_action, importance
|
|
884
|
+
SELECT thread_ref, backend, model, brief, needs_action, importance, fingerprint
|
|
554
885
|
FROM summaries
|
|
555
886
|
WHERE thread_ref = ?
|
|
556
887
|
LIMIT 1
|
|
@@ -559,6 +890,151 @@ export class SurfaceDatabase {
|
|
|
559
890
|
if (!row) {
|
|
560
891
|
return null;
|
|
561
892
|
}
|
|
893
|
+
return row;
|
|
894
|
+
}
|
|
895
|
+
createSession(input) {
|
|
896
|
+
const timestamp = nowIsoUtc();
|
|
897
|
+
this.connection
|
|
898
|
+
.prepare(`
|
|
899
|
+
INSERT INTO sessions (
|
|
900
|
+
session_id,
|
|
901
|
+
account_id,
|
|
902
|
+
provider,
|
|
903
|
+
transport,
|
|
904
|
+
socket_path,
|
|
905
|
+
auth_token,
|
|
906
|
+
status,
|
|
907
|
+
pid,
|
|
908
|
+
idle_timeout_seconds,
|
|
909
|
+
max_age_seconds,
|
|
910
|
+
error_detail,
|
|
911
|
+
created_at,
|
|
912
|
+
last_used_at,
|
|
913
|
+
closed_at
|
|
914
|
+
) VALUES (
|
|
915
|
+
@session_id,
|
|
916
|
+
@account_id,
|
|
917
|
+
@provider,
|
|
918
|
+
@transport,
|
|
919
|
+
@socket_path,
|
|
920
|
+
@auth_token,
|
|
921
|
+
'starting',
|
|
922
|
+
NULL,
|
|
923
|
+
@idle_timeout_seconds,
|
|
924
|
+
@max_age_seconds,
|
|
925
|
+
NULL,
|
|
926
|
+
@created_at,
|
|
927
|
+
@last_used_at,
|
|
928
|
+
NULL
|
|
929
|
+
)
|
|
930
|
+
`)
|
|
931
|
+
.run({
|
|
932
|
+
...input,
|
|
933
|
+
created_at: timestamp,
|
|
934
|
+
last_used_at: timestamp,
|
|
935
|
+
});
|
|
936
|
+
return this.getSession(input.session_id);
|
|
937
|
+
}
|
|
938
|
+
getSession(sessionId) {
|
|
939
|
+
return this.connection
|
|
940
|
+
.prepare(`
|
|
941
|
+
SELECT
|
|
942
|
+
session_id,
|
|
943
|
+
account_id,
|
|
944
|
+
provider,
|
|
945
|
+
transport,
|
|
946
|
+
socket_path,
|
|
947
|
+
auth_token,
|
|
948
|
+
status,
|
|
949
|
+
pid,
|
|
950
|
+
idle_timeout_seconds,
|
|
951
|
+
max_age_seconds,
|
|
952
|
+
error_detail,
|
|
953
|
+
created_at,
|
|
954
|
+
last_used_at,
|
|
955
|
+
closed_at
|
|
956
|
+
FROM sessions
|
|
957
|
+
WHERE session_id = ?
|
|
958
|
+
LIMIT 1
|
|
959
|
+
`)
|
|
960
|
+
.get(sessionId);
|
|
961
|
+
}
|
|
962
|
+
listSessions() {
|
|
963
|
+
return this.connection
|
|
964
|
+
.prepare(`
|
|
965
|
+
SELECT
|
|
966
|
+
session_id,
|
|
967
|
+
account_id,
|
|
968
|
+
provider,
|
|
969
|
+
transport,
|
|
970
|
+
socket_path,
|
|
971
|
+
auth_token,
|
|
972
|
+
status,
|
|
973
|
+
pid,
|
|
974
|
+
idle_timeout_seconds,
|
|
975
|
+
max_age_seconds,
|
|
976
|
+
error_detail,
|
|
977
|
+
created_at,
|
|
978
|
+
last_used_at,
|
|
979
|
+
closed_at
|
|
980
|
+
FROM sessions
|
|
981
|
+
ORDER BY created_at DESC
|
|
982
|
+
`)
|
|
983
|
+
.all();
|
|
984
|
+
}
|
|
985
|
+
markSessionRunning(sessionId, pid) {
|
|
986
|
+
this.connection
|
|
987
|
+
.prepare(`
|
|
988
|
+
UPDATE sessions
|
|
989
|
+
SET status = 'running',
|
|
990
|
+
pid = ?,
|
|
991
|
+
error_detail = NULL,
|
|
992
|
+
closed_at = NULL
|
|
993
|
+
WHERE session_id = ?
|
|
994
|
+
`)
|
|
995
|
+
.run(pid, sessionId);
|
|
996
|
+
}
|
|
997
|
+
updateSessionProcessInfo(sessionId, pid) {
|
|
998
|
+
this.connection
|
|
999
|
+
.prepare(`
|
|
1000
|
+
UPDATE sessions
|
|
1001
|
+
SET pid = ?
|
|
1002
|
+
WHERE session_id = ?
|
|
1003
|
+
`)
|
|
1004
|
+
.run(pid, sessionId);
|
|
1005
|
+
}
|
|
1006
|
+
touchSession(sessionId) {
|
|
1007
|
+
this.connection
|
|
1008
|
+
.prepare(`
|
|
1009
|
+
UPDATE sessions
|
|
1010
|
+
SET last_used_at = ?
|
|
1011
|
+
WHERE session_id = ?
|
|
1012
|
+
`)
|
|
1013
|
+
.run(nowIsoUtc(), sessionId);
|
|
1014
|
+
}
|
|
1015
|
+
markSessionClosed(sessionId, status, options = {}) {
|
|
1016
|
+
this.connection
|
|
1017
|
+
.prepare(`
|
|
1018
|
+
UPDATE sessions
|
|
1019
|
+
SET status = @status,
|
|
1020
|
+
error_detail = @error_detail,
|
|
1021
|
+
pid = @pid,
|
|
1022
|
+
closed_at = @closed_at
|
|
1023
|
+
WHERE session_id = @session_id
|
|
1024
|
+
`)
|
|
1025
|
+
.run({
|
|
1026
|
+
session_id: sessionId,
|
|
1027
|
+
status,
|
|
1028
|
+
error_detail: options.errorDetail ?? null,
|
|
1029
|
+
pid: options.pid ?? null,
|
|
1030
|
+
closed_at: nowIsoUtc(),
|
|
1031
|
+
});
|
|
1032
|
+
}
|
|
1033
|
+
findSummary(threadRef) {
|
|
1034
|
+
const row = this.findStoredSummary(threadRef);
|
|
1035
|
+
if (!row) {
|
|
1036
|
+
return null;
|
|
1037
|
+
}
|
|
562
1038
|
return {
|
|
563
1039
|
backend: row.backend,
|
|
564
1040
|
model: row.model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/state/database.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/state/database.ts"],"names":[],"mappings":"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"}
|