@cortexkit/opencode-magic-context 0.24.1 → 0.26.0

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 (142) hide show
  1. package/README.md +4 -2
  2. package/dist/agents/magic-context-prompt.d.ts.map +1 -1
  3. package/dist/agents/permissions.d.ts +6 -0
  4. package/dist/agents/permissions.d.ts.map +1 -1
  5. package/dist/config/schema/magic-context.d.ts +22 -0
  6. package/dist/config/schema/magic-context.d.ts.map +1 -1
  7. package/dist/features/magic-context/compartment-chunk-embedding.d.ts +25 -0
  8. package/dist/features/magic-context/compartment-chunk-embedding.d.ts.map +1 -1
  9. package/dist/features/magic-context/compartment-embedding.d.ts.map +1 -1
  10. package/dist/features/magic-context/dreamer/task-prompts.d.ts.map +1 -1
  11. package/dist/features/magic-context/memory/embedding-local.d.ts +7 -3
  12. package/dist/features/magic-context/memory/embedding-local.d.ts.map +1 -1
  13. package/dist/features/magic-context/memory/embedding-openai.d.ts +8 -4
  14. package/dist/features/magic-context/memory/embedding-openai.d.ts.map +1 -1
  15. package/dist/features/magic-context/memory/embedding-provider.d.ts +8 -4
  16. package/dist/features/magic-context/memory/embedding-provider.d.ts.map +1 -1
  17. package/dist/features/magic-context/memory/embedding.d.ts.map +1 -1
  18. package/dist/features/magic-context/memory/relocate-memory.d.ts +58 -0
  19. package/dist/features/magic-context/memory/relocate-memory.d.ts.map +1 -0
  20. package/dist/features/magic-context/memory/storage-memory-embeddings.d.ts +6 -0
  21. package/dist/features/magic-context/memory/storage-memory-embeddings.d.ts.map +1 -1
  22. package/dist/features/magic-context/migrations.d.ts.map +1 -1
  23. package/dist/features/magic-context/project-embedding-registry.d.ts +41 -3
  24. package/dist/features/magic-context/project-embedding-registry.d.ts.map +1 -1
  25. package/dist/features/magic-context/storage-db.d.ts +2 -1
  26. package/dist/features/magic-context/storage-db.d.ts.map +1 -1
  27. package/dist/features/magic-context/storage-meta-persisted.d.ts +37 -0
  28. package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -1
  29. package/dist/features/magic-context/storage-meta-session.d.ts +1 -0
  30. package/dist/features/magic-context/storage-meta-session.d.ts.map +1 -1
  31. package/dist/features/magic-context/storage-meta-shared.d.ts +4 -1
  32. package/dist/features/magic-context/storage-meta-shared.d.ts.map +1 -1
  33. package/dist/features/magic-context/storage-meta.d.ts +2 -2
  34. package/dist/features/magic-context/storage-meta.d.ts.map +1 -1
  35. package/dist/features/magic-context/storage-tags.d.ts +58 -2
  36. package/dist/features/magic-context/storage-tags.d.ts.map +1 -1
  37. package/dist/features/magic-context/storage.d.ts +3 -3
  38. package/dist/features/magic-context/storage.d.ts.map +1 -1
  39. package/dist/features/magic-context/tagger.d.ts +1 -1
  40. package/dist/features/magic-context/tagger.d.ts.map +1 -1
  41. package/dist/features/magic-context/transform-decision-log.d.ts +49 -0
  42. package/dist/features/magic-context/transform-decision-log.d.ts.map +1 -0
  43. package/dist/features/magic-context/types.d.ts +1 -0
  44. package/dist/features/magic-context/types.d.ts.map +1 -1
  45. package/dist/features/magic-context/v22-deferred-backfill.d.ts.map +1 -1
  46. package/dist/hooks/magic-context/apply-operations.d.ts +3 -25
  47. package/dist/hooks/magic-context/apply-operations.d.ts.map +1 -1
  48. package/dist/hooks/magic-context/auto-search-runner.d.ts.map +1 -1
  49. package/dist/hooks/magic-context/caveman-cleanup.d.ts +1 -0
  50. package/dist/hooks/magic-context/caveman-cleanup.d.ts.map +1 -1
  51. package/dist/hooks/magic-context/channel2-delivery.d.ts +2 -0
  52. package/dist/hooks/magic-context/channel2-delivery.d.ts.map +1 -1
  53. package/dist/hooks/magic-context/command-handler.d.ts +7 -5
  54. package/dist/hooks/magic-context/command-handler.d.ts.map +1 -1
  55. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts.map +1 -1
  56. package/dist/hooks/magic-context/compartment-trigger.d.ts +1 -1
  57. package/dist/hooks/magic-context/compartment-trigger.d.ts.map +1 -1
  58. package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts +7 -2
  59. package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts.map +1 -1
  60. package/dist/hooks/magic-context/derive-budgets.d.ts +5 -9
  61. package/dist/hooks/magic-context/derive-budgets.d.ts.map +1 -1
  62. package/dist/hooks/magic-context/embed-session-state.d.ts +14 -0
  63. package/dist/hooks/magic-context/embed-session-state.d.ts.map +1 -0
  64. package/dist/hooks/magic-context/event-handler.d.ts.map +1 -1
  65. package/dist/hooks/magic-context/event-payloads.d.ts +1 -0
  66. package/dist/hooks/magic-context/event-payloads.d.ts.map +1 -1
  67. package/dist/hooks/magic-context/format-embed-status.d.ts +9 -0
  68. package/dist/hooks/magic-context/format-embed-status.d.ts.map +1 -0
  69. package/dist/hooks/magic-context/heuristic-cleanup.d.ts +2 -0
  70. package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -1
  71. package/dist/hooks/magic-context/hook-handlers.d.ts.map +1 -1
  72. package/dist/hooks/magic-context/hook.d.ts.map +1 -1
  73. package/dist/hooks/magic-context/protected-tail-boundary.d.ts +10 -0
  74. package/dist/hooks/magic-context/protected-tail-boundary.d.ts.map +1 -1
  75. package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -1
  76. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts +1 -1
  77. package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts.map +1 -1
  78. package/dist/hooks/magic-context/strip-content.d.ts +0 -1
  79. package/dist/hooks/magic-context/strip-content.d.ts.map +1 -1
  80. package/dist/hooks/magic-context/tag-content-primitives.d.ts +2 -0
  81. package/dist/hooks/magic-context/tag-content-primitives.d.ts.map +1 -1
  82. package/dist/hooks/magic-context/tag-id-fallback.d.ts.map +1 -1
  83. package/dist/hooks/magic-context/tag-messages.d.ts +10 -0
  84. package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -1
  85. package/dist/hooks/magic-context/tool-drop-target.d.ts +1 -1
  86. package/dist/hooks/magic-context/tool-drop-target.d.ts.map +1 -1
  87. package/dist/hooks/magic-context/tool-reclaim.d.ts +12 -0
  88. package/dist/hooks/magic-context/tool-reclaim.d.ts.map +1 -0
  89. package/dist/hooks/magic-context/transform-compartment-phase.d.ts +32 -1
  90. package/dist/hooks/magic-context/transform-compartment-phase.d.ts.map +1 -1
  91. package/dist/hooks/magic-context/transform-operations.d.ts +1 -1
  92. package/dist/hooks/magic-context/transform-operations.d.ts.map +1 -1
  93. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +6 -0
  94. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -1
  95. package/dist/hooks/magic-context/transform.d.ts +2 -0
  96. package/dist/hooks/magic-context/transform.d.ts.map +1 -1
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +1767 -613
  99. package/dist/plugin/conflict-warning-hook.d.ts.map +1 -1
  100. package/dist/plugin/dream-timer.d.ts.map +1 -1
  101. package/dist/plugin/hooks/create-session-hooks.d.ts.map +1 -1
  102. package/dist/plugin/rpc-handlers.d.ts.map +1 -1
  103. package/dist/shared/announcement.d.ts +1 -1
  104. package/dist/shared/index.d.ts +0 -1
  105. package/dist/shared/index.d.ts.map +1 -1
  106. package/dist/shared/model-suggestion-retry.d.ts.map +1 -1
  107. package/dist/shared/resolve-fallbacks.d.ts +16 -16
  108. package/dist/shared/resolve-fallbacks.d.ts.map +1 -1
  109. package/dist/shared/rpc-types.d.ts +20 -0
  110. package/dist/shared/rpc-types.d.ts.map +1 -1
  111. package/dist/shared/sqlite.d.ts +5 -1
  112. package/dist/shared/sqlite.d.ts.map +1 -1
  113. package/dist/tools/ctx-expand/constants.d.ts +1 -1
  114. package/dist/tools/ctx-expand/constants.d.ts.map +1 -1
  115. package/dist/tools/ctx-expand/render.d.ts +43 -0
  116. package/dist/tools/ctx-expand/render.d.ts.map +1 -0
  117. package/dist/tools/ctx-expand/tools.d.ts.map +1 -1
  118. package/dist/tools/ctx-expand/types.d.ts +6 -2
  119. package/dist/tools/ctx-expand/types.d.ts.map +1 -1
  120. package/dist/tools/ctx-reduce/constants.d.ts +1 -1
  121. package/dist/tools/ctx-reduce/constants.d.ts.map +1 -1
  122. package/dist/tools/ctx-search/tools.d.ts.map +1 -1
  123. package/dist/tui/data/context-db.d.ts +4 -2
  124. package/dist/tui/data/context-db.d.ts.map +1 -1
  125. package/package.json +1 -1
  126. package/src/shared/announcement.ts +6 -6
  127. package/src/shared/index.ts +0 -1
  128. package/src/shared/model-suggestion-retry.test.ts +61 -1
  129. package/src/shared/model-suggestion-retry.ts +22 -0
  130. package/src/shared/resolve-fallbacks.test.ts +37 -71
  131. package/src/shared/resolve-fallbacks.ts +16 -26
  132. package/src/shared/rpc-types.ts +11 -0
  133. package/src/shared/sqlite-bind-style.test.ts +82 -0
  134. package/src/shared/sqlite.ts +30 -1
  135. package/src/shared/tag-transcript.test.ts +3 -1
  136. package/src/shared/tag-transcript.ts +19 -17
  137. package/src/tui/data/context-db.ts +34 -2
  138. package/src/tui/index.tsx +58 -4
  139. package/src/tui/slots/sidebar-content.tsx +18 -9
  140. package/dist/shared/model-requirements.d.ts +0 -26
  141. package/dist/shared/model-requirements.d.ts.map +0 -1
  142. package/src/shared/model-requirements.ts +0 -86
package/README.md CHANGED
@@ -87,9 +87,11 @@ The wizard auto-detects which harnesses you have (OpenCode, Pi, or both), adds t
87
87
 
88
88
  ### Adding Magic Context to an existing project
89
89
 
90
- Magic Context is not limited to greenfield work. Run the setup wizard from the root of the project you already use with OpenCode or Pi, then restart the harness in that same directory so the plugin can attach to the existing project identity. New turns will be captured automatically, and older raw session history is summarized as the historian runs.
90
+ Magic Context is not limited to greenfield work. Run the setup wizard from the root of the project you already use with OpenCode or Pi, then restart the harness in that same directory so the plugin can attach to the existing project identity. From that point forward, new turns are captured automatically and the historian compartmentalizes the active session as it grows.
91
91
 
92
- If you want to start organizing existing knowledge right away, use `/ctx-recomp` after setup to rebuild compartments from available history and `/ctx-dream` to run dreamer maintenance on demand. The dashboard can also inspect the shared CortexKit database, memories, compartments, and dreamer runs without starting a coding session.
92
+ Magic Context does **not** retroactively import or reprocess OpenCode or Pi sessions that happened before it was installed. Those past conversations are not backfilled into compartments. What builds up across an existing project from day one includes project memories, dreamer-maintained docs, key files, and other context captured after installation.
93
+
94
+ If you want to seed knowledge from older work, add the important facts explicitly with `ctx_memory`, write a short project note in the repo, or keep working in the project and let the historian and dreamer promote recurring facts over time. Use `/ctx-recomp` when you need to rebuild Magic Context compartments from raw message history that Magic Context has captured in that session, such as after upgrading historian rules; it is not an importer for unrelated pre-install OpenCode or Pi sessions. The dashboard can also inspect the shared CortexKit database, memories, compartments, and dreamer runs without starting a coding session.
93
95
 
94
96
  <details>
95
97
  <summary><strong>Compatibility with other context-management plugins</strong></summary>
@@ -1 +1 @@
1
- {"version":3,"file":"magic-context-prompt.d.ts","sourceRoot":"","sources":["../../src/agents/magic-context-prompt.ts"],"names":[],"mappings":"AAAA,wEAAwE;AAoIxE,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,aAAa,EAAE,MAAM,EACrB,gBAAgB,UAAO,EACvB,cAAc,UAAQ,EACtB,wBAAwB,UAAQ,EAChC,6BAA6B,UAAQ,EACrC,YAAY,UAAQ,GACrB,MAAM,CA0BR"}
1
+ {"version":3,"file":"magic-context-prompt.d.ts","sourceRoot":"","sources":["../../src/agents/magic-context-prompt.ts"],"names":[],"mappings":"AAAA,wEAAwE;AAkIxE,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,aAAa,EAAE,MAAM,EACrB,gBAAgB,UAAO,EACvB,cAAc,UAAQ,EACtB,wBAAwB,UAAQ,EAChC,6BAA6B,UAAQ,EACrC,YAAY,UAAQ,GACrB,MAAM,CA0BR"}
@@ -97,6 +97,12 @@ export declare function buildAllowOnlyPermission(allowedTools: readonly string[]
97
97
  * not exploring the repo.
98
98
  */
99
99
  export declare const HISTORIAN_ALLOWED_TOOLS: readonly ["read", "aft_outline", "aft_zoom", "aft_search"];
100
+ /**
101
+ * Subtract `disallowed` from the default historian allow-list. `"*"` removes
102
+ * all tools. Unknown tool names are silently ignored (the Zod enum in the
103
+ * config schema rejects them at parse time, so this is defense-in-depth).
104
+ */
105
+ export declare function applyDisallowedTools(defaults: readonly string[], disallowed: readonly string[]): readonly string[];
100
106
  /**
101
107
  * Tools the dreamer agent needs. This is the broadest hidden-agent
102
108
  * surface because dreamer's tasks legitimately require local-repo
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/agents/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACpC,YAAY,EAAE,SAAS,MAAM,EAAE,GAChC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAMlC;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,4DAA6D,CAAC;AAElG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,qBAAqB,6IAaxB,CAAC;AAEX;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,oDAAqD,CAAC"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/agents/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACpC,YAAY,EAAE,SAAS,MAAM,EAAE,GAChC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAMlC;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,4DAA6D,CAAC;AAElG;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,UAAU,EAAE,SAAS,MAAM,EAAE,GAC9B,SAAS,MAAM,EAAE,CAGnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,qBAAqB,6IAaxB,CAAC;AAEX;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,oDAAqD,CAAC"}
@@ -230,6 +230,13 @@ export declare const HistorianConfigSchema: z.ZodOptional<z.ZodObject<{
230
230
  high: "high";
231
231
  xhigh: "xhigh";
232
232
  }>>;
233
+ disallowed_tools: z.ZodDefault<z.ZodArray<z.ZodEnum<{
234
+ "*": "*";
235
+ read: "read";
236
+ aft_outline: "aft_outline";
237
+ aft_zoom: "aft_zoom";
238
+ aft_search: "aft_search";
239
+ }>>>;
233
240
  }, z.core.$strip>>;
234
241
  export type HistorianConfig = NonNullable<z.infer<typeof HistorianConfigSchema>>;
235
242
  export declare const EmbeddingConfigSchema: z.ZodPipe<z.ZodObject<{
@@ -242,6 +249,7 @@ export declare const EmbeddingConfigSchema: z.ZodPipe<z.ZodObject<{
242
249
  endpoint: z.ZodOptional<z.ZodString>;
243
250
  api_key: z.ZodOptional<z.ZodString>;
244
251
  input_type: z.ZodOptional<z.ZodString>;
252
+ query_input_type: z.ZodOptional<z.ZodString>;
245
253
  truncate: z.ZodOptional<z.ZodString>;
246
254
  max_input_tokens: z.ZodOptional<z.ZodNumber>;
247
255
  }, z.core.$strip>, z.ZodTransform<{
@@ -251,6 +259,7 @@ export declare const EmbeddingConfigSchema: z.ZodPipe<z.ZodObject<{
251
259
  } | {
252
260
  max_input_tokens?: number | undefined;
253
261
  truncate?: string | undefined;
262
+ query_input_type?: string | undefined;
254
263
  input_type?: string | undefined;
255
264
  api_key?: string | undefined;
256
265
  provider: "openai-compatible";
@@ -264,6 +273,7 @@ export declare const EmbeddingConfigSchema: z.ZodPipe<z.ZodObject<{
264
273
  endpoint?: string | undefined;
265
274
  api_key?: string | undefined;
266
275
  input_type?: string | undefined;
276
+ query_input_type?: string | undefined;
267
277
  truncate?: string | undefined;
268
278
  max_input_tokens?: number | undefined;
269
279
  }>>;
@@ -453,6 +463,13 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
453
463
  high: "high";
454
464
  xhigh: "xhigh";
455
465
  }>>;
466
+ disallowed_tools: z.ZodDefault<z.ZodArray<z.ZodEnum<{
467
+ "*": "*";
468
+ read: "read";
469
+ aft_outline: "aft_outline";
470
+ aft_zoom: "aft_zoom";
471
+ aft_search: "aft_search";
472
+ }>>>;
456
473
  }, z.core.$strip>>;
457
474
  dreamer: z.ZodOptional<z.ZodObject<{
458
475
  model: z.ZodOptional<z.ZodString>;
@@ -567,6 +584,7 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
567
584
  endpoint: z.ZodOptional<z.ZodString>;
568
585
  api_key: z.ZodOptional<z.ZodString>;
569
586
  input_type: z.ZodOptional<z.ZodString>;
587
+ query_input_type: z.ZodOptional<z.ZodString>;
570
588
  truncate: z.ZodOptional<z.ZodString>;
571
589
  max_input_tokens: z.ZodOptional<z.ZodNumber>;
572
590
  }, z.core.$strip>, z.ZodTransform<{
@@ -576,6 +594,7 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
576
594
  } | {
577
595
  max_input_tokens?: number | undefined;
578
596
  truncate?: string | undefined;
597
+ query_input_type?: string | undefined;
579
598
  input_type?: string | undefined;
580
599
  api_key?: string | undefined;
581
600
  provider: "openai-compatible";
@@ -589,6 +608,7 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
589
608
  endpoint?: string | undefined;
590
609
  api_key?: string | undefined;
591
610
  input_type?: string | undefined;
611
+ query_input_type?: string | undefined;
592
612
  truncate?: string | undefined;
593
613
  max_input_tokens?: number | undefined;
594
614
  }>>>;
@@ -707,6 +727,7 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
707
727
  } | {
708
728
  max_input_tokens?: number | undefined;
709
729
  truncate?: string | undefined;
730
+ query_input_type?: string | undefined;
710
731
  input_type?: string | undefined;
711
732
  api_key?: string | undefined;
712
733
  provider: "openai-compatible";
@@ -740,6 +761,7 @@ export declare const MagicContextConfigSchema: z.ZodPipe<z.ZodObject<{
740
761
  auto_update?: boolean | undefined;
741
762
  historian?: {
742
763
  two_pass: boolean;
764
+ disallowed_tools: ("*" | "read" | "aft_outline" | "aft_zoom" | "aft_search")[];
743
765
  model?: string | undefined;
744
766
  temperature?: number | undefined;
745
767
  top_p?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"magic-context.d.ts","sourceRoot":"","sources":["../../../src/config/schema/magic-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"magic-context.d.ts","sourceRoot":"","sources":["../../../src/config/schema/magic-context.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,23 @@ export interface SaveCompartmentChunkEmbeddingInput {
49
49
  }
50
50
  export declare function normalizeCompartmentChunkMaxInputTokens(value: unknown): number;
51
51
  export declare function buildCanonicalChunkTextFromFts(db: Database, sessionId: string, startOrdinal: number, endOrdinal: number): string;
52
+ /**
53
+ * Fallback embeddable text for a compartment whose RAW span has NO indexable
54
+ * content. A thin one-beat compartment — e.g. a host-injected
55
+ * `<system-reminder>` notification (stripped to empty by the indexer) plus an
56
+ * assistant tool-call (no text) — leaves `buildCanonicalChunkTextFromFts`
57
+ * returning "". Such a compartment would never acquire an embedding row, so it
58
+ * stays counted as "remaining" forever and the auto-embed drain re-fires its
59
+ * start/finish notification on every restart (the desktop "Embedding 1 /
60
+ * Embedded 0" loop).
61
+ *
62
+ * The compartment still carries a real summary (title + p1 paraphrase) — the
63
+ * ONLY signal it has — so we embed that instead. This is NOT the redundancy that
64
+ * retired `p1_embedding` (which embedded the summary ALONGSIDE the raw chunk):
65
+ * here there is no raw chunk to embed, so the summary is the sole content.
66
+ * Returns "" only when the compartment has neither a title nor p1/content.
67
+ */
68
+ export declare function buildCompartmentSummaryFallbackText(db: Database, compartmentId: number): string;
52
69
  /**
53
70
  * Convert historian input text into the same embeddable subset used by the FTS
54
71
  * backfill producer: only U:/A: conversational lines remain, and TC: tool-call
@@ -77,4 +94,12 @@ export declare function loadUnembeddedSessionChunkCandidates(db: Database, proje
77
94
  /** Count compartments in this session that still lack a chunk embedding for
78
95
  * `modelId` — drives the `/ctx-embed-history` progress total. */
79
96
  export declare function countUnembeddedSessionCompartments(db: Database, projectPath: string, sessionId: string, modelId: string): number;
97
+ /** Total embeddable compartments in this session (have a message range), and how
98
+ * many are currently embedded under `modelId`. Drives the `/ctx-embed` status
99
+ * line: `embedded / total`. Counts the project's OWN compartments for the
100
+ * session (same `session_projects` scoping as the unembedded counter). */
101
+ export declare function countSessionCompartmentEmbedCoverage(db: Database, projectPath: string, sessionId: string, modelId: string): {
102
+ embedded: number;
103
+ total: number;
104
+ };
80
105
  //# sourceMappingURL=compartment-chunk-embedding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-chunk-embedding.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compartment-chunk-embedding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compartment-chunk-embedding.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compartment-chunk-embedding.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-embedding.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compartment-embedding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAepD;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,uBAAuB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,8BAA8B,CAChD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,SAAS,uBAAuB,EAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAsFf"}
1
+ {"version":3,"file":"compartment-embedding.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/compartment-embedding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAgBpD;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,uBAAuB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,8BAA8B,CAChD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,SAAS,uBAAuB,EAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAuFf"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-prompts.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/dreamer/task-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAIzE,eAAO,MAAM,qBAAqB,y8FAmCulB,CAAC;AAI1nB,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA+BlE;AAID,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAiC7D;AAID,wBAAgB,uBAAuB,CACnC,WAAW,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACtD,MAAM,CA0ER;AAID,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA0C9D;AAID,wBAAgB,uBAAuB,CACnC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,YAAY,EAAE;IAAE,YAAY,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC5D,MAAM,CA+CR;AA0GD,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7D,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD,GACF,MAAM,CAiBR"}
1
+ {"version":3,"file":"task-prompts.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/dreamer/task-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAIzE,eAAO,MAAM,qBAAqB,y8FAmCulB,CAAC;AAI1nB,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA+BlE;AAID,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAiC7D;AAID,wBAAgB,uBAAuB,CACnC,WAAW,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACtD,MAAM,CA0ER;AAID,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA0C9D;AAID,wBAAgB,uBAAuB,CACnC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,YAAY,EAAE;IAAE,YAAY,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC5D,MAAM,CAgDR;AA0GD,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7D,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD,GACF,MAAM,CAiBR"}
@@ -1,4 +1,8 @@
1
- import type { EmbeddingProvider } from "./embedding-provider";
1
+ import type { EmbeddingProvider, EmbeddingPurpose } from "./embedding-provider";
2
+ /** Whether local embeddings have been disabled this process due to a missing
3
+ * native runtime (issue #128). Used by callers/tests to detect the degraded state. */
4
+ export declare function isLocalEmbeddingRuntimeMissing(): boolean;
5
+ export declare function isNativeRuntimeMissingError(error: unknown): boolean;
2
6
  export declare class LocalEmbeddingProvider implements EmbeddingProvider {
3
7
  readonly modelId: string;
4
8
  readonly maxInputTokens: number;
@@ -13,8 +17,8 @@ export declare class LocalEmbeddingProvider implements EmbeddingProvider {
13
17
  initialize(): Promise<boolean>;
14
18
  private waitForInFlightToDrain;
15
19
  private finishInFlight;
16
- embed(text: string, signal?: AbortSignal): Promise<Float32Array | null>;
17
- embedBatch(texts: string[], signal?: AbortSignal): Promise<(Float32Array | null)[]>;
20
+ embed(text: string, signal?: AbortSignal, _purpose?: EmbeddingPurpose): Promise<Float32Array | null>;
21
+ embedBatch(texts: string[], signal?: AbortSignal, _purpose?: EmbeddingPurpose): Promise<(Float32Array | null)[]>;
18
22
  dispose(): Promise<void>;
19
23
  isLoaded(): boolean;
20
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-local.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-local.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAmU9D,qBAAa,sBAAuB,YAAW,iBAAiB;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;gBAE7C,KAAK,SAAgC,EAAE,cAAc,SAAM;IAMjE,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAuIpC,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAShB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAoCvE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC;IAyCnF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8B9B,QAAQ,IAAI,OAAO;CAGtB"}
1
+ {"version":3,"file":"embedding-local.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-local.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA2QhF;sFACsF;AACtF,wBAAgB,8BAA8B,IAAI,OAAO,CAExD;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAwBnE;AA0ED,qBAAa,sBAAuB,YAAW,iBAAiB;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;gBAE7C,KAAK,SAAgC,EAAE,cAAc,SAAM;IAMjE,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IA6JpC,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAShB,KAAK,CACP,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAoCzB,UAAU,CACZ,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC;IAyC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8B9B,QAAQ,IAAI,OAAO;CAGtB"}
@@ -1,10 +1,12 @@
1
- import type { EmbeddingProvider } from "./embedding-provider";
1
+ import type { EmbeddingProvider, EmbeddingPurpose } from "./embedding-provider";
2
2
  interface OpenAICompatibleEmbeddingProviderOptions {
3
3
  endpoint?: string;
4
4
  model?: string;
5
5
  apiKey?: string;
6
- /** Optional `input_type` body field (e.g. NVIDIA NIM 'query'/'passage'). */
6
+ /** Default/passage `input_type` body field (e.g. NVIDIA NIM 'passage'). */
7
7
  inputType?: string;
8
+ /** Optional query `input_type` for search embeddings; falls back to inputType when unset. */
9
+ queryInputType?: string;
8
10
  /** Optional `truncate` body field (e.g. NVIDIA NIM 'NONE'/'START'/'END'). */
9
11
  truncate?: string;
10
12
  /** Maximum safe input tokens for chunk embeddings. */
@@ -28,6 +30,7 @@ export declare class OpenAICompatibleEmbeddingProvider implements EmbeddingProvi
28
30
  private readonly model;
29
31
  private readonly apiKey;
30
32
  private readonly inputType;
33
+ private readonly queryInputType;
31
34
  private readonly truncate;
32
35
  private initialized;
33
36
  private failureTimes;
@@ -43,8 +46,9 @@ export declare class OpenAICompatibleEmbeddingProvider implements EmbeddingProvi
43
46
  private halfOpenProbeInFlight;
44
47
  constructor(options: OpenAICompatibleEmbeddingProviderOptions);
45
48
  initialize(): Promise<boolean>;
46
- embed(text: string, signal?: AbortSignal): Promise<Float32Array | null>;
47
- embedBatch(texts: string[], signal?: AbortSignal): Promise<(Float32Array | null)[]>;
49
+ private resolveInputTypeForPurpose;
50
+ embed(text: string, signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<Float32Array | null>;
51
+ embedBatch(texts: string[], signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<(Float32Array | null)[]>;
48
52
  dispose(): Promise<void>;
49
53
  isLoaded(): boolean;
50
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-openai.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-openai.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,UAAU,wCAAwC;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK/E;AA+BD,KAAK,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAEpD,qBAAa,iCAAkC,YAAW,iBAAiB;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,WAAW,CAAS;IAI5B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B;;4EAEwE;IACxE,OAAO,CAAC,mBAAmB,CAAS;IACpC;;sDAEkD;IAClD,OAAO,CAAC,qBAAqB,CAAS;gBAE1B,OAAO,EAAE,wCAAwC;IAmBvD,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IA0B9B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKvE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC;IA4KnF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,QAAQ,IAAI,OAAO;IAInB;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,aAAa;IAiCrB,OAAO,CAAC,aAAa;IAUrB,gBAAgB,IAAI,YAAY;IAQhC,gBAAgB,IAAI,MAAM;IAG1B,aAAa,IAAI,IAAI;CAMxB"}
1
+ {"version":3,"file":"embedding-openai.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-openai.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGhF,UAAU,wCAAwC;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6FAA6F;IAC7F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK/E;AA+BD,KAAK,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAEpD,qBAAa,iCAAkC,YAAW,iBAAiB;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,WAAW,CAAS;IAI5B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B;;4EAEwE;IACxE,OAAO,CAAC,mBAAmB,CAAS;IACpC;;sDAEkD;IAClD,OAAO,CAAC,qBAAqB,CAAS;gBAE1B,OAAO,EAAE,wCAAwC;IAoBvD,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IA0BpC,OAAO,CAAC,0BAA0B;IAO5B,KAAK,CACP,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKzB,UAAU,CACZ,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC;IA6K7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,QAAQ,IAAI,OAAO;IAInB;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,aAAa;IAiCrB,OAAO,CAAC,aAAa;IAUrB,gBAAgB,IAAI,YAAY;IAQhC,gBAAgB,IAAI,MAAM;IAG1B,aAAa,IAAI,IAAI;CAMxB"}
@@ -1,3 +1,4 @@
1
+ export type EmbeddingPurpose = "query" | "passage";
1
2
  export interface EmbeddingProvider {
2
3
  readonly modelId: string;
3
4
  /** Maximum safe input window for one embedding request. Unknown providers default to 512. */
@@ -6,11 +7,14 @@ export interface EmbeddingProvider {
6
7
  /** Embed a single text. `signal` lets callers abort the underlying network
7
8
  * request (or long-running local inference) before the provider's internal
8
9
  * timeout fires — used by transform-hot-path callers that have their own
9
- * sub-timeout (e.g. 3s auto-search wants to cancel the 30s embed fetch). */
10
- embed(text: string, signal?: AbortSignal): Promise<Float32Array | null>;
10
+ * sub-timeout (e.g. 3s auto-search wants to cancel the 30s embed fetch).
11
+ * `purpose` selects asymmetric input_type on openai-compatible providers;
12
+ * defaults to `"passage"` (indexed/stored content). */
13
+ embed(text: string, signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<Float32Array | null>;
11
14
  /** Batch variant of `embed`. Same signal semantics: aborting cancels the
12
- * whole batch request (including the underlying HTTP call for remote providers). */
13
- embedBatch(texts: string[], signal?: AbortSignal): Promise<(Float32Array | null)[]>;
15
+ * whole batch request (including the underlying HTTP call for remote providers).
16
+ * `purpose` defaults to `"passage"`. */
17
+ embedBatch(texts: string[], signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<(Float32Array | null)[]>;
14
18
  dispose(): Promise<void>;
15
19
  isLoaded(): boolean;
16
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-provider.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-provider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B;;;iFAG6E;IAC7E,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACxE;yFACqF;IACrF,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACpF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,QAAQ,IAAI,OAAO,CAAC;CACvB"}
1
+ {"version":3,"file":"embedding-provider.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding-provider.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B;;;;;4DAKwD;IACxD,KAAK,CACD,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAChC;;6CAEyC;IACzC,UAAU,CACN,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,QAAQ,IAAI,OAAO,CAAC;CACvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAG5E,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAOvD,YAAY,EACR,iBAAiB,EACjB,oCAAoC,GACvC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACH,sCAAsC,EACtC,iCAAiC,EACjC,oBAAoB,EACpB,mBAAmB,EACnB,0CAA0C,EAC1C,iCAAiC,EACjC,2BAA2B,EAC3B,oCAAoC,EACpC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AA6GvC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAoBjE;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO7D;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAWhG;AAED,wBAAsB,UAAU,CAC5B,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAelC;AAED,wBAAsB,uBAAuB,CACzC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,eAAe,EACvB,SAAS,SAAK,GACf,OAAO,CAAC,MAAM,CAAC,CAEjB;AAgBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,0BAA0B,CAC5C,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,eAAe,EACvB,SAAS,SAAK,GACf,OAAO,CAAC,MAAM,CAAC,CAsEjB;AAED,8CAA8C;AAC9C,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAmDD,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAS3D"}
1
+ {"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/embedding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAG5E,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAOvD,YAAY,EACR,iBAAiB,EACjB,oCAAoC,GACvC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACH,sCAAsC,EACtC,iCAAiC,EACjC,oBAAoB,EACpB,mBAAmB,EACnB,0CAA0C,EAC1C,iCAAiC,EACjC,2BAA2B,EAC3B,oCAAoC,EACpC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,GAC7B,MAAM,+BAA+B,CAAC;AAgHvC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAoBjE;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO7D;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAWhG;AAED,wBAAsB,UAAU,CAC5B,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAelC;AAED,wBAAsB,uBAAuB,CACzC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,eAAe,EACvB,SAAS,SAAK,GACf,OAAO,CAAC,MAAM,CAAC,CAEjB;AAgBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,0BAA0B,CAC5C,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,eAAe,EACvB,SAAS,SAAK,GACf,OAAO,CAAC,MAAM,CAAC,CAsEjB;AAED,8CAA8C;AAC9C,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAmDD,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAS3D"}
@@ -0,0 +1,58 @@
1
+ import type { Database } from "../../../shared/sqlite";
2
+ import type { MemoryStatus } from "./types";
3
+ /**
4
+ * Memory relocation primitives shared by the v22 dir-identity backfill and the
5
+ * `doctor migrate-session` command (re-homing a session to a different project).
6
+ *
7
+ * All operations are collision-aware against UNIQUE(project_path, category,
8
+ * normalized_hash): the target identity may already hold an equivalent memory,
9
+ * and a blind write there would abort the surrounding transaction. MUST run
10
+ * inside a transaction.
11
+ */
12
+ export interface RelocateMemorySelection {
13
+ /** Status set to operate on. Archived memories are deliberately excluded by
14
+ * default — they are suppressed history, not injectable knowledge. */
15
+ statuses?: MemoryStatus[];
16
+ /** When set, restrict to memories whose `source_session_id` matches (the
17
+ * "only memories originated from this session" option). */
18
+ sourceSessionId?: string;
19
+ }
20
+ /**
21
+ * Resolve the memory ids under `fromProjectPath` that a relocation should act
22
+ * on, honoring the status filter and the optional originator-session filter.
23
+ */
24
+ export declare function selectRelocatableMemoryIds(db: Database, fromProjectPath: string, selection?: RelocateMemorySelection): number[];
25
+ /**
26
+ * Collision-aware single-row rekey. If the target identity already holds an
27
+ * equivalent memory (same category + normalized_hash), merge into it (keep the
28
+ * larger seen_count, delete the source — embedding FK-cascades) instead of
29
+ * aborting the transaction on the UNIQUE violation; otherwise do the guarded
30
+ * UPDATE. Returns true if the row was rekeyed or merged. MUST run inside a
31
+ * transaction.
32
+ */
33
+ export declare function rekeyMemoryRowWithCollisionMerge(db: Database, rowId: number, fromProjectPath: string, toIdentity: string): boolean;
34
+ export interface RelocateResult {
35
+ /** Rows rekeyed/inserted under the target identity. */
36
+ relocated: number;
37
+ /** Rows merged into a pre-existing equivalent at the target (move only). */
38
+ merged: number;
39
+ /** Rows skipped because an equivalent already existed at the target (copy only). */
40
+ skipped: number;
41
+ }
42
+ /**
43
+ * MOVE a set of memory ids from `fromProjectPath` to `toIdentity`. The source
44
+ * project loses them. Collision-safe (merge into an existing equivalent at the
45
+ * target). Embeddings follow automatically (memory_id is unchanged on a rekey,
46
+ * FK-cascade on a merge-delete). MUST run inside a transaction.
47
+ */
48
+ export declare function moveMemoriesToProject(db: Database, ids: number[], fromProjectPath: string, toIdentity: string): RelocateResult;
49
+ /**
50
+ * COPY a set of memory ids under `toIdentity`, leaving the source rows intact.
51
+ * Each copy gets a fresh id; its embedding (if any) is duplicated. Collision-safe
52
+ * via INSERT OR IGNORE against the UNIQUE constraint — a row already present at
53
+ * the target is skipped (no duplicate). `project_path` is overridden to the
54
+ * target; all other columns (including source_session_id and timestamps) are
55
+ * preserved for provenance. MUST run inside a transaction.
56
+ */
57
+ export declare function copyMemoriesToProject(db: Database, ids: number[], toIdentity: string): RelocateResult;
58
+ //# sourceMappingURL=relocate-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relocate-memory.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/relocate-memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;GAQG;AAEH,MAAM,WAAW,uBAAuB;IACpC;2EACuE;IACvE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B;gEAC4D;IAC5D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID;;;GAGG;AACH,wBAAgB,0BAA0B,CACtC,EAAE,EAAE,QAAQ,EACZ,eAAe,EAAE,MAAM,EACvB,SAAS,GAAE,uBAA4B,GACxC,MAAM,EAAE,CAaV;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAC5C,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,GACnB,OAAO,CA4CT;AAED,MAAM,WAAW,cAAc;IAC3B,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,GAAG,EAAE,MAAM,EAAE,EACb,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,GACnB,cAAc,CAqBhB;AAeD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,QAAQ,EACZ,GAAG,EAAE,MAAM,EAAE,EACb,UAAU,EAAE,MAAM,GACnB,cAAc,CAyBhB"}
@@ -9,4 +9,10 @@ export declare function deleteEmbedding(db: Database, memoryId: number): void;
9
9
  export declare function getStoredModelId(db: Database, projectPath: string): string | null;
10
10
  export declare function clearEmbeddingsForProject(db: Database, projectPath: string): void;
11
11
  export declare function getDistinctStoredModelIds(db: Database, projectPath: string): Set<string | null>;
12
+ /** Active memories for a project, and how many are embedded under `modelId`.
13
+ * Drives the `/ctx-embed` status `embedded / total` memory line. */
14
+ export declare function getMemoryEmbedCoverage(db: Database, projectPath: string, modelId: string): {
15
+ embedded: number;
16
+ total: number;
17
+ };
12
18
  //# sourceMappingURL=storage-memory-embeddings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-memory-embeddings.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory-embeddings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAQvF,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAoGD,wBAAgB,aAAa,CACzB,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,MAAM,GAChB,IAAI,CAGN;AAED,wBAAgB,iBAAiB,CAC7B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,GACpB,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAYpC;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEpE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGjF;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAEjF;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAG/F"}
1
+ {"version":3,"file":"storage-memory-embeddings.d.ts","sourceRoot":"","sources":["../../../../src/features/magic-context/memory/storage-memory-embeddings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkC,MAAM,wBAAwB,CAAC;AAQvF,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAoGD,wBAAgB,aAAa,CACzB,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,MAAM,GAChB,IAAI,CAGN;AAED,wBAAgB,iBAAiB,CAC7B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,GACpB,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAYpC;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEpE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGjF;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAEjF;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAG/F;AAED;qEACqE;AACrE,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GAChB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiBrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/migrations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AA85CpD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAGtC,CAAC;AAmBF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAkBjG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAgEhD"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/migrations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAu9CpD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAGtC,CAAC;AAmBF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAkBjG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAgEhD"}
@@ -1,6 +1,6 @@
1
1
  import type { EmbeddingConfig } from "../../config/schema/magic-context";
2
2
  import type { Database } from "../../shared/sqlite";
3
- import type { EmbeddingProvider } from "./memory/embedding-provider";
3
+ import type { EmbeddingProvider, EmbeddingPurpose } from "./memory/embedding-provider";
4
4
  export interface EmbeddingFeatures {
5
5
  memoryEnabled: boolean;
6
6
  gitCommitEnabled: boolean;
@@ -16,6 +16,11 @@ export interface ProjectEmbeddingRegistrationSnapshot {
16
16
  gitCommitEnabled: boolean;
17
17
  modelId: string;
18
18
  chunkModelId: string;
19
+ /** Friendly configured model name (e.g. "text-embedding-qwen3-embedding-4b"),
20
+ * for user-facing status. "off" when no provider / observation mode. */
21
+ model: string;
22
+ /** Configured provider kind (e.g. "openai-compatible", "local", "ollama"). */
23
+ provider: string;
19
24
  }
20
25
  export declare function registerProjectEmbeddingAndMaybeWipe(db: Database, projectIdentity: string, config: EmbeddingConfig, features: EmbeddingFeatures, sourceDirectory: string): ProjectEmbeddingRegistrationSnapshot;
21
26
  export declare function registerProjectInObservationMode(db: Database, projectIdentity: string, sourceDirectory: string, failedConfig: EmbeddingConfig, failureSummary: string): ProjectEmbeddingRegistrationSnapshot;
@@ -23,12 +28,12 @@ export declare function unregisterProjectEmbedding(projectIdentity: string): voi
23
28
  export declare function getProjectEmbeddingSnapshot(projectIdentity: string): ProjectEmbeddingRegistrationSnapshot | null;
24
29
  export declare function getProjectChunkEmbeddingModelId(projectIdentity: string): string;
25
30
  export declare function getProjectEmbeddingMaxInputTokens(projectIdentity: string): number;
26
- export declare function embedTextForProject(projectIdentity: string, text: string, signal?: AbortSignal): Promise<{
31
+ export declare function embedTextForProject(projectIdentity: string, text: string, signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<{
27
32
  vector: Float32Array;
28
33
  modelId: string;
29
34
  generation: number;
30
35
  } | null>;
31
- export declare function embedBatchForProject(projectIdentity: string, texts: string[], signal?: AbortSignal): Promise<{
36
+ export declare function embedBatchForProject(projectIdentity: string, texts: string[], signal?: AbortSignal, purpose?: EmbeddingPurpose): Promise<{
32
37
  vectors: (Float32Array | null)[];
33
38
  modelId: string;
34
39
  generation: number;
@@ -45,6 +50,7 @@ export type SessionChunkBackfillOutcome = {
45
50
  status: "done";
46
51
  embedded: number;
47
52
  total: number;
53
+ failed: number;
48
54
  } | {
49
55
  status: "nothing";
50
56
  embedded: 0;
@@ -61,11 +67,13 @@ export type SessionChunkBackfillOutcome = {
61
67
  status: "aborted";
62
68
  embedded: number;
63
69
  total: number;
70
+ failed: number;
64
71
  } | {
65
72
  status: "stalled";
66
73
  embedded: number;
67
74
  total: number;
68
75
  remaining: number;
76
+ failed: number;
69
77
  };
70
78
  /**
71
79
  * Backfill ALL un-embedded compartment chunks for ONE session in a single run
@@ -82,6 +90,36 @@ export declare function embedSessionCompartmentChunks(db: Database, projectIdent
82
90
  onProgress?: (p: SessionChunkBackfillProgress) => void;
83
91
  batchSize?: number;
84
92
  }): Promise<SessionChunkBackfillOutcome>;
93
+ export interface EmbeddingCoverageStatus {
94
+ /** Whether embedding is active at all for this project. */
95
+ enabled: boolean;
96
+ /** Friendly configured model name, or "off"/"disabled". */
97
+ model: string;
98
+ /** Configured provider kind ("local" / "openai-compatible" / "ollama" / "off"). */
99
+ provider: string;
100
+ /** This session's compartment-chunk coverage. */
101
+ session: {
102
+ embedded: number;
103
+ total: number;
104
+ };
105
+ /** Project-wide active-memory coverage. */
106
+ memories: {
107
+ embedded: number;
108
+ total: number;
109
+ };
110
+ /** Project-wide git-commit coverage (only meaningful when gitEnabled). */
111
+ commits: {
112
+ embedded: number;
113
+ total: number;
114
+ gitEnabled: boolean;
115
+ };
116
+ }
117
+ /**
118
+ * Gather the embedding-coverage status for `/ctx-embed` (no-arg): which model is
119
+ * active, and how much of this session's history / the project's memories /
120
+ * git commits are embedded under it. Pure reads — no provider calls.
121
+ */
122
+ export declare function getEmbeddingCoverageStatus(db: Database, projectIdentity: string, sessionId: string): EmbeddingCoverageStatus;
85
123
  export declare function sweepAllRegisteredProjects(db: Database, batchSize?: number): Promise<{
86
124
  memoriesEmbedded: number;
87
125
  commitsEmbedded: number;
@@ -1 +1 @@
1
- {"version":3,"file":"project-embedding-registry.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/project-embedding-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-embedding-registry.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/project-embedding-registry.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,12 @@ export declare function getSchemaFenceRejection(): {
3
3
  persistedVersion: number;
4
4
  supportedVersion: number;
5
5
  } | null;
6
- export declare const LATEST_SUPPORTED_VERSION = 36;
6
+ export declare const LATEST_SUPPORTED_VERSION = 38;
7
7
  export interface OpenDatabaseOptions {
8
8
  dbPath?: string;
9
9
  latestSupportedVersion?: number;
10
10
  }
11
+ export declare function getDatabasePath(db: Database): string | null;
11
12
  export declare function getPersistedSchemaVersion(db: Database): number;
12
13
  export declare function schemaVersionIsSupported(db: Database, latestSupportedVersion?: number): boolean;
13
14
  export declare function enforceSchemaFence(db: Database, dbPath: string, latestSupportedVersion: number): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"storage-db.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/storage-db.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAuB/C,wBAAgB,uBAAuB,IAAI;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC5B,GAAG,IAAI,CAEP;AAED,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,MAAM,WAAW,mBAAmB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACnC;AA0GD,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,CAW9D;AAED,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,sBAAsB,SAA2B,GAClD,OAAO,CAET;AAgBD,wBAAgB,kBAAkB,CAC9B,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,MAAM,EACd,sBAAsB,EAAE,MAAM,GAC/B,OAAO,CAUT;AAWD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAE/F;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAM3D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAOpD;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA01BrD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAIrD;AAuID,wBAAgB,YAAY,CACxB,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACnB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,IAAI,QAAQ,GAAG,IAAI,CAAC;AAChD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;AAC9D,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,QAAQ,GAAG,IAAI,CAAC;AA8F5E,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,GAAG,OAAO,CAGhE;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAG9E;AAED,wBAAgB,aAAa,IAAI,IAAI,CAUpC;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"storage-db.d.ts","sourceRoot":"","sources":["../../../src/features/magic-context/storage-db.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAwB/C,wBAAgB,uBAAuB,IAAI;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC5B,GAAG,IAAI,CAEP;AAED,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,MAAM,WAAW,mBAAmB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACnC;AA6BD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAE3D;AA+ED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,CAW9D;AAED,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,sBAAsB,SAA2B,GAClD,OAAO,CAET;AAgBD,wBAAgB,kBAAkB,CAC9B,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,MAAM,EACd,sBAAsB,EAAE,MAAM,GAC/B,OAAO,CAUT;AAWD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAE/F;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAM3D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAOpD;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAg4BrD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAIrD;AAyID,wBAAgB,YAAY,CACxB,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACnB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,IAAI,QAAQ,GAAG,IAAI,CAAC;AAChD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;AAC9D,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,QAAQ,GAAG,IAAI,CAAC;AA+F5E,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,GAAG,OAAO,CAGhE;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAG9E;AAED,wBAAgB,aAAa,IAAI,IAAI,CAUpC;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC"}