@getrift/rift 0.1.0-beta.21 → 0.1.0-beta.23
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.
- package/README.md +7 -3
- package/dist/src/capture/auto-capture.d.ts +105 -4
- package/dist/src/capture/auto-capture.d.ts.map +1 -1
- package/dist/src/capture/auto-capture.js +313 -34
- package/dist/src/capture/auto-capture.js.map +1 -1
- package/dist/src/capture/claude-cli-triage-provider.d.ts +28 -0
- package/dist/src/capture/claude-cli-triage-provider.d.ts.map +1 -0
- package/dist/src/capture/claude-cli-triage-provider.js +88 -0
- package/dist/src/capture/claude-cli-triage-provider.js.map +1 -0
- package/dist/src/capture/codex-cli-triage-provider.d.ts.map +1 -1
- package/dist/src/capture/codex-cli-triage-provider.js +1 -33
- package/dist/src/capture/codex-cli-triage-provider.js.map +1 -1
- package/dist/src/capture/cursor-capture.d.ts +89 -0
- package/dist/src/capture/cursor-capture.d.ts.map +1 -0
- package/dist/src/capture/cursor-capture.js +121 -0
- package/dist/src/capture/cursor-capture.js.map +1 -0
- package/dist/src/capture/observability.d.ts +30 -0
- package/dist/src/capture/observability.d.ts.map +1 -1
- package/dist/src/capture/observability.js +29 -0
- package/dist/src/capture/observability.js.map +1 -1
- package/dist/src/capture/recover-quarantine.d.ts +4 -4
- package/dist/src/capture/sources.d.ts +41 -3
- package/dist/src/capture/sources.d.ts.map +1 -1
- package/dist/src/capture/sources.js +43 -1
- package/dist/src/capture/sources.js.map +1 -1
- package/dist/src/capture/triage-classification.d.ts +69 -0
- package/dist/src/capture/triage-classification.d.ts.map +1 -0
- package/dist/src/capture/triage-classification.js +62 -0
- package/dist/src/capture/triage-classification.js.map +1 -0
- package/dist/src/capture/triage-provider-factory.d.ts +36 -0
- package/dist/src/capture/triage-provider-factory.d.ts.map +1 -0
- package/dist/src/capture/triage-provider-factory.js +55 -0
- package/dist/src/capture/triage-provider-factory.js.map +1 -0
- package/dist/src/capture/triage.d.ts +1 -1
- package/dist/src/capture/triage.d.ts.map +1 -1
- package/dist/src/capture/triage.js +8 -6
- package/dist/src/capture/triage.js.map +1 -1
- package/dist/src/cli/commands/capture.d.ts.map +1 -1
- package/dist/src/cli/commands/capture.js +79 -17
- package/dist/src/cli/commands/capture.js.map +1 -1
- package/dist/src/cli/commands/chunk-backfill.d.ts +13 -0
- package/dist/src/cli/commands/chunk-backfill.d.ts.map +1 -0
- package/dist/src/cli/commands/chunk-backfill.js +157 -0
- package/dist/src/cli/commands/chunk-backfill.js.map +1 -0
- package/dist/src/cli/commands/cursor-probe.d.ts +20 -0
- package/dist/src/cli/commands/cursor-probe.d.ts.map +1 -0
- package/dist/src/cli/commands/cursor-probe.js +162 -0
- package/dist/src/cli/commands/cursor-probe.js.map +1 -0
- package/dist/src/cli/commands/menubar.d.ts +3 -1
- package/dist/src/cli/commands/menubar.d.ts.map +1 -1
- package/dist/src/cli/commands/menubar.js +36 -12
- package/dist/src/cli/commands/menubar.js.map +1 -1
- package/dist/src/cli/commands/onboard.d.ts +22 -2
- package/dist/src/cli/commands/onboard.d.ts.map +1 -1
- package/dist/src/cli/commands/onboard.js +160 -32
- package/dist/src/cli/commands/onboard.js.map +1 -1
- package/dist/src/cli/commands/status.d.ts.map +1 -1
- package/dist/src/cli/commands/status.js +12 -0
- package/dist/src/cli/commands/status.js.map +1 -1
- package/dist/src/cli/commands/update.d.ts +34 -1
- package/dist/src/cli/commands/update.d.ts.map +1 -1
- package/dist/src/cli/commands/update.js +166 -1
- package/dist/src/cli/commands/update.js.map +1 -1
- package/dist/src/cli/index.d.ts.map +1 -1
- package/dist/src/cli/index.js +4 -0
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/postinstall-menubar.d.ts +20 -13
- package/dist/src/cli/postinstall-menubar.d.ts.map +1 -1
- package/dist/src/cli/postinstall-menubar.js +56 -1
- package/dist/src/cli/postinstall-menubar.js.map +1 -1
- package/dist/src/cli/status/friend-header.d.ts +16 -3
- package/dist/src/cli/status/friend-header.d.ts.map +1 -1
- package/dist/src/cli/status/friend-header.js +186 -10
- package/dist/src/cli/status/friend-header.js.map +1 -1
- package/dist/src/cli/status/local-signals.d.ts +42 -4
- package/dist/src/cli/status/local-signals.d.ts.map +1 -1
- package/dist/src/cli/status/local-signals.js +52 -1
- package/dist/src/cli/status/local-signals.js.map +1 -1
- package/dist/src/config/schema.d.ts +220 -14
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +82 -7
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/diagnostics/claude-preflight.d.ts +35 -0
- package/dist/src/diagnostics/claude-preflight.d.ts.map +1 -0
- package/dist/src/diagnostics/claude-preflight.js +90 -0
- package/dist/src/diagnostics/claude-preflight.js.map +1 -0
- package/dist/src/diagnostics/codex-preflight.d.ts +1 -1
- package/dist/src/diagnostics/codex-preflight.d.ts.map +1 -1
- package/dist/src/diagnostics/codex-preflight.js +24 -0
- package/dist/src/diagnostics/codex-preflight.js.map +1 -1
- package/dist/src/diagnostics/doctor.d.ts +7 -4
- package/dist/src/diagnostics/doctor.d.ts.map +1 -1
- package/dist/src/diagnostics/doctor.js +70 -11
- package/dist/src/diagnostics/doctor.js.map +1 -1
- package/dist/src/diagnostics/memory-coverage.d.ts +54 -0
- package/dist/src/diagnostics/memory-coverage.d.ts.map +1 -0
- package/dist/src/diagnostics/memory-coverage.js +272 -0
- package/dist/src/diagnostics/memory-coverage.js.map +1 -0
- package/dist/src/diagnostics/notify.d.ts +20 -3
- package/dist/src/diagnostics/notify.d.ts.map +1 -1
- package/dist/src/diagnostics/notify.js +54 -14
- package/dist/src/diagnostics/notify.js.map +1 -1
- package/dist/src/ingestion/chunk-meta.d.ts +85 -0
- package/dist/src/ingestion/chunk-meta.d.ts.map +1 -0
- package/dist/src/ingestion/chunk-meta.js +167 -0
- package/dist/src/ingestion/chunk-meta.js.map +1 -0
- package/dist/src/ingestion/chunk-text.d.ts +39 -0
- package/dist/src/ingestion/chunk-text.d.ts.map +1 -0
- package/dist/src/ingestion/chunk-text.js +114 -0
- package/dist/src/ingestion/chunk-text.js.map +1 -0
- package/dist/src/ingestion/cursor/cursor-store.d.ts +177 -0
- package/dist/src/ingestion/cursor/cursor-store.d.ts.map +1 -0
- package/dist/src/ingestion/cursor/cursor-store.js +243 -0
- package/dist/src/ingestion/cursor/cursor-store.js.map +1 -0
- package/dist/src/ingestion/cursor/enrich-roots.d.ts +16 -0
- package/dist/src/ingestion/cursor/enrich-roots.d.ts.map +1 -0
- package/dist/src/ingestion/cursor/enrich-roots.js +22 -0
- package/dist/src/ingestion/cursor/enrich-roots.js.map +1 -0
- package/dist/src/ingestion/cursor/vscdb-reader.d.ts +32 -0
- package/dist/src/ingestion/cursor/vscdb-reader.d.ts.map +1 -0
- package/dist/src/ingestion/cursor/vscdb-reader.js +113 -0
- package/dist/src/ingestion/cursor/vscdb-reader.js.map +1 -0
- package/dist/src/ingestion/cursor/workspace-root.d.ts +96 -0
- package/dist/src/ingestion/cursor/workspace-root.d.ts.map +1 -0
- package/dist/src/ingestion/cursor/workspace-root.js +187 -0
- package/dist/src/ingestion/cursor/workspace-root.js.map +1 -0
- package/dist/src/ingestion/indexer.d.ts.map +1 -1
- package/dist/src/ingestion/indexer.js +41 -32
- package/dist/src/ingestion/indexer.js.map +1 -1
- package/dist/src/jobs/handlers/compact.d.ts.map +1 -1
- package/dist/src/jobs/handlers/compact.js +9 -4
- package/dist/src/jobs/handlers/compact.js.map +1 -1
- package/dist/src/jobs/handlers/ingest.d.ts.map +1 -1
- package/dist/src/jobs/handlers/ingest.js +60 -30
- package/dist/src/jobs/handlers/ingest.js.map +1 -1
- package/dist/src/jobs/handlers/reconcile.d.ts.map +1 -1
- package/dist/src/jobs/handlers/reconcile.js +128 -45
- package/dist/src/jobs/handlers/reconcile.js.map +1 -1
- package/dist/src/jobs/handlers/save.d.ts.map +1 -1
- package/dist/src/jobs/handlers/save.js +122 -72
- package/dist/src/jobs/handlers/save.js.map +1 -1
- package/dist/src/jobs/types.d.ts +1 -1
- package/dist/src/main.js +27 -16
- package/dist/src/main.js.map +1 -1
- package/dist/src/mcp/capture-diagnostics.d.ts +51 -0
- package/dist/src/mcp/capture-diagnostics.d.ts.map +1 -0
- package/dist/src/mcp/capture-diagnostics.js +127 -0
- package/dist/src/mcp/capture-diagnostics.js.map +1 -0
- package/dist/src/mcp/memory-diagnostics.d.ts +6 -0
- package/dist/src/mcp/memory-diagnostics.d.ts.map +1 -0
- package/dist/src/mcp/memory-diagnostics.js +51 -0
- package/dist/src/mcp/memory-diagnostics.js.map +1 -0
- package/dist/src/mcp/server.d.ts.map +1 -1
- package/dist/src/mcp/server.js +10 -3
- package/dist/src/mcp/server.js.map +1 -1
- package/dist/src/mcp/tools/context-pack.d.ts.map +1 -1
- package/dist/src/mcp/tools/context-pack.js +7 -1
- package/dist/src/mcp/tools/context-pack.js.map +1 -1
- package/dist/src/mcp/tools/conversations-search.d.ts +1 -1
- package/dist/src/mcp/tools/conversations-search.d.ts.map +1 -1
- package/dist/src/mcp/tools/conversations-search.js +7 -1
- package/dist/src/mcp/tools/conversations-search.js.map +1 -1
- package/dist/src/mcp/tools/evidence-feedback.d.ts +60 -0
- package/dist/src/mcp/tools/evidence-feedback.d.ts.map +1 -0
- package/dist/src/mcp/tools/evidence-feedback.js +62 -0
- package/dist/src/mcp/tools/evidence-feedback.js.map +1 -0
- package/dist/src/mcp/tools/log-outcome.d.ts +72 -0
- package/dist/src/mcp/tools/log-outcome.d.ts.map +1 -0
- package/dist/src/mcp/tools/log-outcome.js +59 -0
- package/dist/src/mcp/tools/log-outcome.js.map +1 -0
- package/dist/src/mcp/tools/open-evidence.d.ts +37 -0
- package/dist/src/mcp/tools/open-evidence.d.ts.map +1 -0
- package/dist/src/mcp/tools/open-evidence.js +72 -0
- package/dist/src/mcp/tools/open-evidence.js.map +1 -0
- package/dist/src/mcp/tools/save.d.ts +7 -2
- package/dist/src/mcp/tools/save.d.ts.map +1 -1
- package/dist/src/mcp/tools/save.js +7 -2
- package/dist/src/mcp/tools/save.js.map +1 -1
- package/dist/src/mcp/tools/search.d.ts.map +1 -1
- package/dist/src/mcp/tools/search.js +7 -1
- package/dist/src/mcp/tools/search.js.map +1 -1
- package/dist/src/mcp/tools/status.d.ts +15 -1
- package/dist/src/mcp/tools/status.d.ts.map +1 -1
- package/dist/src/mcp/tools/status.js +53 -2
- package/dist/src/mcp/tools/status.js.map +1 -1
- package/dist/src/observability/retrieval-feedback.d.ts +82 -0
- package/dist/src/observability/retrieval-feedback.d.ts.map +1 -0
- package/dist/src/observability/retrieval-feedback.js +231 -0
- package/dist/src/observability/retrieval-feedback.js.map +1 -0
- package/dist/src/observability/rift-context.d.ts.map +1 -1
- package/dist/src/observability/rift-context.js +3 -0
- package/dist/src/observability/rift-context.js.map +1 -1
- package/dist/src/observability/tool-usage-stats.d.ts +13 -0
- package/dist/src/observability/tool-usage-stats.d.ts.map +1 -1
- package/dist/src/observability/tool-usage-stats.js +15 -0
- package/dist/src/observability/tool-usage-stats.js.map +1 -1
- package/dist/src/observability/tool-usage.d.ts +56 -0
- package/dist/src/observability/tool-usage.d.ts.map +1 -1
- package/dist/src/observability/tool-usage.js +86 -0
- package/dist/src/observability/tool-usage.js.map +1 -1
- package/dist/src/providers/claude-cli-metadata-extraction.d.ts +47 -0
- package/dist/src/providers/claude-cli-metadata-extraction.d.ts.map +1 -0
- package/dist/src/providers/claude-cli-metadata-extraction.js +120 -0
- package/dist/src/providers/claude-cli-metadata-extraction.js.map +1 -0
- package/dist/src/providers/claude-cli-runner.d.ts +92 -0
- package/dist/src/providers/claude-cli-runner.d.ts.map +1 -0
- package/dist/src/providers/claude-cli-runner.js +598 -0
- package/dist/src/providers/claude-cli-runner.js.map +1 -0
- package/dist/src/providers/codex-cli-metadata-extraction.d.ts.map +1 -1
- package/dist/src/providers/codex-cli-metadata-extraction.js +1 -40
- package/dist/src/providers/codex-cli-metadata-extraction.js.map +1 -1
- package/dist/src/providers/codex-cli-runner.d.ts +7 -0
- package/dist/src/providers/codex-cli-runner.d.ts.map +1 -1
- package/dist/src/providers/codex-cli-runner.js +131 -5
- package/dist/src/providers/codex-cli-runner.js.map +1 -1
- package/dist/src/providers/conversation-generation.d.ts +10 -0
- package/dist/src/providers/conversation-generation.d.ts.map +1 -1
- package/dist/src/providers/conversation-generation.js +54 -13
- package/dist/src/providers/conversation-generation.js.map +1 -1
- package/dist/src/providers/openai-metadata-extraction.d.ts +48 -1
- package/dist/src/providers/openai-metadata-extraction.d.ts.map +1 -1
- package/dist/src/providers/openai-metadata-extraction.js +51 -2
- package/dist/src/providers/openai-metadata-extraction.js.map +1 -1
- package/dist/src/providers/types.d.ts +1 -1
- package/dist/src/providers/types.d.ts.map +1 -1
- package/dist/src/providers/types.js +4 -0
- package/dist/src/providers/types.js.map +1 -1
- package/dist/src/retrieval/canonical-files.d.ts +48 -0
- package/dist/src/retrieval/canonical-files.d.ts.map +1 -0
- package/dist/src/retrieval/canonical-files.js +210 -0
- package/dist/src/retrieval/canonical-files.js.map +1 -0
- package/dist/src/retrieval/compact.d.ts +95 -0
- package/dist/src/retrieval/compact.d.ts.map +1 -1
- package/dist/src/retrieval/compact.js +254 -8
- package/dist/src/retrieval/compact.js.map +1 -1
- package/dist/src/retrieval/context-pack.d.ts.map +1 -1
- package/dist/src/retrieval/context-pack.js +65 -15
- package/dist/src/retrieval/context-pack.js.map +1 -1
- package/dist/src/retrieval/conversation-dedup.d.ts +40 -0
- package/dist/src/retrieval/conversation-dedup.d.ts.map +1 -0
- package/dist/src/retrieval/conversation-dedup.js +141 -0
- package/dist/src/retrieval/conversation-dedup.js.map +1 -0
- package/dist/src/retrieval/evidence-key.d.ts +48 -0
- package/dist/src/retrieval/evidence-key.d.ts.map +1 -0
- package/dist/src/retrieval/evidence-key.js +131 -0
- package/dist/src/retrieval/evidence-key.js.map +1 -0
- package/dist/src/retrieval/feedback-ranking.d.ts +49 -0
- package/dist/src/retrieval/feedback-ranking.d.ts.map +1 -0
- package/dist/src/retrieval/feedback-ranking.js +138 -0
- package/dist/src/retrieval/feedback-ranking.js.map +1 -0
- package/dist/src/retrieval/git-state.d.ts +9 -0
- package/dist/src/retrieval/git-state.d.ts.map +1 -1
- package/dist/src/retrieval/git-state.js +18 -0
- package/dist/src/retrieval/git-state.js.map +1 -1
- package/dist/src/retrieval/group-by-parent.d.ts +38 -0
- package/dist/src/retrieval/group-by-parent.d.ts.map +1 -0
- package/dist/src/retrieval/group-by-parent.js +40 -0
- package/dist/src/retrieval/group-by-parent.js.map +1 -0
- package/dist/src/retrieval/lexical.d.ts.map +1 -1
- package/dist/src/retrieval/lexical.js +1 -3
- package/dist/src/retrieval/lexical.js.map +1 -1
- package/dist/src/retrieval/receipt.d.ts +57 -0
- package/dist/src/retrieval/receipt.d.ts.map +1 -0
- package/dist/src/retrieval/receipt.js +119 -0
- package/dist/src/retrieval/receipt.js.map +1 -0
- package/dist/src/retrieval/reranker.d.ts +49 -2
- package/dist/src/retrieval/reranker.d.ts.map +1 -1
- package/dist/src/retrieval/reranker.js +64 -4
- package/dist/src/retrieval/reranker.js.map +1 -1
- package/dist/src/retrieval/stitch-chunks.d.ts +73 -0
- package/dist/src/retrieval/stitch-chunks.d.ts.map +1 -0
- package/dist/src/retrieval/stitch-chunks.js +106 -0
- package/dist/src/retrieval/stitch-chunks.js.map +1 -0
- package/dist/src/server/app.d.ts +1 -1
- package/dist/src/server/app.d.ts.map +1 -1
- package/dist/src/server/app.js +20 -3
- package/dist/src/server/app.js.map +1 -1
- package/dist/src/server/routes/conversations-search.d.ts.map +1 -1
- package/dist/src/server/routes/conversations-search.js +22 -3
- package/dist/src/server/routes/conversations-search.js.map +1 -1
- package/dist/src/server/routes/friend-status.d.ts +64 -6
- package/dist/src/server/routes/friend-status.d.ts.map +1 -1
- package/dist/src/server/routes/friend-status.js +114 -18
- package/dist/src/server/routes/friend-status.js.map +1 -1
- package/dist/src/server/routes/mcp-usage.d.ts +9 -6
- package/dist/src/server/routes/mcp-usage.d.ts.map +1 -1
- package/dist/src/server/routes/mcp-usage.js.map +1 -1
- package/dist/src/server/routes/retrieval-feedback.d.ts +3 -0
- package/dist/src/server/routes/retrieval-feedback.d.ts.map +1 -0
- package/dist/src/server/routes/retrieval-feedback.js +290 -0
- package/dist/src/server/routes/retrieval-feedback.js.map +1 -0
- package/dist/src/server/routes/save.d.ts +3 -3
- package/dist/src/server/routes/save.d.ts.map +1 -1
- package/dist/src/server/routes/save.js +6 -2
- package/dist/src/server/routes/save.js.map +1 -1
- package/dist/src/server/routes/search.d.ts +1 -1
- package/dist/src/server/routes/search.d.ts.map +1 -1
- package/dist/src/server/routes/search.js +55 -8
- package/dist/src/server/routes/search.js.map +1 -1
- package/dist/src/server/serving-marker.d.ts +85 -0
- package/dist/src/server/serving-marker.d.ts.map +1 -0
- package/dist/src/server/serving-marker.js +226 -0
- package/dist/src/server/serving-marker.js.map +1 -0
- package/dist/src/storage/chunk-backfill.d.ts +39 -0
- package/dist/src/storage/chunk-backfill.d.ts.map +1 -0
- package/dist/src/storage/chunk-backfill.js +295 -0
- package/dist/src/storage/chunk-backfill.js.map +1 -0
- package/dist/src/storage/filter.d.ts +42 -0
- package/dist/src/storage/filter.d.ts.map +1 -0
- package/dist/src/storage/filter.js +70 -0
- package/dist/src/storage/filter.js.map +1 -0
- package/dist/src/storage/rebuild.d.ts.map +1 -1
- package/dist/src/storage/rebuild.js +44 -27
- package/dist/src/storage/rebuild.js.map +1 -1
- package/dist/src/storage/tables.d.ts +41 -0
- package/dist/src/storage/tables.d.ts.map +1 -1
- package/dist/src/storage/tables.js +64 -1
- package/dist/src/storage/tables.js.map +1 -1
- package/operator/swiftbar/render-menu.py +60 -18
- package/package.json +6 -4
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Capture/preflight diagnostics for the MCP `rift_status` tool.
|
|
3
|
+
*
|
|
4
|
+
* Beta.22 made the human-facing `rift status` / `rift doctor` honest about why
|
|
5
|
+
* auto-capture is failing (preflight worker, error class, leak-free summary,
|
|
6
|
+
* one next action). This module brings the SAME diagnosis to the MCP surface so
|
|
7
|
+
* an AGENT (Claude/Codex) calling `rift_status` can self-diagnose a stalled
|
|
8
|
+
* capture without a human dropping to the CLI — Yannick's exact failure mode.
|
|
9
|
+
*
|
|
10
|
+
* Two correctness guarantees, both inherited rather than re-implemented:
|
|
11
|
+
*
|
|
12
|
+
* 1. Leak-free by construction. We read only the `/status/friend` payload,
|
|
13
|
+
* whose `codex`/`capture` blocks already carry ONLY the canned
|
|
14
|
+
* `last_preflight_error_summary` (a per-class phrase — no raw stderr, no
|
|
15
|
+
* paths, no prompt/session content) and integer error COUNTS. Raw
|
|
16
|
+
* `preflight_error` text and per-session error strings never reach the
|
|
17
|
+
* payload, so they can never reach the agent through here.
|
|
18
|
+
*
|
|
19
|
+
* 2. Worker-aware copy. The `next_action` is taken from `diagnose()` — the one
|
|
20
|
+
* place that already maps worker × class to the right remedy (Codex → model
|
|
21
|
+
* pin / CLI upgrade / `codex login`; Claude → `claude` sign-in / upgrade /
|
|
22
|
+
* unwrap, never "codex login"). Surfacing it here keeps a single source of
|
|
23
|
+
* truth, so the MCP block can never drift back into Codex-shaped advice for
|
|
24
|
+
* a `claude_code` install.
|
|
25
|
+
*/
|
|
26
|
+
import { diagnose } from "../diagnostics/doctor.js";
|
|
27
|
+
/**
|
|
28
|
+
* The broken capture/preflight issues `diagnose()` can raise. We deliberately
|
|
29
|
+
* scope the MCP block to capture health — preflight + the capture run itself —
|
|
30
|
+
* and leave Voyage/index/inbox/update issues to the full CLI doctor. Each of
|
|
31
|
+
* these is `broken` severity, so any one of them means capture is down.
|
|
32
|
+
*/
|
|
33
|
+
const CAPTURE_ISSUE_KINDS = new Set([
|
|
34
|
+
"codex_auth_expired",
|
|
35
|
+
"codex_preflight_failed",
|
|
36
|
+
"claude_auth_expired",
|
|
37
|
+
"claude_preflight_failed",
|
|
38
|
+
"capture_failed",
|
|
39
|
+
]);
|
|
40
|
+
/**
|
|
41
|
+
* Build the capture diagnosis from a `/status/friend` payload. Pure: given the
|
|
42
|
+
* same payload and `now` it always returns the same object. `now` feeds the
|
|
43
|
+
* uptime gating inside `diagnose()` (a capture-run error from a prior daemon
|
|
44
|
+
* process is not reported as live), so the verdict matches what `rift doctor`
|
|
45
|
+
* would say for the same payload.
|
|
46
|
+
*/
|
|
47
|
+
export function buildCaptureDiagnostics(status, now) {
|
|
48
|
+
// Reuse the doctor's worker-aware, leak-free diagnosis. Empty local signals:
|
|
49
|
+
// the MCP server is a thin daemon client and only owns the payload-derived
|
|
50
|
+
// view; MCP-install / SwiftBar / Voyage-key local signals belong to the CLI
|
|
51
|
+
// doctor, and passing them empty means none of those issues fire here.
|
|
52
|
+
const report = diagnose({
|
|
53
|
+
status,
|
|
54
|
+
localSignals: { voyageLast4: null, mcpClients: [], swiftBar: null },
|
|
55
|
+
now,
|
|
56
|
+
});
|
|
57
|
+
const captureIssue = report.issues.find((issue) => CAPTURE_ISSUE_KINDS.has(issue.kind) && issue.severity === "broken") ?? null;
|
|
58
|
+
const codex = status.codex;
|
|
59
|
+
const preflightOk = codex.last_preflight_ok;
|
|
60
|
+
const hasData = preflightOk !== null || status.capture.last_run_at !== null;
|
|
61
|
+
const verdict = captureIssue
|
|
62
|
+
? "failing"
|
|
63
|
+
: hasData
|
|
64
|
+
? "ok"
|
|
65
|
+
: "unknown";
|
|
66
|
+
// Prefer the canned preflight summary; fall back to the issue headline for a
|
|
67
|
+
// capture-RUN failure (preflight ok, but the run hit per-session errors),
|
|
68
|
+
// which has no preflight summary of its own. Both are leak-free.
|
|
69
|
+
const summary = captureIssue
|
|
70
|
+
? (codex.last_preflight_error_summary ?? captureIssue.title)
|
|
71
|
+
: null;
|
|
72
|
+
return {
|
|
73
|
+
status: verdict,
|
|
74
|
+
worker: codex.last_preflight_worker ?? null,
|
|
75
|
+
preflight_ok: preflightOk,
|
|
76
|
+
preflight_class: codex.last_preflight_error_class ?? null,
|
|
77
|
+
summary,
|
|
78
|
+
next_action: captureIssue?.nextAction ?? null,
|
|
79
|
+
last_preflight_at: codex.last_preflight_at,
|
|
80
|
+
recent_capture_errors: status.capture.last_errors,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Render the diagnosis as a compact markdown section for the MCP text channel.
|
|
85
|
+
* Plain `Key: value` lines so a text-only agent can parse it; the same object
|
|
86
|
+
* also rides the structured channel. No emoji, no raw error text.
|
|
87
|
+
*/
|
|
88
|
+
export function renderCaptureDiagnostics(diag) {
|
|
89
|
+
const lines = ["## Auto-capture diagnostics", ""];
|
|
90
|
+
if (diag.status === "unknown") {
|
|
91
|
+
lines.push("Status: unknown — auto-capture has not run on this install yet.");
|
|
92
|
+
if (diag.worker)
|
|
93
|
+
lines.push(`Worker: ${diag.worker}`);
|
|
94
|
+
return lines.join("\n");
|
|
95
|
+
}
|
|
96
|
+
if (diag.status === "ok") {
|
|
97
|
+
lines.push("Status: ok — auto-capture preflight is healthy.");
|
|
98
|
+
if (diag.worker)
|
|
99
|
+
lines.push(`Worker: ${diag.worker}`);
|
|
100
|
+
if (diag.last_preflight_at) {
|
|
101
|
+
lines.push(`Last checked: ${diag.last_preflight_at}`);
|
|
102
|
+
}
|
|
103
|
+
lines.push(`Recent capture errors: ${diag.recent_capture_errors}`);
|
|
104
|
+
return lines.join("\n");
|
|
105
|
+
}
|
|
106
|
+
// failing
|
|
107
|
+
lines.push("Status: failing");
|
|
108
|
+
if (diag.worker)
|
|
109
|
+
lines.push(`Worker: ${diag.worker}`);
|
|
110
|
+
if (diag.preflight_ok === false) {
|
|
111
|
+
lines.push(`Preflight: failing${diag.preflight_class ? ` (${diag.preflight_class})` : ""}`);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
// Preflight passed but the capture run itself reported errors.
|
|
115
|
+
lines.push("Preflight: ok");
|
|
116
|
+
}
|
|
117
|
+
if (diag.summary)
|
|
118
|
+
lines.push(`Summary: ${diag.summary}`);
|
|
119
|
+
if (diag.next_action)
|
|
120
|
+
lines.push(`Next: ${diag.next_action}`);
|
|
121
|
+
if (diag.last_preflight_at) {
|
|
122
|
+
lines.push(`Last checked: ${diag.last_preflight_at}`);
|
|
123
|
+
}
|
|
124
|
+
lines.push(`Recent capture errors: ${diag.recent_capture_errors}`);
|
|
125
|
+
return lines.join("\n");
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=capture-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture-diagnostics.js","sourceRoot":"","sources":["../../../src/mcp/capture-diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { MemoryCoverageDiagnostics } from "../diagnostics/memory-coverage.js";
|
|
2
|
+
export declare function renderMemoryDiagnostics(diag: MemoryCoverageDiagnostics, opts?: {
|
|
3
|
+
configPath?: string | null;
|
|
4
|
+
dataDir?: string | null;
|
|
5
|
+
}): string;
|
|
6
|
+
//# sourceMappingURL=memory-diagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-diagnostics.d.ts","sourceRoot":"","sources":["../../../src/mcp/memory-diagnostics.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAkBnF,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,yBAAyB,EAC/B,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GACjE,MAAM,CAkCR"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Render the memory-coverage diagnosis for MCP `rift_status`.
|
|
3
|
+
*
|
|
4
|
+
* The daemon computes this from config + counts + capped source probes. The MCP
|
|
5
|
+
* layer only renders those curated fields; it never reads files, raw document
|
|
6
|
+
* content, or conversation text.
|
|
7
|
+
*/
|
|
8
|
+
import os from "node:os";
|
|
9
|
+
/**
|
|
10
|
+
* Replace a leading home-directory prefix with `~` so this agent-facing text
|
|
11
|
+
* never carries the user's literal username. The split-brain debugging signal
|
|
12
|
+
* (`~/Library/Application Support/...` vs `~/projects/...`) survives intact;
|
|
13
|
+
* only the username token is dropped. The auth-gated HTTP `/status/friend`
|
|
14
|
+
* payload and the local CLI keep full paths — this redaction is scoped to the
|
|
15
|
+
* MCP surface, which an agent may relay to a cloud model.
|
|
16
|
+
*/
|
|
17
|
+
function redactHome(p) {
|
|
18
|
+
const home = os.homedir();
|
|
19
|
+
if (home && (p === home || p.startsWith(`${home}/`))) {
|
|
20
|
+
return `~${p.slice(home.length)}`;
|
|
21
|
+
}
|
|
22
|
+
return p;
|
|
23
|
+
}
|
|
24
|
+
export function renderMemoryDiagnostics(diag, opts = {}) {
|
|
25
|
+
const lines = ["## Memory coverage diagnostics", ""];
|
|
26
|
+
if (opts.configPath)
|
|
27
|
+
lines.push(`Active config: ${redactHome(opts.configPath)}`);
|
|
28
|
+
if (opts.dataDir)
|
|
29
|
+
lines.push(`Data dir: ${redactHome(opts.dataDir)}`);
|
|
30
|
+
if (diag.counts) {
|
|
31
|
+
lines.push(`Counts: ${diag.counts.conversations} conversations, ${diag.counts.digests} digests, ${diag.counts.structured_docs} structured documents.`);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
lines.push("Counts: unavailable.");
|
|
35
|
+
}
|
|
36
|
+
lines.push(`Digests: ${diag.digests.summary} Provider: ${diag.digests.metadata_provider}. Compact available: ${diag.digests.compact_available ? "yes" : "no"}.`);
|
|
37
|
+
if (diag.digests.next_action) {
|
|
38
|
+
lines.push(`Digest next: ${diag.digests.next_action}`);
|
|
39
|
+
}
|
|
40
|
+
// The reachable/supported-file counts are only real when the probe ran (docs
|
|
41
|
+
// == 0). In the indexed steady state they're placeholders, so we show the
|
|
42
|
+
// summary alone rather than a misleading "0 reachable".
|
|
43
|
+
lines.push(diag.documents.probed
|
|
44
|
+
? `Documents: ${diag.documents.summary} Sources: ${diag.documents.configured_sources} configured, ${diag.documents.existing_sources} reachable, ${diag.documents.sources_with_supported_files} with supported files.`
|
|
45
|
+
: `Documents: ${diag.documents.summary}`);
|
|
46
|
+
if (diag.documents.next_action) {
|
|
47
|
+
lines.push(`Document next: ${diag.documents.next_action}`);
|
|
48
|
+
}
|
|
49
|
+
return lines.join("\n");
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=memory-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-diagnostics.js","sourceRoot":"","sources":["../../../src/mcp/memory-diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AAGzB;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,CAAS;IAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,IAAI,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAA+B,EAC/B,OAAgE,EAAE;IAElE,MAAM,KAAK,GAAa,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;IAE/D,IAAI,IAAI,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAEtE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CACR,WAAW,IAAI,CAAC,MAAM,CAAC,aAAa,mBAAmB,IAAI,CAAC,MAAM,CAAC,OAAO,aAAa,IAAI,CAAC,MAAM,CAAC,eAAe,wBAAwB,CAC3I,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI,CACR,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,iBAAiB,wBAAwB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CACrJ,CAAC;IACF,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,6EAA6E;IAC7E,0EAA0E;IAC1E,wDAAwD;IACxD,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,SAAS,CAAC,MAAM;QACnB,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,aAAa,IAAI,CAAC,SAAS,CAAC,kBAAkB,gBAAgB,IAAI,CAAC,SAAS,CAAC,gBAAgB,eAAe,IAAI,CAAC,SAAS,CAAC,4BAA4B,wBAAwB;QACrN,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAC3C,CAAC;IACF,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":";AAYA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":";AAYA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAqCpE,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAmNhF"}
|
package/dist/src/mcp/server.js
CHANGED
|
@@ -19,6 +19,9 @@ import { searchSchema, handleRiftSearch } from "./tools/search.js";
|
|
|
19
19
|
import { conversationsSearchSchema, handleRiftConversationsSearch, } from "./tools/conversations-search.js";
|
|
20
20
|
import { contextPackSchema, handleRiftContextPack, } from "./tools/context-pack.js";
|
|
21
21
|
import { handleRiftStatus } from "./tools/status.js";
|
|
22
|
+
import { openEvidenceSchema, handleRiftOpenEvidence, } from "./tools/open-evidence.js";
|
|
23
|
+
import { logOutcomeSchema, handleRiftLogOutcome, } from "./tools/log-outcome.js";
|
|
24
|
+
import { whyEvidenceSchema, forgetEvidenceFeedbackSchema, handleRiftWhyEvidence, handleRiftForgetEvidenceFeedback, } from "./tools/evidence-feedback.js";
|
|
22
25
|
import { ToolUsageLogger } from "../observability/tool-usage.js";
|
|
23
26
|
import { recordMcpRetrievalForOnboarding } from "../observability/onboarding-metric.js";
|
|
24
27
|
import { getBuildInfo } from "../server/build-info.js";
|
|
@@ -81,9 +84,13 @@ export async function createMcpServer(opts) {
|
|
|
81
84
|
});
|
|
82
85
|
// --- Tools ---
|
|
83
86
|
server.tool("rift_save", 'Save an LLM agent session to Rift. Provide source and summary (required). Optionally include domain, decisions made, key outputs, topics, and an idempotency_key to prevent duplicates. Returns a job_id (processed async).', saveSchema, async (args) => logger.wrap("rift_save", args, () => handleRiftSave(args, client)));
|
|
84
|
-
server.tool("rift_search", 'Search across all Rift memory: watched files, project docs, conversations, and digests. Use scope to narrow: "documents" for files, "conversations" for chat history, "clients" for client work, "projects" for project files. Use cwd to scope file results to the current project directory (conversations are not filtered by cwd). If cwd doesn\'t match a configured source directory, search runs across all data. Returns ranked results with relevance scores.', searchSchema, async (args) => withOnboardingRecall("rift_search", () => logger.wrap("rift_search", args, () => handleRiftSearch(args, client))));
|
|
85
|
-
server.tool("rift_conversations_search", 'Search conversation history with structured filters. Use detail="summary" for recent conversations (last 30 days + digests), detail="full" for older conversations. Filter by source, domain, intent, quality (enum values). Narrow further by topic or decision (free-text, matches against conversation metadata). More precise than rift_search for conversation-specific queries.', conversationsSearchSchema, async (args) => withOnboardingRecall("rift_conversations_search", () => logger.wrap("rift_conversations_search", args, () => handleRiftConversationsSearch(args, client))));
|
|
86
|
-
server.tool("rift_context_pack", 'Build a compact, bucketed context pack for an active task. Returns prior decisions, project constraints (MUST/NEVER-style rules), example conversations, and rule documents — all summarized, never raw transcripts. Response is strictly bounded by max_bytes (default 4096, ceiling 16384). Use cwd to narrow document/rule results to the current project. Prefer this over rift_search when you need durable context to steer an agent, not a ranked hit list. Acting on the result: if a "Recommended live files to check" section is present, read those files before trusting this answer — they are the current source of truth and the pack only points at them. Treat items under "What I\'m discounting" as stale or uncommitted (e.g. untracked-in-git, deleted) — do not cite them as canonical state. When intent is "reasoning_archive", older conversations under "Past reasoning" are valid evidence (rationale and framing), not stale memory to ignore.', contextPackSchema, async (args) => withOnboardingRecall("rift_context_pack", () => logger.wrap("rift_context_pack", args, () => handleRiftContextPack(args, client))));
|
|
87
|
+
server.tool("rift_search", 'Search across all Rift memory: watched files, project docs, conversations, and digests. Use scope to narrow: "documents" for files, "conversations" for chat history, "clients" for client work, "projects" for project files. Use cwd to scope file results to the current project directory (conversations are not filtered by cwd). If cwd doesn\'t match a configured source directory, search runs across all data. Returns ranked results with relevance scores. When the response opens with a "Rift recalled …" line, briefly relay it to the user so they can see what Rift surfaced — it is a ready-made, humble one-liner, not a claim that Rift wrote the answer.', searchSchema, async (args) => withOnboardingRecall("rift_search", () => logger.wrap("rift_search", args, () => handleRiftSearch(args, client))));
|
|
88
|
+
server.tool("rift_conversations_search", 'Search conversation history with structured filters. Use detail="summary" for recent conversations (last 30 days + digests), detail="full" for older conversations. Filter by source, domain, intent, quality (enum values). Narrow further by topic or decision (free-text, matches against conversation metadata). More precise than rift_search for conversation-specific queries. When the response opens with a "Rift recalled …" line, briefly relay it to the user so they can see what Rift surfaced.', conversationsSearchSchema, async (args) => withOnboardingRecall("rift_conversations_search", () => logger.wrap("rift_conversations_search", args, () => handleRiftConversationsSearch(args, client))));
|
|
89
|
+
server.tool("rift_context_pack", 'Build a compact, bucketed context pack for an active task. Returns prior decisions, project constraints (MUST/NEVER-style rules), example conversations, and rule documents — all summarized, never raw transcripts. Response is strictly bounded by max_bytes (default 4096, ceiling 16384). Use cwd to narrow document/rule results to the current project. Prefer this over rift_search when you need durable context to steer an agent, not a ranked hit list. Acting on the result: if a "Recommended live files to check" section is present, read those files before trusting this answer — they are the current source of truth and the pack only points at them. Treat items under "What I\'m discounting" as stale or uncommitted (e.g. untracked-in-git, deleted) — do not cite them as canonical state. When intent is "reasoning_archive", older conversations under "Past reasoning" are valid evidence (rationale and framing), not stale memory to ignore. When the response opens with a "Rift recalled …" line, briefly relay it to the user so they can see which prior decisions/docs Rift surfaced — it is a humble summary, not a claim that Rift wrote the answer.', contextPackSchema, async (args) => withOnboardingRecall("rift_context_pack", () => logger.wrap("rift_context_pack", args, () => handleRiftContextPack(args, client))));
|
|
90
|
+
server.tool("rift_open_evidence", "Open one exact Rift evidence item from a compact hit's expand params and record a positive retrieval-feedback event after the open succeeds. Use this instead of rift_search detail='full' when a prior result looks worth inspecting. Pass session_id and intent, plus rank_at_retrieval for ranked hits or context_pack_bucket + position_in_bucket for ContextPack items, so Rift can dedupe and discount position bias. This is shadow-only in Slice 15; ranking integration is deferred.", openEvidenceSchema, async (args) => withOnboardingRecall("rift_open_evidence", () => logger.wrap("rift_open_evidence", args, () => handleRiftOpenEvidence(args, client))));
|
|
91
|
+
server.tool("rift_log_outcome", "Log the outcome of a substantive agent task and cite only the evidence that actually informed the answer. This is the explicit positive layer of Rift's retrieval-feedback loop; returned-but-unused hits are not credit. Pass session_id and intent. Prefer stable_evidence_key from rift_open_evidence, or pass id + source_table.", logOutcomeSchema, async (args) => logger.wrap("rift_log_outcome", args, () => handleRiftLogOutcome(args, client)));
|
|
92
|
+
server.tool("rift_why_evidence", "Inspect the retrieval-feedback ledger for one evidence item. Shows the shadow B_feed score, event count, and backing open/citation/reset events. Use this before trusting or debugging learned feedback.", whyEvidenceSchema, async (args) => logger.wrap("rift_why_evidence", args, () => handleRiftWhyEvidence(args, client)));
|
|
93
|
+
server.tool("rift_forget_evidence_feedback", "Reset learned retrieval feedback for one evidence item by appending a reset event. Use when Rift learned the wrong lesson; this keeps the local ledger auditable instead of editing JSONL by hand.", forgetEvidenceFeedbackSchema, async (args) => logger.wrap("rift_forget_evidence_feedback", args, () => handleRiftForgetEvidenceFeedback(args, client)));
|
|
87
94
|
server.tool("rift_status", "Capability map for Rift: lists the memory classes available (conversations, digests, structured documents), names the tools for each job (rift_search, rift_conversations_search, rift_context_pack, rift_status), and states default behavior. Call this before deciding whether to search. Not for content retrieval — use rift_search for that.", {}, async () => logger.wrap("rift_status", {}, () => handleRiftStatus({}, client)));
|
|
88
95
|
// --- Resource ---
|
|
89
96
|
server.resource("rift-context.md", "rift://rift-context.md", { description: "Current Rift system status as markdown", mimeType: "text/markdown" }, async (uri) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-pack.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/context-pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"context-pack.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/context-pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAW3D,eAAO,MAAM,iBAAiB;;;;;;CAqC7B,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,UAAU;;;;;;;;;;;uBAawB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;GAKlE"}
|
|
@@ -14,6 +14,7 @@ import { z } from "zod";
|
|
|
14
14
|
import { formatError } from "../errors.js";
|
|
15
15
|
import { MAX_PER_BUCKET_CEILING, MAX_BYTES_CEILING, TASK_MAX, } from "../../retrieval/context-pack.js";
|
|
16
16
|
import { formatSizeWarning } from "../../retrieval/compact.js";
|
|
17
|
+
import { buildContextPackReceipt, withReceipt } from "../../retrieval/receipt.js";
|
|
17
18
|
export const contextPackSchema = {
|
|
18
19
|
task: z
|
|
19
20
|
.string()
|
|
@@ -50,7 +51,12 @@ export async function handleRiftContextPack(args, client) {
|
|
|
50
51
|
const pack = data;
|
|
51
52
|
const text = renderContextPackMarkdown(pack);
|
|
52
53
|
return {
|
|
53
|
-
content: [
|
|
54
|
+
content: [
|
|
55
|
+
{
|
|
56
|
+
type: "text",
|
|
57
|
+
text: withReceipt(buildContextPackReceipt(pack), text),
|
|
58
|
+
},
|
|
59
|
+
],
|
|
54
60
|
structuredContent: pack,
|
|
55
61
|
};
|
|
56
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-pack.js","sourceRoot":"","sources":["../../../../src/mcp/tools/context-pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,QAAQ,GAET,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"context-pack.js","sourceRoot":"","sources":["../../../../src/mcp/tools/context-pack.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import type { HttpClient } from "../../cli/http-client.js";
|
|
|
13
13
|
export declare const conversationsSearchSchema: {
|
|
14
14
|
query: z.ZodString;
|
|
15
15
|
detail: z.ZodOptional<z.ZodEnum<["summary", "full"]>>;
|
|
16
|
-
source: z.ZodOptional<z.ZodEnum<["claude_code", "gemini_cli", "codex_cli", "chatgpt_web", "claude_web", "grok_web", "gemini_web", "all"]>>;
|
|
16
|
+
source: z.ZodOptional<z.ZodEnum<["claude_code", "gemini_cli", "codex_cli", "cursor_composer", "chatgpt_web", "claude_web", "grok_web", "gemini_web", "all"]>>;
|
|
17
17
|
domain: z.ZodOptional<z.ZodEnum<["business", "tech", "personal", "travel", "health", "finance", "creative", "all"]>>;
|
|
18
18
|
intent: z.ZodOptional<z.ZodEnum<["research", "decision", "brainstorm", "build", "learn", "troubleshoot", "all"]>>;
|
|
19
19
|
quality: z.ZodOptional<z.ZodEnum<["high", "medium", "low", "all"]>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversations-search.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/conversations-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"conversations-search.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/conversations-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAc3D,eAAO,MAAM,yBAAyB;;;;;;;;;;;CA8CrC,CAAC;AAQF,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,UAAU;;;;;;;;;;;uBAgBwB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;GAKlE"}
|
|
@@ -12,6 +12,7 @@ import { z } from "zod";
|
|
|
12
12
|
import { CONVERSATION_SOURCES, DOMAINS, INTENTS, QUALITY_LEVELS, } from "../../providers/types.js";
|
|
13
13
|
import { formatError } from "../errors.js";
|
|
14
14
|
import { renderCompactMarkdown, } from "../../retrieval/compact.js";
|
|
15
|
+
import { buildSearchReceipt, withReceipt } from "../../retrieval/receipt.js";
|
|
15
16
|
export const conversationsSearchSchema = {
|
|
16
17
|
query: z.string().min(1).describe("Search query"),
|
|
17
18
|
detail: z
|
|
@@ -62,7 +63,12 @@ export async function handleRiftConversationsSearch(args, client) {
|
|
|
62
63
|
...(resp.degraded_reason ? { degradedReason: resp.degraded_reason } : {}),
|
|
63
64
|
});
|
|
64
65
|
return {
|
|
65
|
-
content: [
|
|
66
|
+
content: [
|
|
67
|
+
{
|
|
68
|
+
type: "text",
|
|
69
|
+
text: withReceipt(buildSearchReceipt(resp.results), text),
|
|
70
|
+
},
|
|
71
|
+
],
|
|
66
72
|
structuredContent: resp,
|
|
67
73
|
};
|
|
68
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversations-search.js","sourceRoot":"","sources":["../../../../src/mcp/tools/conversations-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,oBAAoB,EACpB,OAAO,EACP,OAAO,EACP,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"conversations-search.js","sourceRoot":"","sources":["../../../../src/mcp/tools/conversations-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,oBAAoB,EACpB,OAAO,EACP,OAAO,EACP,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE7E,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IACjD,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CACP,sHAAsH,CACvH;IACH,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,GAAG,oBAAoB,EAAE,KAAK,CAAC,CAAC;SACtC,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,iCAAiC,CAAC;IAC9C,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,iCAAiC,CAAC;IAC9C,OAAO,EAAE,CAAC;SACP,IAAI,CAAC,CAAC,GAAG,cAAc,EAAE,KAAK,CAAC,CAAC;SAChC,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC/C,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC;IACxE,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,yCAAyC,CAAC;IACtD,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,4EAA4E,CAC7E;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,kFAAkF,CACnF;CACJ,CAAC;AAQF,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,IAA6B,EAC7B,MAAkB;IAElB,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,IAAyC,CAAC;QACvD,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1E,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;iBAC1D;aACF;YACD,iBAAiB,EAAE,IAA0C;SAC9D,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inspect/reset retrieval feedback. These are trust affordances for the
|
|
3
|
+
* shadow-learning loop: users and agents can see why Rift thinks evidence is
|
|
4
|
+
* useful, and can forget that learned signal without editing JSONL by hand.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import type { HttpClient } from "../../cli/http-client.js";
|
|
8
|
+
export declare const whyEvidenceSchema: {
|
|
9
|
+
stable_evidence_key: z.ZodOptional<z.ZodString>;
|
|
10
|
+
id: z.ZodOptional<z.ZodString>;
|
|
11
|
+
source_id: z.ZodOptional<z.ZodString>;
|
|
12
|
+
source_table: z.ZodOptional<z.ZodEnum<["structured_docs", "conversations_hot", "conversations_cold", "digests", "structured_docs_local"]>>;
|
|
13
|
+
source_path: z.ZodOptional<z.ZodString>;
|
|
14
|
+
parent_id: z.ZodOptional<z.ZodString>;
|
|
15
|
+
source: z.ZodOptional<z.ZodString>;
|
|
16
|
+
digest_id: z.ZodOptional<z.ZodString>;
|
|
17
|
+
project: z.ZodOptional<z.ZodString>;
|
|
18
|
+
intent: z.ZodOptional<z.ZodEnum<["current_truth", "reasoning_archive", "blended"]>>;
|
|
19
|
+
};
|
|
20
|
+
export declare const forgetEvidenceFeedbackSchema: {
|
|
21
|
+
session_id: z.ZodOptional<z.ZodString>;
|
|
22
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
23
|
+
stable_evidence_key: z.ZodOptional<z.ZodString>;
|
|
24
|
+
id: z.ZodOptional<z.ZodString>;
|
|
25
|
+
source_id: z.ZodOptional<z.ZodString>;
|
|
26
|
+
source_table: z.ZodOptional<z.ZodEnum<["structured_docs", "conversations_hot", "conversations_cold", "digests", "structured_docs_local"]>>;
|
|
27
|
+
source_path: z.ZodOptional<z.ZodString>;
|
|
28
|
+
parent_id: z.ZodOptional<z.ZodString>;
|
|
29
|
+
source: z.ZodOptional<z.ZodString>;
|
|
30
|
+
digest_id: z.ZodOptional<z.ZodString>;
|
|
31
|
+
project: z.ZodOptional<z.ZodString>;
|
|
32
|
+
intent: z.ZodOptional<z.ZodEnum<["current_truth", "reasoning_archive", "blended"]>>;
|
|
33
|
+
};
|
|
34
|
+
export declare function handleRiftWhyEvidence(args: Record<string, unknown>, client: HttpClient): Promise<{
|
|
35
|
+
content: {
|
|
36
|
+
type: "text";
|
|
37
|
+
text: string;
|
|
38
|
+
}[];
|
|
39
|
+
isError: true;
|
|
40
|
+
} | {
|
|
41
|
+
content: {
|
|
42
|
+
type: "text";
|
|
43
|
+
text: string;
|
|
44
|
+
}[];
|
|
45
|
+
structuredContent: Record<string, unknown>;
|
|
46
|
+
}>;
|
|
47
|
+
export declare function handleRiftForgetEvidenceFeedback(args: Record<string, unknown>, client: HttpClient): Promise<{
|
|
48
|
+
content: {
|
|
49
|
+
type: "text";
|
|
50
|
+
text: string;
|
|
51
|
+
}[];
|
|
52
|
+
isError: true;
|
|
53
|
+
} | {
|
|
54
|
+
content: {
|
|
55
|
+
type: "text";
|
|
56
|
+
text: string;
|
|
57
|
+
}[];
|
|
58
|
+
structuredContent: Record<string, unknown>;
|
|
59
|
+
}>;
|
|
60
|
+
//# sourceMappingURL=evidence-feedback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence-feedback.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/evidence-feedback.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAwB3D,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAAoB,CAAC;AAEnD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;CAIxC,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,UAAU;;;;;;;;;;;uBAQa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;GAKvD;AAED,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,UAAU;;;;;;;;;;;uBAQa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;GAKvD"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inspect/reset retrieval feedback. These are trust affordances for the
|
|
3
|
+
* shadow-learning loop: users and agents can see why Rift thinks evidence is
|
|
4
|
+
* useful, and can forget that learned signal without editing JSONL by hand.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import { formatError } from "../errors.js";
|
|
8
|
+
const evidenceRefSchema = {
|
|
9
|
+
stable_evidence_key: z.string().optional(),
|
|
10
|
+
id: z.string().optional(),
|
|
11
|
+
source_id: z.string().optional(),
|
|
12
|
+
source_table: z
|
|
13
|
+
.enum([
|
|
14
|
+
"structured_docs",
|
|
15
|
+
"conversations_hot",
|
|
16
|
+
"conversations_cold",
|
|
17
|
+
"digests",
|
|
18
|
+
"structured_docs_local",
|
|
19
|
+
])
|
|
20
|
+
.optional(),
|
|
21
|
+
source_path: z.string().optional(),
|
|
22
|
+
parent_id: z.string().optional(),
|
|
23
|
+
source: z.string().optional(),
|
|
24
|
+
digest_id: z.string().optional(),
|
|
25
|
+
project: z.string().optional(),
|
|
26
|
+
intent: z.enum(["current_truth", "reasoning_archive", "blended"]).optional(),
|
|
27
|
+
};
|
|
28
|
+
export const whyEvidenceSchema = evidenceRefSchema;
|
|
29
|
+
export const forgetEvidenceFeedbackSchema = {
|
|
30
|
+
...evidenceRefSchema,
|
|
31
|
+
session_id: z.string().optional(),
|
|
32
|
+
reason: z.string().optional(),
|
|
33
|
+
};
|
|
34
|
+
export async function handleRiftWhyEvidence(args, client) {
|
|
35
|
+
try {
|
|
36
|
+
const { data } = await client.post("/feedback/retrieval/why", args);
|
|
37
|
+
return {
|
|
38
|
+
content: [
|
|
39
|
+
{ type: "text", text: JSON.stringify(data, null, 2) },
|
|
40
|
+
],
|
|
41
|
+
structuredContent: data,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
return formatError(err);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export async function handleRiftForgetEvidenceFeedback(args, client) {
|
|
49
|
+
try {
|
|
50
|
+
const { data } = await client.post("/feedback/retrieval/reset", args);
|
|
51
|
+
return {
|
|
52
|
+
content: [
|
|
53
|
+
{ type: "text", text: JSON.stringify(data, null, 2) },
|
|
54
|
+
],
|
|
55
|
+
structuredContent: data,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
return formatError(err);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=evidence-feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence-feedback.js","sourceRoot":"","sources":["../../../../src/mcp/tools/evidence-feedback.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,iBAAiB,GAAG;IACxB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,YAAY,EAAE,CAAC;SACZ,IAAI,CAAC;QACJ,iBAAiB;QACjB,mBAAmB;QACnB,oBAAoB;QACpB,SAAS;QACT,uBAAuB;KACxB,CAAC;SACD,QAAQ,EAAE;IACb,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,mBAAmB,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7E,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAEnD,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,GAAG,iBAAiB;IACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAA6B,EAC7B,MAAkB;IAElB,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;QACpE,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;aAC/D;YACD,iBAAiB,EAAE,IAA+B;SACnD,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,IAA6B,EAC7B,MAAkB;IAElB,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;QACtE,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;aAC/D;YACD,iBAAiB,EAAE,IAA+B;SACnD,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* rift_log_outcome MCP tool — delegates to POST /outcome/log.
|
|
3
|
+
*
|
|
4
|
+
* Logs the substantive task outcome and records positive feedback for evidence
|
|
5
|
+
* the agent explicitly cites as used. Returned-but-unused hits are never credit.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from "zod";
|
|
8
|
+
import type { HttpClient } from "../../cli/http-client.js";
|
|
9
|
+
export declare const logOutcomeSchema: {
|
|
10
|
+
session_id: z.ZodString;
|
|
11
|
+
summary: z.ZodString;
|
|
12
|
+
project: z.ZodOptional<z.ZodString>;
|
|
13
|
+
intent: z.ZodEnum<["current_truth", "reasoning_archive", "blended"]>;
|
|
14
|
+
task: z.ZodOptional<z.ZodString>;
|
|
15
|
+
cited_evidence: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
16
|
+
stable_evidence_key: z.ZodOptional<z.ZodString>;
|
|
17
|
+
id: z.ZodOptional<z.ZodString>;
|
|
18
|
+
source_id: z.ZodOptional<z.ZodString>;
|
|
19
|
+
source_table: z.ZodOptional<z.ZodEnum<["structured_docs", "conversations_hot", "conversations_cold", "digests", "structured_docs_local"]>>;
|
|
20
|
+
source_path: z.ZodOptional<z.ZodString>;
|
|
21
|
+
parent_id: z.ZodOptional<z.ZodString>;
|
|
22
|
+
source: z.ZodOptional<z.ZodString>;
|
|
23
|
+
digest_id: z.ZodOptional<z.ZodString>;
|
|
24
|
+
rank_at_retrieval: z.ZodOptional<z.ZodNumber>;
|
|
25
|
+
result_count: z.ZodOptional<z.ZodNumber>;
|
|
26
|
+
context_pack_bucket: z.ZodOptional<z.ZodString>;
|
|
27
|
+
position_in_bucket: z.ZodOptional<z.ZodNumber>;
|
|
28
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
29
|
+
}, "strip", z.ZodTypeAny, {
|
|
30
|
+
id?: string | undefined;
|
|
31
|
+
source_path?: string | undefined;
|
|
32
|
+
source?: string | undefined;
|
|
33
|
+
parent_id?: string | undefined;
|
|
34
|
+
source_table?: "digests" | "structured_docs" | "conversations_hot" | "conversations_cold" | "structured_docs_local" | undefined;
|
|
35
|
+
stable_evidence_key?: string | undefined;
|
|
36
|
+
digest_id?: string | undefined;
|
|
37
|
+
source_id?: string | undefined;
|
|
38
|
+
rank_at_retrieval?: number | undefined;
|
|
39
|
+
result_count?: number | undefined;
|
|
40
|
+
context_pack_bucket?: string | undefined;
|
|
41
|
+
position_in_bucket?: number | undefined;
|
|
42
|
+
reason?: string | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
id?: string | undefined;
|
|
45
|
+
source_path?: string | undefined;
|
|
46
|
+
source?: string | undefined;
|
|
47
|
+
parent_id?: string | undefined;
|
|
48
|
+
source_table?: "digests" | "structured_docs" | "conversations_hot" | "conversations_cold" | "structured_docs_local" | undefined;
|
|
49
|
+
stable_evidence_key?: string | undefined;
|
|
50
|
+
digest_id?: string | undefined;
|
|
51
|
+
source_id?: string | undefined;
|
|
52
|
+
rank_at_retrieval?: number | undefined;
|
|
53
|
+
result_count?: number | undefined;
|
|
54
|
+
context_pack_bucket?: string | undefined;
|
|
55
|
+
position_in_bucket?: number | undefined;
|
|
56
|
+
reason?: string | undefined;
|
|
57
|
+
}>, "many">>;
|
|
58
|
+
};
|
|
59
|
+
export declare function handleRiftLogOutcome(args: Record<string, unknown>, client: HttpClient): Promise<{
|
|
60
|
+
content: {
|
|
61
|
+
type: "text";
|
|
62
|
+
text: string;
|
|
63
|
+
}[];
|
|
64
|
+
isError: true;
|
|
65
|
+
} | {
|
|
66
|
+
content: {
|
|
67
|
+
type: "text";
|
|
68
|
+
text: string;
|
|
69
|
+
}[];
|
|
70
|
+
structuredContent: Record<string, unknown>;
|
|
71
|
+
}>;
|
|
72
|
+
//# sourceMappingURL=log-outcome.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-outcome.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/log-outcome.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AA2B3D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc5B,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,UAAU;;;;;;;;;;;uBAQa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;GAKvD"}
|