@spool-lab/core 0.5.2 → 0.6.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.
- package/README.md +22 -14
- package/dist/db/db.d.ts +2 -2
- package/dist/db/db.d.ts.map +1 -1
- package/dist/db/db.js +106 -15
- package/dist/db/db.js.map +1 -1
- package/dist/db/native-binding.d.ts +21 -0
- package/dist/db/native-binding.d.ts.map +1 -0
- package/dist/db/native-binding.js +32 -0
- package/dist/db/native-binding.js.map +1 -0
- package/dist/db/published-shares-cache.d.ts +39 -0
- package/dist/db/published-shares-cache.d.ts.map +1 -0
- package/dist/db/published-shares-cache.js +60 -0
- package/dist/db/published-shares-cache.js.map +1 -0
- package/dist/db/queries.d.ts +5 -0
- package/dist/db/queries.d.ts.map +1 -1
- package/dist/db/queries.js +219 -80
- package/dist/db/queries.js.map +1 -1
- package/dist/db/search-query.d.ts +7 -0
- package/dist/db/search-query.d.ts.map +1 -1
- package/dist/db/search-query.js +33 -7
- package/dist/db/search-query.js.map +1 -1
- package/dist/db/share-drafts.d.ts.map +1 -1
- package/dist/db/share-drafts.js +1 -3
- package/dist/db/share-drafts.js.map +1 -1
- package/dist/doctor/checks/config.d.ts.map +1 -1
- package/dist/doctor/checks/config.js +3 -3
- package/dist/doctor/checks/config.js.map +1 -1
- package/dist/doctor/checks/db.d.ts.map +1 -1
- package/dist/doctor/checks/db.js +36 -18
- package/dist/doctor/checks/db.js.map +1 -1
- package/dist/doctor/checks/env.d.ts.map +1 -1
- package/dist/doctor/checks/env.js +5 -1
- package/dist/doctor/checks/env.js.map +1 -1
- package/dist/doctor/checks/index.js +2 -2
- package/dist/doctor/checks/index.js.map +1 -1
- package/dist/doctor/checks/native.d.ts.map +1 -1
- package/dist/doctor/checks/native.js.map +1 -1
- package/dist/doctor/checks/versions.d.ts.map +1 -1
- package/dist/doctor/checks/versions.js +2 -2
- package/dist/doctor/checks/versions.js.map +1 -1
- package/dist/doctor/preflight.js +2 -2
- package/dist/doctor/preflight.js.map +1 -1
- package/dist/doctor/runner.d.ts.map +1 -1
- package/dist/doctor/runner.js +1 -1
- package/dist/doctor/runner.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/migrations/agent-search-cleanup.d.ts.map +1 -1
- package/dist/migrations/agent-search-cleanup.js +10 -6
- package/dist/migrations/agent-search-cleanup.js.map +1 -1
- package/dist/migrations/worktree-identity-upgrade.d.ts +5 -3
- package/dist/migrations/worktree-identity-upgrade.d.ts.map +1 -1
- package/dist/migrations/worktree-identity-upgrade.js +26 -3
- package/dist/migrations/worktree-identity-upgrade.js.map +1 -1
- package/dist/observability/exporter-file.d.ts.map +1 -1
- package/dist/observability/exporter-file.js +14 -6
- package/dist/observability/exporter-file.js.map +1 -1
- package/dist/observability/exporter-pretty.d.ts.map +1 -1
- package/dist/observability/exporter-pretty.js +13 -7
- package/dist/observability/exporter-pretty.js.map +1 -1
- package/dist/observability/layer.d.ts.map +1 -1
- package/dist/observability/layer.js +1 -1
- package/dist/observability/layer.js.map +1 -1
- package/dist/parsers/claude.d.ts.map +1 -1
- package/dist/parsers/claude.js +4 -144
- package/dist/parsers/claude.js.map +1 -1
- package/dist/parsers/codex.d.ts +7 -1
- package/dist/parsers/codex.d.ts.map +1 -1
- package/dist/parsers/codex.js +43 -186
- package/dist/parsers/codex.js.map +1 -1
- package/dist/parsers/gemini.d.ts.map +1 -1
- package/dist/parsers/gemini.js +113 -13
- package/dist/parsers/gemini.js.map +1 -1
- package/dist/parsers/opencode.d.ts.map +1 -1
- package/dist/parsers/opencode.js +67 -33
- package/dist/parsers/opencode.js.map +1 -1
- package/dist/parsers/pi.d.ts +18 -0
- package/dist/parsers/pi.d.ts.map +1 -0
- package/dist/parsers/pi.js +155 -0
- package/dist/parsers/pi.js.map +1 -0
- package/dist/parsers/spool-prelude.d.ts +1 -15
- package/dist/parsers/spool-prelude.d.ts.map +1 -1
- package/dist/parsers/spool-prelude.js +3 -20
- package/dist/parsers/spool-prelude.js.map +1 -1
- package/dist/projects/fs.d.ts.map +1 -1
- package/dist/projects/fs.js +1 -1
- package/dist/projects/fs.js.map +1 -1
- package/dist/projects/groups.d.ts +4 -1
- package/dist/projects/groups.d.ts.map +1 -1
- package/dist/projects/groups.js +32 -11
- package/dist/projects/groups.js.map +1 -1
- package/dist/projects/identity-synthesizers.d.ts.map +1 -1
- package/dist/projects/identity-synthesizers.js.map +1 -1
- package/dist/projects/identity.d.ts +2 -2
- package/dist/projects/identity.d.ts.map +1 -1
- package/dist/projects/identity.js +24 -13
- package/dist/projects/identity.js.map +1 -1
- package/dist/projects/sessions.d.ts.map +1 -1
- package/dist/projects/sessions.js +11 -10
- package/dist/projects/sessions.js.map +1 -1
- package/dist/projects/worktree-resolvers.d.ts +3 -0
- package/dist/projects/worktree-resolvers.d.ts.map +1 -1
- package/dist/projects/worktree-resolvers.js +144 -8
- package/dist/projects/worktree-resolvers.js.map +1 -1
- package/dist/security/index.d.ts +2 -2
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +1 -1
- package/dist/security/index.js.map +1 -1
- package/dist/security/maintenance.d.ts.map +1 -1
- package/dist/security/maintenance.js +1 -1
- package/dist/security/maintenance.js.map +1 -1
- package/dist/security/profile.d.ts.map +1 -1
- package/dist/security/profile.js +6 -4
- package/dist/security/profile.js.map +1 -1
- package/dist/security/purge.d.ts +2 -2
- package/dist/security/purge.d.ts.map +1 -1
- package/dist/security/purge.js +31 -15
- package/dist/security/purge.js.map +1 -1
- package/dist/security/repo.d.ts +1 -1
- package/dist/security/repo.d.ts.map +1 -1
- package/dist/security/repo.js +64 -37
- package/dist/security/repo.js.map +1 -1
- package/dist/security/scan.d.ts +2 -2
- package/dist/security/scan.d.ts.map +1 -1
- package/dist/security/scan.js +6 -4
- package/dist/security/scan.js.map +1 -1
- package/dist/security/worker.d.ts +2 -2
- package/dist/security/worker.d.ts.map +1 -1
- package/dist/security/worker.js +5 -11
- package/dist/security/worker.js.map +1 -1
- package/dist/sync/source-paths.d.ts.map +1 -1
- package/dist/sync/source-paths.js +46 -16
- package/dist/sync/source-paths.js.map +1 -1
- package/dist/sync/syncer.d.ts.map +1 -1
- package/dist/sync/syncer.js +112 -80
- package/dist/sync/syncer.js.map +1 -1
- package/dist/sync/watcher.d.ts +1 -1
- package/dist/sync/watcher.d.ts.map +1 -1
- package/dist/sync/watcher.js +17 -4
- package/dist/sync/watcher.js.map +1 -1
- package/dist/types.d.ts +8 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/util/resolve-bin.d.ts.map +1 -1
- package/dist/util/resolve-bin.js +40 -25
- package/dist/util/resolve-bin.js.map +1 -1
- package/package.json +35 -17
package/dist/sync/syncer.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { existsSync, statSync, readdirSync, readFileSync } from 'node:fs';
|
|
2
|
-
import { basename, dirname, join } from 'node:path';
|
|
3
2
|
import { homedir } from 'node:os';
|
|
3
|
+
import { basename, dirname, join } from 'node:path';
|
|
4
|
+
import { deleteSessionByFilePath, getSourceId, getOrCreateProject, getSessionMtime, getAllSessionMtimes, upsertSession, refreshSessionSearchFromMessages, insertMessages, getMessageSnapshot, recomputeMessageCount, } from '../db/queries.js';
|
|
4
5
|
import { loadClaudeSession, decodeProjectSlug } from '../parsers/claude.js';
|
|
5
6
|
import { loadCodexSession, CODEX_INDEX_VERSION } from '../parsers/codex.js';
|
|
6
7
|
import { loadGeminiSession } from '../parsers/gemini.js';
|
|
7
8
|
import { getOpenCodeSessionIndexedMtime, isOpenCodeDatabaseFile, listOpenCodeSessionFilePaths, loadOpenCodeSession, OPENCODE_INDEX_VERSION, parseOpenCodeSessionFilePath, } from '../parsers/opencode.js';
|
|
8
|
-
import {
|
|
9
|
-
import { deleteSessionByFilePath, getSourceId, getOrCreateProject, getSessionMtime, getAllSessionMtimes, upsertSession, upsertSessionSearch, insertMessages, getMessageSnapshot, recomputeMessageCount, } from '../db/queries.js';
|
|
10
|
-
import { computeIdentity } from '../projects/identity.js';
|
|
9
|
+
import { decodePiSessionDirSlug, loadPiSession, PI_INDEX_VERSION } from '../parsers/pi.js';
|
|
11
10
|
import { realFs } from '../projects/fs.js';
|
|
11
|
+
import { computeIdentity } from '../projects/identity.js';
|
|
12
|
+
import { getSessionRoots, isSessionFileForSource } from './source-paths.js';
|
|
12
13
|
export class Syncer {
|
|
13
14
|
db;
|
|
14
15
|
onProgress;
|
|
@@ -22,18 +23,20 @@ export class Syncer {
|
|
|
22
23
|
syncAll() {
|
|
23
24
|
const seenPaths = new Set();
|
|
24
25
|
const files = [];
|
|
25
|
-
for (const source of ['claude', 'codex', 'gemini', 'opencode']) {
|
|
26
|
+
for (const source of ['claude', 'codex', 'gemini', 'opencode', 'pi']) {
|
|
26
27
|
for (const dir of getSessionRoots(source)) {
|
|
27
28
|
try {
|
|
28
29
|
addUniqueFiles(files, seenPaths, collectSessionFiles(dir, source));
|
|
29
30
|
}
|
|
30
|
-
catch {
|
|
31
|
+
catch {
|
|
32
|
+
/* dir may not exist */
|
|
33
|
+
}
|
|
31
34
|
}
|
|
32
35
|
}
|
|
33
36
|
cleanupStaleOpenCodeSessions(this.db, files);
|
|
34
37
|
const knownMtimes = getAllSessionMtimes(this.db);
|
|
35
38
|
this.codexTitleIndex = loadCodexSessionIndex();
|
|
36
|
-
const pendingFiles = files.flatMap(f => {
|
|
39
|
+
const pendingFiles = files.flatMap((f) => {
|
|
37
40
|
const existing = knownMtimes.get(f.path);
|
|
38
41
|
try {
|
|
39
42
|
const indexedMtime = getIndexedMtime(f.path, f.source);
|
|
@@ -74,7 +77,11 @@ export class Syncer {
|
|
|
74
77
|
else if (result === 'error')
|
|
75
78
|
errors++;
|
|
76
79
|
}
|
|
77
|
-
this.onProgress?.({
|
|
80
|
+
this.onProgress?.({
|
|
81
|
+
phase: 'syncing',
|
|
82
|
+
count: Math.min(i + BATCH, pendingFiles.length),
|
|
83
|
+
total: pendingFiles.length,
|
|
84
|
+
});
|
|
78
85
|
}
|
|
79
86
|
this.applyCodexTitles();
|
|
80
87
|
}
|
|
@@ -142,7 +149,7 @@ export class Syncer {
|
|
|
142
149
|
* raw value re-enter the DB — exactly the regression that
|
|
143
150
|
* motivated this work. The purge protection requires that we
|
|
144
151
|
* NOT chase content drift on uuid-matched messages. */
|
|
145
|
-
classifySync(sessionUuid, parsed) {
|
|
152
|
+
classifySync(sessionUuid, parsed, source) {
|
|
146
153
|
// One join'd query — covers "session row missing", "session row
|
|
147
154
|
// exists with no messages", and the leading-uuid / total-row
|
|
148
155
|
// signals all at once. See getMessageSnapshot for the rationale.
|
|
@@ -155,6 +162,16 @@ export class Syncer {
|
|
|
155
162
|
return 'rewrite';
|
|
156
163
|
if (parsed[0].uuid !== snapshot.firstUuid)
|
|
157
164
|
return 'rewrite';
|
|
165
|
+
// Gemini's JSONL replay can drop mid-stream messages ($rewindTo) while
|
|
166
|
+
// new turns keep parsed.length >= total, so head+count alone misclassifies
|
|
167
|
+
// a rewound session as append and strands the dropped rows (with colliding
|
|
168
|
+
// seq values). Pure append requires the parsed message at the stored tail
|
|
169
|
+
// position to still be the stored tail. Gemini-only: claude parses emit
|
|
170
|
+
// duplicate uuids (tool-use shadow records) that the DB dedupes, so
|
|
171
|
+
// parsed[total-1] doesn't align with stored rows there.
|
|
172
|
+
if (source === 'gemini' && parsed[snapshot.total - 1].uuid !== snapshot.lastUuid) {
|
|
173
|
+
return 'rewrite';
|
|
174
|
+
}
|
|
158
175
|
return 'append';
|
|
159
176
|
}
|
|
160
177
|
/** True if the title we'd write differs from what's currently stored
|
|
@@ -164,9 +181,7 @@ export class Syncer {
|
|
|
164
181
|
* custom-title record landing while everything else stays the
|
|
165
182
|
* same). */
|
|
166
183
|
titleDiffersFromStored(sessionId, nextTitle) {
|
|
167
|
-
const row = this.db
|
|
168
|
-
.prepare('SELECT title FROM sessions WHERE id = ?')
|
|
169
|
-
.get(sessionId);
|
|
184
|
+
const row = this.db.prepare('SELECT title FROM sessions WHERE id = ?').get(sessionId);
|
|
170
185
|
return (row?.title ?? '') !== nextTitle;
|
|
171
186
|
}
|
|
172
187
|
applyCodexTitles() {
|
|
@@ -199,13 +214,22 @@ export class Syncer {
|
|
|
199
214
|
// mtime on the spool side).
|
|
200
215
|
if (!force && existingMtime === mtime)
|
|
201
216
|
return 'skipped';
|
|
217
|
+
// An index-version bump (the `::<version>` suffix in the stored mtime)
|
|
218
|
+
// exists to re-derive content, but append-mode INSERT … DO NOTHING never
|
|
219
|
+
// updates uuid-matched rows — a version-only mismatch must rewrite, or
|
|
220
|
+
// the bump re-visits every file and changes nothing.
|
|
221
|
+
const versionChanged = existingMtime !== null &&
|
|
222
|
+
existingMtime.includes('::') &&
|
|
223
|
+
!existingMtime.endsWith(`::${getIndexVersion(source)}`);
|
|
202
224
|
const parseResult = source === 'claude'
|
|
203
225
|
? loadClaudeSession(filePath)
|
|
204
226
|
: source === 'codex'
|
|
205
227
|
? loadCodexSession(filePath)
|
|
206
228
|
: source === 'gemini'
|
|
207
229
|
? loadGeminiSession(filePath)
|
|
208
|
-
:
|
|
230
|
+
: source === 'pi'
|
|
231
|
+
? loadPiSession(filePath)
|
|
232
|
+
: loadOpenCodeSession(filePath);
|
|
209
233
|
if (parseResult.kind !== 'parsed') {
|
|
210
234
|
// The "filtered" path normally removes a session whose source
|
|
211
235
|
// is no longer indexable (e.g. claude subagent jsonl that
|
|
@@ -216,10 +240,12 @@ export class Syncer {
|
|
|
216
240
|
// certainly something the user wants to know about rather
|
|
217
241
|
// than have happen silently.
|
|
218
242
|
if (parseResult.kind === 'filtered' && existingMtime !== null && !force) {
|
|
219
|
-
this.db
|
|
243
|
+
this.db
|
|
244
|
+
.prepare(`
|
|
220
245
|
INSERT INTO sync_log (source_id, file_path, status, message)
|
|
221
246
|
VALUES (?, ?, 'ok', ?)
|
|
222
|
-
`)
|
|
247
|
+
`)
|
|
248
|
+
.run(getSourceId(this.db, source), filePath, 'filtered from index');
|
|
223
249
|
deleteSessionByFilePath(this.db, filePath);
|
|
224
250
|
return 'updated';
|
|
225
251
|
}
|
|
@@ -232,15 +258,15 @@ export class Syncer {
|
|
|
232
258
|
parsed.title = codexTitle;
|
|
233
259
|
}
|
|
234
260
|
const sourceId = getSourceId(this.db, source);
|
|
235
|
-
const { slug: rawSlug, displayPath, displayName } = resolveProject(filePath, source, parsed.cwd);
|
|
236
|
-
const identity = computeIdentity(parsed.cwd || null, realFs);
|
|
261
|
+
const { slug: rawSlug, displayPath, displayName, } = resolveProject(filePath, source, parsed.cwd);
|
|
262
|
+
const identity = computeIdentity(parsed.cwd || null, realFs, undefined, undefined, parsed.gitRemote ?? null);
|
|
237
263
|
// Synthetic identities deduplicate by identity key, not by per-cwd slug,
|
|
238
264
|
// so every matching session converges to a single project row instead
|
|
239
265
|
// of accumulating one row per scratch dir.
|
|
240
266
|
const slug = identity.kind === 'synthetic' ? identity.key : rawSlug;
|
|
241
267
|
const projectId = getOrCreateProject(this.db, sourceId, slug, identity.displayPath ?? displayPath, identity.displayName || displayName, { identityKind: identity.kind, identityKey: identity.key });
|
|
242
268
|
const isNew = existingMtime === null;
|
|
243
|
-
const hasToolUse = parsed.messages.some(m => m.toolNames.length > 0);
|
|
269
|
+
const hasToolUse = parsed.messages.some((m) => m.toolNames.length > 0);
|
|
244
270
|
// Classify the sync before we touch anything. The result decides
|
|
245
271
|
// whether existing message rows survive (`append`) or get
|
|
246
272
|
// DELETE-cascaded by upsertSession (`rewrite`). The
|
|
@@ -249,7 +275,10 @@ export class Syncer {
|
|
|
249
275
|
// Explicit force overrides classification — the user has
|
|
250
276
|
// accepted that any per-message user-side state (Security Scan
|
|
251
277
|
// purge, dismiss) on this session will be rebuilt from source.
|
|
252
|
-
const mode = force ??
|
|
278
|
+
const mode = force ??
|
|
279
|
+
(versionChanged
|
|
280
|
+
? 'rewrite'
|
|
281
|
+
: this.classifySync(parsed.sessionUuid, parsed.messages, source));
|
|
253
282
|
let committedSessionId = null;
|
|
254
283
|
let insertedCount = 0;
|
|
255
284
|
this.db.transaction(() => {
|
|
@@ -261,7 +290,7 @@ export class Syncer {
|
|
|
261
290
|
title: parsed.title,
|
|
262
291
|
startedAt: parsed.startedAt,
|
|
263
292
|
endedAt: parsed.endedAt,
|
|
264
|
-
messageCount: parsed.messages.filter(m => !m.isSidechain).length,
|
|
293
|
+
messageCount: parsed.messages.filter((m) => !m.isSidechain).length,
|
|
265
294
|
hasToolUse,
|
|
266
295
|
cwd: parsed.cwd,
|
|
267
296
|
model: parsed.model,
|
|
@@ -280,24 +309,13 @@ export class Syncer {
|
|
|
280
309
|
// contentChanged so no-op syncs don't pay the UPDATE.
|
|
281
310
|
recomputeMessageCount(this.db, sessionId);
|
|
282
311
|
}
|
|
283
|
-
// Session-level search
|
|
284
|
-
//
|
|
285
|
-
//
|
|
286
|
-
//
|
|
287
|
-
// the raw secret in session_search_fts on every re-sync of an
|
|
288
|
-
// active session, leaking the purged value back into the
|
|
289
|
-
// "search across sessions" surface. Reading from DB instead
|
|
290
|
-
// makes session_search_fts a faithful projection of what
|
|
291
|
-
// messages_fts already protects. Skip on no-op re-syncs of an
|
|
292
|
-
// unchanged title — nothing to refresh.
|
|
312
|
+
// Session-level search is a projection of authoritative DB state,
|
|
313
|
+
// never parser output. Security purge masks both messages and a
|
|
314
|
+
// derived title while the source file remains unchanged; rebuilding
|
|
315
|
+
// from parsed data would leak either value back into search.
|
|
293
316
|
const titleChanged = this.titleDiffersFromStored(sessionId, parsed.title);
|
|
294
317
|
if (contentChanged || titleChanged) {
|
|
295
|
-
|
|
296
|
-
sessionId,
|
|
297
|
-
title: parsed.title,
|
|
298
|
-
userText: buildSessionSearchTextFromDb(this.db, sessionId, 'user'),
|
|
299
|
-
assistantText: buildSessionSearchTextFromDb(this.db, sessionId, 'assistant'),
|
|
300
|
-
});
|
|
318
|
+
refreshSessionSearchFromMessages(this.db, sessionId);
|
|
301
319
|
}
|
|
302
320
|
// Security Scan cascade — invalidate scan_profile so the
|
|
303
321
|
// worker re-enqueues this session. Same gate as content
|
|
@@ -305,12 +323,16 @@ export class Syncer {
|
|
|
305
323
|
// load-bearing UX win that lets purge / dismiss / star
|
|
306
324
|
// survive across re-sync of an unchanged source file.
|
|
307
325
|
if (contentChanged) {
|
|
308
|
-
this.db
|
|
326
|
+
this.db
|
|
327
|
+
.prepare(`UPDATE sessions SET scan_profile = NULL, scan_completed_at = NULL WHERE id = ?`)
|
|
328
|
+
.run(sessionId);
|
|
309
329
|
}
|
|
310
|
-
this.db
|
|
330
|
+
this.db
|
|
331
|
+
.prepare(`
|
|
311
332
|
INSERT INTO sync_log (source_id, file_path, status)
|
|
312
333
|
VALUES (?, ?, 'ok')
|
|
313
|
-
`)
|
|
334
|
+
`)
|
|
335
|
+
.run(sourceId, filePath);
|
|
314
336
|
committedSessionId = sessionId;
|
|
315
337
|
})();
|
|
316
338
|
const contentChanged = mode === 'rewrite' || insertedCount > 0;
|
|
@@ -318,23 +340,27 @@ export class Syncer {
|
|
|
318
340
|
try {
|
|
319
341
|
this.onSessionChanged(committedSessionId);
|
|
320
342
|
}
|
|
321
|
-
catch {
|
|
343
|
+
catch {
|
|
344
|
+
/* swallow callback errors */
|
|
345
|
+
}
|
|
322
346
|
}
|
|
323
347
|
return isNew ? 'added' : 'updated';
|
|
324
348
|
}
|
|
325
349
|
catch (err) {
|
|
326
350
|
try {
|
|
327
|
-
const sourceRow = this.db
|
|
328
|
-
.prepare('SELECT id FROM sources WHERE name = ?')
|
|
329
|
-
.get(source);
|
|
351
|
+
const sourceRow = this.db.prepare('SELECT id FROM sources WHERE name = ?').get(source);
|
|
330
352
|
if (sourceRow) {
|
|
331
|
-
this.db
|
|
353
|
+
this.db
|
|
354
|
+
.prepare(`
|
|
332
355
|
INSERT INTO sync_log (source_id, file_path, status, message)
|
|
333
356
|
VALUES (?, ?, 'error', ?)
|
|
334
|
-
`)
|
|
357
|
+
`)
|
|
358
|
+
.run(sourceRow.id, filePath, String(err));
|
|
335
359
|
}
|
|
336
360
|
}
|
|
337
|
-
catch {
|
|
361
|
+
catch {
|
|
362
|
+
/* ignore log errors */
|
|
363
|
+
}
|
|
338
364
|
return 'error';
|
|
339
365
|
}
|
|
340
366
|
}
|
|
@@ -351,13 +377,17 @@ export class Syncer {
|
|
|
351
377
|
.prepare('SELECT id FROM sources WHERE name = ?')
|
|
352
378
|
.get('opencode');
|
|
353
379
|
if (sourceRow) {
|
|
354
|
-
this.db
|
|
380
|
+
this.db
|
|
381
|
+
.prepare(`
|
|
355
382
|
INSERT INTO sync_log (source_id, file_path, status, message)
|
|
356
383
|
VALUES (?, ?, 'error', ?)
|
|
357
|
-
`)
|
|
384
|
+
`)
|
|
385
|
+
.run(sourceRow.id, dbPath, String(err));
|
|
358
386
|
}
|
|
359
387
|
}
|
|
360
|
-
catch {
|
|
388
|
+
catch {
|
|
389
|
+
/* ignore log errors */
|
|
390
|
+
}
|
|
361
391
|
return 'error';
|
|
362
392
|
}
|
|
363
393
|
for (const sessionPath of sessionPaths) {
|
|
@@ -369,8 +399,8 @@ export class Syncer {
|
|
|
369
399
|
}
|
|
370
400
|
const activePaths = new Set(sessionPaths);
|
|
371
401
|
const stalePaths = listIndexedOpenCodeSessionPaths(this.db)
|
|
372
|
-
.filter(path => parseOpenCodeSessionFilePath(path)?.dbPath === dbPath)
|
|
373
|
-
.filter(path => !activePaths.has(path));
|
|
402
|
+
.filter((path) => parseOpenCodeSessionFilePath(path)?.dbPath === dbPath)
|
|
403
|
+
.filter((path) => !activePaths.has(path));
|
|
374
404
|
for (const stalePath of stalePaths) {
|
|
375
405
|
if (deleteSessionByFilePath(this.db, stalePath))
|
|
376
406
|
changed = true;
|
|
@@ -407,13 +437,15 @@ function cleanupStaleOpenCodeSessions(db, files) {
|
|
|
407
437
|
}
|
|
408
438
|
}
|
|
409
439
|
function listIndexedOpenCodeSessionPaths(db) {
|
|
410
|
-
const rows = db
|
|
440
|
+
const rows = db
|
|
441
|
+
.prepare(`
|
|
411
442
|
SELECT s.file_path AS filePath
|
|
412
443
|
FROM sessions s
|
|
413
444
|
JOIN sources src ON src.id = s.source_id
|
|
414
445
|
WHERE src.name = 'opencode'
|
|
415
|
-
`)
|
|
416
|
-
|
|
446
|
+
`)
|
|
447
|
+
.all();
|
|
448
|
+
return rows.map((row) => row.filePath);
|
|
417
449
|
}
|
|
418
450
|
function addUniqueFiles(files, seenPaths, candidates) {
|
|
419
451
|
for (const candidate of candidates) {
|
|
@@ -434,10 +466,14 @@ function getIndexedMtime(filePath, source) {
|
|
|
434
466
|
function getIndexVersion(source) {
|
|
435
467
|
if (source === 'codex')
|
|
436
468
|
return CODEX_INDEX_VERSION;
|
|
469
|
+
// v2: <session_context> stripping + JSONL support — force re-derivation of
|
|
470
|
+
// contentText/titles for sessions indexed before the format change.
|
|
437
471
|
if (source === 'gemini')
|
|
438
|
-
return 'gemini-
|
|
472
|
+
return 'gemini-v2-session-search-fts';
|
|
439
473
|
if (source === 'opencode')
|
|
440
474
|
return OPENCODE_INDEX_VERSION;
|
|
475
|
+
if (source === 'pi')
|
|
476
|
+
return PI_INDEX_VERSION;
|
|
441
477
|
return 'claude-v3-session-search-fts';
|
|
442
478
|
}
|
|
443
479
|
function collectSessionFiles(dir, source) {
|
|
@@ -445,7 +481,7 @@ function collectSessionFiles(dir, source) {
|
|
|
445
481
|
const dbPath = join(dir, 'opencode.db');
|
|
446
482
|
if (!existsSync(dbPath))
|
|
447
483
|
return [];
|
|
448
|
-
return listOpenCodeSessionFilePaths(dbPath).map(path => ({ path, source }));
|
|
484
|
+
return listOpenCodeSessionFilePaths(dbPath).map((path) => ({ path, source }));
|
|
449
485
|
}
|
|
450
486
|
const results = [];
|
|
451
487
|
walkDir(dir, dir, results, source);
|
|
@@ -464,10 +500,10 @@ function walkDir(dir, root, results, source) {
|
|
|
464
500
|
if (entry.isDirectory()) {
|
|
465
501
|
if (source === 'gemini' && !shouldTraverseGeminiDir(dir, fullPath, entry.name))
|
|
466
502
|
continue;
|
|
467
|
-
// For claude, session files only live at <root>/<slug>/<uuid>.jsonl.
|
|
468
|
-
// deeper is subagent / future-nested scratch data that hijacks the
|
|
469
|
-
// sessionId — see isSessionFileForSource for the matching read-side check.
|
|
470
|
-
if (source === 'claude' && dirname(fullPath) !== root)
|
|
503
|
+
// For claude and pi, session files only live at <root>/<slug>/<uuid>.jsonl.
|
|
504
|
+
// Anything deeper is subagent / future-nested scratch data that hijacks the
|
|
505
|
+
// parent sessionId — see isSessionFileForSource for the matching read-side check.
|
|
506
|
+
if ((source === 'claude' || source === 'pi') && dirname(fullPath) !== root)
|
|
471
507
|
continue;
|
|
472
508
|
walkDir(fullPath, root, results, source);
|
|
473
509
|
}
|
|
@@ -497,27 +533,16 @@ function loadCodexSessionIndex() {
|
|
|
497
533
|
if (rec.id && rec.thread_name)
|
|
498
534
|
titles.set(rec.id, rec.thread_name);
|
|
499
535
|
}
|
|
500
|
-
catch {
|
|
536
|
+
catch {
|
|
537
|
+
/* skip malformed lines */
|
|
538
|
+
}
|
|
501
539
|
}
|
|
502
540
|
}
|
|
503
|
-
catch {
|
|
541
|
+
catch {
|
|
542
|
+
/* file may not exist */
|
|
543
|
+
}
|
|
504
544
|
return titles;
|
|
505
545
|
}
|
|
506
|
-
/** Build the per-role text that backs `session_search_fts`, reading
|
|
507
|
-
* from `messages.content_text` so that Security Scan purge masks are
|
|
508
|
-
* honoured. The legacy `buildSessionSearchText(parsed.messages, …)`
|
|
509
|
-
* shape pulled directly from the parser output (i.e. from the source
|
|
510
|
-
* jsonl which still contains the raw secret), which leaked purged
|
|
511
|
-
* values back into the session-level FTS on every re-sync. */
|
|
512
|
-
function buildSessionSearchTextFromDb(db, sessionId, role) {
|
|
513
|
-
const rows = db.prepare(`SELECT content_text FROM messages
|
|
514
|
-
WHERE session_id = ? AND is_sidechain = 0 AND role = ?
|
|
515
|
-
ORDER BY seq, id`).all(sessionId, role);
|
|
516
|
-
return rows
|
|
517
|
-
.map(r => r.content_text.trim())
|
|
518
|
-
.filter(Boolean)
|
|
519
|
-
.join('\n');
|
|
520
|
-
}
|
|
521
546
|
function resolveProject(filePath, source, cwd) {
|
|
522
547
|
const home = homedir();
|
|
523
548
|
if (source === 'claude') {
|
|
@@ -544,13 +569,20 @@ function resolveProject(filePath, source, cwd) {
|
|
|
544
569
|
const slug = displayPath.replace(/^\//, '').replace(/\//g, '-') || 'default';
|
|
545
570
|
return { slug, displayPath, displayName };
|
|
546
571
|
}
|
|
572
|
+
else if (source === 'pi') {
|
|
573
|
+
// ~/.pi/agent/sessions/{cwd-slug}/{timestamp}_{uuid}.jsonl — the header cwd
|
|
574
|
+
// is authoritative; the directory slug is a lossy fallback.
|
|
575
|
+
const displayPath = cwd || decodePiSessionDirSlug(basename(dirname(filePath)));
|
|
576
|
+
const parts = displayPath.split('/').filter(Boolean);
|
|
577
|
+
const displayName = parts[parts.length - 1] ?? 'pi';
|
|
578
|
+
const slug = displayPath.replace(/^\//, '').replace(/\//g, '-') || 'default';
|
|
579
|
+
return { slug, displayPath, displayName };
|
|
580
|
+
}
|
|
547
581
|
const projectIdentifier = dirname(filePath).split('/').at(-2) ?? 'gemini';
|
|
548
582
|
const displayPath = cwd || projectIdentifier;
|
|
549
583
|
const parts = displayPath.split('/').filter(Boolean);
|
|
550
584
|
const displayName = parts[parts.length - 1] ?? projectIdentifier;
|
|
551
|
-
const slug = cwd
|
|
552
|
-
? displayPath.replace(/^\//, '').replace(/\//g, '-')
|
|
553
|
-
: projectIdentifier;
|
|
585
|
+
const slug = cwd ? displayPath.replace(/^\//, '').replace(/\//g, '-') : projectIdentifier;
|
|
554
586
|
return { slug: slug || projectIdentifier, displayPath, displayName };
|
|
555
587
|
}
|
|
556
588
|
//# sourceMappingURL=syncer.js.map
|
package/dist/sync/syncer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../src/sync/syncer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../src/sync/syncer.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/watcher.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAA4B,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAA4B,MAAM,SAAS,CAAA;AAMpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,OAAO,CAAA;AAEnD,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACjC,KAAK,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACvC;AAED,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAA;AAEhE,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI,CACxE,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KACzB,IAAI,CAAA;AAET,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,OAAO,CAAA;CACzB;AAYD,qBAAa,YAAY;IAoBrB,OAAO,CAAC,MAAM;IAnBhB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,SAAS,CAAuD;IACxE,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,WAAW,CAMlB;IACD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAExC,YACU,MAAM,EAAE,MAAM,EACtB,IAAI,GAAE,mBAAwB,EAM/B;IAED,KAAK,IAAI,IAAI,CAiBZ;IAED,IAAI,IAAI,IAAI,CAiBX;IAED,EAAE,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAItE;IAED,OAAO,CAAC,SAAS;IA6BjB,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,aAAa;IA+BrB,OAAO,CAAC,OAAO;IAsBf,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,IAAI;CAWb"}
|
package/dist/sync/watcher.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { watch as fsWatch, statSync } from 'node:fs';
|
|
2
2
|
import { resolve as resolvePath } from 'node:path';
|
|
3
|
-
import { detectSessionSource, getSessionRoots } from './source-paths.js';
|
|
4
3
|
import { normalizeOpenCodeWatchPath } from '../parsers/opencode.js';
|
|
4
|
+
import { detectSessionSource, getSessionRoots } from './source-paths.js';
|
|
5
5
|
const DEFAULT_STABILITY_MS = 2000;
|
|
6
6
|
const DEFAULT_POLL_MS = 200;
|
|
7
7
|
const DEFAULT_FLUSH_MS = 500;
|
|
@@ -12,7 +12,13 @@ export class SpoolWatcher {
|
|
|
12
12
|
pending = new Map();
|
|
13
13
|
pendingNew = 0;
|
|
14
14
|
flushTimer = null;
|
|
15
|
-
sourceRoots = {
|
|
15
|
+
sourceRoots = {
|
|
16
|
+
claude: [],
|
|
17
|
+
codex: [],
|
|
18
|
+
gemini: [],
|
|
19
|
+
opencode: [],
|
|
20
|
+
pi: [],
|
|
21
|
+
};
|
|
16
22
|
stopped = false;
|
|
17
23
|
stabilityMs;
|
|
18
24
|
pollMs;
|
|
@@ -32,12 +38,14 @@ export class SpoolWatcher {
|
|
|
32
38
|
codex: getSessionRoots('codex'),
|
|
33
39
|
gemini: getSessionRoots('gemini'),
|
|
34
40
|
opencode: getSessionRoots('opencode'),
|
|
41
|
+
pi: getSessionRoots('pi'),
|
|
35
42
|
};
|
|
36
43
|
const roots = [
|
|
37
44
|
...this.sourceRoots.claude,
|
|
38
45
|
...this.sourceRoots.codex,
|
|
39
46
|
...this.sourceRoots.gemini,
|
|
40
47
|
...this.sourceRoots.opencode,
|
|
48
|
+
...this.sourceRoots.pi,
|
|
41
49
|
];
|
|
42
50
|
for (const root of roots)
|
|
43
51
|
this.watchRoot(root);
|
|
@@ -48,7 +56,9 @@ export class SpoolWatcher {
|
|
|
48
56
|
try {
|
|
49
57
|
w.close();
|
|
50
58
|
}
|
|
51
|
-
catch {
|
|
59
|
+
catch {
|
|
60
|
+
/* ignore */
|
|
61
|
+
}
|
|
52
62
|
}
|
|
53
63
|
this.watchers = [];
|
|
54
64
|
for (const entry of this.pending.values())
|
|
@@ -179,9 +189,12 @@ export class SpoolWatcher {
|
|
|
179
189
|
return;
|
|
180
190
|
for (const cb of list) {
|
|
181
191
|
try {
|
|
192
|
+
;
|
|
182
193
|
cb(event, data);
|
|
183
194
|
}
|
|
184
|
-
catch {
|
|
195
|
+
catch {
|
|
196
|
+
/* listener errors shouldn't break the watcher */
|
|
197
|
+
}
|
|
185
198
|
}
|
|
186
199
|
}
|
|
187
200
|
}
|
package/dist/sync/watcher.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,QAAQ,EAAkB,MAAM,SAAS,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type SessionSource = 'claude' | 'codex' | 'gemini' | 'opencode';
|
|
1
|
+
export type SessionSource = 'claude' | 'codex' | 'gemini' | 'opencode' | 'pi';
|
|
2
2
|
export type Source = SessionSource;
|
|
3
3
|
export type SearchMatchType = 'fts' | 'phrase' | 'all_terms';
|
|
4
4
|
export interface ParsedMessage {
|
|
@@ -17,6 +17,8 @@ export interface ParsedSession {
|
|
|
17
17
|
filePath: string;
|
|
18
18
|
title: string;
|
|
19
19
|
cwd: string;
|
|
20
|
+
/** Provider-recorded Git remote, when available. */
|
|
21
|
+
gitRemote?: string;
|
|
20
22
|
model: string;
|
|
21
23
|
startedAt: string;
|
|
22
24
|
endedAt: string;
|
|
@@ -75,6 +77,10 @@ export interface ProjectGroup {
|
|
|
75
77
|
sessionCount: number;
|
|
76
78
|
lastSessionAt: string | null;
|
|
77
79
|
}
|
|
80
|
+
export interface ProjectGroupWithPaths extends ProjectGroup {
|
|
81
|
+
displayPaths: string[];
|
|
82
|
+
cwds: string[];
|
|
83
|
+
}
|
|
78
84
|
export interface Message {
|
|
79
85
|
id: number;
|
|
80
86
|
sessionId: number;
|
|
@@ -111,6 +117,7 @@ export interface StatusInfo {
|
|
|
111
117
|
codexSessions: number;
|
|
112
118
|
geminiSessions: number;
|
|
113
119
|
opencodeSessions: number;
|
|
120
|
+
piSessions: number;
|
|
114
121
|
lastSyncedAt: string | null;
|
|
115
122
|
dbSizeBytes: number;
|
|
116
123
|
}
|