Commit b87e302
Your Name
feat: rebase onto upstream main — port FTS5 BM25 search, Interface registration, embeddings, cross-repo infrastructure
Rebased our PR #162 features onto upstream's latest main (commit 1d30971)
which includes MinHash SIMILAR_TO edges, CBM_CACHE_DIR, and major refactoring.
Ported features (building clean on upstream's refactored codebase):
1. FTS5 BM25 search infrastructure:
- Contentless FTS5 virtual table (nodes_fts) with camelCase token splitting
- cbm_camel_split() SQLite function: updateCloudClient → 'update Cloud Client'
- FTS5 backfill in both full pipeline and incremental pipeline
- Incremental reindex now preserves FTS5 (was wiping to 0 rows)
2. Interface registration in symbol registry:
- Added 'Interface' to label filter in process_def() (pass_definitions.c)
- Added 'Interface' to label filter in register_and_link_def() (pass_parallel.c)
- Fixes: C# class Foo : IBar now creates INHERITS → Interface edges
3. C# base_list extraction:
- Added 'base_list' to fallback base_types[] in extract_base_classes()
4. Embeddings infrastructure (opt-in via CBM_EMBEDDING_URL):
- embeddings table in SQLite schema
- cbm_cosine_sim() SQLite function for vector search
- embedding.c/h: HTTP client, text generation, RRF merge, pipeline integration
- Auto-generates embeddings during indexing when configured
5. Cross-repo infrastructure:
- cross_repo.c/h: unified _cross_repo.db builder, cross-repo search,
channel matching, trace helper
Not yet ported (follow-up commits):
- MCP tool changes (search_graph query param, generate_embeddings tool,
cross-repo tools, get_impact tool)
- Process detection (cbm_store_detect_processes)
- Channel detection (cbm_store_detect_channels)
- C# delegate event subscription (extract_calls.c)
- WRITES expansion (extract_semantic.c)
All upstream features preserved: MinHash SIMILAR_TO, pass_similarity,
CBM_CACHE_DIR, TS_FIELD() macro, extracted helpers.1 parent 1d30971 commit b87e302
File tree
12 files changed
+1923
-7
lines changed- internal/cbm
- src
- pipeline
- store
12 files changed
+1923
-7
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
148 | | - | |
| 148 | + | |
149 | 149 | | |
150 | 150 | | |
151 | 151 | | |
| |||
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
189 | | - | |
| 189 | + | |
| 190 | + | |
190 | 191 | | |
191 | 192 | | |
192 | 193 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
955 | 955 | | |
956 | 956 | | |
957 | 957 | | |
| 958 | + | |
958 | 959 | | |
959 | 960 | | |
960 | 961 | | |
| |||
0 commit comments