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

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 (273) hide show
  1. package/README.md +7 -3
  2. package/dist/src/capture/auto-capture.d.ts +105 -4
  3. package/dist/src/capture/auto-capture.d.ts.map +1 -1
  4. package/dist/src/capture/auto-capture.js +313 -34
  5. package/dist/src/capture/auto-capture.js.map +1 -1
  6. package/dist/src/capture/claude-cli-triage-provider.d.ts +28 -0
  7. package/dist/src/capture/claude-cli-triage-provider.d.ts.map +1 -0
  8. package/dist/src/capture/claude-cli-triage-provider.js +88 -0
  9. package/dist/src/capture/claude-cli-triage-provider.js.map +1 -0
  10. package/dist/src/capture/codex-cli-triage-provider.d.ts.map +1 -1
  11. package/dist/src/capture/codex-cli-triage-provider.js +1 -33
  12. package/dist/src/capture/codex-cli-triage-provider.js.map +1 -1
  13. package/dist/src/capture/cursor-capture.d.ts +89 -0
  14. package/dist/src/capture/cursor-capture.d.ts.map +1 -0
  15. package/dist/src/capture/cursor-capture.js +121 -0
  16. package/dist/src/capture/cursor-capture.js.map +1 -0
  17. package/dist/src/capture/observability.d.ts +30 -0
  18. package/dist/src/capture/observability.d.ts.map +1 -1
  19. package/dist/src/capture/observability.js +29 -0
  20. package/dist/src/capture/observability.js.map +1 -1
  21. package/dist/src/capture/sources.d.ts +41 -3
  22. package/dist/src/capture/sources.d.ts.map +1 -1
  23. package/dist/src/capture/sources.js +43 -1
  24. package/dist/src/capture/sources.js.map +1 -1
  25. package/dist/src/capture/triage-classification.d.ts +69 -0
  26. package/dist/src/capture/triage-classification.d.ts.map +1 -0
  27. package/dist/src/capture/triage-classification.js +62 -0
  28. package/dist/src/capture/triage-classification.js.map +1 -0
  29. package/dist/src/capture/triage-provider-factory.d.ts +36 -0
  30. package/dist/src/capture/triage-provider-factory.d.ts.map +1 -0
  31. package/dist/src/capture/triage-provider-factory.js +55 -0
  32. package/dist/src/capture/triage-provider-factory.js.map +1 -0
  33. package/dist/src/capture/triage.d.ts +1 -1
  34. package/dist/src/capture/triage.d.ts.map +1 -1
  35. package/dist/src/capture/triage.js +8 -6
  36. package/dist/src/capture/triage.js.map +1 -1
  37. package/dist/src/cli/commands/capture.d.ts.map +1 -1
  38. package/dist/src/cli/commands/capture.js +72 -17
  39. package/dist/src/cli/commands/capture.js.map +1 -1
  40. package/dist/src/cli/commands/chunk-backfill.d.ts +13 -0
  41. package/dist/src/cli/commands/chunk-backfill.d.ts.map +1 -0
  42. package/dist/src/cli/commands/chunk-backfill.js +157 -0
  43. package/dist/src/cli/commands/chunk-backfill.js.map +1 -0
  44. package/dist/src/cli/commands/cursor-probe.d.ts +20 -0
  45. package/dist/src/cli/commands/cursor-probe.d.ts.map +1 -0
  46. package/dist/src/cli/commands/cursor-probe.js +162 -0
  47. package/dist/src/cli/commands/cursor-probe.js.map +1 -0
  48. package/dist/src/cli/commands/onboard.d.ts +22 -2
  49. package/dist/src/cli/commands/onboard.d.ts.map +1 -1
  50. package/dist/src/cli/commands/onboard.js +160 -32
  51. package/dist/src/cli/commands/onboard.js.map +1 -1
  52. package/dist/src/cli/commands/status.d.ts.map +1 -1
  53. package/dist/src/cli/commands/status.js +12 -0
  54. package/dist/src/cli/commands/status.js.map +1 -1
  55. package/dist/src/cli/commands/update.d.ts +34 -1
  56. package/dist/src/cli/commands/update.d.ts.map +1 -1
  57. package/dist/src/cli/commands/update.js +166 -1
  58. package/dist/src/cli/commands/update.js.map +1 -1
  59. package/dist/src/cli/index.d.ts.map +1 -1
  60. package/dist/src/cli/index.js +4 -0
  61. package/dist/src/cli/index.js.map +1 -1
  62. package/dist/src/cli/status/friend-header.d.ts +10 -0
  63. package/dist/src/cli/status/friend-header.d.ts.map +1 -1
  64. package/dist/src/cli/status/friend-header.js +117 -0
  65. package/dist/src/cli/status/friend-header.js.map +1 -1
  66. package/dist/src/cli/status/local-signals.d.ts +23 -0
  67. package/dist/src/cli/status/local-signals.d.ts.map +1 -1
  68. package/dist/src/cli/status/local-signals.js +19 -0
  69. package/dist/src/cli/status/local-signals.js.map +1 -1
  70. package/dist/src/config/schema.d.ts +220 -14
  71. package/dist/src/config/schema.d.ts.map +1 -1
  72. package/dist/src/config/schema.js +82 -7
  73. package/dist/src/config/schema.js.map +1 -1
  74. package/dist/src/diagnostics/claude-preflight.d.ts +34 -0
  75. package/dist/src/diagnostics/claude-preflight.d.ts.map +1 -0
  76. package/dist/src/diagnostics/claude-preflight.js +89 -0
  77. package/dist/src/diagnostics/claude-preflight.js.map +1 -0
  78. package/dist/src/diagnostics/codex-preflight.d.ts +1 -1
  79. package/dist/src/diagnostics/codex-preflight.d.ts.map +1 -1
  80. package/dist/src/diagnostics/codex-preflight.js +14 -0
  81. package/dist/src/diagnostics/codex-preflight.js.map +1 -1
  82. package/dist/src/diagnostics/doctor.d.ts +1 -1
  83. package/dist/src/diagnostics/doctor.d.ts.map +1 -1
  84. package/dist/src/diagnostics/doctor.js +39 -2
  85. package/dist/src/diagnostics/doctor.js.map +1 -1
  86. package/dist/src/ingestion/chunk-meta.d.ts +85 -0
  87. package/dist/src/ingestion/chunk-meta.d.ts.map +1 -0
  88. package/dist/src/ingestion/chunk-meta.js +167 -0
  89. package/dist/src/ingestion/chunk-meta.js.map +1 -0
  90. package/dist/src/ingestion/chunk-text.d.ts +39 -0
  91. package/dist/src/ingestion/chunk-text.d.ts.map +1 -0
  92. package/dist/src/ingestion/chunk-text.js +114 -0
  93. package/dist/src/ingestion/chunk-text.js.map +1 -0
  94. package/dist/src/ingestion/cursor/cursor-store.d.ts +177 -0
  95. package/dist/src/ingestion/cursor/cursor-store.d.ts.map +1 -0
  96. package/dist/src/ingestion/cursor/cursor-store.js +243 -0
  97. package/dist/src/ingestion/cursor/cursor-store.js.map +1 -0
  98. package/dist/src/ingestion/cursor/enrich-roots.d.ts +16 -0
  99. package/dist/src/ingestion/cursor/enrich-roots.d.ts.map +1 -0
  100. package/dist/src/ingestion/cursor/enrich-roots.js +22 -0
  101. package/dist/src/ingestion/cursor/enrich-roots.js.map +1 -0
  102. package/dist/src/ingestion/cursor/vscdb-reader.d.ts +32 -0
  103. package/dist/src/ingestion/cursor/vscdb-reader.d.ts.map +1 -0
  104. package/dist/src/ingestion/cursor/vscdb-reader.js +113 -0
  105. package/dist/src/ingestion/cursor/vscdb-reader.js.map +1 -0
  106. package/dist/src/ingestion/cursor/workspace-root.d.ts +96 -0
  107. package/dist/src/ingestion/cursor/workspace-root.d.ts.map +1 -0
  108. package/dist/src/ingestion/cursor/workspace-root.js +187 -0
  109. package/dist/src/ingestion/cursor/workspace-root.js.map +1 -0
  110. package/dist/src/ingestion/indexer.d.ts.map +1 -1
  111. package/dist/src/ingestion/indexer.js +41 -32
  112. package/dist/src/ingestion/indexer.js.map +1 -1
  113. package/dist/src/jobs/handlers/compact.d.ts.map +1 -1
  114. package/dist/src/jobs/handlers/compact.js +9 -4
  115. package/dist/src/jobs/handlers/compact.js.map +1 -1
  116. package/dist/src/jobs/handlers/ingest.d.ts.map +1 -1
  117. package/dist/src/jobs/handlers/ingest.js +60 -30
  118. package/dist/src/jobs/handlers/ingest.js.map +1 -1
  119. package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
  120. package/dist/src/jobs/handlers/reconcile.js +128 -45
  121. package/dist/src/jobs/handlers/reconcile.js.map +1 -1
  122. package/dist/src/jobs/handlers/save.d.ts.map +1 -1
  123. package/dist/src/jobs/handlers/save.js +122 -72
  124. package/dist/src/jobs/handlers/save.js.map +1 -1
  125. package/dist/src/jobs/types.d.ts +1 -1
  126. package/dist/src/main.js +26 -15
  127. package/dist/src/main.js.map +1 -1
  128. package/dist/src/mcp/server.d.ts.map +1 -1
  129. package/dist/src/mcp/server.js +10 -3
  130. package/dist/src/mcp/server.js.map +1 -1
  131. package/dist/src/mcp/tools/context-pack.d.ts.map +1 -1
  132. package/dist/src/mcp/tools/context-pack.js +7 -1
  133. package/dist/src/mcp/tools/context-pack.js.map +1 -1
  134. package/dist/src/mcp/tools/conversations-search.d.ts +1 -1
  135. package/dist/src/mcp/tools/conversations-search.d.ts.map +1 -1
  136. package/dist/src/mcp/tools/conversations-search.js +7 -1
  137. package/dist/src/mcp/tools/conversations-search.js.map +1 -1
  138. package/dist/src/mcp/tools/evidence-feedback.d.ts +60 -0
  139. package/dist/src/mcp/tools/evidence-feedback.d.ts.map +1 -0
  140. package/dist/src/mcp/tools/evidence-feedback.js +62 -0
  141. package/dist/src/mcp/tools/evidence-feedback.js.map +1 -0
  142. package/dist/src/mcp/tools/log-outcome.d.ts +72 -0
  143. package/dist/src/mcp/tools/log-outcome.d.ts.map +1 -0
  144. package/dist/src/mcp/tools/log-outcome.js +59 -0
  145. package/dist/src/mcp/tools/log-outcome.js.map +1 -0
  146. package/dist/src/mcp/tools/open-evidence.d.ts +37 -0
  147. package/dist/src/mcp/tools/open-evidence.d.ts.map +1 -0
  148. package/dist/src/mcp/tools/open-evidence.js +72 -0
  149. package/dist/src/mcp/tools/open-evidence.js.map +1 -0
  150. package/dist/src/mcp/tools/save.d.ts +7 -2
  151. package/dist/src/mcp/tools/save.d.ts.map +1 -1
  152. package/dist/src/mcp/tools/save.js +7 -2
  153. package/dist/src/mcp/tools/save.js.map +1 -1
  154. package/dist/src/mcp/tools/search.d.ts.map +1 -1
  155. package/dist/src/mcp/tools/search.js +7 -1
  156. package/dist/src/mcp/tools/search.js.map +1 -1
  157. package/dist/src/observability/retrieval-feedback.d.ts +82 -0
  158. package/dist/src/observability/retrieval-feedback.d.ts.map +1 -0
  159. package/dist/src/observability/retrieval-feedback.js +231 -0
  160. package/dist/src/observability/retrieval-feedback.js.map +1 -0
  161. package/dist/src/observability/rift-context.d.ts.map +1 -1
  162. package/dist/src/observability/rift-context.js +3 -0
  163. package/dist/src/observability/rift-context.js.map +1 -1
  164. package/dist/src/observability/tool-usage-stats.d.ts +13 -0
  165. package/dist/src/observability/tool-usage-stats.d.ts.map +1 -1
  166. package/dist/src/observability/tool-usage-stats.js +15 -0
  167. package/dist/src/observability/tool-usage-stats.js.map +1 -1
  168. package/dist/src/observability/tool-usage.d.ts +56 -0
  169. package/dist/src/observability/tool-usage.d.ts.map +1 -1
  170. package/dist/src/observability/tool-usage.js +86 -0
  171. package/dist/src/observability/tool-usage.js.map +1 -1
  172. package/dist/src/providers/claude-cli-metadata-extraction.d.ts +47 -0
  173. package/dist/src/providers/claude-cli-metadata-extraction.d.ts.map +1 -0
  174. package/dist/src/providers/claude-cli-metadata-extraction.js +120 -0
  175. package/dist/src/providers/claude-cli-metadata-extraction.js.map +1 -0
  176. package/dist/src/providers/claude-cli-runner.d.ts +92 -0
  177. package/dist/src/providers/claude-cli-runner.d.ts.map +1 -0
  178. package/dist/src/providers/claude-cli-runner.js +598 -0
  179. package/dist/src/providers/claude-cli-runner.js.map +1 -0
  180. package/dist/src/providers/codex-cli-metadata-extraction.d.ts.map +1 -1
  181. package/dist/src/providers/codex-cli-metadata-extraction.js +1 -40
  182. package/dist/src/providers/codex-cli-metadata-extraction.js.map +1 -1
  183. package/dist/src/providers/codex-cli-runner.d.ts +7 -0
  184. package/dist/src/providers/codex-cli-runner.d.ts.map +1 -1
  185. package/dist/src/providers/codex-cli-runner.js +131 -5
  186. package/dist/src/providers/codex-cli-runner.js.map +1 -1
  187. package/dist/src/providers/conversation-generation.d.ts +10 -0
  188. package/dist/src/providers/conversation-generation.d.ts.map +1 -1
  189. package/dist/src/providers/conversation-generation.js +54 -13
  190. package/dist/src/providers/conversation-generation.js.map +1 -1
  191. package/dist/src/providers/openai-metadata-extraction.d.ts +48 -1
  192. package/dist/src/providers/openai-metadata-extraction.d.ts.map +1 -1
  193. package/dist/src/providers/openai-metadata-extraction.js +51 -2
  194. package/dist/src/providers/openai-metadata-extraction.js.map +1 -1
  195. package/dist/src/providers/types.d.ts +1 -1
  196. package/dist/src/providers/types.d.ts.map +1 -1
  197. package/dist/src/providers/types.js +4 -0
  198. package/dist/src/providers/types.js.map +1 -1
  199. package/dist/src/retrieval/compact.d.ts +81 -0
  200. package/dist/src/retrieval/compact.d.ts.map +1 -1
  201. package/dist/src/retrieval/compact.js +248 -8
  202. package/dist/src/retrieval/compact.js.map +1 -1
  203. package/dist/src/retrieval/context-pack.d.ts.map +1 -1
  204. package/dist/src/retrieval/context-pack.js +28 -14
  205. package/dist/src/retrieval/context-pack.js.map +1 -1
  206. package/dist/src/retrieval/evidence-key.d.ts +48 -0
  207. package/dist/src/retrieval/evidence-key.d.ts.map +1 -0
  208. package/dist/src/retrieval/evidence-key.js +131 -0
  209. package/dist/src/retrieval/evidence-key.js.map +1 -0
  210. package/dist/src/retrieval/group-by-parent.d.ts +38 -0
  211. package/dist/src/retrieval/group-by-parent.d.ts.map +1 -0
  212. package/dist/src/retrieval/group-by-parent.js +40 -0
  213. package/dist/src/retrieval/group-by-parent.js.map +1 -0
  214. package/dist/src/retrieval/lexical.d.ts.map +1 -1
  215. package/dist/src/retrieval/lexical.js +1 -3
  216. package/dist/src/retrieval/lexical.js.map +1 -1
  217. package/dist/src/retrieval/receipt.d.ts +57 -0
  218. package/dist/src/retrieval/receipt.d.ts.map +1 -0
  219. package/dist/src/retrieval/receipt.js +119 -0
  220. package/dist/src/retrieval/receipt.js.map +1 -0
  221. package/dist/src/retrieval/reranker.d.ts +12 -2
  222. package/dist/src/retrieval/reranker.d.ts.map +1 -1
  223. package/dist/src/retrieval/reranker.js +11 -4
  224. package/dist/src/retrieval/reranker.js.map +1 -1
  225. package/dist/src/retrieval/stitch-chunks.d.ts +73 -0
  226. package/dist/src/retrieval/stitch-chunks.d.ts.map +1 -0
  227. package/dist/src/retrieval/stitch-chunks.js +106 -0
  228. package/dist/src/retrieval/stitch-chunks.js.map +1 -0
  229. package/dist/src/server/app.d.ts.map +1 -1
  230. package/dist/src/server/app.js +17 -1
  231. package/dist/src/server/app.js.map +1 -1
  232. package/dist/src/server/routes/conversations-search.d.ts.map +1 -1
  233. package/dist/src/server/routes/conversations-search.js +12 -3
  234. package/dist/src/server/routes/conversations-search.js.map +1 -1
  235. package/dist/src/server/routes/friend-status.d.ts +44 -5
  236. package/dist/src/server/routes/friend-status.d.ts.map +1 -1
  237. package/dist/src/server/routes/friend-status.js +74 -6
  238. package/dist/src/server/routes/friend-status.js.map +1 -1
  239. package/dist/src/server/routes/mcp-usage.d.ts +9 -6
  240. package/dist/src/server/routes/mcp-usage.d.ts.map +1 -1
  241. package/dist/src/server/routes/mcp-usage.js.map +1 -1
  242. package/dist/src/server/routes/retrieval-feedback.d.ts +3 -0
  243. package/dist/src/server/routes/retrieval-feedback.d.ts.map +1 -0
  244. package/dist/src/server/routes/retrieval-feedback.js +290 -0
  245. package/dist/src/server/routes/retrieval-feedback.js.map +1 -0
  246. package/dist/src/server/routes/save.d.ts +3 -3
  247. package/dist/src/server/routes/save.d.ts.map +1 -1
  248. package/dist/src/server/routes/save.js +6 -2
  249. package/dist/src/server/routes/save.js.map +1 -1
  250. package/dist/src/server/routes/search.d.ts.map +1 -1
  251. package/dist/src/server/routes/search.js +19 -7
  252. package/dist/src/server/routes/search.js.map +1 -1
  253. package/dist/src/server/serving-marker.d.ts +85 -0
  254. package/dist/src/server/serving-marker.d.ts.map +1 -0
  255. package/dist/src/server/serving-marker.js +226 -0
  256. package/dist/src/server/serving-marker.js.map +1 -0
  257. package/dist/src/storage/chunk-backfill.d.ts +39 -0
  258. package/dist/src/storage/chunk-backfill.d.ts.map +1 -0
  259. package/dist/src/storage/chunk-backfill.js +295 -0
  260. package/dist/src/storage/chunk-backfill.js.map +1 -0
  261. package/dist/src/storage/filter.d.ts +42 -0
  262. package/dist/src/storage/filter.d.ts.map +1 -0
  263. package/dist/src/storage/filter.js +70 -0
  264. package/dist/src/storage/filter.js.map +1 -0
  265. package/dist/src/storage/rebuild.d.ts.map +1 -1
  266. package/dist/src/storage/rebuild.js +44 -27
  267. package/dist/src/storage/rebuild.js.map +1 -1
  268. package/dist/src/storage/tables.d.ts +41 -0
  269. package/dist/src/storage/tables.d.ts.map +1 -1
  270. package/dist/src/storage/tables.js +64 -1
  271. package/dist/src/storage/tables.js.map +1 -1
  272. package/operator/swiftbar/render-menu.py +57 -15
  273. package/package.json +5 -3
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,29 @@ export interface ActiveCliLocation {
12
12
  /** Install prefix owning that binary (parent of its bin dir), or null. */
13
13
  prefix: string | null;
14
14
  }
15
+ /** What launchd is configured to launch as the daemon. */
16
+ export interface DaemonProgram {
17
+ /**
18
+ * Absolute path of the daemon entrypoint (`main.js`) from the launchd
19
+ * plist's ProgramArguments, or null if the plist can't be read/parsed.
20
+ * This is what classifies the install LAYOUT: a path under the packaged
21
+ * app-support bundle means a `.pkg` install npm can't upgrade.
22
+ */
23
+ mainPath: string | null;
24
+ }
15
25
  export interface UpdateRunner {
26
+ /**
27
+ * Resolve what launchd launches as the daemon (its `main.js` path), read
28
+ * from the plist BEFORE any install side effect. Used to detect a packaged
29
+ * (.pkg) layout and bail with no npm-global side effect.
30
+ */
31
+ resolveDaemonProgram: () => Promise<DaemonProgram>;
32
+ /**
33
+ * Version the RUNNING daemon reports (`GET /version` → `.version`). Called
34
+ * after kickstart+health to prove the daemon actually loaded the new build —
35
+ * /health only proves *a* daemon answered. null when unreachable/unparseable.
36
+ */
37
+ getDaemonVersion: () => Promise<string | null>;
16
38
  /**
17
39
  * Run `npm install -g <spec>`, optionally pinned to a global `--prefix`.
18
40
  * Returns the exit code so the command can decide whether to retry with
@@ -51,9 +73,20 @@ export interface UpdateRunner {
51
73
  export declare function makeUpdateCommand(): Command;
52
74
  export interface UpdateResult {
53
75
  ok: boolean;
54
- step?: "npm" | "verify" | "kickstart" | "health";
76
+ step?: "packaged" | "npm" | "verify" | "kickstart" | "health" | "daemon-verify";
55
77
  transcript: string[];
56
78
  }
79
+ /** Which install shape the daemon launches from. */
80
+ export type DaemonLayout = "packaged" | "npm" | "unknown";
81
+ /**
82
+ * Classify the install from the daemon's entrypoint path:
83
+ * - null path (plist unreadable) → "unknown": proceed with the npm flow but
84
+ * let the daemon /version check (Step 4b) catch a non-update honestly.
85
+ * - path under the packaged app-support bundle → "packaged": npm can't
86
+ * upgrade it; stop early.
87
+ * - anything else (npm global module dir) → "npm": the normal flow works.
88
+ */
89
+ export declare function classifyDaemonLayout(mainPath: string | null): DaemonLayout;
57
90
  /**
58
91
  * Pure orchestration so tests can inject a mock runner. The function
59
92
  * always returns — exit-code mapping is the caller's job.
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAyDA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,eAAe,EACf,aAAa,EACd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAS9C;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,uFAAuF;IACvF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,aAAa,EAAE,CACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,KACnB,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB;;;OAGG;IACH,gBAAgB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnD;;;OAGG;IACH,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,mFAAmF;IACnF,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,8DAA8D;IAC9D,SAAS,EAAE,OAAO,eAAe,CAAC;IAClC,uDAAuD;IACvD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,kFAAkF;IAClF,cAAc,EAAE,OAAO,cAAc,CAAC;CACvC;AAaD,wBAAgB,iBAAiB,IAAI,OAAO,CAa3C;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IACjD,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CA+H3E;AAED,KAAK,cAAc,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAE9D;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAKtD"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/update.ts"],"names":[],"mappings":"AA0EA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,eAAe,EACf,aAAa,EAEd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAS9C;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,uFAAuF;IACvF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IACnD;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/C;;;;;;OAMG;IACH,aAAa,EAAE,CACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,KACnB,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB;;;OAGG;IACH,gBAAgB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnD;;;OAGG;IACH,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,mFAAmF;IACnF,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,8DAA8D;IAC9D,SAAS,EAAE,OAAO,eAAe,CAAC;IAClC,uDAAuD;IACvD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,kFAAkF;IAClF,cAAc,EAAE,OAAO,cAAc,CAAC;CACvC;AAeD,wBAAgB,iBAAiB,IAAI,OAAO,CAa3C;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,eAAe,CAAC;IAChF,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,oDAAoD;AACpD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,KAAK,GAAG,SAAS,CAAC;AAU1D;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,YAAY,CAG1E;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAuK3E;AAED,KAAK,cAAc,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAE9D;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAKtD"}
@@ -2,6 +2,16 @@
2
2
  * `rift update` — friend-readable in-place upgrade for the npm-installed CLI.
3
3
  *
4
4
  * Steps (in order, each one printed):
5
+ * 0. Detect the daemon LAYOUT before any side effect. `rift update`'s npm
6
+ * path only upgrades the daemon when the launchd plist points at the
7
+ * npm-installed module dir. A packaged (.pkg) install launches the daemon
8
+ * from a bundled app under ~/Library/Application Support/Rift/app that npm
9
+ * never touches — so an `npm install -g` would upgrade an unused CLI copy,
10
+ * the kickstart would relaunch the SAME old bundled daemon, and a
11
+ * CLI-only verify would falsely report success. When we detect that
12
+ * layout we STOP here with NO npm-global side effect and print the exact
13
+ * .pkg recovery instead of lying. (This is the beta.20→beta.21 split-
14
+ * install false-success bug.)
5
15
  * 1. Resolve the target version with FRESH registry metadata
6
16
  * (`npm view --prefer-online @getrift/rift@beta version`), then
7
17
  * `npm install -g --prefer-online @getrift/rift@<that exact version>`.
@@ -27,6 +37,12 @@
27
37
  * daemon so it picks up the new code on disk.
28
38
  * 4. Poll `/health` until 200 (or timeout) — proves the new build can
29
39
  * actually start.
40
+ * 4b. VERIFY THE DAEMON. Confirm the running daemon's GET /version equals
41
+ * the freshly-resolved expected version. /health only proves *a* daemon
42
+ * answered; this proves it is the NEW build. A healthy restart that still
43
+ * reports the old version means the code the daemon loads is not the code
44
+ * npm upgraded — the load-bearing honesty check that the original CLI-only
45
+ * verify (Step 2) structurally could not make.
30
46
  * 5. Refresh the SwiftBar menu plugin — keeps the 10-second menu surface
31
47
  * on the same packaged scripts as the just-installed CLI.
32
48
  *
@@ -54,9 +70,10 @@
54
70
  * not write to that snapshot.
55
71
  */
56
72
  import { spawn, execFile } from "node:child_process";
73
+ import os from "node:os";
57
74
  import path from "node:path";
58
75
  import { Command } from "commander";
59
- import { kickstartDaemon, waitForHealth, } from "../../onboarding/daemon-control.js";
76
+ import { kickstartDaemon, waitForHealth, RIFT_LAUNCHD_LABEL, } from "../../onboarding/daemon-control.js";
60
77
  import { installMenuBar } from "./menubar.js";
61
78
  import { printJson, printText } from "../output.js";
62
79
  const RIFT_PACKAGE_NAME = "@getrift/rift";
@@ -65,6 +82,8 @@ const RIFT_BETA_TAG = "@getrift/rift@beta";
65
82
  const DAEMON_BASE_URL = "http://127.0.0.1:3577";
66
83
  const HEALTH_TIMEOUT_MS = 30_000;
67
84
  const defaultRunner = {
85
+ resolveDaemonProgram: defaultResolveDaemonProgram,
86
+ getDaemonVersion: defaultGetDaemonVersion,
68
87
  runNpmInstall: defaultNpmInstall,
69
88
  resolveActiveCli: defaultResolveActiveCli,
70
89
  getActiveCliVersion: defaultGetActiveCliVersion,
@@ -91,6 +110,26 @@ export function makeUpdateCommand() {
91
110
  process.exitCode = 1;
92
111
  });
93
112
  }
113
+ /**
114
+ * The packaged (.pkg) install lays the daemon down under this home-relative
115
+ * path (build-installer.sh's `INSTALL_LOCATION`); the bundled node + app JS
116
+ * live inside it. A daemon `main.js` under this segment is therefore a
117
+ * packaged install that `npm install -g` cannot upgrade.
118
+ */
119
+ const PACKAGED_PATH_MARKER = `${path.sep}Library${path.sep}Application Support${path.sep}Rift${path.sep}`;
120
+ /**
121
+ * Classify the install from the daemon's entrypoint path:
122
+ * - null path (plist unreadable) → "unknown": proceed with the npm flow but
123
+ * let the daemon /version check (Step 4b) catch a non-update honestly.
124
+ * - path under the packaged app-support bundle → "packaged": npm can't
125
+ * upgrade it; stop early.
126
+ * - anything else (npm global module dir) → "npm": the normal flow works.
127
+ */
128
+ export function classifyDaemonLayout(mainPath) {
129
+ if (!mainPath)
130
+ return "unknown";
131
+ return mainPath.includes(PACKAGED_PATH_MARKER) ? "packaged" : "npm";
132
+ }
94
133
  /**
95
134
  * Pure orchestration so tests can inject a mock runner. The function
96
135
  * always returns — exit-code mapping is the caller's job.
@@ -100,6 +139,24 @@ export async function runUpdate(runner) {
100
139
  const say = (line) => {
101
140
  transcript.push(line);
102
141
  };
142
+ // --- Step 0: detect the daemon layout BEFORE any install side effect ---
143
+ // Packaged (.pkg) installs launch the daemon from a bundled app under
144
+ // ~/Library/Application Support/Rift/app that `npm install -g` never touches.
145
+ // Running the npm flow there would upgrade an unused CLI copy, kickstart the
146
+ // SAME old bundled daemon, and then "verify" the wrong copy — a false
147
+ // success. Detect it up front and STOP with no npm-global side effect.
148
+ const daemonProgram = await runner.resolveDaemonProgram();
149
+ const layout = classifyDaemonLayout(daemonProgram.mainPath);
150
+ if (layout === "packaged") {
151
+ const daemonVersion = await runner.getDaemonVersion();
152
+ const expected = await runner.getExpectedVersion();
153
+ appendPackagedRecovery(say, {
154
+ mainPath: daemonProgram.mainPath,
155
+ daemonVersion,
156
+ expected,
157
+ });
158
+ return { ok: false, step: "packaged", transcript };
159
+ }
103
160
  // --- Step 1a: resolve the target version with FRESH registry metadata ---
104
161
  // Resolve the expected version BEFORE installing, and force a registry
105
162
  // round-trip (`npm view --prefer-online`). This is load-bearing: if both
@@ -186,6 +243,26 @@ export async function runUpdate(runner) {
186
243
  return { ok: false, step: "health", transcript };
187
244
  }
188
245
  say(` Daemon healthy (uptime ${health.uptimeSeconds}s).`);
246
+ // --- Step 4b: verify the DAEMON now runs the new version ---
247
+ // The load-bearing honesty check. /health proves *a* daemon answered; this
248
+ // proves it is the NEW build. A healthy restart that still reports the old
249
+ // version means the daemon loads code `npm install -g` didn't upgrade (an
250
+ // undetected packaged split, or a stray responder on 3577). We refuse to
251
+ // claim success on the CLI verify (Step 2) alone — that copy is not what
252
+ // `rift status`, MCP, and capture actually run.
253
+ say("==> Verifying the daemon is running the new version");
254
+ const daemonVersion = await runner.getDaemonVersion();
255
+ const daemonVerdict = evaluateUpgrade(expected, daemonVersion);
256
+ if (!daemonVerdict.ok) {
257
+ appendDaemonVerifyDiagnosis(say, {
258
+ expected,
259
+ activeVersion,
260
+ daemonVersion,
261
+ mainPath: daemonProgram.mainPath,
262
+ });
263
+ return { ok: false, step: "daemon-verify", transcript };
264
+ }
265
+ say(` Daemon now reports ${daemonVersion}.`);
189
266
  // --- Step 5: refresh + relaunch menu bar ---
190
267
  // installMenuBar now also launches/refreshes SwiftBar, so an update brings
191
268
  // the icon back without a second manual step. A missing SwiftBar is NOT a
@@ -310,6 +387,56 @@ function appendVerifyDiagnosis(say, ctx) {
310
387
  say(" (if it repeats: npm cache clean --force, then re-run rift update)");
311
388
  }
312
389
  }
390
+ /**
391
+ * Packaged (.pkg) install detected: `rift update`'s npm path can't upgrade the
392
+ * bundled daemon, so we stopped before touching npm. Lead with the plain-English
393
+ * verdict, show what runs where, and point at the real recovery (.pkg reinstall).
394
+ */
395
+ function appendPackagedRecovery(say, ctx) {
396
+ const { mainPath, daemonVersion, expected } = ctx;
397
+ say("");
398
+ say("This is a packaged (.pkg) install — `rift update` can't upgrade it.");
399
+ say("");
400
+ say("Your daemon runs from the bundled app the installer manages, not from");
401
+ say("the npm command-line tool that `rift update` upgrades. Updating npm");
402
+ say("here would change nothing the daemon loads, so I stopped without");
403
+ say("touching anything.");
404
+ say("");
405
+ if (mainPath)
406
+ say(` Daemon app: ${mainPath}`);
407
+ if (daemonVersion)
408
+ say(` Daemon now: ${daemonVersion}`);
409
+ if (expected)
410
+ say(` Latest beta: ${expected}`);
411
+ say("");
412
+ say("To upgrade: reinstall with the latest Rift .pkg (the same installer you");
413
+ say("first used). Latest builds: https://getrift.dev");
414
+ }
415
+ /**
416
+ * npm install + restart succeeded and /health is green, but the daemon still
417
+ * reports the old version — the update did not reach what actually runs. Name
418
+ * all three versions so the split is unambiguous, and point at the .pkg path
419
+ * (the usual cause: a packaged install whose plist we couldn't classify).
420
+ */
421
+ function appendDaemonVerifyDiagnosis(say, ctx) {
422
+ const { expected, activeVersion, daemonVersion, mainPath } = ctx;
423
+ say("");
424
+ say("Rift upgraded the command-line tool, but the daemon is still running");
425
+ say("the old version after restarting.");
426
+ say("");
427
+ if (expected)
428
+ say(` Expected (published @beta): ${expected}`);
429
+ else
430
+ say(" Expected (published @beta): unknown — npm registry probe failed");
431
+ say(` CLI on your PATH: ${activeVersion ?? "unknown"}`);
432
+ say(` Daemon now reports: ${daemonVersion ?? "unreachable"}`);
433
+ if (mainPath)
434
+ say(` Daemon app: ${mainPath}`);
435
+ say("");
436
+ say("This means the daemon launches from a copy `rift update` does not");
437
+ say("manage. If you installed Rift via the .pkg, reinstall the latest .pkg");
438
+ say("(https://getrift.dev). Otherwise inspect with: rift status");
439
+ }
313
440
  /** True when `binPath` sits inside `<prefix>/bin` (i.e. npm's `-g` bin dir). */
314
441
  function binaryLivesUnderPrefix(binPath, prefix) {
315
442
  const binDir = path.join(prefix, "bin") + path.sep;
@@ -322,6 +449,44 @@ function deriveBinPrefix(binPath) {
322
449
  const binDir = path.dirname(binPath);
323
450
  return path.basename(binDir) === "bin" ? path.dirname(binDir) : null;
324
451
  }
452
+ /**
453
+ * Read the daemon entrypoint (`main.js`) from the launchd plist's
454
+ * ProgramArguments. The array is [node, main.js, config]; index 1 is the app.
455
+ * PlistBuddy parses the real (possibly binary) plist reliably; any failure
456
+ * (no plist, bad index) returns null → classified as "unknown", not "npm".
457
+ */
458
+ async function defaultResolveDaemonProgram() {
459
+ const plist = path.join(os.homedir(), "Library", "LaunchAgents", `${RIFT_LAUNCHD_LABEL}.plist`);
460
+ const mainPath = await capture("/usr/libexec/PlistBuddy", [
461
+ "-c",
462
+ "Print :ProgramArguments:1",
463
+ plist,
464
+ ]);
465
+ return { mainPath };
466
+ }
467
+ /** Version the running daemon reports via GET /version (`.version`). */
468
+ async function defaultGetDaemonVersion() {
469
+ try {
470
+ const controller = new AbortController();
471
+ const timer = setTimeout(() => controller.abort(), 5_000);
472
+ let res;
473
+ try {
474
+ res = await fetch(`${DAEMON_BASE_URL}/version`, {
475
+ signal: controller.signal,
476
+ });
477
+ }
478
+ finally {
479
+ clearTimeout(timer);
480
+ }
481
+ if (!res.ok)
482
+ return null;
483
+ const body = (await res.json());
484
+ return typeof body.version === "string" ? body.version : null;
485
+ }
486
+ catch {
487
+ return null;
488
+ }
489
+ }
325
490
  function defaultNpmInstall(spec, useSudo, prefix) {
326
491
  return new Promise((resolve) => {
327
492
  const prefixArgs = prefix ? ["--prefix", prefix] : [];
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/cli/commands/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,GACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAc,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAC1C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;AAC/C,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAChD,MAAM,iBAAiB,GAAG,MAAM,CAAC;AA8EjC,MAAM,aAAa,GAAiB;IAClC,oBAAoB,EAAE,2BAA2B;IACjD,gBAAgB,EAAE,uBAAuB;IACzC,aAAa,EAAE,iBAAiB;IAChC,gBAAgB,EAAE,uBAAuB;IACzC,mBAAmB,EAAE,0BAA0B;IAC/C,kBAAkB,EAAE,yBAAyB;IAC7C,kBAAkB,EAAE,yBAAyB;IAC7C,SAAS,EAAE,eAAe;IAC1B,aAAa;IACb,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;SACzB,WAAW,CAAC,gEAAgE,CAAC;SAC7E,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAuB,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC;QAC9C,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YACpB,SAAS,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACP,CAAC;AAWD;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAAC,GAAG,UAAU,IAAI,CAAC,GAAG,sBAAsB,IAAI,CAAC,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;AAE1G;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAuB;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAoB;IAClD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAQ,EAAE;QACjC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,0EAA0E;IAC1E,sEAAsE;IACtE,8EAA8E;IAC9E,6EAA6E;IAC7E,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAG,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1B,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACnD,sBAAsB,CAAC,GAAG,EAAE;YAC1B,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,aAAa;YACb,QAAQ;SACT,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;IACrD,CAAC;IAED,2EAA2E;IAC3E,uEAAuE;IACvE,yEAAyE;IACzE,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,4EAA4E;IAC5E,iDAAiD;IACjD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAEnD,+BAA+B;IAC/B,0EAA0E;IAC1E,2EAA2E;IAC3E,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,iBAAiB,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACtF,GAAG,CACD,kBAAkB,WAAW,UAAU;QACrC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACpD,CAAC;IACF,IAAI,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5E,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,qEAAqE;QACrE,sEAAsE;QACtE,gEAAgE;QAChE,0CAA0C;QAC1C,GAAG,CAAC,0DAA0D,CAAC,CAAC;QAChE,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,GAAG,CAAC,EAAE,CAAC,CAAC;QACR,GAAG,CAAC,wCAAwC,CAAC,CAAC;QAC9C,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAChD,GAAG,CAAC,gDAAgD,iBAAiB,EAAE,CAAC,CAAC;QACzE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAChD,CAAC;IACD,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAElC,0DAA0D;IAC1D,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,uEAAuE;IACvE,yEAAyE;IACzE,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;IACzD,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACpD,qBAAqB,CAAC,GAAG,EAAE;YACzB,QAAQ;YACR,aAAa;YACb,MAAM;YACN,aAAa;YACb,SAAS;YACT,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACnD,CAAC;IACD,GAAG,CAAC,sBAAsB,aAAa,iCAAiC,CAAC,CAAC;IAE1E,mCAAmC;IACnC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;IACtC,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACzB,GAAG,CAAC,EAAE,CAAC,CAAC;QACR,GAAG,CAAC,2DAA2D,CAAC,CAAC;QACjE,IAAI,IAAI,CAAC,IAAI;YAAE,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAC/D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IACtD,CAAC;IACD,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAE/B,mCAAmC;IACnC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC;QACxC,OAAO,EAAE,eAAe;QACxB,SAAS,EAAE,iBAAiB;KAC7B,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,GAAG,CAAC,EAAE,CAAC,CAAC;QACR,GAAG,CAAC,0EAA0E,CAAC,CAAC;QAChF,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5B,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACjC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACnD,CAAC;IACD,GAAG,CAAC,8BAA8B,MAAM,CAAC,aAAa,KAAK,CAAC,CAAC;IAE7D,8DAA8D;IAC9D,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,yEAAyE;IACzE,yEAAyE;IACzE,gDAAgD;IAChD,GAAG,CAAC,qDAAqD,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACtD,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;QACtB,2BAA2B,CAAC,GAAG,EAAE;YAC/B,QAAQ;YACR,aAAa;YACb,aAAa;YACb,QAAQ,EAAE,aAAa,CAAC,QAAQ;SACjC,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;IAC1D,CAAC;IACD,GAAG,CAAC,0BAA0B,aAAa,GAAG,CAAC,CAAC;IAEhD,8CAA8C;IAC9C,2EAA2E;IAC3E,0EAA0E;IAC1E,8EAA8E;IAC9E,GAAG,CAAC,kCAAkC,CAAC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,GAAG,CAAC,yBAAyB,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,GAAG,CAAC,6DAA6D,CAAC,CAAC;QACrE,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzB,GAAG,CACD,IAAI,CAAC,gBAAgB;gBACnB,CAAC,CAAC,qEAAqE;gBACvE,CAAC,CAAC,0EAA0E,CAC/E,CAAC;YACF,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,+BAA+B,CAAC,CAAC;QACrC,GAAG,CAAC,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,6DAA6D,CAAC,CAAC;IACnE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAClC,CAAC;AAID;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAuB,EACvB,aAA4B;IAE5B,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC9D,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAC1D,IAAI,aAAa,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IACzE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC5B,GAA2B,EAC3B,GAOC;IAED,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,GACzE,GAAG,CAAC;IAEN,6EAA6E;IAC7E,MAAM,mBAAmB,GAAG,aAAa,IAAI,SAAS,CAAC;IACvD,4EAA4E;IAC5E,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,WAAW,GACf,MAAM,KAAK,UAAU;QACrB,aAAa,KAAK,IAAI;QACtB,MAAM,CAAC,OAAO,KAAK,IAAI;QACvB,SAAS,KAAK,IAAI;QAClB,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAErD,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,GAAG,CAAC,+DAA+D,CAAC,CAAC;IACvE,CAAC;SAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QACnC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAC7E,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,GAAG,CAAC,wEAAwE,CAAC,CAAC;IAChF,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAC7E,CAAC;IAED,2EAA2E;IAC3E,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,IAAI,QAAQ;QAAE,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;;QAC5D,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAChF,GAAG,CAAC,mCAAmC,aAAa,IAAI,SAAS,EAAE,CAAC,CAAC;IACrE,IAAI,MAAM,CAAC,OAAO;QAAE,GAAG,CAAC,mCAAmC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7E,IAAI,mBAAmB,EAAE,CAAC;QACxB,GAAG,CAAC,mCAAmC,mBAAmB,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,mCAAmC,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,YAAY;IACZ,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,GAAG,CAAC,gEAAgE,CAAC,CAAC;QACtE,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAC/D,GAAG,CAAC,gBAAgB,aAAa,yBAAyB,CAAC,CAAC;QAC5D,GAAG,CAAC,8DAA8D,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtE,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAC/D,IAAI,YAAY,EAAE,CAAC;YACjB,GAAG,CAAC,+BAA+B,YAAY,oBAAoB,aAAa,EAAE,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,sCAAsC,aAAa,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,yEAAyE;QACzE,GAAG,CAAC,iEAAiE,CAAC,CAAC;QACvE,GAAG,CAAC,uCAAuC,aAAa,EAAE,CAAC,CAAC;QAC5D,GAAG,CAAC,wEAAwE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC7B,GAA2B,EAC3B,GAIC;IAED,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;IAClD,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAC3E,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,uEAAuE,CAAC,CAAC;IAC7E,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAC3E,GAAG,CAAC,kEAAkE,CAAC,CAAC;IACxE,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC1B,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,IAAI,QAAQ;QAAE,GAAG,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;IACnD,IAAI,aAAa;QAAE,GAAG,CAAC,qBAAqB,aAAa,EAAE,CAAC,CAAC;IAC7D,IAAI,QAAQ;QAAE,GAAG,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;IACnD,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,yEAAyE,CAAC,CAAC;IAC/E,GAAG,CAAC,iDAAiD,CAAC,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,SAAS,2BAA2B,CAClC,GAA2B,EAC3B,GAKC;IAED,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;IACjE,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,sEAAsE,CAAC,CAAC;IAC5E,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACzC,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,IAAI,QAAQ;QAAE,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;;QAC5D,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAChF,GAAG,CAAC,mCAAmC,aAAa,IAAI,SAAS,EAAE,CAAC,CAAC;IACrE,GAAG,CAAC,mCAAmC,aAAa,IAAI,aAAa,EAAE,CAAC,CAAC;IACzE,IAAI,QAAQ;QAAE,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IACjE,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACzE,GAAG,CAAC,uEAAuE,CAAC,CAAC;IAC7E,GAAG,CAAC,4DAA4D,CAAC,CAAC;AACpE,CAAC;AAED,gFAAgF;AAChF,SAAS,sBAAsB,CAAC,OAAe,EAAE,MAAc;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;IACnD,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,SAAS,eAAe,CAAC,OAAsB;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,2BAA2B;IACxC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CACrB,EAAE,CAAC,OAAO,EAAE,EACZ,SAAS,EACT,cAAc,EACd,GAAG,kBAAkB,QAAQ,CAC9B,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,yBAAyB,EAAE;QACxD,IAAI;QACJ,2BAA2B;QAC3B,KAAK;KACN,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,wEAAwE;AACxE,KAAK,UAAU,uBAAuB;IACpC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,eAAe,UAAU,EAAE;gBAC9C,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA0B,CAAC;QACzD,OAAO,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAY,EACZ,OAAgB,EAChB,MAAsB;IAEtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,0EAA0E;QAC1E,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3E,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACrD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yEAAyE;AACzE,SAAS,OAAO,CAAC,GAAW,EAAE,IAAc;IAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,QAAQ,CACN,GAAG,EACH,IAAI,EACJ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EACrC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,uBAAuB;IACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACrD,4EAA4E;IAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC;AAED,iEAAiE;AACjE,KAAK,UAAU,0BAA0B;IACvC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,uEAAuE;IACvE,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB;IAChC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,iDAAiD;AACjD,SAAS,yBAAyB;IAChC,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8BpC,wBAAgB,aAAa,IAAI,OAAO,CAqCvC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgCpC,wBAAgB,aAAa,IAAI,OAAO,CAuCvC"}
@@ -16,8 +16,10 @@ import { makeCompactCommand } from "./commands/compact.js";
16
16
  import { makeReindexCommand } from "./commands/reindex.js";
17
17
  import { makeReconcileCommand } from "./commands/reconcile.js";
18
18
  import { makeRebuildCommand } from "./commands/rebuild.js";
19
+ import { makeChunkBackfillCommand } from "./commands/chunk-backfill.js";
19
20
  import { makeBulkIngestCommand } from "./commands/bulk-ingest.js";
20
21
  import { makeCaptureCommand } from "./commands/capture.js";
22
+ import { makeCursorProbeCommand } from "./commands/cursor-probe.js";
21
23
  import { makeReviewCommand } from "./commands/review.js";
22
24
  import { makeBackfillCommand } from "./commands/backfill.js";
23
25
  import { makeTriageCommand } from "./commands/triage.js";
@@ -49,8 +51,10 @@ export function createProgram() {
49
51
  program.addCommand(makeReindexCommand());
50
52
  program.addCommand(makeReconcileCommand());
51
53
  program.addCommand(makeRebuildCommand());
54
+ program.addCommand(makeChunkBackfillCommand());
52
55
  program.addCommand(makeBulkIngestCommand());
53
56
  program.addCommand(makeCaptureCommand());
57
+ program.addCommand(makeCursorProbeCommand());
54
58
  program.addCommand(makeReviewCommand());
55
59
  program.addCommand(makeBackfillCommand());
56
60
  program.addCommand(makeTriageCommand());
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,16 @@ export interface RenderHeaderInput {
32
32
  swiftBar?: {
33
33
  installed: boolean;
34
34
  } | null;
35
+ /**
36
+ * Local AI desktop apps detected on the friend's Mac (CLI-side, like
37
+ * `mcpClients`/`swiftBar`). Drives an honest "those app chats aren't
38
+ * auto-captured" line. Optional/absent → no line (older callers, non-macOS, or
39
+ * none installed), so users without these apps get no extra noise.
40
+ */
41
+ localAiApps?: {
42
+ claudeDesktop: boolean;
43
+ chatgptApp: boolean;
44
+ } | null;
35
45
  /** Clock injection for tests; defaults to Date.now(). */
36
46
  now?: () => number;
37
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"friend-header.d.ts","sourceRoot":"","sources":["../../../../src/cli/status/friend-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EACV,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAG9C,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,yEAAyE;IACzE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qDAAqD;IACrD,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAyFrE;AAgXD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,sBAAsB,GAAG,SAAS,EAC9C,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,IAAI,CAef;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUtD"}
1
+ {"version":3,"file":"friend-header.d.ts","sourceRoot":"","sources":["../../../../src/cli/status/friend-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EACV,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAG9C,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,yEAAyE;IACzE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qDAAqD;IACrD,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC;;;;;OAKG;IACH,WAAW,CAAC,EAAE;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACrE,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAmGrE;AA+dD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,sBAAsB,GAAG,SAAS,EAC9C,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,IAAI,CAef;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUtD"}
@@ -40,6 +40,17 @@ export function renderFriendHeader(input) {
40
40
  const automaticCaptureLine = renderAutomaticCaptureLine(status.capture, now, daemonCaptureStale);
41
41
  if (automaticCaptureLine)
42
42
  lines.push(automaticCaptureLine);
43
+ const cursorLine = renderCursorLine(status.capture);
44
+ if (cursorLine)
45
+ lines.push(cursorLine);
46
+ // 6b. local AI apps — honest source-coverage boundary. Rift auto-captures the
47
+ // CLI agents (Claude Code, Codex CLI); the desktop/web chat apps keep
48
+ // their history server-side, so those chats need export → rift import.
49
+ // Shown ONLY when such an app is actually installed, so the line targets
50
+ // the users who would otherwise assume "auto-capture" covers everything.
51
+ const localAiAppsLine = renderLocalAiAppsLine(input.localAiApps);
52
+ if (localAiAppsLine)
53
+ lines.push(localAiAppsLine);
43
54
  // 7. MCP
44
55
  lines.push(renderMcpLine(input.mcpClients));
45
56
  // 7b. menu bar — only when probed (macOS) AND SwiftBar is absent. The plugin
@@ -184,6 +195,11 @@ function renderInboxLine(inbox, now) {
184
195
  return `Inbox: ${head}${errorSuffix}`;
185
196
  }
186
197
  function renderCodexLine(codex, now) {
198
+ // Claude-Code triage worker: a wholly separate label + remedy set. The Codex
199
+ // copy below is left byte-for-byte unchanged.
200
+ if (codex.last_preflight_worker === "claude") {
201
+ return renderClaudeLine(codex, now);
202
+ }
187
203
  if (codex.last_preflight_at === null) {
188
204
  return "Codex CLI: not checked yet — auto-capture has not run";
189
205
  }
@@ -198,6 +214,34 @@ function renderCodexLine(codex, now) {
198
214
  const summary = codex.last_preflight_error_summary ?? "Codex preflight failed.";
199
215
  return `Codex CLI: probe failing ✗ (${checked}) — ${summary}`;
200
216
  }
217
+ /**
218
+ * Claude-Code triage worker status line — the `claude_code` analogue of the
219
+ * Codex line. Remedies are Claude-shaped (sign into `claude`, upgrade an old
220
+ * CLI, point past a wrapper), never "codex login".
221
+ */
222
+ function renderClaudeLine(codex, now) {
223
+ if (codex.last_preflight_at === null) {
224
+ return "Claude Code: not checked yet — auto-capture has not run";
225
+ }
226
+ if (codex.last_preflight_ok === true) {
227
+ return `Claude Code: ready ✓ (last checked: ${formatAge(codex.last_preflight_at, now)})`;
228
+ }
229
+ const checked = `last checked: ${formatAge(codex.last_preflight_at, now)}`;
230
+ switch (codex.last_preflight_error_class) {
231
+ case "auth":
232
+ return `Claude Code: signed out ✗ (${checked}) — run: claude (sign in)`;
233
+ case "missing":
234
+ return `Claude Code: not found ✗ (${checked}) — install claude or set RIFT_CLAUDE_CLI_PATH`;
235
+ case "incompatible":
236
+ return `Claude Code: too old ✗ (${checked}) — upgrade claude (needs --safe-mode)`;
237
+ case "wrapper":
238
+ return `Claude Code: wrapper blocking ✗ (${checked}) — set RIFT_CLAUDE_CLI_PATH to the real claude`;
239
+ default: {
240
+ const summary = codex.last_preflight_error_summary ?? "Claude preflight failed.";
241
+ return `Claude Code: probe failing ✗ (${checked}) — ${summary}`;
242
+ }
243
+ }
244
+ }
201
245
  /**
202
246
  * True when the daemon's own scheduled loop last failed (during this
203
247
  * uptime) but the newest run is a healthy ad-hoc run (a manual `rift
@@ -264,6 +308,62 @@ function renderCaptureLine(capture, now, daemonStale) {
264
308
  const nextPart = nextSuffix ? ` · ${nextSuffix}` : "";
265
309
  return `Capture: ${runLabel} ${age} — ${capture.last_saved} saved · ${capture.last_review} review · ${capture.last_errors} failed${parkedSuffix}${nextPart}`;
266
310
  }
311
+ /**
312
+ * Native-Cursor capture line. Honest states for an explicit opt-in:
313
+ * - not installed AND not scheduled → omit (return null); never advertise a
314
+ * tool the user doesn't have.
315
+ * - scheduled but the store is missing/unreadable (file probe) → WARN.
316
+ * - scheduled, store readable, but the last discovery RUN failed to read it
317
+ * (e.g. `sqlite3` missing / corrupt query — invisible to the file probe)
318
+ * → WARN. The opt-in (cursor_composer in capture.sources) must never read
319
+ * as "capture on" while capture physically can't run; that would silently
320
+ * swallow the one thing the user asked for.
321
+ * - installed but not scheduled → offer the opt-in.
322
+ * - scheduled, readable, and no observed discovery failure → on.
323
+ * Returns null for a pre-this-slice payload that omits the `cursor` block.
324
+ */
325
+ function renderCursorLine(capture) {
326
+ const cursor = capture.cursor;
327
+ if (!cursor)
328
+ return null;
329
+ if (cursor.scheduled) {
330
+ if (!cursor.available) {
331
+ return "Cursor: scheduled but no readable Cursor store found — capture can't run (is Cursor installed?)";
332
+ }
333
+ // File is readable, but the last run that actually read the store failed —
334
+ // the store is present yet Rift can't parse it (commonly: no `sqlite3` on
335
+ // PATH). Warn instead of claiming the schedule is working.
336
+ if (cursor.last_discovery_ok === false) {
337
+ return "Cursor: scheduled but Rift couldn't read your Cursor sessions last run — capture isn't working (try: rift doctor)";
338
+ }
339
+ return "Cursor: capture on — native Cursor sessions are captured on the schedule";
340
+ }
341
+ // Not scheduled: only advertise the opt-in when Cursor is actually present.
342
+ if (!cursor.available)
343
+ return null;
344
+ return "Cursor: available — add cursor_composer to capture.sources to capture your Cursor sessions";
345
+ }
346
+ /**
347
+ * Honest source-coverage line. Rift auto-captures the CLI agents (Claude Code,
348
+ * Codex CLI); the Claude/ChatGPT DESKTOP and web apps keep their chat history
349
+ * server-side, so those conversations are NOT auto-captured — they need an
350
+ * export → `rift import`. Rendered only when such an app is actually installed,
351
+ * so it sets the right expectation for exactly the users who would assume
352
+ * "auto-capture" already covers them, and stays silent for everyone else.
353
+ */
354
+ function renderLocalAiAppsLine(apps) {
355
+ if (!apps)
356
+ return null;
357
+ const names = [];
358
+ if (apps.claudeDesktop)
359
+ names.push("Claude Desktop");
360
+ if (apps.chatgptApp)
361
+ names.push("ChatGPT");
362
+ if (names.length === 0)
363
+ return null;
364
+ const possessive = names.length === 1 ? "its" : "their";
365
+ return `App chats: ${names.join(" + ")} installed — ${possessive} chats aren't auto-captured; export → rift import`;
366
+ }
267
367
  /**
268
368
  * The "Automatic:" advisory line — shown only when `isDaemonCaptureStale`
269
369
  * holds (the scheduled loop's last run failed while a manual run is
@@ -318,12 +418,29 @@ function decideNextLine(input) {
318
418
  return "Auto-capture is on but has no Voyage key to embed with → run: rift onboard --reconfigure-voyage";
319
419
  }
320
420
  if (status.codex.last_preflight_ok === false) {
421
+ if (status.codex.last_preflight_worker === "claude") {
422
+ switch (status.codex.last_preflight_error_class) {
423
+ case "auth":
424
+ return "Claude Code signed out → run: claude (sign in), then: rift capture";
425
+ case "missing":
426
+ return "Claude Code CLI not found → install claude or set RIFT_CLAUDE_CLI_PATH, then: rift capture";
427
+ case "incompatible":
428
+ return "Claude Code CLI too old → upgrade claude (needs --safe-mode), then: rift capture";
429
+ case "wrapper":
430
+ return "A wrapper is intercepting claude → set RIFT_CLAUDE_CLI_PATH to the real binary, then: rift capture";
431
+ default:
432
+ return "Claude capture probe failing → re-run: rift capture";
433
+ }
434
+ }
321
435
  if (status.codex.last_preflight_error_class === "auth") {
322
436
  return "Codex auth expired → run: codex login";
323
437
  }
324
438
  if (status.codex.last_preflight_error_class === "model") {
325
439
  return "Codex rejected the model → set codex_cli.model, then: rift capture";
326
440
  }
441
+ if (status.codex.last_preflight_error_class === "cli_incompatible") {
442
+ return "Codex CLI too old → upgrade Codex, then: rift capture";
443
+ }
327
444
  if (status.codex.last_preflight_error_class === "binary") {
328
445
  return "Codex CLI missing or moved → reinstall/upgrade codex, then: rift capture";
329
446
  }