@getrift/rift 0.1.0-beta.1 → 0.1.0-beta.11

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 (207) hide show
  1. package/README.md +154 -0
  2. package/dist/src/auth/keychain.d.ts +9 -0
  3. package/dist/src/auth/keychain.d.ts.map +1 -1
  4. package/dist/src/auth/keychain.js +37 -0
  5. package/dist/src/auth/keychain.js.map +1 -1
  6. package/dist/src/capture/recover-quarantine.d.ts +221 -0
  7. package/dist/src/capture/recover-quarantine.d.ts.map +1 -0
  8. package/dist/src/capture/recover-quarantine.js +453 -0
  9. package/dist/src/capture/recover-quarantine.js.map +1 -0
  10. package/dist/src/cli/commands/backfill.d.ts.map +1 -1
  11. package/dist/src/cli/commands/backfill.js +5 -2
  12. package/dist/src/cli/commands/backfill.js.map +1 -1
  13. package/dist/src/cli/commands/capture-recover.d.ts +12 -0
  14. package/dist/src/cli/commands/capture-recover.d.ts.map +1 -0
  15. package/dist/src/cli/commands/capture-recover.js +120 -0
  16. package/dist/src/cli/commands/capture-recover.js.map +1 -0
  17. package/dist/src/cli/commands/capture.d.ts.map +1 -1
  18. package/dist/src/cli/commands/capture.js +10 -4
  19. package/dist/src/cli/commands/capture.js.map +1 -1
  20. package/dist/src/cli/commands/feedback.d.ts.map +1 -1
  21. package/dist/src/cli/commands/feedback.js +6 -2
  22. package/dist/src/cli/commands/feedback.js.map +1 -1
  23. package/dist/src/cli/commands/mcp-install.js +5 -2
  24. package/dist/src/cli/commands/mcp-install.js.map +1 -1
  25. package/dist/src/cli/commands/onboard.d.ts +24 -0
  26. package/dist/src/cli/commands/onboard.d.ts.map +1 -1
  27. package/dist/src/cli/commands/onboard.js +119 -21
  28. package/dist/src/cli/commands/onboard.js.map +1 -1
  29. package/dist/src/cli/commands/rebuild.d.ts.map +1 -1
  30. package/dist/src/cli/commands/rebuild.js +6 -3
  31. package/dist/src/cli/commands/rebuild.js.map +1 -1
  32. package/dist/src/cli/commands/review.d.ts.map +1 -1
  33. package/dist/src/cli/commands/review.js +22 -7
  34. package/dist/src/cli/commands/review.js.map +1 -1
  35. package/dist/src/cli/commands/search.d.ts.map +1 -1
  36. package/dist/src/cli/commands/search.js +28 -4
  37. package/dist/src/cli/commands/search.js.map +1 -1
  38. package/dist/src/cli/commands/status.d.ts.map +1 -1
  39. package/dist/src/cli/commands/status.js +48 -2
  40. package/dist/src/cli/commands/status.js.map +1 -1
  41. package/dist/src/cli/commands/token-issue.d.ts.map +1 -1
  42. package/dist/src/cli/commands/token-issue.js +9 -1
  43. package/dist/src/cli/commands/token-issue.js.map +1 -1
  44. package/dist/src/cli/commands/triage.d.ts.map +1 -1
  45. package/dist/src/cli/commands/triage.js +7 -5
  46. package/dist/src/cli/commands/triage.js.map +1 -1
  47. package/dist/src/cli/commands/update.d.ts +26 -0
  48. package/dist/src/cli/commands/update.d.ts.map +1 -0
  49. package/dist/src/cli/commands/update.js +130 -0
  50. package/dist/src/cli/commands/update.js.map +1 -0
  51. package/dist/src/cli/default-config-path.d.ts +15 -0
  52. package/dist/src/cli/default-config-path.d.ts.map +1 -0
  53. package/dist/src/cli/default-config-path.js +27 -0
  54. package/dist/src/cli/default-config-path.js.map +1 -0
  55. package/dist/src/cli/http-client.d.ts +56 -1
  56. package/dist/src/cli/http-client.d.ts.map +1 -1
  57. package/dist/src/cli/http-client.js +161 -6
  58. package/dist/src/cli/http-client.js.map +1 -1
  59. package/dist/src/cli/index.d.ts.map +1 -1
  60. package/dist/src/cli/index.js +25 -6
  61. package/dist/src/cli/index.js.map +1 -1
  62. package/dist/src/cli/status/friend-header.d.ts.map +1 -1
  63. package/dist/src/cli/status/friend-header.js +117 -7
  64. package/dist/src/cli/status/friend-header.js.map +1 -1
  65. package/dist/src/ingestion/inbox-core/conversation-fingerprint.d.ts +2 -0
  66. package/dist/src/ingestion/inbox-core/conversation-fingerprint.d.ts.map +1 -0
  67. package/dist/src/ingestion/inbox-core/conversation-fingerprint.js +27 -0
  68. package/dist/src/ingestion/inbox-core/conversation-fingerprint.js.map +1 -0
  69. package/dist/src/ingestion/inbox-core/conversation-key.d.ts +2 -0
  70. package/dist/src/ingestion/inbox-core/conversation-key.d.ts.map +1 -0
  71. package/dist/src/ingestion/inbox-core/conversation-key.js +31 -0
  72. package/dist/src/ingestion/inbox-core/conversation-key.js.map +1 -0
  73. package/dist/src/ingestion/inbox-core/extensions.d.ts +3 -0
  74. package/dist/src/ingestion/inbox-core/extensions.d.ts.map +1 -0
  75. package/dist/src/ingestion/inbox-core/extensions.js +16 -0
  76. package/dist/src/ingestion/inbox-core/extensions.js.map +1 -0
  77. package/dist/src/ingestion/inbox-core/idempotency.d.ts +2 -0
  78. package/dist/src/ingestion/inbox-core/idempotency.d.ts.map +1 -0
  79. package/dist/src/ingestion/inbox-core/idempotency.js +22 -0
  80. package/dist/src/ingestion/inbox-core/idempotency.js.map +1 -0
  81. package/dist/src/ingestion/inbox-core/index.d.ts +20 -0
  82. package/dist/src/ingestion/inbox-core/index.d.ts.map +1 -0
  83. package/dist/src/ingestion/inbox-core/index.js +20 -0
  84. package/dist/src/ingestion/inbox-core/index.js.map +1 -0
  85. package/dist/src/ingestion/inbox-core/source-detection.d.ts +2 -0
  86. package/dist/src/ingestion/inbox-core/source-detection.d.ts.map +1 -0
  87. package/dist/src/ingestion/inbox-core/source-detection.js +23 -0
  88. package/dist/src/ingestion/inbox-core/source-detection.js.map +1 -0
  89. package/dist/src/ingestion/inbox-core/source-sniffer.d.ts +11 -0
  90. package/dist/src/ingestion/inbox-core/source-sniffer.d.ts.map +1 -0
  91. package/dist/src/ingestion/inbox-core/source-sniffer.js +69 -0
  92. package/dist/src/ingestion/inbox-core/source-sniffer.js.map +1 -0
  93. package/dist/src/ingestion/inbox-core/zip-sniffer.d.ts +70 -0
  94. package/dist/src/ingestion/inbox-core/zip-sniffer.d.ts.map +1 -0
  95. package/dist/src/ingestion/inbox-core/zip-sniffer.js +161 -0
  96. package/dist/src/ingestion/inbox-core/zip-sniffer.js.map +1 -0
  97. package/dist/src/ingestion/inbox-watcher.d.ts.map +1 -1
  98. package/dist/src/ingestion/inbox-watcher.js +34 -50
  99. package/dist/src/ingestion/inbox-watcher.js.map +1 -1
  100. package/dist/src/ingestion/indexer.d.ts +7 -0
  101. package/dist/src/ingestion/indexer.d.ts.map +1 -1
  102. package/dist/src/ingestion/indexer.js +36 -2
  103. package/dist/src/ingestion/indexer.js.map +1 -1
  104. package/dist/src/ingestion/metadata-extraction.d.ts +8 -5
  105. package/dist/src/ingestion/metadata-extraction.d.ts.map +1 -1
  106. package/dist/src/ingestion/metadata-extraction.js +24 -5
  107. package/dist/src/ingestion/metadata-extraction.js.map +1 -1
  108. package/dist/src/ingestion/skip-quarantine.d.ts +10 -0
  109. package/dist/src/ingestion/skip-quarantine.d.ts.map +1 -0
  110. package/dist/src/ingestion/skip-quarantine.js +35 -0
  111. package/dist/src/ingestion/skip-quarantine.js.map +1 -0
  112. package/dist/src/jobs/handlers/compact.d.ts.map +1 -1
  113. package/dist/src/jobs/handlers/compact.js +25 -4
  114. package/dist/src/jobs/handlers/compact.js.map +1 -1
  115. package/dist/src/jobs/handlers/ingest.d.ts.map +1 -1
  116. package/dist/src/jobs/handlers/ingest.js +214 -36
  117. package/dist/src/jobs/handlers/ingest.js.map +1 -1
  118. package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
  119. package/dist/src/jobs/handlers/reconcile.js +30 -8
  120. package/dist/src/jobs/handlers/reconcile.js.map +1 -1
  121. package/dist/src/jobs/handlers/reindex.d.ts.map +1 -1
  122. package/dist/src/jobs/handlers/reindex.js +12 -2
  123. package/dist/src/jobs/handlers/reindex.js.map +1 -1
  124. package/dist/src/jobs/handlers/save.d.ts.map +1 -1
  125. package/dist/src/jobs/handlers/save.js +9 -2
  126. package/dist/src/jobs/handlers/save.js.map +1 -1
  127. package/dist/src/jobs/queue.d.ts +11 -0
  128. package/dist/src/jobs/queue.d.ts.map +1 -1
  129. package/dist/src/jobs/queue.js +18 -0
  130. package/dist/src/jobs/queue.js.map +1 -1
  131. package/dist/src/jobs/worker-entry.d.ts.map +1 -1
  132. package/dist/src/jobs/worker-entry.js +2 -0
  133. package/dist/src/jobs/worker-entry.js.map +1 -1
  134. package/dist/src/main.js +36 -4
  135. package/dist/src/main.js.map +1 -1
  136. package/dist/src/mcp/errors.d.ts.map +1 -1
  137. package/dist/src/mcp/errors.js +20 -1
  138. package/dist/src/mcp/errors.js.map +1 -1
  139. package/dist/src/mcp/tools/context-pack.d.ts.map +1 -1
  140. package/dist/src/mcp/tools/context-pack.js +5 -2
  141. package/dist/src/mcp/tools/context-pack.js.map +1 -1
  142. package/dist/src/mcp/tools/search.d.ts +6 -2
  143. package/dist/src/mcp/tools/search.d.ts.map +1 -1
  144. package/dist/src/mcp/tools/search.js +34 -4
  145. package/dist/src/mcp/tools/search.js.map +1 -1
  146. package/dist/src/observability/embedding-events.d.ts +52 -0
  147. package/dist/src/observability/embedding-events.d.ts.map +1 -0
  148. package/dist/src/observability/embedding-events.js +149 -0
  149. package/dist/src/observability/embedding-events.js.map +1 -0
  150. package/dist/src/observability/index-events.d.ts +70 -0
  151. package/dist/src/observability/index-events.d.ts.map +1 -0
  152. package/dist/src/observability/index-events.js +148 -0
  153. package/dist/src/observability/index-events.js.map +1 -0
  154. package/dist/src/observability/tool-usage-stats.d.ts +69 -4
  155. package/dist/src/observability/tool-usage-stats.d.ts.map +1 -1
  156. package/dist/src/observability/tool-usage-stats.js +88 -31
  157. package/dist/src/observability/tool-usage-stats.js.map +1 -1
  158. package/dist/src/observability/tool-usage.d.ts +100 -7
  159. package/dist/src/observability/tool-usage.d.ts.map +1 -1
  160. package/dist/src/observability/tool-usage.js +196 -33
  161. package/dist/src/observability/tool-usage.js.map +1 -1
  162. package/dist/src/observability/version-check.d.ts +70 -0
  163. package/dist/src/observability/version-check.d.ts.map +1 -0
  164. package/dist/src/observability/version-check.js +197 -0
  165. package/dist/src/observability/version-check.js.map +1 -0
  166. package/dist/src/providers/ollama-embed.d.ts +2 -1
  167. package/dist/src/providers/ollama-embed.d.ts.map +1 -1
  168. package/dist/src/providers/ollama-embed.js +1 -0
  169. package/dist/src/providers/ollama-embed.js.map +1 -1
  170. package/dist/src/providers/openai-metadata-extraction.d.ts +3 -3
  171. package/dist/src/providers/openai-metadata-extraction.d.ts.map +1 -1
  172. package/dist/src/providers/openai-metadata-extraction.js +18 -3
  173. package/dist/src/providers/openai-metadata-extraction.js.map +1 -1
  174. package/dist/src/providers/stub.d.ts +2 -0
  175. package/dist/src/providers/stub.d.ts.map +1 -1
  176. package/dist/src/providers/stub.js +2 -0
  177. package/dist/src/providers/stub.js.map +1 -1
  178. package/dist/src/providers/types.d.ts +11 -0
  179. package/dist/src/providers/types.d.ts.map +1 -1
  180. package/dist/src/providers/voyage.d.ts +2 -1
  181. package/dist/src/providers/voyage.d.ts.map +1 -1
  182. package/dist/src/providers/voyage.js +1 -0
  183. package/dist/src/providers/voyage.js.map +1 -1
  184. package/dist/src/retrieval/compact.d.ts +115 -2
  185. package/dist/src/retrieval/compact.d.ts.map +1 -1
  186. package/dist/src/retrieval/compact.js +154 -5
  187. package/dist/src/retrieval/compact.js.map +1 -1
  188. package/dist/src/retrieval/context-pack.d.ts +8 -0
  189. package/dist/src/retrieval/context-pack.d.ts.map +1 -1
  190. package/dist/src/retrieval/context-pack.js +17 -2
  191. package/dist/src/retrieval/context-pack.js.map +1 -1
  192. package/dist/src/server/app.d.ts.map +1 -1
  193. package/dist/src/server/app.js +67 -1
  194. package/dist/src/server/app.js.map +1 -1
  195. package/dist/src/server/routes/friend-status.d.ts +202 -3
  196. package/dist/src/server/routes/friend-status.d.ts.map +1 -1
  197. package/dist/src/server/routes/friend-status.js +290 -7
  198. package/dist/src/server/routes/friend-status.js.map +1 -1
  199. package/dist/src/server/routes/mcp-usage.d.ts +4 -4
  200. package/dist/src/server/routes/search.d.ts.map +1 -1
  201. package/dist/src/server/routes/search.js +144 -24
  202. package/dist/src/server/routes/search.js.map +1 -1
  203. package/dist/src/storage/rebuild.d.ts +14 -1
  204. package/dist/src/storage/rebuild.d.ts.map +1 -1
  205. package/dist/src/storage/rebuild.js +160 -34
  206. package/dist/src/storage/rebuild.js.map +1 -1
  207. package/package.json +1 -1
@@ -11,15 +11,43 @@
11
11
  *
12
12
  * Phase 2 — Persist (only if all conversations passed Phase 1):
13
13
  * 5. Write raw files (with full metadata — rebuild-safe)
14
- * 6. Insert all rows into conversations_hot
14
+ * 6. Insert all rows into conversations_hot (or refresh into the
15
+ * table where an older snapshot already lives)
15
16
  *
16
17
  * This two-phase design ensures atomicity: either all conversations in
17
18
  * an upload are indexed, or none are. No partial ingest.
18
19
  *
19
20
  * Replay safety:
20
- * - Row ID is derived from source conversation ID + job root ID
21
- * - Raw files are written before table insert (crash safety)
22
- * - Existing rows are skipped on replay
21
+ * - Row ID is deterministic on (source, provider conversation ID), so a
22
+ * re-imported monthly export collapses to the same row across jobs.
23
+ * - Raw files are written before table insert (crash safety).
24
+ * - Existing rows in conversations_hot OR conversations_cold are checked
25
+ * on replay (compacted-then-re-imported conversations don't re-enter hot).
26
+ *
27
+ * Refresh-on-grow:
28
+ * - For each existing row, the handler compares the incoming canonical
29
+ * `conversationContentFingerprint(content)` against a fingerprint
30
+ * derived from the existing row's own `content` column. The row, not
31
+ * the raw artifact, is the source of truth for "what is currently
32
+ * indexed"; using raw here would create a drift bug if Phase 2 crashes
33
+ * between writing the new raw and replacing the row. If fingerprints
34
+ * match, the conversation is unchanged and we skip. If they differ,
35
+ * the conversation has grown and we refresh: write a new raw artifact
36
+ * (which records the target table so crash recovery can route the
37
+ * restored row back to the right place), delete the old row, insert
38
+ * the new row in the same table where it lived (hot stays hot, cold
39
+ * stays cold — we do not silently re-promote). After a successful
40
+ * row replacement, prior raw artifacts for that row id are pruned
41
+ * best-effort so rebuild does not insert duplicates.
42
+ *
43
+ * Schema caveat (deferred):
44
+ * - `conversation_fingerprint` is persisted in raw artifacts only.
45
+ * Adding it as a LanceDB column would require a schema migration
46
+ * across both `conversations_hot` and `conversations_cold` plus the
47
+ * rebuild / shadow-swap paths, which is non-trivial and out of scope
48
+ * for this slice. The row's stored `content` remains the comparison
49
+ * source until that migration lands; the raw fingerprint is kept
50
+ * for forward-compat and external tooling.
23
51
  */
24
52
  import crypto from "node:crypto";
25
53
  import fs from "node:fs";
@@ -31,7 +59,11 @@ import { parseChatGPTWeb } from "../../ingestion/parsers/chatgpt-web.js";
31
59
  import { parseClaudeWeb } from "../../ingestion/parsers/claude-web.js";
32
60
  import { parseGeminiWeb } from "../../ingestion/parsers/gemini-web.js";
33
61
  import { parseGrokWeb } from "../../ingestion/parsers/grok-web.js";
62
+ import { stableConversationRowId } from "../../ingestion/inbox-core/conversation-key.js";
63
+ import { conversationContentFingerprint } from "../../ingestion/inbox-core/conversation-fingerprint.js";
34
64
  import { CodexCliMetadataExtractor } from "../../providers/codex-cli-metadata-extraction.js";
65
+ import { recordEmbed } from "../../observability/embedding-events.js";
66
+ import { recordIndexWrite } from "../../observability/index-events.js";
35
67
  /** Map of source -> parser. Only fixture-backed sources are registered. */
36
68
  const PARSERS = {
37
69
  chatgpt_web: parseChatGPTWeb,
@@ -39,17 +71,6 @@ const PARSERS = {
39
71
  gemini_web: parseGeminiWeb,
40
72
  grok_web: parseGrokWeb,
41
73
  };
42
- /**
43
- * Generate a stable row ID from the source conversation ID and job root.
44
- * This ensures replay safety: retries converge on the same row ID.
45
- */
46
- function stableRowId(conversationId, jobRootId) {
47
- return crypto
48
- .createHash("sha256")
49
- .update(`${jobRootId}:${conversationId}`)
50
- .digest("hex")
51
- .slice(0, 32);
52
- }
53
74
  /**
54
75
  * Walk the retry_of chain to the root job (same logic as save handler).
55
76
  */
@@ -66,21 +87,77 @@ function resolveChainRoot(job, queue) {
66
87
  return current;
67
88
  }
68
89
  /**
69
- * Find the raw file for `rowId` under `rawDir`, if it exists.
90
+ * Find the latest raw file for `rowId` under `rawDir`, if any.
91
+ *
92
+ * Raw filenames are `<timestamp>_<rowId>.json`. After a refresh, the
93
+ * same row id can have multiple files (one per version); we pick the
94
+ * lexicographically greatest filename, which matches the ISO-8601
95
+ * timestamp ordering used at write time.
70
96
  */
71
97
  function findRawFile(rawDir, rowId) {
72
98
  if (!fs.existsSync(rawDir))
73
99
  return undefined;
74
100
  const suffix = `_${rowId}.json`;
75
- const match = fs.readdirSync(rawDir).find((f) => f.endsWith(suffix));
76
- return match ? path.join(rawDir, match) : undefined;
101
+ const matches = fs.readdirSync(rawDir).filter((f) => f.endsWith(suffix));
102
+ if (matches.length === 0)
103
+ return undefined;
104
+ matches.sort();
105
+ return path.join(rawDir, matches[matches.length - 1]);
106
+ }
107
+ /**
108
+ * Compute the canonical content fingerprint of an existing indexed row.
109
+ *
110
+ * The row's own `content` is the source of truth for "what is currently
111
+ * indexed". Using the row content (rather than the raw artifact on disk)
112
+ * avoids a raw-vs-row drift bug: if Phase 2 crashes between writing the
113
+ * new raw and replacing the row, the raw on disk is ahead of the table,
114
+ * and a subsequent re-import comparing against raw would mistakenly
115
+ * decide "unchanged" while the row is still stale.
116
+ *
117
+ * Returns `undefined` if the row has no readable content; callers
118
+ * treat that as "cannot prove unchanged" and refresh.
119
+ */
120
+ function existingRowFingerprint(row) {
121
+ const content = typeof row.content === "string" ? row.content : undefined;
122
+ if (!content)
123
+ return undefined;
124
+ return conversationContentFingerprint(content);
125
+ }
126
+ /**
127
+ * Best-effort prune of stale raw artifacts for `rowId` under `rawDir`,
128
+ * keeping only `keepFileName`. Called after a refresh has successfully
129
+ * replaced the row in its table, so the new raw is the only one rebuild
130
+ * needs to re-derive the row.
131
+ *
132
+ * Safe-by-design: any pre-existing raw still on disk has older content
133
+ * than the row now holds, so deleting it loses nothing the table cannot
134
+ * already reconstruct. If a prune fails (filesystem error, race with
135
+ * another process), we swallow the error rather than fail the ingest —
136
+ * the rebuild duplicate caused by an extra raw is a much cheaper bug
137
+ * than a failed ingest after the row is already correct.
138
+ */
139
+ function pruneStaleRawArtifacts(rawDir, rowId, keepFileName) {
140
+ if (!fs.existsSync(rawDir))
141
+ return;
142
+ const suffix = `_${rowId}.json`;
143
+ for (const name of fs.readdirSync(rawDir)) {
144
+ if (!name.endsWith(suffix))
145
+ continue;
146
+ if (name === keepFileName)
147
+ continue;
148
+ try {
149
+ fs.unlinkSync(path.join(rawDir, name));
150
+ }
151
+ catch {
152
+ // best-effort
153
+ }
154
+ }
77
155
  }
78
156
  export function createIngestHandler(deps) {
79
157
  return async (job) => {
80
158
  const rootJob = resolveChainRoot(job, deps.queue);
81
159
  const rootPayload = rootJob.payload ??
82
160
  job.payload;
83
- const jobRootId = rootJob.id;
84
161
  const payload = rootPayload;
85
162
  if (!payload?.source || !payload.fileData) {
86
163
  throw new Error("Invalid ingest job payload: missing source or fileData");
@@ -101,6 +178,7 @@ export function createIngestHandler(deps) {
101
178
  }
102
179
  const rawDir = path.join(deps.dataDir, "raw", "conversations", payload.rawSource ?? payload.source);
103
180
  const table = getTable("conversations_hot");
181
+ const coldTable = getTable("conversations_cold");
104
182
  // --- Phase 1: Process all conversations (no side effects) ---
105
183
  // Extract metadata + embed for every conversation. If any fails,
106
184
  // quarantine that one and throw — nothing has been persisted yet.
@@ -110,20 +188,54 @@ export function createIngestHandler(deps) {
110
188
  const processed = [];
111
189
  const recoverable = [];
112
190
  for (const conversation of parsed) {
113
- const rowId = stableRowId(conversation.id, jobRootId);
114
- // Replay guard: skip already-indexed conversations
115
- const existing = await table
191
+ // Row id is keyed on (source, provider conversation id) so a
192
+ // re-imported monthly export collapses to the same row instead
193
+ // of duplicating every conversation under a fresh job-root id.
194
+ const rowId = stableConversationRowId(payload.source, conversation.id);
195
+ const fingerprint = conversationContentFingerprint(conversation.content);
196
+ // Replay / refresh guard.
197
+ // Check both hot AND cold — a conversation compacted into cold
198
+ // is exactly the kind of "old" conversation a monthly full export
199
+ // re-includes; without the cold check we'd duplicate it back into hot.
200
+ // For each existing row, compare content fingerprints to decide
201
+ // between skip (unchanged) and refresh (grown).
202
+ const existingHot = await table
116
203
  .query()
117
204
  .where(`id = '${rowId}'`)
118
205
  .toArray();
119
- if (existing.length > 0) {
120
- continue;
206
+ const existingCold = existingHot.length === 0
207
+ ? await coldTable.query().where(`id = '${rowId}'`).toArray()
208
+ : [];
209
+ const existingTable = existingHot.length > 0
210
+ ? "conversations_hot"
211
+ : existingCold.length > 0
212
+ ? "conversations_cold"
213
+ : undefined;
214
+ if (existingTable) {
215
+ // Row is already indexed. Decide skip vs refresh by comparing
216
+ // the incoming content fingerprint against a fingerprint
217
+ // derived from the row's own content. Using the row (not the
218
+ // raw artifact on disk) sidesteps drift between raw and row
219
+ // during the Phase 2 crash window.
220
+ const existingRow = (existingHot[0] ?? existingCold[0]);
221
+ const existingFingerprint = existingRowFingerprint(existingRow);
222
+ if (existingFingerprint && existingFingerprint === fingerprint) {
223
+ // Unchanged — preserve the existing snapshot.
224
+ continue;
225
+ }
226
+ // Either the conversation has grown (fingerprint differs) or
227
+ // we cannot prove it's unchanged (row content is empty / not
228
+ // a string). In both cases, fall through to refresh:
229
+ // re-extract metadata + re-embed, then in Phase 2 replace
230
+ // the row in the table where it currently lives.
121
231
  }
122
- // Crash recovery: raw file exists but row missing → defer to Phase 2.
123
- const existingRawPath = findRawFile(rawDir, rowId);
124
- if (existingRawPath) {
125
- recoverable.push({ rawPath: existingRawPath, rowId });
126
- continue;
232
+ else {
233
+ // Crash recovery: raw file exists but row missing → defer to Phase 2.
234
+ const existingRawPath = findRawFile(rawDir, rowId);
235
+ if (existingRawPath) {
236
+ recoverable.push({ rawPath: existingRawPath, rowId });
237
+ continue;
238
+ }
127
239
  }
128
240
  let metadata;
129
241
  try {
@@ -135,13 +247,24 @@ export function createIngestHandler(deps) {
135
247
  }
136
248
  let embedding;
137
249
  try {
138
- embedding = await deps.embeddingProvider.embed(conversation.content);
250
+ embedding = await recordEmbed(deps.dataDir, deps.embeddingProvider, {
251
+ pipeline: "ingest_job",
252
+ operation: "conversation_embedding",
253
+ input_count: 1,
254
+ }, () => deps.embeddingProvider.embed(conversation.content));
139
255
  }
140
256
  catch (err) {
141
257
  await quarantine(deps.dataDir, payload.source, conversation, err);
142
258
  throw err;
143
259
  }
144
- processed.push({ conversation, rowId, metadata, embedding });
260
+ processed.push({
261
+ conversation,
262
+ rowId,
263
+ fingerprint,
264
+ metadata,
265
+ embedding,
266
+ ...(existingTable ? { refreshTable: existingTable } : {}),
267
+ });
145
268
  }
146
269
  if (processed.length === 0 && recoverable.length === 0) {
147
270
  return; // All already indexed (replay)
@@ -150,14 +273,22 @@ export function createIngestHandler(deps) {
150
273
  // Write raw files first (crash safety), then insert rows.
151
274
  // Recoverable items already have raw files — only insert rows.
152
275
  const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
276
+ const newRawFileNames = new Map();
153
277
  for (const item of processed) {
154
278
  const extractionProvenance = metadataExtractor.getProvenance?.();
279
+ // `target_table` lets crash recovery route the restored row to the
280
+ // table the slice originally targeted. Without it, a cold refresh
281
+ // interrupted between delete-old and add-new would be restored
282
+ // into `conversations_hot` on replay (silent re-promote).
283
+ const targetTable = item.refreshTable ?? "conversations_hot";
155
284
  const rawData = {
156
285
  source: payload.source,
157
286
  conversation_id: item.conversation.id,
158
287
  title: item.conversation.title,
159
288
  created_at: item.conversation.createdAt,
160
289
  content: item.conversation.content,
290
+ conversation_fingerprint: item.fingerprint,
291
+ target_table: targetTable,
161
292
  summary: item.conversation.title,
162
293
  domain: item.metadata.domain,
163
294
  intent: item.metadata.intent,
@@ -171,10 +302,24 @@ export function createIngestHandler(deps) {
171
302
  : {}),
172
303
  };
173
304
  const rawFileName = `${timestamp}_${item.rowId}.json`;
305
+ newRawFileNames.set(item.rowId, rawFileName);
174
306
  const rawPath = path.join(rawDir, rawFileName);
175
307
  await atomicWrite(rawPath, JSON.stringify(rawData, null, 2));
176
308
  }
177
309
  for (const item of processed) {
310
+ // For a refresh, delete the old row from whichever table it lives
311
+ // in BEFORE inserting the new one — otherwise LanceDB ends up with
312
+ // two rows sharing the same id. Raw artifact for the new version
313
+ // is already on disk above, so if the delete-then-add window is
314
+ // interrupted, the next replay finds rowId missing + raw present
315
+ // and reindexes from raw via the recoverable path.
316
+ const targetTableName = item.refreshTable ?? "conversations_hot";
317
+ const targetTable = item.refreshTable === "conversations_cold"
318
+ ? coldTable
319
+ : table;
320
+ if (item.refreshTable) {
321
+ await targetTable.delete(`id = '${item.rowId}'`);
322
+ }
178
323
  const row = {
179
324
  id: item.rowId,
180
325
  content: item.conversation.content,
@@ -190,11 +335,26 @@ export function createIngestHandler(deps) {
190
335
  indexed_at: new Date().toISOString(),
191
336
  idempotency_key: payload.idempotency_key ?? "",
192
337
  };
193
- await table.add([row]);
338
+ await recordIndexWrite(deps.dataDir, {
339
+ table: targetTableName,
340
+ pipeline: "ingest_job",
341
+ operation: item.refreshTable
342
+ ? "conversation_refresh"
343
+ : "conversation_upsert",
344
+ row_count: 1,
345
+ }, () => targetTable.add([row]));
346
+ if (item.refreshTable) {
347
+ // Once the new row is in place, the prior raw artifact(s) for
348
+ // this rowId only carry the older content. Prune them so a
349
+ // future rebuild does not insert duplicate rows (one per raw)
350
+ // for the same conversation. Best-effort by design.
351
+ const keep = newRawFileNames.get(item.rowId);
352
+ pruneStaleRawArtifacts(rawDir, item.rowId, keep);
353
+ }
194
354
  }
195
355
  // Recover rows from existing raw files (crash recovery).
196
356
  for (const item of recoverable) {
197
- await reindexFromRaw(item.rawPath, item.rowId, payload, table, deps.embeddingProvider);
357
+ await reindexFromRaw(item.rawPath, item.rowId, payload, { hot: table, cold: coldTable }, deps.embeddingProvider, deps.dataDir);
198
358
  }
199
359
  };
200
360
  }
@@ -208,12 +368,25 @@ function resolveMetadataExtractor(payload, deps) {
208
368
  * Re-index a conversation from its raw file (crash recovery).
209
369
  * Raw files written by Phase 2 include full metadata, so we can
210
370
  * rebuild the row without calling the extractor again.
371
+ *
372
+ * Routing: the raw artifact's `target_table` decides hot vs cold so
373
+ * a cold refresh interrupted between delete-old and add-new is
374
+ * restored back into cold, not silently re-promoted to hot. Legacy
375
+ * artifacts (pre-2026-05-14) have no `target_table` field and default
376
+ * to hot — same behavior as before this slice.
211
377
  */
212
- async function reindexFromRaw(rawPath, rowId, payload, table, embeddingProvider) {
378
+ async function reindexFromRaw(rawPath, rowId, payload, tables, embeddingProvider, dataDir) {
213
379
  const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
214
380
  const content = raw.content ?? "";
215
381
  const summary = raw.summary ?? "";
216
- const embedding = await embeddingProvider.embed(content || summary);
382
+ const rawTarget = raw.target_table;
383
+ const targetTableName = rawTarget === "conversations_cold" ? "conversations_cold" : "conversations_hot";
384
+ const targetTable = targetTableName === "conversations_cold" ? tables.cold : tables.hot;
385
+ const embedding = await recordEmbed(dataDir, embeddingProvider, {
386
+ pipeline: "ingest_job",
387
+ operation: "reindex_from_raw",
388
+ input_count: 1,
389
+ }, () => embeddingProvider.embed(content || summary));
217
390
  const row = {
218
391
  id: rowId,
219
392
  content,
@@ -229,7 +402,12 @@ async function reindexFromRaw(rawPath, rowId, payload, table, embeddingProvider)
229
402
  indexed_at: new Date().toISOString(),
230
403
  idempotency_key: payload.idempotency_key ?? "",
231
404
  };
232
- await table.add([row]);
405
+ await recordIndexWrite(dataDir, {
406
+ table: targetTableName,
407
+ pipeline: "ingest_job",
408
+ operation: "conversation_reindex_from_raw",
409
+ row_count: 1,
410
+ }, () => targetTable.add([row]));
233
411
  }
234
412
  /**
235
413
  * Quarantine a failed conversation to data/quarantine/.
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/jobs/handlers/ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/jobs/handlers/ingest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../../../src/jobs/handlers/reconcile.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAO,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAe1D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,mEAAmE;IACnE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAUD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,GAAG,UAAU,CA4CtE"}
1
+ {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../../../src/jobs/handlers/reconcile.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAO,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAiB1D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,mEAAmE;IACnE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAUD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,GAAG,UAAU,CA4CtE"}
@@ -24,6 +24,8 @@ import { CONVERSATION_SOURCES } from "../../providers/types.js";
24
24
  import { isWatcherPathIgnored } from "../../ingestion/watcher.js";
25
25
  import { walkDirectory } from "../../ingestion/scanner.js";
26
26
  import { buildIgnoredPaths } from "../../ingestion/ignored-paths.js";
27
+ import { recordEmbed } from "../../observability/embedding-events.js";
28
+ import { recordIndexWrite } from "../../observability/index-events.js";
27
29
  import { Indexer, fileId } from "../../ingestion/indexer.js";
28
30
  import { isSupported } from "../../ingestion/extractor.js";
29
31
  import { getTable } from "../../storage/tables.js";
@@ -147,6 +149,7 @@ async function scannerPostPass(deps) {
147
149
  sourceScope: owner.scope,
148
150
  clientName: owner.client_name ?? "",
149
151
  allowedRoots: [owner.path],
152
+ dataDir: deps.dataDir,
150
153
  ...(isLocal ? { tableName: "structured_docs_local" } : {}),
151
154
  });
152
155
  };
@@ -246,6 +249,7 @@ async function reconcileStructuredDocs(deps, report) {
246
249
  sourceScope: source.scope,
247
250
  clientName: source.client_name ?? "",
248
251
  allowedRoots: [source.path],
252
+ dataDir: deps.dataDir,
249
253
  ...(isLocal ? { tableName: "structured_docs_local" } : {}),
250
254
  });
251
255
  try {
@@ -341,7 +345,7 @@ async function reconcileConversations(deps, report) {
341
345
  if (indexedIds.has(id))
342
346
  continue;
343
347
  try {
344
- await reindexConversation(deps.embeddingProvider, id, rawPath);
348
+ await reindexConversation(deps.embeddingProvider, id, rawPath, deps.dataDir);
345
349
  report.missing_reindexed++;
346
350
  }
347
351
  catch (err) {
@@ -385,12 +389,16 @@ function extractIdFromFilename(filename) {
385
389
  const match = filename.match(/^[^_]+_(.+)\.json$/);
386
390
  return match?.[1];
387
391
  }
388
- async function reindexConversation(embedding, id, rawPath) {
392
+ async function reindexConversation(embedding, id, rawPath, dataDir) {
389
393
  const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
390
394
  const summary = raw.summary ?? "";
391
395
  // Ingest raw files store full content separately; save raw files use summary as content.
392
396
  const content = raw.content ?? summary;
393
- const vec = await embedding.embed(content || summary);
397
+ const vec = await recordEmbed(dataDir, embedding, {
398
+ pipeline: "reconcile",
399
+ operation: "reindex_conversation",
400
+ input_count: 1,
401
+ }, () => embedding.embed(content || summary));
394
402
  const row = {
395
403
  id,
396
404
  content,
@@ -406,7 +414,12 @@ async function reindexConversation(embedding, id, rawPath) {
406
414
  indexed_at: new Date().toISOString(),
407
415
  idempotency_key: raw.idempotency_key ?? "",
408
416
  };
409
- await getTable("conversations_hot").add([row]);
417
+ await recordIndexWrite(dataDir, {
418
+ table: "conversations_hot",
419
+ pipeline: "reconcile",
420
+ operation: "reindex_conversation",
421
+ row_count: 1,
422
+ }, () => getTable("conversations_hot").add([row]));
410
423
  }
411
424
  // ---------------------------------------------------------------------------
412
425
  // Digests: data/raw/digests/ -> digests table
@@ -442,7 +455,7 @@ async function reconcileDigests(deps, report) {
442
455
  if (indexedIds.has(id))
443
456
  continue;
444
457
  try {
445
- await reindexDigest(deps.embeddingProvider, rawPath);
458
+ await reindexDigest(deps.embeddingProvider, rawPath, deps.dataDir);
446
459
  report.missing_reindexed++;
447
460
  }
448
461
  catch (err) {
@@ -457,10 +470,14 @@ async function reconcileDigests(deps, report) {
457
470
  }
458
471
  }
459
472
  }
460
- async function reindexDigest(embedding, rawPath) {
473
+ async function reindexDigest(embedding, rawPath, dataDir) {
461
474
  const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
462
475
  const summary = raw.summary ?? raw.content ?? "";
463
- const vec = await embedding.embed(summary);
476
+ const vec = await recordEmbed(dataDir, embedding, {
477
+ pipeline: "reconcile",
478
+ operation: "reindex_digest",
479
+ input_count: 1,
480
+ }, () => embedding.embed(summary));
464
481
  const row = {
465
482
  id: raw.id,
466
483
  content: raw.content ?? "",
@@ -471,6 +488,11 @@ async function reindexDigest(embedding, rawPath) {
471
488
  digest_type: raw.digest_type ?? "weekly",
472
489
  created_at: raw.created_at ?? new Date().toISOString(),
473
490
  };
474
- await getTable("digests").add([row]);
491
+ await recordIndexWrite(dataDir, {
492
+ table: "digests",
493
+ pipeline: "reconcile",
494
+ operation: "reindex_digest",
495
+ row_count: 1,
496
+ }, () => getTable("digests").add([row]));
475
497
  }
476
498
  //# sourceMappingURL=reconcile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../../../src/jobs/handlers/reconcile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../../../src/jobs/handlers/reconcile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reindex.d.ts","sourceRoot":"","sources":["../../../../src/jobs/handlers/reindex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAO,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAA4C,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEvG,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,mEAAmE;IACnE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAkDlE"}
1
+ {"version":3,"file":"reindex.d.ts","sourceRoot":"","sources":["../../../../src/jobs/handlers/reindex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAO,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,mEAAmE;IACnE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAkElE"}