@getrift/rift 0.1.0-beta.16 → 0.1.0-beta.17

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 (70) hide show
  1. package/dist/src/capture/auto-capture.d.ts +7 -0
  2. package/dist/src/capture/auto-capture.d.ts.map +1 -1
  3. package/dist/src/capture/auto-capture.js +27 -11
  4. package/dist/src/capture/auto-capture.js.map +1 -1
  5. package/dist/src/capture/observability.d.ts +6 -0
  6. package/dist/src/capture/observability.d.ts.map +1 -1
  7. package/dist/src/capture/observability.js +3 -0
  8. package/dist/src/capture/observability.js.map +1 -1
  9. package/dist/src/cli/commands/capture.d.ts.map +1 -1
  10. package/dist/src/cli/commands/capture.js +14 -1
  11. package/dist/src/cli/commands/capture.js.map +1 -1
  12. package/dist/src/cli/commands/onboard.d.ts.map +1 -1
  13. package/dist/src/cli/commands/onboard.js +8 -1
  14. package/dist/src/cli/commands/onboard.js.map +1 -1
  15. package/dist/src/jobs/handlers/reconcile.d.ts +17 -0
  16. package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
  17. package/dist/src/jobs/handlers/reconcile.js +85 -13
  18. package/dist/src/jobs/handlers/reconcile.js.map +1 -1
  19. package/dist/src/jobs/handlers/reindex.d.ts.map +1 -1
  20. package/dist/src/jobs/handlers/reindex.js +1 -0
  21. package/dist/src/jobs/handlers/reindex.js.map +1 -1
  22. package/dist/src/jobs/handlers/save.d.ts.map +1 -1
  23. package/dist/src/jobs/handlers/save.js +32 -0
  24. package/dist/src/jobs/handlers/save.js.map +1 -1
  25. package/dist/src/jobs/queue.d.ts +40 -1
  26. package/dist/src/jobs/queue.d.ts.map +1 -1
  27. package/dist/src/jobs/queue.js +448 -26
  28. package/dist/src/jobs/queue.js.map +1 -1
  29. package/dist/src/providers/codex-cli-runner.d.ts +14 -0
  30. package/dist/src/providers/codex-cli-runner.d.ts.map +1 -1
  31. package/dist/src/providers/codex-cli-runner.js +120 -39
  32. package/dist/src/providers/codex-cli-runner.js.map +1 -1
  33. package/dist/src/retrieval/locator-boost.d.ts +37 -0
  34. package/dist/src/retrieval/locator-boost.d.ts.map +1 -0
  35. package/dist/src/retrieval/locator-boost.js +129 -0
  36. package/dist/src/retrieval/locator-boost.js.map +1 -0
  37. package/dist/src/retrieval/report-demotion.d.ts +17 -1
  38. package/dist/src/retrieval/report-demotion.d.ts.map +1 -1
  39. package/dist/src/retrieval/report-demotion.js +67 -5
  40. package/dist/src/retrieval/report-demotion.js.map +1 -1
  41. package/dist/src/server/routes/compact.d.ts.map +1 -1
  42. package/dist/src/server/routes/compact.js +4 -1
  43. package/dist/src/server/routes/compact.js.map +1 -1
  44. package/dist/src/server/routes/enqueue.d.ts +11 -0
  45. package/dist/src/server/routes/enqueue.d.ts.map +1 -0
  46. package/dist/src/server/routes/enqueue.js +17 -0
  47. package/dist/src/server/routes/enqueue.js.map +1 -0
  48. package/dist/src/server/routes/ingest.d.ts.map +1 -1
  49. package/dist/src/server/routes/ingest.js +4 -1
  50. package/dist/src/server/routes/ingest.js.map +1 -1
  51. package/dist/src/server/routes/reconcile.d.ts.map +1 -1
  52. package/dist/src/server/routes/reconcile.js +4 -1
  53. package/dist/src/server/routes/reconcile.js.map +1 -1
  54. package/dist/src/server/routes/reindex.d.ts.map +1 -1
  55. package/dist/src/server/routes/reindex.js +4 -1
  56. package/dist/src/server/routes/reindex.js.map +1 -1
  57. package/dist/src/server/routes/save.d.ts.map +1 -1
  58. package/dist/src/server/routes/save.js +4 -1
  59. package/dist/src/server/routes/save.js.map +1 -1
  60. package/dist/src/server/routes/search.d.ts.map +1 -1
  61. package/dist/src/server/routes/search.js +33 -3
  62. package/dist/src/server/routes/search.js.map +1 -1
  63. package/dist/src/server/routes/triage.d.ts.map +1 -1
  64. package/dist/src/server/routes/triage.js +4 -1
  65. package/dist/src/server/routes/triage.js.map +1 -1
  66. package/dist/src/storage/rebuild.d.ts +21 -0
  67. package/dist/src/storage/rebuild.d.ts.map +1 -1
  68. package/dist/src/storage/rebuild.js +135 -66
  69. package/dist/src/storage/rebuild.js.map +1 -1
  70. package/package.json +6 -3
@@ -18,6 +18,20 @@ import { createShadowSwap } from "./shadow-swap.js";
18
18
  import { recordEmbed } from "../observability/embedding-events.js";
19
19
  import { appendIndexEvent, recordIndexWrite, } from "../observability/index-events.js";
20
20
  const ALL_CONV_SOURCES = [...CONVERSATION_SOURCES, "inbox"];
21
+ /**
22
+ * Shared duplicate-resolution policy for conversation raw files.
23
+ *
24
+ * Both repair paths — reconcile and full rebuild — must pick the SAME winner
25
+ * when several raw files compete for one row id or idempotency_key, otherwise
26
+ * the canonical conversation row could flip depending on which tool last ran,
27
+ * which is corrosive to trust and debugging. Policy: most-recent raw wins,
28
+ * ordered by filename (`<timestamp>_<id>.json`, ISO-8601-derived → lexicographic
29
+ * == chronological). Compare basenames so the ordering is stable regardless of
30
+ * which source folder a file lives in. Sorts most-recent FIRST (descending).
31
+ */
32
+ export function compareRawRecencyDesc(aPath, bPath) {
33
+ return path.basename(bPath).localeCompare(path.basename(aPath));
34
+ }
21
35
  /**
22
36
  * Full rebuild from raw disk state via shadow-table swap.
23
37
  * Creates shadow tables for all four tables, populates them from
@@ -25,7 +39,11 @@ const ALL_CONV_SOURCES = [...CONVERSATION_SOURCES, "inbox"];
25
39
  */
26
40
  export async function fullRebuild(deps) {
27
41
  const swap = createShadowSwap(deps.dataDir);
28
- const report = { tables_rebuilt: [], rows_reindexed: 0 };
42
+ const report = {
43
+ tables_rebuilt: [],
44
+ rows_reindexed: 0,
45
+ conversations_skipped_duplicate_key: 0,
46
+ };
29
47
  const swaps = new Map();
30
48
  // Per-table populate counts. Used to emit one post-commit "live"
31
49
  // index-event per table so `index.last_update_at` is only credited
@@ -100,7 +118,11 @@ async function populateStructuredDocsShadows(deps, swap, swaps, populated, repor
100
118
  const targetShadow = isLocal ? localShadow : cloudShadow;
101
119
  try {
102
120
  const content = fs.readFileSync(canonical, "utf-8");
103
- const embedding = await recordEmbed(deps.dataDir, provider, { pipeline: "backfill", operation: "structured_doc_embedding", input_count: 1 }, () => provider.embed(content));
121
+ const embedding = await recordEmbed(deps.dataDir, provider, {
122
+ pipeline: "backfill",
123
+ operation: "structured_doc_embedding",
124
+ input_count: 1,
125
+ }, () => provider.embed(content));
104
126
  const row = {
105
127
  id,
106
128
  source_path: canonical,
@@ -114,7 +136,9 @@ async function populateStructuredDocsShadows(deps, swap, swaps, populated, repor
114
136
  indexed_at: new Date().toISOString(),
115
137
  metadata: "{}",
116
138
  };
117
- const targetTableName = isLocal ? "structured_docs_local" : "structured_docs";
139
+ const targetTableName = isLocal
140
+ ? "structured_docs_local"
141
+ : "structured_docs";
118
142
  await recordIndexWrite(deps.dataDir, {
119
143
  table: targetTableName,
120
144
  pipeline: "backfill",
@@ -138,74 +162,95 @@ async function populateConversationShadows(deps, swap, swaps, populated, report)
138
162
  swaps.set("conversations_cold", coldShadow);
139
163
  const cutoff = new Date();
140
164
  cutoff.setDate(cutoff.getDate() - (deps.config.compaction.age_threshold_days ?? 30));
165
+ // Durable dedup across the whole rebuild: a non-empty idempotency_key may
166
+ // only be inserted once. Mirrors reconcile's key-skip so a raw file that
167
+ // reconcile already declined to revive cannot reappear as a duplicate here.
168
+ const seenKeys = new Set();
169
+ // Group raw files by stable row id ACROSS ALL SOURCES first. Refresh-on-grow
170
+ // may leave more than one raw artifact for the same id on disk if pruning was
171
+ // interrupted; reinserting all of them duplicates the conversation. Keep only
172
+ // the most-recent raw per id (shared recency policy). Collecting globally —
173
+ // rather than per source folder — matters because `seenKeys` is global: if we
174
+ // sorted within each source folder, an older raw in an earlier folder could
175
+ // claim a key before a newer same-key raw in a later folder was ever seen.
176
+ const latestByRowId = new Map();
141
177
  for (const source of ALL_CONV_SOURCES) {
142
178
  const rawDir = path.join(deps.dataDir, "raw", "conversations", source);
143
179
  if (!fs.existsSync(rawDir))
144
180
  continue;
145
- // Group raw files by stable row id. Refresh-on-grow may leave more
146
- // than one raw artifact for the same id on disk if pruning was
147
- // interrupted; reinserting all of them duplicates the conversation
148
- // into the rebuilt index. Keep only the lexicographically greatest
149
- // filename per id — filenames are `<timestamp>_<id>.json` with an
150
- // ISO-8601-derived timestamp, so lexicographic order = chronological.
151
- const latestByRowId = new Map();
152
181
  for (const file of fs.readdirSync(rawDir)) {
153
182
  if (!file.endsWith(".json"))
154
183
  continue;
155
184
  const id = extractIdFromFilename(file);
156
185
  if (!id)
157
186
  continue;
187
+ const rawPath = path.join(rawDir, file);
158
188
  const prior = latestByRowId.get(id);
159
- if (!prior || file > prior) {
160
- latestByRowId.set(id, file);
189
+ if (!prior || compareRawRecencyDesc(rawPath, prior) < 0) {
190
+ latestByRowId.set(id, rawPath);
161
191
  }
162
192
  }
163
- for (const [id, file] of latestByRowId) {
164
- const rawPath = path.join(rawDir, file);
165
- try {
166
- const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
167
- const summary = raw.summary ?? "";
168
- const content = raw.content ?? summary;
169
- const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, { pipeline: "backfill", operation: "conversation_embedding", input_count: 1 }, () => deps.embeddingProvider.embed(content || summary));
170
- const fingerprint = typeof raw.conversation_fingerprint === "string"
171
- && raw.conversation_fingerprint.length > 0
172
- ? raw.conversation_fingerprint
173
- : content
174
- ? conversationContentFingerprint(content)
175
- : "";
176
- const row = {
177
- id,
178
- content,
179
- summary,
180
- embedding: vec,
181
- source: raw.source ?? "claude_code",
182
- domain: raw.domain ?? "tech",
183
- intent: raw.intent ?? "build",
184
- quality: raw.quality ?? "medium",
185
- topics: JSON.stringify(raw.topics ?? []),
186
- decisions: JSON.stringify(raw.decisions ?? []),
187
- key_outputs: JSON.stringify(raw.key_outputs ?? []),
188
- indexed_at: new Date().toISOString(),
189
- idempotency_key: raw.idempotency_key ?? "",
190
- conversation_fingerprint: fingerprint,
191
- };
192
- const filenameTime = extractTimestampFromFilename(file);
193
- const rowTime = filenameTime ?? fs.statSync(rawPath).mtime;
194
- const targetTable = rowTime >= cutoff ? "conversations_hot" : "conversations_cold";
195
- const targetShadow = rowTime >= cutoff ? hotShadow : coldShadow;
196
- await recordIndexWrite(deps.dataDir, {
197
- table: targetTable,
198
- pipeline: "backfill",
199
- operation: "conversation_upsert",
200
- row_count: 1,
201
- phase: "shadow",
202
- }, () => targetShadow.add([row]));
203
- populated.set(targetTable, (populated.get(targetTable) ?? 0) + 1);
204
- report.rows_reindexed++;
205
- }
206
- catch (err) {
207
- process.stderr.write(`rebuild: failed to index conversation ${id}: ${err instanceof Error ? err.message : String(err)}\n`);
193
+ }
194
+ // Process most-recent raw first (global order) so that when two row ids share
195
+ // one idempotency_key the newest wins and older duplicates are skipped —
196
+ // identical winner to reconcile via the shared recency comparator.
197
+ const ordered = [...latestByRowId.entries()].sort(([, a], [, b]) => compareRawRecencyDesc(a, b));
198
+ for (const [id, rawPath] of ordered) {
199
+ const file = path.basename(rawPath);
200
+ try {
201
+ const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
202
+ const key = typeof raw.idempotency_key === "string" ? raw.idempotency_key : "";
203
+ if (key && seenKeys.has(key)) {
204
+ report.conversations_skipped_duplicate_key++;
205
+ continue;
208
206
  }
207
+ const summary = raw.summary ?? "";
208
+ const content = raw.content ?? summary;
209
+ const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, {
210
+ pipeline: "backfill",
211
+ operation: "conversation_embedding",
212
+ input_count: 1,
213
+ }, () => deps.embeddingProvider.embed(content || summary));
214
+ const fingerprint = typeof raw.conversation_fingerprint === "string" &&
215
+ raw.conversation_fingerprint.length > 0
216
+ ? raw.conversation_fingerprint
217
+ : content
218
+ ? conversationContentFingerprint(content)
219
+ : "";
220
+ const row = {
221
+ id,
222
+ content,
223
+ summary,
224
+ embedding: vec,
225
+ source: raw.source ?? "claude_code",
226
+ domain: raw.domain ?? "tech",
227
+ intent: raw.intent ?? "build",
228
+ quality: raw.quality ?? "medium",
229
+ topics: JSON.stringify(raw.topics ?? []),
230
+ decisions: JSON.stringify(raw.decisions ?? []),
231
+ key_outputs: JSON.stringify(raw.key_outputs ?? []),
232
+ indexed_at: new Date().toISOString(),
233
+ idempotency_key: raw.idempotency_key ?? "",
234
+ conversation_fingerprint: fingerprint,
235
+ };
236
+ const filenameTime = extractTimestampFromFilename(file);
237
+ const rowTime = filenameTime ?? fs.statSync(rawPath).mtime;
238
+ const targetTable = rowTime >= cutoff ? "conversations_hot" : "conversations_cold";
239
+ const targetShadow = rowTime >= cutoff ? hotShadow : coldShadow;
240
+ await recordIndexWrite(deps.dataDir, {
241
+ table: targetTable,
242
+ pipeline: "backfill",
243
+ operation: "conversation_upsert",
244
+ row_count: 1,
245
+ phase: "shadow",
246
+ }, () => targetShadow.add([row]));
247
+ if (key)
248
+ seenKeys.add(key);
249
+ populated.set(targetTable, (populated.get(targetTable) ?? 0) + 1);
250
+ report.rows_reindexed++;
251
+ }
252
+ catch (err) {
253
+ process.stderr.write(`rebuild: failed to index conversation ${id}: ${err instanceof Error ? err.message : String(err)}\n`);
209
254
  }
210
255
  }
211
256
  }
@@ -222,7 +267,11 @@ async function populateDigestShadow(deps, swap, swaps, populated, report) {
222
267
  if (typeof raw.id !== "string" || !raw.id)
223
268
  continue;
224
269
  const summary = raw.summary ?? raw.content ?? "";
225
- const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, { pipeline: "backfill", operation: "digest_embedding", input_count: 1 }, () => deps.embeddingProvider.embed(summary));
270
+ const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, {
271
+ pipeline: "backfill",
272
+ operation: "digest_embedding",
273
+ input_count: 1,
274
+ }, () => deps.embeddingProvider.embed(summary));
226
275
  const row = {
227
276
  id: raw.id,
228
277
  content: raw.content ?? "",
@@ -336,7 +385,11 @@ async function reembedStructuredDocs(cloudProvider, dataDir, config, localProvid
336
385
  for (const row of allRows) {
337
386
  try {
338
387
  const provider = resolveProviderForPath(row.source_path, cloudProvider, config, localProvider);
339
- const newEmbedding = await recordEmbed(dataDir, provider, { pipeline: "reindex", operation: "structured_doc_embedding", input_count: 1 }, () => provider.embed(row.content));
388
+ const newEmbedding = await recordEmbed(dataDir, provider, {
389
+ pipeline: "reindex",
390
+ operation: "structured_doc_embedding",
391
+ input_count: 1,
392
+ }, () => provider.embed(row.content));
340
393
  const oldTimestamp = row.indexed_at;
341
394
  const newTimestamp = new Date().toISOString();
342
395
  await recordIndexWrite(dataDir, {
@@ -344,7 +397,9 @@ async function reembedStructuredDocs(cloudProvider, dataDir, config, localProvid
344
397
  pipeline: "reindex",
345
398
  operation: "structured_doc_upsert",
346
399
  row_count: 1,
347
- }, () => table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]));
400
+ }, () => table.add([
401
+ { ...row, embedding: newEmbedding, indexed_at: newTimestamp },
402
+ ]));
348
403
  try {
349
404
  await table.delete(`id = '${row.id}' AND indexed_at = '${oldTimestamp}'`);
350
405
  count++;
@@ -353,7 +408,9 @@ async function reembedStructuredDocs(cloudProvider, dataDir, config, localProvid
353
408
  try {
354
409
  await table.delete(`id = '${row.id}' AND indexed_at = '${newTimestamp}'`);
355
410
  }
356
- catch { /* duplicate remains — reconcile will repair */ }
411
+ catch {
412
+ /* duplicate remains — reconcile will repair */
413
+ }
357
414
  }
358
415
  }
359
416
  catch (err) {
@@ -373,7 +430,11 @@ async function reembedLocalStructuredDocs(localProvider, dataDir) {
373
430
  let count = 0;
374
431
  for (const row of allRows) {
375
432
  try {
376
- const newEmbedding = await recordEmbed(dataDir, localProvider, { pipeline: "reindex", operation: "structured_doc_local_embedding", input_count: 1 }, () => localProvider.embed(row.content));
433
+ const newEmbedding = await recordEmbed(dataDir, localProvider, {
434
+ pipeline: "reindex",
435
+ operation: "structured_doc_local_embedding",
436
+ input_count: 1,
437
+ }, () => localProvider.embed(row.content));
377
438
  const oldTimestamp = row.indexed_at;
378
439
  const newTimestamp = new Date().toISOString();
379
440
  await recordIndexWrite(dataDir, {
@@ -381,7 +442,9 @@ async function reembedLocalStructuredDocs(localProvider, dataDir) {
381
442
  pipeline: "reindex",
382
443
  operation: "structured_doc_local_upsert",
383
444
  row_count: 1,
384
- }, () => table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]));
445
+ }, () => table.add([
446
+ { ...row, embedding: newEmbedding, indexed_at: newTimestamp },
447
+ ]));
385
448
  try {
386
449
  await table.delete(`id = '${row.id}' AND indexed_at = '${oldTimestamp}'`);
387
450
  count++;
@@ -390,7 +453,9 @@ async function reembedLocalStructuredDocs(localProvider, dataDir) {
390
453
  try {
391
454
  await table.delete(`id = '${row.id}' AND indexed_at = '${newTimestamp}'`);
392
455
  }
393
- catch { /* duplicate remains — reconcile will repair */ }
456
+ catch {
457
+ /* duplicate remains — reconcile will repair */
458
+ }
394
459
  }
395
460
  }
396
461
  catch (err) {
@@ -452,7 +517,9 @@ async function reembedTable(tableName, embeddingProvider, dataDir, operation, ge
452
517
  pipeline: "reindex",
453
518
  operation: `${operation.replace(/_embedding$/, "")}_upsert`,
454
519
  row_count: 1,
455
- }, () => table.add([{ ...row, embedding: newEmbedding, [timestampField]: newTimestamp }]));
520
+ }, () => table.add([
521
+ { ...row, embedding: newEmbedding, [timestampField]: newTimestamp },
522
+ ]));
456
523
  try {
457
524
  await table.delete(`id = '${row.id}' AND ${timestampField} = '${oldTimestamp}'`);
458
525
  count++;
@@ -461,7 +528,9 @@ async function reembedTable(tableName, embeddingProvider, dataDir, operation, ge
461
528
  try {
462
529
  await table.delete(`id = '${row.id}' AND ${timestampField} = '${newTimestamp}'`);
463
530
  }
464
- catch { /* duplicate remains — reconcile will repair */ }
531
+ catch {
532
+ /* duplicate remains — reconcile will repair */
533
+ }
465
534
  }
466
535
  }
467
536
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../../src/storage/rebuild.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../../src/storage/rebuild.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getrift/rift",
3
- "version": "0.1.0-beta.16",
3
+ "version": "0.1.0-beta.17",
4
4
  "description": "Local-first personal memory + reasoning infrastructure with an MCP interface.",
5
5
  "homepage": "https://getrift.dev",
6
6
  "license": "UNLICENSED",
@@ -22,13 +22,16 @@
22
22
  "test": "vitest run",
23
23
  "test:watch": "vitest",
24
24
  "build:clean": "rm -rf dist",
25
- "build": "pnpm build:clean && tsc",
25
+ "build": "npm run build:clean && tsc",
26
26
  "check": "tsc --noEmit",
27
+ "ci:typecheck": "npm run check",
28
+ "ci:test:focused": "tsx tests/fixtures/generate.ts && vitest tests/retrieval/current-truth.test.ts tests/retrieval/report-demotion.test.ts tests/retrieval/locator-boost.test.ts tests/retrieval/context-pack.test.ts tests/server/routes/search.test.ts tests/server/routes/context.test.ts --run",
29
+ "ci:pr": "npm run ci:typecheck && npm run check:rename && npm run ci:test:focused",
27
30
  "check:rename": "bash scripts/check-rename.sh",
28
31
  "check:tarball": "bash scripts/verify-tarball.sh",
29
32
  "plist:generate": "bash scripts/generate-plist.sh",
30
33
  "postinstall": "node -e \"const e=process.env;if(e.RIFT_SKIP_POSTINSTALL_MENUBAR==='1'||(e.RIFT_POSTINSTALL_MENUBAR!=='1'&&e.npm_config_global!=='true'&&e.npm_config_location!=='global'))process.exit(0);import('./dist/src/cli/postinstall-menubar.js').catch(() => {})\"",
31
- "prepublishOnly": "pnpm check && pnpm check:rename && pnpm build && pnpm check:tarball"
34
+ "prepublishOnly": "npm run check && npm run check:rename && npm run build && npm run check:tarball"
32
35
  },
33
36
  "dependencies": {
34
37
  "@fastify/multipart": "^9.4.0",