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

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 (390) hide show
  1. package/README.md +35 -9
  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/auto-capture.d.ts +7 -0
  7. package/dist/src/capture/auto-capture.d.ts.map +1 -1
  8. package/dist/src/capture/auto-capture.js +82 -15
  9. package/dist/src/capture/auto-capture.js.map +1 -1
  10. package/dist/src/capture/auto-repair.d.ts +110 -0
  11. package/dist/src/capture/auto-repair.d.ts.map +1 -0
  12. package/dist/src/capture/auto-repair.js +269 -0
  13. package/dist/src/capture/auto-repair.js.map +1 -0
  14. package/dist/src/capture/codex-cli-triage-provider.d.ts.map +1 -1
  15. package/dist/src/capture/codex-cli-triage-provider.js +4 -3
  16. package/dist/src/capture/codex-cli-triage-provider.js.map +1 -1
  17. package/dist/src/capture/observability.d.ts +42 -0
  18. package/dist/src/capture/observability.d.ts.map +1 -1
  19. package/dist/src/capture/observability.js +45 -4
  20. package/dist/src/capture/observability.js.map +1 -1
  21. package/dist/src/capture/recover-quarantine.d.ts +260 -0
  22. package/dist/src/capture/recover-quarantine.d.ts.map +1 -0
  23. package/dist/src/capture/recover-quarantine.js +522 -0
  24. package/dist/src/capture/recover-quarantine.js.map +1 -0
  25. package/dist/src/cli/commands/backfill.d.ts.map +1 -1
  26. package/dist/src/cli/commands/backfill.js +5 -2
  27. package/dist/src/cli/commands/backfill.js.map +1 -1
  28. package/dist/src/cli/commands/capture-recover.d.ts +40 -0
  29. package/dist/src/cli/commands/capture-recover.d.ts.map +1 -0
  30. package/dist/src/cli/commands/capture-recover.js +184 -0
  31. package/dist/src/cli/commands/capture-recover.js.map +1 -0
  32. package/dist/src/cli/commands/capture.d.ts.map +1 -1
  33. package/dist/src/cli/commands/capture.js +96 -5
  34. package/dist/src/cli/commands/capture.js.map +1 -1
  35. package/dist/src/cli/commands/doctor.d.ts +6 -0
  36. package/dist/src/cli/commands/doctor.d.ts.map +1 -0
  37. package/dist/src/cli/commands/doctor.js +242 -0
  38. package/dist/src/cli/commands/doctor.js.map +1 -0
  39. package/dist/src/cli/commands/feedback.d.ts +12 -0
  40. package/dist/src/cli/commands/feedback.d.ts.map +1 -1
  41. package/dist/src/cli/commands/feedback.js +93 -4
  42. package/dist/src/cli/commands/feedback.js.map +1 -1
  43. package/dist/src/cli/commands/mcp-install.js +5 -2
  44. package/dist/src/cli/commands/mcp-install.js.map +1 -1
  45. package/dist/src/cli/commands/menubar.d.ts +80 -0
  46. package/dist/src/cli/commands/menubar.d.ts.map +1 -0
  47. package/dist/src/cli/commands/menubar.js +388 -0
  48. package/dist/src/cli/commands/menubar.js.map +1 -0
  49. package/dist/src/cli/commands/onboard.d.ts +143 -5
  50. package/dist/src/cli/commands/onboard.d.ts.map +1 -1
  51. package/dist/src/cli/commands/onboard.js +844 -188
  52. package/dist/src/cli/commands/onboard.js.map +1 -1
  53. package/dist/src/cli/commands/rebuild.d.ts.map +1 -1
  54. package/dist/src/cli/commands/rebuild.js +6 -3
  55. package/dist/src/cli/commands/rebuild.js.map +1 -1
  56. package/dist/src/cli/commands/reconcile.d.ts.map +1 -1
  57. package/dist/src/cli/commands/reconcile.js +12 -0
  58. package/dist/src/cli/commands/reconcile.js.map +1 -1
  59. package/dist/src/cli/commands/review.d.ts.map +1 -1
  60. package/dist/src/cli/commands/review.js +22 -7
  61. package/dist/src/cli/commands/review.js.map +1 -1
  62. package/dist/src/cli/commands/search.d.ts +2 -0
  63. package/dist/src/cli/commands/search.d.ts.map +1 -1
  64. package/dist/src/cli/commands/search.js +34 -4
  65. package/dist/src/cli/commands/search.js.map +1 -1
  66. package/dist/src/cli/commands/status.d.ts +9 -7
  67. package/dist/src/cli/commands/status.d.ts.map +1 -1
  68. package/dist/src/cli/commands/status.js +117 -12
  69. package/dist/src/cli/commands/status.js.map +1 -1
  70. package/dist/src/cli/commands/token-issue.d.ts.map +1 -1
  71. package/dist/src/cli/commands/token-issue.js +9 -1
  72. package/dist/src/cli/commands/token-issue.js.map +1 -1
  73. package/dist/src/cli/commands/triage.d.ts.map +1 -1
  74. package/dist/src/cli/commands/triage.js +7 -5
  75. package/dist/src/cli/commands/triage.js.map +1 -1
  76. package/dist/src/cli/commands/update.d.ts +80 -0
  77. package/dist/src/cli/commands/update.d.ts.map +1 -0
  78. package/dist/src/cli/commands/update.js +390 -0
  79. package/dist/src/cli/commands/update.js.map +1 -0
  80. package/dist/src/cli/default-config-path.d.ts +15 -0
  81. package/dist/src/cli/default-config-path.d.ts.map +1 -0
  82. package/dist/src/cli/default-config-path.js +27 -0
  83. package/dist/src/cli/default-config-path.js.map +1 -0
  84. package/dist/src/cli/feedback/feedback-config.d.ts +46 -0
  85. package/dist/src/cli/feedback/feedback-config.d.ts.map +1 -1
  86. package/dist/src/cli/feedback/feedback-config.js +130 -4
  87. package/dist/src/cli/feedback/feedback-config.js.map +1 -1
  88. package/dist/src/cli/feedback/feedback-history.d.ts +7 -0
  89. package/dist/src/cli/feedback/feedback-history.d.ts.map +1 -1
  90. package/dist/src/cli/feedback/feedback-history.js +39 -9
  91. package/dist/src/cli/feedback/feedback-history.js.map +1 -1
  92. package/dist/src/cli/feedback/feedback-payload.d.ts +22 -1
  93. package/dist/src/cli/feedback/feedback-payload.d.ts.map +1 -1
  94. package/dist/src/cli/feedback/feedback-payload.js.map +1 -1
  95. package/dist/src/cli/feedback/feedback-relay.d.ts +2 -2
  96. package/dist/src/cli/feedback/feedback-relay.d.ts.map +1 -1
  97. package/dist/src/cli/feedback/feedback-relay.js.map +1 -1
  98. package/dist/src/cli/feedback/invite.d.ts +17 -0
  99. package/dist/src/cli/feedback/invite.d.ts.map +1 -0
  100. package/dist/src/cli/feedback/invite.js +67 -0
  101. package/dist/src/cli/feedback/invite.js.map +1 -0
  102. package/dist/src/cli/feedback/relay-secret-store.d.ts +32 -0
  103. package/dist/src/cli/feedback/relay-secret-store.d.ts.map +1 -0
  104. package/dist/src/cli/feedback/relay-secret-store.js +137 -0
  105. package/dist/src/cli/feedback/relay-secret-store.js.map +1 -0
  106. package/dist/src/cli/http-client.d.ts +93 -1
  107. package/dist/src/cli/http-client.d.ts.map +1 -1
  108. package/dist/src/cli/http-client.js +254 -6
  109. package/dist/src/cli/http-client.js.map +1 -1
  110. package/dist/src/cli/index.d.ts.map +1 -1
  111. package/dist/src/cli/index.js +29 -6
  112. package/dist/src/cli/index.js.map +1 -1
  113. package/dist/src/cli/postinstall-menubar.d.ts +22 -0
  114. package/dist/src/cli/postinstall-menubar.d.ts.map +1 -0
  115. package/dist/src/cli/postinstall-menubar.js +53 -0
  116. package/dist/src/cli/postinstall-menubar.js.map +1 -0
  117. package/dist/src/cli/status/friend-header.d.ts +16 -1
  118. package/dist/src/cli/status/friend-header.d.ts.map +1 -1
  119. package/dist/src/cli/status/friend-header.js +354 -26
  120. package/dist/src/cli/status/friend-header.js.map +1 -1
  121. package/dist/src/cli/status/local-signals.d.ts +18 -0
  122. package/dist/src/cli/status/local-signals.d.ts.map +1 -1
  123. package/dist/src/cli/status/local-signals.js +29 -0
  124. package/dist/src/cli/status/local-signals.js.map +1 -1
  125. package/dist/src/cli/ui.d.ts +47 -0
  126. package/dist/src/cli/ui.d.ts.map +1 -0
  127. package/dist/src/cli/ui.js +166 -0
  128. package/dist/src/cli/ui.js.map +1 -0
  129. package/dist/src/config/schema.d.ts +79 -0
  130. package/dist/src/config/schema.d.ts.map +1 -1
  131. package/dist/src/config/schema.js +44 -0
  132. package/dist/src/config/schema.js.map +1 -1
  133. package/dist/src/diagnostics/codex-preflight.d.ts +33 -0
  134. package/dist/src/diagnostics/codex-preflight.d.ts.map +1 -0
  135. package/dist/src/diagnostics/codex-preflight.js +75 -0
  136. package/dist/src/diagnostics/codex-preflight.js.map +1 -0
  137. package/dist/src/diagnostics/doctor.d.ts +114 -0
  138. package/dist/src/diagnostics/doctor.d.ts.map +1 -0
  139. package/dist/src/diagnostics/doctor.js +352 -0
  140. package/dist/src/diagnostics/doctor.js.map +1 -0
  141. package/dist/src/diagnostics/notify.d.ts +90 -0
  142. package/dist/src/diagnostics/notify.d.ts.map +1 -0
  143. package/dist/src/diagnostics/notify.js +177 -0
  144. package/dist/src/diagnostics/notify.js.map +1 -0
  145. package/dist/src/diagnostics/repair-prompt.d.ts +49 -0
  146. package/dist/src/diagnostics/repair-prompt.d.ts.map +1 -0
  147. package/dist/src/diagnostics/repair-prompt.js +223 -0
  148. package/dist/src/diagnostics/repair-prompt.js.map +1 -0
  149. package/dist/src/ingestion/inbox-core/conversation-fingerprint.d.ts +2 -0
  150. package/dist/src/ingestion/inbox-core/conversation-fingerprint.d.ts.map +1 -0
  151. package/dist/src/ingestion/inbox-core/conversation-fingerprint.js +27 -0
  152. package/dist/src/ingestion/inbox-core/conversation-fingerprint.js.map +1 -0
  153. package/dist/src/ingestion/inbox-core/conversation-key.d.ts +2 -0
  154. package/dist/src/ingestion/inbox-core/conversation-key.d.ts.map +1 -0
  155. package/dist/src/ingestion/inbox-core/conversation-key.js +31 -0
  156. package/dist/src/ingestion/inbox-core/conversation-key.js.map +1 -0
  157. package/dist/src/ingestion/inbox-core/extensions.d.ts +3 -0
  158. package/dist/src/ingestion/inbox-core/extensions.d.ts.map +1 -0
  159. package/dist/src/ingestion/inbox-core/extensions.js +16 -0
  160. package/dist/src/ingestion/inbox-core/extensions.js.map +1 -0
  161. package/dist/src/ingestion/inbox-core/idempotency.d.ts +2 -0
  162. package/dist/src/ingestion/inbox-core/idempotency.d.ts.map +1 -0
  163. package/dist/src/ingestion/inbox-core/idempotency.js +22 -0
  164. package/dist/src/ingestion/inbox-core/idempotency.js.map +1 -0
  165. package/dist/src/ingestion/inbox-core/index.d.ts +20 -0
  166. package/dist/src/ingestion/inbox-core/index.d.ts.map +1 -0
  167. package/dist/src/ingestion/inbox-core/index.js +20 -0
  168. package/dist/src/ingestion/inbox-core/index.js.map +1 -0
  169. package/dist/src/ingestion/inbox-core/source-detection.d.ts +2 -0
  170. package/dist/src/ingestion/inbox-core/source-detection.d.ts.map +1 -0
  171. package/dist/src/ingestion/inbox-core/source-detection.js +23 -0
  172. package/dist/src/ingestion/inbox-core/source-detection.js.map +1 -0
  173. package/dist/src/ingestion/inbox-core/source-sniffer.d.ts +11 -0
  174. package/dist/src/ingestion/inbox-core/source-sniffer.d.ts.map +1 -0
  175. package/dist/src/ingestion/inbox-core/source-sniffer.js +69 -0
  176. package/dist/src/ingestion/inbox-core/source-sniffer.js.map +1 -0
  177. package/dist/src/ingestion/inbox-core/zip-sniffer.d.ts +70 -0
  178. package/dist/src/ingestion/inbox-core/zip-sniffer.d.ts.map +1 -0
  179. package/dist/src/ingestion/inbox-core/zip-sniffer.js +161 -0
  180. package/dist/src/ingestion/inbox-core/zip-sniffer.js.map +1 -0
  181. package/dist/src/ingestion/inbox-watcher.d.ts.map +1 -1
  182. package/dist/src/ingestion/inbox-watcher.js +34 -50
  183. package/dist/src/ingestion/inbox-watcher.js.map +1 -1
  184. package/dist/src/ingestion/indexer.d.ts +7 -0
  185. package/dist/src/ingestion/indexer.d.ts.map +1 -1
  186. package/dist/src/ingestion/indexer.js +36 -2
  187. package/dist/src/ingestion/indexer.js.map +1 -1
  188. package/dist/src/ingestion/metadata-extraction.d.ts +8 -5
  189. package/dist/src/ingestion/metadata-extraction.d.ts.map +1 -1
  190. package/dist/src/ingestion/metadata-extraction.js +24 -5
  191. package/dist/src/ingestion/metadata-extraction.js.map +1 -1
  192. package/dist/src/ingestion/skip-quarantine.d.ts +10 -0
  193. package/dist/src/ingestion/skip-quarantine.d.ts.map +1 -0
  194. package/dist/src/ingestion/skip-quarantine.js +35 -0
  195. package/dist/src/ingestion/skip-quarantine.js.map +1 -0
  196. package/dist/src/jobs/handlers/compact.d.ts.map +1 -1
  197. package/dist/src/jobs/handlers/compact.js +30 -4
  198. package/dist/src/jobs/handlers/compact.js.map +1 -1
  199. package/dist/src/jobs/handlers/dedupe-conversations.d.ts +134 -0
  200. package/dist/src/jobs/handlers/dedupe-conversations.d.ts.map +1 -0
  201. package/dist/src/jobs/handlers/dedupe-conversations.js +371 -0
  202. package/dist/src/jobs/handlers/dedupe-conversations.js.map +1 -0
  203. package/dist/src/jobs/handlers/ingest.d.ts.map +1 -1
  204. package/dist/src/jobs/handlers/ingest.js +295 -41
  205. package/dist/src/jobs/handlers/ingest.js.map +1 -1
  206. package/dist/src/jobs/handlers/reconcile.d.ts +28 -0
  207. package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
  208. package/dist/src/jobs/handlers/reconcile.js +145 -19
  209. package/dist/src/jobs/handlers/reconcile.js.map +1 -1
  210. package/dist/src/jobs/handlers/reindex.d.ts.map +1 -1
  211. package/dist/src/jobs/handlers/reindex.js +13 -2
  212. package/dist/src/jobs/handlers/reindex.js.map +1 -1
  213. package/dist/src/jobs/handlers/save.d.ts.map +1 -1
  214. package/dist/src/jobs/handlers/save.js +57 -3
  215. package/dist/src/jobs/handlers/save.js.map +1 -1
  216. package/dist/src/jobs/queue.d.ts +51 -1
  217. package/dist/src/jobs/queue.d.ts.map +1 -1
  218. package/dist/src/jobs/queue.js +466 -26
  219. package/dist/src/jobs/queue.js.map +1 -1
  220. package/dist/src/jobs/worker-entry.d.ts.map +1 -1
  221. package/dist/src/jobs/worker-entry.js +35 -7
  222. package/dist/src/jobs/worker-entry.js.map +1 -1
  223. package/dist/src/jobs/worker-process.d.ts +11 -0
  224. package/dist/src/jobs/worker-process.d.ts.map +1 -1
  225. package/dist/src/jobs/worker-process.js +37 -4
  226. package/dist/src/jobs/worker-process.js.map +1 -1
  227. package/dist/src/main.js +199 -46
  228. package/dist/src/main.js.map +1 -1
  229. package/dist/src/mcp/errors.d.ts.map +1 -1
  230. package/dist/src/mcp/errors.js +20 -1
  231. package/dist/src/mcp/errors.js.map +1 -1
  232. package/dist/src/mcp/server.d.ts.map +1 -1
  233. package/dist/src/mcp/server.js +43 -3
  234. package/dist/src/mcp/server.js.map +1 -1
  235. package/dist/src/mcp/tools/context-pack.d.ts.map +1 -1
  236. package/dist/src/mcp/tools/context-pack.js +164 -23
  237. package/dist/src/mcp/tools/context-pack.js.map +1 -1
  238. package/dist/src/mcp/tools/search.d.ts +6 -2
  239. package/dist/src/mcp/tools/search.d.ts.map +1 -1
  240. package/dist/src/mcp/tools/search.js +35 -4
  241. package/dist/src/mcp/tools/search.js.map +1 -1
  242. package/dist/src/observability/embedding-events.d.ts +52 -0
  243. package/dist/src/observability/embedding-events.d.ts.map +1 -0
  244. package/dist/src/observability/embedding-events.js +149 -0
  245. package/dist/src/observability/embedding-events.js.map +1 -0
  246. package/dist/src/observability/index-events.d.ts +70 -0
  247. package/dist/src/observability/index-events.d.ts.map +1 -0
  248. package/dist/src/observability/index-events.js +148 -0
  249. package/dist/src/observability/index-events.js.map +1 -0
  250. package/dist/src/observability/onboarding-metric.d.ts +131 -0
  251. package/dist/src/observability/onboarding-metric.d.ts.map +1 -0
  252. package/dist/src/observability/onboarding-metric.js +351 -0
  253. package/dist/src/observability/onboarding-metric.js.map +1 -0
  254. package/dist/src/observability/tool-usage-stats.d.ts +77 -4
  255. package/dist/src/observability/tool-usage-stats.d.ts.map +1 -1
  256. package/dist/src/observability/tool-usage-stats.js +112 -32
  257. package/dist/src/observability/tool-usage-stats.js.map +1 -1
  258. package/dist/src/observability/tool-usage.d.ts +100 -7
  259. package/dist/src/observability/tool-usage.d.ts.map +1 -1
  260. package/dist/src/observability/tool-usage.js +196 -33
  261. package/dist/src/observability/tool-usage.js.map +1 -1
  262. package/dist/src/observability/version-check.d.ts +71 -0
  263. package/dist/src/observability/version-check.d.ts.map +1 -0
  264. package/dist/src/observability/version-check.js +198 -0
  265. package/dist/src/observability/version-check.js.map +1 -0
  266. package/dist/src/providers/basic-metadata-extraction.d.ts +60 -0
  267. package/dist/src/providers/basic-metadata-extraction.d.ts.map +1 -0
  268. package/dist/src/providers/basic-metadata-extraction.js +114 -0
  269. package/dist/src/providers/basic-metadata-extraction.js.map +1 -0
  270. package/dist/src/providers/codex-cli-metadata-extraction.d.ts +1 -0
  271. package/dist/src/providers/codex-cli-metadata-extraction.d.ts.map +1 -1
  272. package/dist/src/providers/codex-cli-metadata-extraction.js +6 -2
  273. package/dist/src/providers/codex-cli-metadata-extraction.js.map +1 -1
  274. package/dist/src/providers/codex-cli-model.d.ts +61 -0
  275. package/dist/src/providers/codex-cli-model.d.ts.map +1 -0
  276. package/dist/src/providers/codex-cli-model.js +194 -0
  277. package/dist/src/providers/codex-cli-model.js.map +1 -0
  278. package/dist/src/providers/codex-cli-runner.d.ts +39 -0
  279. package/dist/src/providers/codex-cli-runner.d.ts.map +1 -1
  280. package/dist/src/providers/codex-cli-runner.js +234 -48
  281. package/dist/src/providers/codex-cli-runner.js.map +1 -1
  282. package/dist/src/providers/conversation-generation.d.ts.map +1 -1
  283. package/dist/src/providers/conversation-generation.js +43 -6
  284. package/dist/src/providers/conversation-generation.js.map +1 -1
  285. package/dist/src/providers/ollama-embed.d.ts +2 -1
  286. package/dist/src/providers/ollama-embed.d.ts.map +1 -1
  287. package/dist/src/providers/ollama-embed.js +1 -0
  288. package/dist/src/providers/ollama-embed.js.map +1 -1
  289. package/dist/src/providers/openai-metadata-extraction.d.ts +3 -3
  290. package/dist/src/providers/openai-metadata-extraction.d.ts.map +1 -1
  291. package/dist/src/providers/openai-metadata-extraction.js +18 -3
  292. package/dist/src/providers/openai-metadata-extraction.js.map +1 -1
  293. package/dist/src/providers/placeholder-embed.d.ts +56 -0
  294. package/dist/src/providers/placeholder-embed.d.ts.map +1 -0
  295. package/dist/src/providers/placeholder-embed.js +64 -0
  296. package/dist/src/providers/placeholder-embed.js.map +1 -0
  297. package/dist/src/providers/stub.d.ts +2 -0
  298. package/dist/src/providers/stub.d.ts.map +1 -1
  299. package/dist/src/providers/stub.js +2 -0
  300. package/dist/src/providers/stub.js.map +1 -1
  301. package/dist/src/providers/types.d.ts +11 -0
  302. package/dist/src/providers/types.d.ts.map +1 -1
  303. package/dist/src/providers/voyage.d.ts +2 -1
  304. package/dist/src/providers/voyage.d.ts.map +1 -1
  305. package/dist/src/providers/voyage.js +1 -0
  306. package/dist/src/providers/voyage.js.map +1 -1
  307. package/dist/src/retrieval/compact.d.ts +116 -2
  308. package/dist/src/retrieval/compact.d.ts.map +1 -1
  309. package/dist/src/retrieval/compact.js +158 -5
  310. package/dist/src/retrieval/compact.js.map +1 -1
  311. package/dist/src/retrieval/context-pack.d.ts +114 -0
  312. package/dist/src/retrieval/context-pack.d.ts.map +1 -1
  313. package/dist/src/retrieval/context-pack.js +292 -8
  314. package/dist/src/retrieval/context-pack.js.map +1 -1
  315. package/dist/src/retrieval/current-truth.d.ts +360 -0
  316. package/dist/src/retrieval/current-truth.d.ts.map +1 -0
  317. package/dist/src/retrieval/current-truth.js +766 -0
  318. package/dist/src/retrieval/current-truth.js.map +1 -0
  319. package/dist/src/retrieval/git-state.d.ts +53 -0
  320. package/dist/src/retrieval/git-state.d.ts.map +1 -0
  321. package/dist/src/retrieval/git-state.js +174 -0
  322. package/dist/src/retrieval/git-state.js.map +1 -0
  323. package/dist/src/retrieval/lexical.d.ts.map +1 -1
  324. package/dist/src/retrieval/lexical.js +19 -3
  325. package/dist/src/retrieval/lexical.js.map +1 -1
  326. package/dist/src/retrieval/locator-boost.d.ts +37 -0
  327. package/dist/src/retrieval/locator-boost.d.ts.map +1 -0
  328. package/dist/src/retrieval/locator-boost.js +129 -0
  329. package/dist/src/retrieval/locator-boost.js.map +1 -0
  330. package/dist/src/retrieval/report-demotion.d.ts +46 -0
  331. package/dist/src/retrieval/report-demotion.d.ts.map +1 -0
  332. package/dist/src/retrieval/report-demotion.js +169 -0
  333. package/dist/src/retrieval/report-demotion.js.map +1 -0
  334. package/dist/src/retrieval/vector.d.ts.map +1 -1
  335. package/dist/src/retrieval/vector.js +11 -2
  336. package/dist/src/retrieval/vector.js.map +1 -1
  337. package/dist/src/server/app.d.ts.map +1 -1
  338. package/dist/src/server/app.js +92 -11
  339. package/dist/src/server/app.js.map +1 -1
  340. package/dist/src/server/routes/compact.d.ts.map +1 -1
  341. package/dist/src/server/routes/compact.js +4 -1
  342. package/dist/src/server/routes/compact.js.map +1 -1
  343. package/dist/src/server/routes/context.d.ts +1 -1
  344. package/dist/src/server/routes/context.d.ts.map +1 -1
  345. package/dist/src/server/routes/context.js +2 -1
  346. package/dist/src/server/routes/context.js.map +1 -1
  347. package/dist/src/server/routes/conversations-search.d.ts.map +1 -1
  348. package/dist/src/server/routes/conversations-search.js +28 -3
  349. package/dist/src/server/routes/conversations-search.js.map +1 -1
  350. package/dist/src/server/routes/enqueue.d.ts +11 -0
  351. package/dist/src/server/routes/enqueue.d.ts.map +1 -0
  352. package/dist/src/server/routes/enqueue.js +17 -0
  353. package/dist/src/server/routes/enqueue.js.map +1 -0
  354. package/dist/src/server/routes/friend-status.d.ts +339 -3
  355. package/dist/src/server/routes/friend-status.d.ts.map +1 -1
  356. package/dist/src/server/routes/friend-status.js +447 -13
  357. package/dist/src/server/routes/friend-status.js.map +1 -1
  358. package/dist/src/server/routes/ingest.d.ts.map +1 -1
  359. package/dist/src/server/routes/ingest.js +5 -2
  360. package/dist/src/server/routes/ingest.js.map +1 -1
  361. package/dist/src/server/routes/mcp-usage.d.ts +5 -4
  362. package/dist/src/server/routes/mcp-usage.d.ts.map +1 -1
  363. package/dist/src/server/routes/mcp-usage.js.map +1 -1
  364. package/dist/src/server/routes/reconcile.d.ts.map +1 -1
  365. package/dist/src/server/routes/reconcile.js +20 -1
  366. package/dist/src/server/routes/reconcile.js.map +1 -1
  367. package/dist/src/server/routes/reindex.d.ts.map +1 -1
  368. package/dist/src/server/routes/reindex.js +4 -1
  369. package/dist/src/server/routes/reindex.js.map +1 -1
  370. package/dist/src/server/routes/save.d.ts.map +1 -1
  371. package/dist/src/server/routes/save.js +4 -1
  372. package/dist/src/server/routes/save.js.map +1 -1
  373. package/dist/src/server/routes/search.d.ts +1 -1
  374. package/dist/src/server/routes/search.d.ts.map +1 -1
  375. package/dist/src/server/routes/search.js +253 -29
  376. package/dist/src/server/routes/search.js.map +1 -1
  377. package/dist/src/server/routes/triage.d.ts.map +1 -1
  378. package/dist/src/server/routes/triage.js +4 -1
  379. package/dist/src/server/routes/triage.js.map +1 -1
  380. package/dist/src/storage/rebuild.d.ts +35 -1
  381. package/dist/src/storage/rebuild.d.ts.map +1 -1
  382. package/dist/src/storage/rebuild.js +288 -64
  383. package/dist/src/storage/rebuild.js.map +1 -1
  384. package/dist/src/storage/tables.d.ts +29 -0
  385. package/dist/src/storage/tables.d.ts.map +1 -1
  386. package/dist/src/storage/tables.js +32 -1
  387. package/dist/src/storage/tables.js.map +1 -1
  388. package/operator/swiftbar/render-menu.py +524 -0
  389. package/operator/swiftbar/rift.10s.sh +176 -0
  390. package/package.json +9 -3
@@ -0,0 +1,360 @@
1
+ /**
2
+ * Current Truth Mode — intent-aware, trust-tiered evidence packaging for
3
+ * ContextPack. Layered: v0 = intent classifier + bucket partition; v1 =
4
+ * git-state discounting (untracked/deleted/newer-on-disk); v2 = trust
5
+ * tiers, claim-type labels, surfaced conflicts, tracker-only caveat, and
6
+ * staleness demotion.
7
+ *
8
+ * Pure, deterministic helpers that classify a query's evidence intent and
9
+ * partition already-retrieved hits into "current truth" / "past reasoning"
10
+ * / "older memory" / "discounted" buckets, plus a "recommended live files
11
+ * to check" hint when the top evidence is mostly old snapshots and the
12
+ * intent is current-truth.
13
+ *
14
+ * v2 load-bearing rule: a conversation can never be sole authority for
15
+ * current truth — recent conversations route to "Recent discussion", not
16
+ * `current_truth` — which closes the self-corroboration loop (Rift's own
17
+ * captured answer can't re-promote itself as current state).
18
+ *
19
+ * This module reads metadata that's already on hits (source_path,
20
+ * indexed_at, source) and a tracker's self-declared `Last touched:` date —
21
+ * it does NOT invent confidence, run any new retrieval, or change
22
+ * `rift_search` ranking. It only re-shapes the answer surface of
23
+ * `rift_context_pack`.
24
+ *
25
+ * See docs/evals/current-truth-mode-q1-q8.md (Q1–Q9) for the frozen
26
+ * regression set this module is targeting.
27
+ */
28
+ import type { RankedResult } from "./reranker.js";
29
+ import type { GitState } from "./git-state.js";
30
+ export type { GitState } from "./git-state.js";
31
+ export type EvidenceIntent = "current_truth" | "reasoning_archive" | "blended";
32
+ /**
33
+ * Classify a query's evidence intent. Deterministic and transparent so
34
+ * v0 can be debugged by eye. Algorithm:
35
+ *
36
+ * 1. Lower-case the query.
37
+ * 2. Check phrase triggers (multi-word) for each intent.
38
+ * 3. Check single-word triggers (matched as whole words via word
39
+ * boundaries — no partial matches like "currently" → "current").
40
+ * 4. If exactly one intent matches → that intent.
41
+ * 5. If both match → return `blended` (the asker is conflating
42
+ * "what's my taste on the current X").
43
+ * 6. If neither matches → `blended`.
44
+ *
45
+ * Note on Q7 ("difference between second brain and Rift"): only
46
+ * `relationship between` is in the reasoning-archive trigger list, not
47
+ * `difference between`. Q7 fires no trigger and falls to `blended`,
48
+ * which is the deliberate v0 outcome — disambiguation questions surface
49
+ * both the current product framing and the historical context without
50
+ * forcing an order.
51
+ */
52
+ export declare function classifyEvidenceIntent(query: string): EvidenceIntent;
53
+ /**
54
+ * Coarse claim-type groups (Current Truth Mode v2). Distinct from
55
+ * {@link EvidenceIntent}: intent drives *section routing*, claim-type
56
+ * labels *what kind of assertion the asker is after* so the answer can
57
+ * say which facts are allowed to mean what.
58
+ *
59
+ * - `current_state` — present-tense state. launch/status/version/
60
+ * install/customer/current/now. Live state + trackers win; a doc's
61
+ * self-declared authority does not.
62
+ * - `framing` — how something is/was positioned. pricing/brand/
63
+ * framing/history/positioning/narrative. Committed docs are good
64
+ * here; a stale framing doc is weak-for-current-state but legitimate
65
+ * for "what was the framing".
66
+ * - `reasoning` — taste / rationale / relationships. why/decision/
67
+ * taste/relationship/philosophy. Conversations are primary.
68
+ *
69
+ * Deliberately coarse and keyword-driven (the v2 "implementation
70
+ * restraint": no semantic claim matcher yet). Used to *label* a surfaced
71
+ * conflict ("competes for current state"), not to re-route sections —
72
+ * that stays {@link classifyEvidenceIntent}'s job.
73
+ */
74
+ export type ClaimType = "current_state" | "framing" | "reasoning";
75
+ /**
76
+ * Classify the claim-type of a query. Precedence: rationale phrases →
77
+ * strong reasoning words → ambiguous decision-without-current-qualifier →
78
+ * current_state → framing → default current_state. A "why did we decide X"
79
+ * question is reasoning even if it mentions a current-state noun; "latest
80
+ * decision about X" is a current-state question (P2 fix). An ambiguous
81
+ * query defaults to the strictest tier discipline (current_state) so we
82
+ * never under-apply the trust gating.
83
+ */
84
+ export declare function classifyClaimType(query: string): ClaimType;
85
+ /**
86
+ * Default freshness cutoff: a hit indexed within `RECENT_WINDOW_DAYS` of
87
+ * "now" counts as recent. 21 days is wide enough that a paused-but-
88
+ * active project's tracker still reads as current, and narrow enough
89
+ * that an April-26 LAUNCH.md (now ~3 weeks old by 2026-05-19) starts
90
+ * looking stale relative to a 2026-05-19 PROJECT_STATE.md edit.
91
+ */
92
+ export declare const RECENT_WINDOW_DAYS = 21;
93
+ export declare function isTrackerPath(p: unknown): boolean;
94
+ /**
95
+ * Whether a source path is a *snapshot* — historical context, never current
96
+ * truth. A doc is a snapshot iff it lives under Rift's OWN generated-reports
97
+ * tree (`selfReportsRoot`, i.e. `<dataDir>/../reports`). Everything Rift's
98
+ * overnight / audit / import passes write lands there; nothing hand-authored
99
+ * as durable truth does.
100
+ *
101
+ * This single root anchor REPLACED two earlier heuristics, both of which
102
+ * over-reached once `rift_search` (not just `context_pack`) started consuming
103
+ * the result:
104
+ *
105
+ * - Shape patterns (`/reports/` + a date stamp / `<year>/` bucket / `insights/`
106
+ * subdir) — not Rift-specific. A client's `reports/2026-05-26-pricing.md`
107
+ * or `reports/insights/q3-strategy.md` is shape-identical and may be the
108
+ * actual source of truth.
109
+ * - Root-independent filename markers (`-snapshot-`, `-overnight-`, `-pass-N`)
110
+ * — audited against the live corpus, EVERY genuine `-overnight-`/`-pass-N`
111
+ * file already lives under `reports/` (so the root anchor catches it), while
112
+ * the only out-of-tree `-snapshot-` hit was an indexed user import
113
+ * (`data/imports/…-portfolio-snapshot-….json`) that the marker mislabeled.
114
+ * The markers therefore added zero true positives and a real false positive,
115
+ * so they were removed rather than scoped.
116
+ *
117
+ * When the root is absent (pure calls with no config) nothing is a snapshot —
118
+ * deliberate and fail-safe: under-discount an unknown-root report rather than
119
+ * mislabel a client/imported document as a discardable snapshot.
120
+ */
121
+ export declare function isSnapshotPath(p: unknown, selfReportsRoot?: string): boolean;
122
+ /**
123
+ * Trust tier of a single piece of evidence (Current Truth Mode v2).
124
+ * Ordered highest → lowest authority:
125
+ *
126
+ * - `live_state` — executable/observable truth: source code,
127
+ * install scripts, the package manifest, config.
128
+ * The closest retrieval analogue to `git status` /
129
+ * a running daemon's `/version`.
130
+ * - `tracker` — intentional state trackers: PROJECT_STATE.md,
131
+ * TODO.md, dated decision docs. Useful, not
132
+ * absolute — can be stale (see staleness demotion).
133
+ * - `committed_doc` — durable committed framing: README, PRD, CLAUDE.md,
134
+ * AGENTS.md. Good for framing, lower for current state.
135
+ * - `discussion` — conversations / agent reasoning. Useful context,
136
+ * never sole authority for current state (hard rule 1).
137
+ * - `discounted` — untracked / deleted / snapshot / generated reports.
138
+ * Historical or provisional unless reaffirmed.
139
+ *
140
+ * The tier is a property of the *source*, computed structurally from
141
+ * kind + git-state + path. Which tier *leads the answer* depends on the
142
+ * claim — that routing stays with {@link partitionEvidence}. So the same
143
+ * card can be `committed_doc` and still be superseded by a `tracker` for
144
+ * a current-state claim: tier labels authority, intent decides order.
145
+ */
146
+ export type TrustTier = "live_state" | "tracker" | "committed_doc" | "discussion" | "discounted";
147
+ /**
148
+ * Assign a {@link TrustTier} to one evidence input. Pure, structural,
149
+ * claim-type-independent: git-state is the strongest signal (an untracked
150
+ * or deleted document is `discounted` no matter how it's named — the v1
151
+ * generalization of the LAUNCH.md hack), then snapshot paths, then the
152
+ * path-pattern ladder. Conversations are always `discussion`.
153
+ *
154
+ * Defaults to `committed_doc` for a tracked/unknown document that matches
155
+ * none of the specific ladders — it's a durable file we just can't place
156
+ * more precisely, which is a safer default than claiming it's live state.
157
+ */
158
+ export declare function assignTrustTier(kind: "conversation" | "document", gitState: GitState | undefined, sourcePath: string | undefined, selfReportsRoot?: string): TrustTier;
159
+ /**
160
+ * Parse a row's `indexed_at` and return whether it falls within the
161
+ * recency window. Robust to missing / unparseable timestamps — we'd
162
+ * rather call a row "unknown-age" (treated as not-recent) than blow up
163
+ * the answer packaging.
164
+ */
165
+ export declare function isRecent(indexedAt: string | undefined, now?: Date, windowDays?: number): boolean;
166
+ export interface EvidenceCard {
167
+ id: string;
168
+ title: string;
169
+ source: string;
170
+ snippet: string;
171
+ timestamp?: string;
172
+ source_path?: string;
173
+ /**
174
+ * v1 git-state classification of `source_path` at the time the pack
175
+ * was assembled. Surfaced on the card so downstream consumers can
176
+ * render a "(untracked)" / "(newer on disk)" hint next to the
177
+ * evidence without re-probing. Absent when no probe was run
178
+ * (conversation hit, missing source_path, no projectRoot).
179
+ */
180
+ git_state?: GitState;
181
+ /**
182
+ * v2 trust tier — the authority level of this source (see
183
+ * {@link TrustTier}). Always set. Lets the answer say which facts are
184
+ * allowed to mean what (`live_state` outranks `tracker` outranks
185
+ * `committed_doc` outranks `discussion`).
186
+ */
187
+ tier?: TrustTier;
188
+ /**
189
+ * v2 staleness anchor (P1 fix): a tracker's *self-declared* freshness,
190
+ * parsed from its content (`Last touched:` in PROJECT_STATE.md), as an
191
+ * ISO date. This is "when the tracker says it was last touched", which
192
+ * is the honest staleness signal — `timestamp` (indexed_at) only says
193
+ * "when Rift last reindexed the file", so a reindexed-but-stale tracker
194
+ * would otherwise look fresh and dodge {@link applyStalenessDemotion}.
195
+ * Absent when the content carries no parseable marker.
196
+ */
197
+ tracker_date?: string;
198
+ }
199
+ export interface DiscountedCard extends EvidenceCard {
200
+ reason: string;
201
+ }
202
+ export interface RecommendedLiveFile {
203
+ /** Display path — relative if we have it, absolute otherwise. */
204
+ path: string;
205
+ /** One-line "why" — e.g. "current project state". Short, no period. */
206
+ why: string;
207
+ /**
208
+ * v1 git-state of the recommended file, when known. Lets the asker
209
+ * see at a glance whether the suggested live file is itself
210
+ * canonical (`tracked`) or in an evolving state (`modified` /
211
+ * `newer_on_disk`). Untracked / deleted paths are never recommended.
212
+ */
213
+ git_state?: GitState;
214
+ }
215
+ /**
216
+ * A surfaced disagreement between sources for the same claim (hard rule
217
+ * 4: surface conflicts, don't pretend to resolve them). The canonical
218
+ * case is a high-ranking discounted document (e.g. an untracked
219
+ * `LAUNCH.md` that self-declares authority) competing with higher-tier
220
+ * tracker / live-state / live-file evidence for a current-state claim.
221
+ * We name the tension and attach the tiers; we do not adjudicate the
222
+ * underlying facts.
223
+ */
224
+ export interface ConflictCard {
225
+ /** Coarse claim-type the conflict is about (e.g. `current_state`). */
226
+ claim: ClaimType;
227
+ /** The lower-trust source competing to be the answer. */
228
+ discounted: {
229
+ title: string;
230
+ reason: string;
231
+ source_path?: string;
232
+ };
233
+ /** The higher-trust evidence that supersedes it. */
234
+ superseded_by: {
235
+ title: string;
236
+ tier: TrustTier;
237
+ source_path?: string;
238
+ };
239
+ }
240
+ export interface EvidencePartition {
241
+ current_truth: EvidenceCard[];
242
+ past_reasoning: EvidenceCard[];
243
+ older_memory: EvidenceCard[];
244
+ discounted: DiscountedCard[];
245
+ recommended_live_files: RecommendedLiveFile[];
246
+ /**
247
+ * v2 conflicts (hard rule 4). Empty unless a discounted current-state
248
+ * source is competing with higher-tier evidence.
249
+ */
250
+ conflicts: ConflictCard[];
251
+ /**
252
+ * v2 caveat (hard rule 3). Set to "tracker-backed, not live-verified"
253
+ * when `current_truth` is populated but contains no `live_state`-tier
254
+ * evidence — i.e. the best we have is an intentional tracker, not
255
+ * executable/observable state. Absent otherwise.
256
+ */
257
+ current_truth_caveat?: string;
258
+ }
259
+ /** Hard rule 3 caveat string — single source so renderer + DTO agree. */
260
+ export declare const TRACKER_ONLY_CAVEAT = "tracker-backed, not live-verified";
261
+ /**
262
+ * Input to {@link partitionEvidence}. Lets the partitioner consume both
263
+ * conversation hits and document hits in a uniform shape without
264
+ * re-implementing row lookup — the caller already has rows in hand from
265
+ * `fetchRowsById`.
266
+ */
267
+ export interface EvidenceInput {
268
+ ranked: RankedResult;
269
+ row: Record<string, unknown> | undefined;
270
+ kind: "conversation" | "document";
271
+ /**
272
+ * v1: pre-probed git state for `row.source_path`. Optional — when
273
+ * absent, the partitioner falls back to v0 path-pattern heuristics.
274
+ * Populated by the caller (typically buildContextPack) via
275
+ * {@link import("./git-state.js").probeGitStates}.
276
+ */
277
+ gitState?: GitState;
278
+ }
279
+ /**
280
+ * Partition retrieved hits according to the resolved evidence intent.
281
+ *
282
+ * Rules (v2, transparent and deterministic):
283
+ *
284
+ * - `current_truth` mode:
285
+ * - Conversations → `past_reasoning` (recent) / `older_memory` (old),
286
+ * NEVER `current_truth` (v2 hard rule 1: no conversation is sole
287
+ * authority for current state; closes self-corroboration).
288
+ * - Documents with `gitState === "untracked"` → `discounted`
289
+ * ("untracked in git"). Catches files like a project-local
290
+ * `LAUNCH.md` that exists on disk but hasn't been committed —
291
+ * not canonical state.
292
+ * - Documents with `gitState === "deleted"` → `discounted`
293
+ * ("deleted from disk"). The asker can't open it to verify.
294
+ * - Tracker-path docs and recent (<{@link RECENT_WINDOW_DAYS}d) docs
295
+ * → `current_truth`.
296
+ * - Snapshot/report-style docs and older docs → `discounted`
297
+ * (with reason).
298
+ * - Post-passes: stale trackers (older than fresher live-state by the
299
+ * recency window) demoted to `older_memory`; `tracker-backed, not
300
+ * live-verified` caveat set when `current_truth` has no live-state
301
+ * card; at most one `## Conflicts` entry pairing the top discounted
302
+ * doc against the top higher-tier card.
303
+ * - If `current_truth` is empty or dominated by snapshot/older
304
+ * evidence → populate `recommended_live_files` with tracker paths
305
+ * we already saw in hits (filtered to live git states), or
306
+ * canonical defaults.
307
+ *
308
+ * - `reasoning_archive` mode:
309
+ * - Conversations (regardless of age) → `past_reasoning` (lead).
310
+ * - Tracker-path docs → `current_truth` (background, kept short).
311
+ * - Snapshot docs → `older_memory`.
312
+ * - No demotion-by-age for conversations. No `discounted`.
313
+ * - No `recommended_live_files` — the asker doesn't want trackers.
314
+ * - Git-state rules do NOT apply here: the asker is after framing,
315
+ * not canonicalness.
316
+ *
317
+ * - `blended` mode:
318
+ * - Same git-state discount rules as `current_truth` for documents.
319
+ * - Tracker-path docs and recent hits → `current_truth`.
320
+ * - Conversations (regardless of age) → `past_reasoning`.
321
+ * - Snapshot docs that are clearly stale relative to a tracker →
322
+ * `discounted`. Other older docs → `older_memory`.
323
+ * - `recommended_live_files` only if `current_truth` is empty.
324
+ *
325
+ * Caps per section are derived from {@link maxPerSection} so the caller
326
+ * controls the overall budget.
327
+ */
328
+ export interface PartitionOptions {
329
+ intent: EvidenceIntent;
330
+ /** Per-section cap (parallels existing maxPerBucket). */
331
+ maxPerSection: number;
332
+ /** Injectable for tests. Defaults to `new Date()`. */
333
+ now?: Date;
334
+ /** Project-root absolute path used to display paths relatively when possible. */
335
+ projectRoot?: string;
336
+ /**
337
+ * Absolute path to Rift's OWN generated-reports tree (`<dataDir>/../reports`).
338
+ * Anchors snapshot/report detection to files Rift itself wrote, so a client's
339
+ * `reports/` folder is never mislabeled a discardable snapshot. Omitted in
340
+ * pure unit calls; see {@link isSnapshotPath} for the fail-safe behavior.
341
+ */
342
+ selfReportsRoot?: string;
343
+ /**
344
+ * v2 claim-type (see {@link classifyClaimType}). Used to label surfaced
345
+ * conflicts. Defaults to `current_state` when omitted — the strictest
346
+ * gating, so callers that forget it never under-apply trust discipline.
347
+ */
348
+ claimType?: ClaimType;
349
+ }
350
+ export declare function partitionEvidence(inputs: readonly EvidenceInput[], opts: PartitionOptions): EvidencePartition;
351
+ /**
352
+ * Best-effort parse of a tracker's self-declared freshness from its
353
+ * content. Currently the `Last touched: YYYY-MM-DD` line that
354
+ * PROJECT_STATE.md carries near the top. Returns the matched ISO date
355
+ * string, or undefined when the chunk doesn't contain the marker (the
356
+ * caller falls back to `indexed_at`). Tolerates optional markdown
357
+ * bold/list decoration around the label.
358
+ */
359
+ export declare function parseTrackerDate(content: string | undefined): string | undefined;
360
+ //# sourceMappingURL=current-truth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-truth.d.ts","sourceRoot":"","sources":["../../../src/retrieval/current-truth.ts"],"names":[],"mappings":"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"}