@getrift/rift 0.1.0-beta.2 → 0.1.0-beta.4

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 (62) hide show
  1. package/dist/src/cli/status/friend-header.d.ts.map +1 -1
  2. package/dist/src/cli/status/friend-header.js +31 -5
  3. package/dist/src/cli/status/friend-header.js.map +1 -1
  4. package/dist/src/ingestion/indexer.d.ts +7 -0
  5. package/dist/src/ingestion/indexer.d.ts.map +1 -1
  6. package/dist/src/ingestion/indexer.js +36 -2
  7. package/dist/src/ingestion/indexer.js.map +1 -1
  8. package/dist/src/ingestion/skip-quarantine.d.ts +10 -0
  9. package/dist/src/ingestion/skip-quarantine.d.ts.map +1 -0
  10. package/dist/src/ingestion/skip-quarantine.js +35 -0
  11. package/dist/src/ingestion/skip-quarantine.js.map +1 -0
  12. package/dist/src/jobs/handlers/compact.d.ts.map +1 -1
  13. package/dist/src/jobs/handlers/compact.js +25 -4
  14. package/dist/src/jobs/handlers/compact.js.map +1 -1
  15. package/dist/src/jobs/handlers/ingest.d.ts.map +1 -1
  16. package/dist/src/jobs/handlers/ingest.js +26 -6
  17. package/dist/src/jobs/handlers/ingest.js.map +1 -1
  18. package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
  19. package/dist/src/jobs/handlers/reconcile.js +30 -8
  20. package/dist/src/jobs/handlers/reconcile.js.map +1 -1
  21. package/dist/src/jobs/handlers/reindex.d.ts.map +1 -1
  22. package/dist/src/jobs/handlers/reindex.js +1 -1
  23. package/dist/src/jobs/handlers/reindex.js.map +1 -1
  24. package/dist/src/jobs/handlers/save.d.ts.map +1 -1
  25. package/dist/src/jobs/handlers/save.js +9 -2
  26. package/dist/src/jobs/handlers/save.js.map +1 -1
  27. package/dist/src/jobs/worker-entry.d.ts.map +1 -1
  28. package/dist/src/jobs/worker-entry.js +2 -0
  29. package/dist/src/jobs/worker-entry.js.map +1 -1
  30. package/dist/src/main.js +11 -4
  31. package/dist/src/main.js.map +1 -1
  32. package/dist/src/observability/embedding-events.d.ts +52 -0
  33. package/dist/src/observability/embedding-events.d.ts.map +1 -0
  34. package/dist/src/observability/embedding-events.js +149 -0
  35. package/dist/src/observability/embedding-events.js.map +1 -0
  36. package/dist/src/observability/index-events.d.ts +70 -0
  37. package/dist/src/observability/index-events.d.ts.map +1 -0
  38. package/dist/src/observability/index-events.js +148 -0
  39. package/dist/src/observability/index-events.js.map +1 -0
  40. package/dist/src/providers/ollama-embed.d.ts +2 -1
  41. package/dist/src/providers/ollama-embed.d.ts.map +1 -1
  42. package/dist/src/providers/ollama-embed.js +1 -0
  43. package/dist/src/providers/ollama-embed.js.map +1 -1
  44. package/dist/src/providers/stub.d.ts +2 -0
  45. package/dist/src/providers/stub.d.ts.map +1 -1
  46. package/dist/src/providers/stub.js +2 -0
  47. package/dist/src/providers/stub.js.map +1 -1
  48. package/dist/src/providers/types.d.ts +11 -0
  49. package/dist/src/providers/types.d.ts.map +1 -1
  50. package/dist/src/providers/voyage.d.ts +2 -1
  51. package/dist/src/providers/voyage.d.ts.map +1 -1
  52. package/dist/src/providers/voyage.js +1 -0
  53. package/dist/src/providers/voyage.js.map +1 -1
  54. package/dist/src/server/routes/friend-status.d.ts +71 -2
  55. package/dist/src/server/routes/friend-status.d.ts.map +1 -1
  56. package/dist/src/server/routes/friend-status.js +116 -7
  57. package/dist/src/server/routes/friend-status.js.map +1 -1
  58. package/dist/src/storage/rebuild.d.ts +1 -1
  59. package/dist/src/storage/rebuild.d.ts.map +1 -1
  60. package/dist/src/storage/rebuild.js +90 -32
  61. package/dist/src/storage/rebuild.js.map +1 -1
  62. package/package.json +1 -1
@@ -2,6 +2,10 @@ import { getBuildInfo } from "../build-info.js";
2
2
  import { readAutoCaptureRunSummary, } from "../../capture/observability.js";
3
3
  import { loadFeedbackConfig } from "../../cli/feedback/feedback-config.js";
4
4
  import { sanitizeProjectLabel } from "../../runtime/legacy-name-guard.js";
5
+ import { readEmbeddingEvents, } from "../../observability/embedding-events.js";
6
+ import { readIndexEvents, } from "../../observability/index-events.js";
7
+ const VOYAGE_ERROR_LOOKBACK_MS = 24 * 60 * 60 * 1000;
8
+ const INDEX_ERROR_LOOKBACK_MS = 24 * 60 * 60 * 1000;
5
9
  export function buildFriendStatusPayload(deps) {
6
10
  const build = getBuildInfo();
7
11
  const voyageKey = process.env["VOYAGE_API_KEY"];
@@ -24,12 +28,8 @@ export function buildFriendStatusPayload(deps) {
24
28
  captureTotals.quarantined += counts.quarantined ?? 0;
25
29
  }
26
30
  }
27
- let lastEmbedAt = null;
28
- for (const success of Object.values(summary.last_success_by_source)) {
29
- if (success && (!lastEmbedAt || success.timestamp > lastEmbedAt)) {
30
- lastEmbedAt = success.timestamp;
31
- }
32
- }
31
+ const voyageHealth = computeVoyageHealth(dataDir, Date.now());
32
+ const indexHealth = computeIndexHealth(dataDir, Date.now());
33
33
  let relayEnabled = false;
34
34
  try {
35
35
  relayEnabled = loadFeedbackConfig(dataDir).enabled === true;
@@ -46,7 +46,14 @@ export function buildFriendStatusPayload(deps) {
46
46
  },
47
47
  voyage: {
48
48
  project_label: sanitizeProjectLabel(deps.config.voyage?.project_label),
49
- last_embed_at: lastEmbedAt,
49
+ last_embed_at: voyageHealth.last_embed_at,
50
+ last_error_at: voyageHealth.last_error_at,
51
+ last_error_reason: voyageHealth.last_error_reason,
52
+ },
53
+ index: {
54
+ last_update_at: indexHealth.last_update_at,
55
+ last_error_at: indexHealth.last_error_at,
56
+ last_error_reason: indexHealth.last_error_reason,
50
57
  },
51
58
  codex: {
52
59
  last_preflight_at: last?.timestamp ?? null,
@@ -63,6 +70,108 @@ export function buildFriendStatusPayload(deps) {
63
70
  feedback: { relay_enabled: relayEnabled },
64
71
  };
65
72
  }
73
+ /**
74
+ * Reduce the embedding-events lane to the three voyage health fields the
75
+ * friend-status route needs.
76
+ *
77
+ * Exported for tests so we can verify the pipeline-filter and 24h-window
78
+ * logic without booting Fastify or stubbing the route layer.
79
+ */
80
+ export function computeVoyageHealth(dataDir, now) {
81
+ let events;
82
+ try {
83
+ events = readEmbeddingEvents(dataDir);
84
+ }
85
+ catch {
86
+ events = [];
87
+ }
88
+ let lastSuccessTs = null;
89
+ let lastErrorTs = null;
90
+ let lastErrorReason = null;
91
+ const errorCutoff = now - VOYAGE_ERROR_LOOKBACK_MS;
92
+ for (const event of events) {
93
+ // The `voyage.*` projection must reflect Voyage health only. The lane
94
+ // itself is provider-agnostic so a future Ollama-only install reuses
95
+ // the same writer, but on a mixed cloud+local install an Ollama
96
+ // success would otherwise refresh `voyage.last_embed_at` and mask a
97
+ // Voyage outage. Filter at projection time, not write time.
98
+ if (event.provider !== "voyage")
99
+ continue;
100
+ if (event.outcome === "success") {
101
+ if (!lastSuccessTs || event.ts > lastSuccessTs) {
102
+ lastSuccessTs = event.ts;
103
+ }
104
+ continue;
105
+ }
106
+ // outcome === "error"
107
+ const eventTime = Date.parse(event.ts);
108
+ if (Number.isNaN(eventTime) || eventTime < errorCutoff)
109
+ continue;
110
+ if (!lastErrorTs || event.ts > lastErrorTs) {
111
+ lastErrorTs = event.ts;
112
+ lastErrorReason = event.error_class ?? "unknown";
113
+ }
114
+ }
115
+ return {
116
+ last_embed_at: lastSuccessTs,
117
+ last_error_at: lastErrorTs,
118
+ last_error_reason: lastErrorReason,
119
+ };
120
+ }
121
+ /**
122
+ * Reduce the index-events lane to the three index health fields the
123
+ * friend-status route needs. Provider-agnostic and table-agnostic: an
124
+ * embed can succeed but the subsequent `table.add(...)` can fail, and
125
+ * `index.*` is what makes that visible. No 24h filter on `last_update_at`
126
+ * (a daemon that has not indexed in 7 days should still surface the
127
+ * stale timestamp); errors are filtered to the 24h window so old
128
+ * resolved incidents don't sit on the dashboard forever.
129
+ */
130
+ export function computeIndexHealth(dataDir, now) {
131
+ let events;
132
+ try {
133
+ events = readIndexEvents(dataDir);
134
+ }
135
+ catch {
136
+ events = [];
137
+ }
138
+ let lastSuccessTs = null;
139
+ let lastErrorTs = null;
140
+ let lastErrorReason = null;
141
+ const errorCutoff = now - INDEX_ERROR_LOOKBACK_MS;
142
+ for (const event of events) {
143
+ if (event.outcome === "success") {
144
+ // Shadow-phase successes do NOT credit `last_update_at`: a row
145
+ // written to a shadow table is "prepared", not "searchable",
146
+ // until `commitAllSwaps` runs. If the swap rolls back, those
147
+ // rows stay invisible — so claiming a fresh index from them
148
+ // would lie. The post-commit "live" event is what credits the
149
+ // real update timestamp.
150
+ const phase = event.phase ?? "live";
151
+ if (phase !== "live")
152
+ continue;
153
+ if (!lastSuccessTs || event.ts > lastSuccessTs) {
154
+ lastSuccessTs = event.ts;
155
+ }
156
+ continue;
157
+ }
158
+ // Errors at any phase (including shadow) count toward
159
+ // `last_error_at` — a per-row LanceDB write failure during shadow
160
+ // population is a real failure regardless of the eventual swap.
161
+ const eventTime = Date.parse(event.ts);
162
+ if (Number.isNaN(eventTime) || eventTime < errorCutoff)
163
+ continue;
164
+ if (!lastErrorTs || event.ts > lastErrorTs) {
165
+ lastErrorTs = event.ts;
166
+ lastErrorReason = event.error_class ?? "unknown";
167
+ }
168
+ }
169
+ return {
170
+ last_update_at: lastSuccessTs,
171
+ last_error_at: lastErrorTs,
172
+ last_error_reason: lastErrorReason,
173
+ };
174
+ }
66
175
  export function registerFriendStatusRoute(server, deps) {
67
176
  server.get("/status/friend", async (_request, reply) => {
68
177
  return reply.send(buildFriendStatusPayload(deps));
@@ -1 +1 @@
1
- {"version":3,"file":"friend-status.js","sourceRoot":"","sources":["../../../../src/server/routes/friend-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"friend-status.js","sourceRoot":"","sources":["../../../../src/server/routes/friend-status.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EACL,yBAAyB,GAE1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EACL,mBAAmB,GAEpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,eAAe,GAEhB,MAAM,qCAAqC,CAAC;AAG7C,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACrD,MAAM,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAkGpD,MAAM,UAAU,wBAAwB,CACtC,IAAsB;IAEtB,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;IAEhD,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,OAAO,GAAG,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE,EAAE,CAAC;IAC3D,CAAC;IACD,MAAM,IAAI,GAAgC,OAAO,CAAC,QAAQ,CAAC;IAE3D,IAAI,aAAa,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAC5D,IAAI,IAAI,EAAE,CAAC;QACT,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,aAAa,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;YACpC,aAAa,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YACtC,aAAa,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAE5D,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC;QACH,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,OAAO;QACL,KAAK;QACL,MAAM,EAAE;YACN,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;YAChE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;YAC7B,kBAAkB,EAChB,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;SACxD;QACD,MAAM,EAAE;YACN,aAAa,EAAE,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC;YACtE,aAAa,EAAE,YAAY,CAAC,aAAa;YACzC,aAAa,EAAE,YAAY,CAAC,aAAa;YACzC,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;SAClD;QACD,KAAK,EAAE;YACL,cAAc,EAAE,WAAW,CAAC,cAAc;YAC1C,aAAa,EAAE,WAAW,CAAC,aAAa;YACxC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;SACjD;QACD,KAAK,EAAE;YACL,iBAAiB,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;YAC1C,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;SACnD;QACD,OAAO,EAAE;YACP,WAAW,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;YACpC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACtC,UAAU,EAAE,aAAa,CAAC,KAAK;YAC/B,WAAW,EAAE,aAAa,CAAC,MAAM;YACjC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC;YACrC,gBAAgB,EAAE,aAAa,CAAC,WAAW;SAC5C;QACD,QAAQ,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;KAC1C,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,GAAW;IAMX,IAAI,MAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAED,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,MAAM,WAAW,GAAG,GAAG,GAAG,wBAAwB,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,sEAAsE;QACtE,qEAAqE;QACrE,gEAAgE;QAChE,oEAAoE;QACpE,4DAA4D;QAC5D,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC1C,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,EAAE,GAAG,aAAa,EAAE,CAAC;gBAC/C,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC;YAC3B,CAAC;YACD,SAAS;QACX,CAAC;QACD,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,WAAW;YAAE,SAAS;QACjE,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;YAC3C,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC;YACvB,eAAe,GAAG,KAAK,CAAC,WAAW,IAAI,SAAS,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO;QACL,aAAa,EAAE,aAAa;QAC5B,aAAa,EAAE,WAAW;QAC1B,iBAAiB,EAAE,eAAe;KACnC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAe,EACf,GAAW;IAMX,IAAI,MAAoB,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAED,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,MAAM,WAAW,GAAG,GAAG,GAAG,uBAAuB,CAAC;IAElD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,+DAA+D;YAC/D,6DAA6D;YAC7D,6DAA6D;YAC7D,4DAA4D;YAC5D,8DAA8D;YAC9D,yBAAyB;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC;YACpC,IAAI,KAAK,KAAK,MAAM;gBAAE,SAAS;YAC/B,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,EAAE,GAAG,aAAa,EAAE,CAAC;gBAC/C,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC;YAC3B,CAAC;YACD,SAAS;QACX,CAAC;QACD,sDAAsD;QACtD,kEAAkE;QAClE,gEAAgE;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,WAAW;YAAE,SAAS;QACjE,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;YAC3C,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC;YACvB,eAAe,GAAG,KAAK,CAAC,WAAW,IAAI,SAAS,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO;QACL,cAAc,EAAE,aAAa;QAC7B,aAAa,EAAE,WAAW;QAC1B,iBAAiB,EAAE,eAAe;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAuB,EACvB,IAAsB;IAEtB,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;QACrD,OAAO,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -26,7 +26,7 @@ export interface ReembedOptions {
26
26
  config?: Config;
27
27
  localEmbeddingProvider?: EmbeddingProvider;
28
28
  }
29
- export declare function reembed(embeddingProvider: EmbeddingProvider, scope: ReindexScope, config?: Config, localEmbeddingProvider?: EmbeddingProvider): Promise<number>;
29
+ export declare function reembed(embeddingProvider: EmbeddingProvider, scope: ReindexScope, dataDir: string, config?: Config, localEmbeddingProvider?: EmbeddingProvider): Promise<number>;
30
30
  export declare function extractIdFromFilename(filename: string): string | undefined;
31
31
  /**
32
32
  * Extract the ISO timestamp from a raw conversation filename.
@@ -1 +1 @@
1
- {"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../../src/storage/rebuild.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM/D,OAAO,KAAK,EAIV,SAAS,EACV,MAAM,aAAa,CAAC;AAMrB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAoB3E;AAuMD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,eAAe,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAErF,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,KAAK,EAAE,YAAY,CAAC;IACpB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,wBAAsB,OAAO,CAC3B,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,YAAY,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,iBAAiB,GACzC,OAAO,CAAC,MAAM,CAAC,CAcjB;AA4JD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAa/E"}
1
+ {"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../../src/storage/rebuild.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM/D,OAAO,KAAK,EAIV,SAAS,EACV,MAAM,aAAa,CAAC;AAWrB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CA4C3E;AAyPD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,eAAe,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAErF,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,KAAK,EAAE,YAAY,CAAC;IACpB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,wBAAsB,OAAO,CAC3B,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,iBAAiB,GACzC,OAAO,CAAC,MAAM,CAAC,CAcjB;AA0MD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAa/E"}
@@ -14,6 +14,8 @@ import { isSupported } from "../ingestion/extractor.js";
14
14
  import { buildIgnoredPaths } from "../ingestion/ignored-paths.js";
15
15
  import { fileId } from "../ingestion/indexer.js";
16
16
  import { createShadowSwap } from "./shadow-swap.js";
17
+ import { recordEmbed } from "../observability/embedding-events.js";
18
+ import { appendIndexEvent, recordIndexWrite, } from "../observability/index-events.js";
17
19
  const ALL_CONV_SOURCES = [...CONVERSATION_SOURCES, "inbox"];
18
20
  /**
19
21
  * Full rebuild from raw disk state via shadow-table swap.
@@ -24,17 +26,39 @@ export async function fullRebuild(deps) {
24
26
  const swap = createShadowSwap(deps.dataDir);
25
27
  const report = { tables_rebuilt: [], rows_reindexed: 0 };
26
28
  const swaps = new Map();
27
- await populateStructuredDocsShadows(deps, swap, swaps, report);
28
- await populateConversationShadows(deps, swap, swaps, report);
29
- await populateDigestShadow(deps, swap, swaps, report);
29
+ // Per-table populate counts. Used to emit one post-commit "live"
30
+ // index-event per table so `index.last_update_at` is only credited
31
+ // after the swap actually installs the shadows. If `commitAllSwaps`
32
+ // throws, we never emit the live events and the lane correctly
33
+ // shows shadow-only successes (which `computeIndexHealth` ignores).
34
+ const populated = new Map();
35
+ await populateStructuredDocsShadows(deps, swap, swaps, populated, report);
36
+ await populateConversationShadows(deps, swap, swaps, populated, report);
37
+ await populateDigestShadow(deps, swap, swaps, populated, report);
30
38
  await swap.commitAllSwaps(swaps);
39
+ // Post-commit: credit the lane with one "live" event per swapped
40
+ // table. The shadow events stay in the lane for debugging but do
41
+ // not bump `last_update_at` (see computeIndexHealth).
42
+ const commitTs = new Date().toISOString();
43
+ for (const [tableName, rowCount] of populated) {
44
+ appendIndexEvent(deps.dataDir, {
45
+ ts: commitTs,
46
+ table: tableName,
47
+ pipeline: "backfill",
48
+ operation: "shadow_swap_commit",
49
+ outcome: "success",
50
+ row_count: rowCount,
51
+ ms: 0,
52
+ phase: "live",
53
+ });
54
+ }
31
55
  report.tables_rebuilt.push("structured_docs", "structured_docs_local", "conversations_hot", "conversations_cold", "digests");
32
56
  return report;
33
57
  }
34
58
  // ---------------------------------------------------------------------------
35
59
  // Populate shadow tables from raw state
36
60
  // ---------------------------------------------------------------------------
37
- async function populateStructuredDocsShadows(deps, swap, swaps, report) {
61
+ async function populateStructuredDocsShadows(deps, swap, swaps, populated, report) {
38
62
  const cloudShadow = await swap.createShadow("structured_docs");
39
63
  const localShadow = await swap.createShadow("structured_docs_local");
40
64
  swaps.set("structured_docs", cloudShadow);
@@ -75,7 +99,7 @@ async function populateStructuredDocsShadows(deps, swap, swaps, report) {
75
99
  const targetShadow = isLocal ? localShadow : cloudShadow;
76
100
  try {
77
101
  const content = fs.readFileSync(canonical, "utf-8");
78
- const embedding = await provider.embed(content);
102
+ const embedding = await recordEmbed(deps.dataDir, provider, { pipeline: "backfill", operation: "structured_doc_embedding", input_count: 1 }, () => provider.embed(content));
79
103
  const row = {
80
104
  id,
81
105
  source_path: canonical,
@@ -89,7 +113,15 @@ async function populateStructuredDocsShadows(deps, swap, swaps, report) {
89
113
  indexed_at: new Date().toISOString(),
90
114
  metadata: "{}",
91
115
  };
92
- await targetShadow.add([row]);
116
+ const targetTableName = isLocal ? "structured_docs_local" : "structured_docs";
117
+ await recordIndexWrite(deps.dataDir, {
118
+ table: targetTableName,
119
+ pipeline: "backfill",
120
+ operation: "structured_doc_upsert",
121
+ row_count: 1,
122
+ phase: "shadow",
123
+ }, () => targetShadow.add([row]));
124
+ populated.set(targetTableName, (populated.get(targetTableName) ?? 0) + 1);
93
125
  report.rows_reindexed++;
94
126
  }
95
127
  catch (err) {
@@ -98,7 +130,7 @@ async function populateStructuredDocsShadows(deps, swap, swaps, report) {
98
130
  }
99
131
  }
100
132
  }
101
- async function populateConversationShadows(deps, swap, swaps, report) {
133
+ async function populateConversationShadows(deps, swap, swaps, populated, report) {
102
134
  const hotShadow = await swap.createShadow("conversations_hot");
103
135
  const coldShadow = await swap.createShadow("conversations_cold");
104
136
  swaps.set("conversations_hot", hotShadow);
@@ -119,7 +151,7 @@ async function populateConversationShadows(deps, swap, swaps, report) {
119
151
  const raw = JSON.parse(fs.readFileSync(rawPath, "utf-8"));
120
152
  const summary = raw.summary ?? "";
121
153
  const content = raw.content ?? summary;
122
- const vec = await deps.embeddingProvider.embed(content || summary);
154
+ const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, { pipeline: "backfill", operation: "conversation_embedding", input_count: 1 }, () => deps.embeddingProvider.embed(content || summary));
123
155
  const row = {
124
156
  id,
125
157
  content,
@@ -137,12 +169,16 @@ async function populateConversationShadows(deps, swap, swaps, report) {
137
169
  };
138
170
  const filenameTime = extractTimestampFromFilename(file);
139
171
  const rowTime = filenameTime ?? fs.statSync(rawPath).mtime;
140
- if (rowTime >= cutoff) {
141
- await hotShadow.add([row]);
142
- }
143
- else {
144
- await coldShadow.add([row]);
145
- }
172
+ const targetTable = rowTime >= cutoff ? "conversations_hot" : "conversations_cold";
173
+ const targetShadow = rowTime >= cutoff ? hotShadow : coldShadow;
174
+ await recordIndexWrite(deps.dataDir, {
175
+ table: targetTable,
176
+ pipeline: "backfill",
177
+ operation: "conversation_upsert",
178
+ row_count: 1,
179
+ phase: "shadow",
180
+ }, () => targetShadow.add([row]));
181
+ populated.set(targetTable, (populated.get(targetTable) ?? 0) + 1);
146
182
  report.rows_reindexed++;
147
183
  }
148
184
  catch (err) {
@@ -151,7 +187,7 @@ async function populateConversationShadows(deps, swap, swaps, report) {
151
187
  }
152
188
  }
153
189
  }
154
- async function populateDigestShadow(deps, swap, swaps, report) {
190
+ async function populateDigestShadow(deps, swap, swaps, populated, report) {
155
191
  const shadow = await swap.createShadow("digests");
156
192
  swaps.set("digests", shadow);
157
193
  const digestDir = path.join(deps.dataDir, "raw", "digests");
@@ -164,7 +200,7 @@ async function populateDigestShadow(deps, swap, swaps, report) {
164
200
  if (typeof raw.id !== "string" || !raw.id)
165
201
  continue;
166
202
  const summary = raw.summary ?? raw.content ?? "";
167
- const vec = await deps.embeddingProvider.embed(summary);
203
+ const vec = await recordEmbed(deps.dataDir, deps.embeddingProvider, { pipeline: "backfill", operation: "digest_embedding", input_count: 1 }, () => deps.embeddingProvider.embed(summary));
168
204
  const row = {
169
205
  id: raw.id,
170
206
  content: raw.content ?? "",
@@ -175,7 +211,14 @@ async function populateDigestShadow(deps, swap, swaps, report) {
175
211
  digest_type: raw.digest_type ?? "weekly",
176
212
  created_at: raw.created_at ?? new Date().toISOString(),
177
213
  };
178
- await shadow.add([row]);
214
+ await recordIndexWrite(deps.dataDir, {
215
+ table: "digests",
216
+ pipeline: "backfill",
217
+ operation: "digest_upsert",
218
+ row_count: 1,
219
+ phase: "shadow",
220
+ }, () => shadow.add([row]));
221
+ populated.set("digests", (populated.get("digests") ?? 0) + 1);
179
222
  report.rows_reindexed++;
180
223
  }
181
224
  catch (err) {
@@ -184,18 +227,18 @@ async function populateDigestShadow(deps, swap, swaps, report) {
184
227
  }
185
228
  }
186
229
  }
187
- export async function reembed(embeddingProvider, scope, config, localEmbeddingProvider) {
230
+ export async function reembed(embeddingProvider, scope, dataDir, config, localEmbeddingProvider) {
188
231
  let count = 0;
189
232
  if (scope === "all" || scope === "structured_docs" || scope === "documents") {
190
- count += await reembedStructuredDocs(embeddingProvider, config, localEmbeddingProvider);
233
+ count += await reembedStructuredDocs(embeddingProvider, dataDir, config, localEmbeddingProvider);
191
234
  if (localEmbeddingProvider) {
192
- count += await reembedLocalStructuredDocs(localEmbeddingProvider);
235
+ count += await reembedLocalStructuredDocs(localEmbeddingProvider, dataDir);
193
236
  }
194
237
  }
195
238
  if (scope === "all" || scope === "conversations") {
196
- count += await reembedTable("conversations_hot", embeddingProvider, (r) => r.content || r.summary, "indexed_at");
197
- count += await reembedTable("conversations_cold", embeddingProvider, (r) => r.content || r.summary, "indexed_at");
198
- count += await reembedTable("digests", embeddingProvider, (r) => r.summary || r.content, "created_at");
239
+ count += await reembedTable("conversations_hot", embeddingProvider, dataDir, "conversation_embedding", (r) => r.content || r.summary, "indexed_at");
240
+ count += await reembedTable("conversations_cold", embeddingProvider, dataDir, "conversation_embedding", (r) => r.content || r.summary, "indexed_at");
241
+ count += await reembedTable("digests", embeddingProvider, dataDir, "digest_embedding", (r) => r.summary || r.content, "created_at");
199
242
  }
200
243
  return count;
201
244
  }
@@ -204,7 +247,7 @@ export async function reembed(embeddingProvider, scope, config, localEmbeddingPr
204
247
  * Rows whose source_path falls under a local-extraction source use
205
248
  * localEmbeddingProvider; everything else uses the cloud provider.
206
249
  */
207
- async function reembedStructuredDocs(cloudProvider, config, localProvider) {
250
+ async function reembedStructuredDocs(cloudProvider, dataDir, config, localProvider) {
208
251
  const { getTable } = await import("./tables.js");
209
252
  const table = getTable("structured_docs");
210
253
  const allRows = (await table.query().toArray());
@@ -212,10 +255,15 @@ async function reembedStructuredDocs(cloudProvider, config, localProvider) {
212
255
  for (const row of allRows) {
213
256
  try {
214
257
  const provider = resolveProviderForPath(row.source_path, cloudProvider, config, localProvider);
215
- const newEmbedding = await provider.embed(row.content);
258
+ const newEmbedding = await recordEmbed(dataDir, provider, { pipeline: "reindex", operation: "structured_doc_embedding", input_count: 1 }, () => provider.embed(row.content));
216
259
  const oldTimestamp = row.indexed_at;
217
260
  const newTimestamp = new Date().toISOString();
218
- await table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]);
261
+ await recordIndexWrite(dataDir, {
262
+ table: "structured_docs",
263
+ pipeline: "reindex",
264
+ operation: "structured_doc_upsert",
265
+ row_count: 1,
266
+ }, () => table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]));
219
267
  try {
220
268
  await table.delete(`id = '${row.id}' AND indexed_at = '${oldTimestamp}'`);
221
269
  count++;
@@ -237,17 +285,22 @@ async function reembedStructuredDocs(cloudProvider, config, localProvider) {
237
285
  * Re-embed all rows in structured_docs_local using the local provider.
238
286
  * Simpler than the cloud path: all rows use the same provider.
239
287
  */
240
- async function reembedLocalStructuredDocs(localProvider) {
288
+ async function reembedLocalStructuredDocs(localProvider, dataDir) {
241
289
  const { getTable } = await import("./tables.js");
242
290
  const table = getTable("structured_docs_local");
243
291
  const allRows = (await table.query().toArray());
244
292
  let count = 0;
245
293
  for (const row of allRows) {
246
294
  try {
247
- const newEmbedding = await localProvider.embed(row.content);
295
+ const newEmbedding = await recordEmbed(dataDir, localProvider, { pipeline: "reindex", operation: "structured_doc_local_embedding", input_count: 1 }, () => localProvider.embed(row.content));
248
296
  const oldTimestamp = row.indexed_at;
249
297
  const newTimestamp = new Date().toISOString();
250
- await table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]);
298
+ await recordIndexWrite(dataDir, {
299
+ table: "structured_docs_local",
300
+ pipeline: "reindex",
301
+ operation: "structured_doc_local_upsert",
302
+ row_count: 1,
303
+ }, () => table.add([{ ...row, embedding: newEmbedding, indexed_at: newTimestamp }]));
251
304
  try {
252
305
  await table.delete(`id = '${row.id}' AND indexed_at = '${oldTimestamp}'`);
253
306
  count++;
@@ -293,7 +346,7 @@ function findOwningSource(filePath, config) {
293
346
  }
294
347
  return best;
295
348
  }
296
- async function reembedTable(tableName, embeddingProvider, getText, timestampField) {
349
+ async function reembedTable(tableName, embeddingProvider, dataDir, operation, getText, timestampField) {
297
350
  const { getTable } = await import("./tables.js");
298
351
  const table = getTable(tableName);
299
352
  const allRows = (await table.query().toArray());
@@ -301,10 +354,15 @@ async function reembedTable(tableName, embeddingProvider, getText, timestampFiel
301
354
  for (const row of allRows) {
302
355
  try {
303
356
  const text = getText(row);
304
- const newEmbedding = await embeddingProvider.embed(text);
357
+ const newEmbedding = await recordEmbed(dataDir, embeddingProvider, { pipeline: "reindex", operation, input_count: 1 }, () => embeddingProvider.embed(text));
305
358
  const oldTimestamp = row[timestampField];
306
359
  const newTimestamp = new Date().toISOString();
307
- await table.add([{ ...row, embedding: newEmbedding, [timestampField]: newTimestamp }]);
360
+ await recordIndexWrite(dataDir, {
361
+ table: tableName,
362
+ pipeline: "reindex",
363
+ operation: `${operation.replace(/_embedding$/, "")}_upsert`,
364
+ row_count: 1,
365
+ }, () => table.add([{ ...row, embedding: newEmbedding, [timestampField]: newTimestamp }]));
308
366
  try {
309
367
  await table.delete(`id = '${row.id}' AND ${timestampField} = '${oldTimestamp}'`);
310
368
  count++;
@@ -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.2",
3
+ "version": "0.1.0-beta.4",
4
4
  "description": "Local-first personal memory + reasoning infrastructure with an MCP interface.",
5
5
  "homepage": "https://getrift.dev",
6
6
  "license": "UNLICENSED",