Printable idea sheet
unify_inbound_indexes
reqlan rq/indexer/cache-reuse.rq:106
Katz 0.213
Inlay hints and code lens must read inbound edges from edges_table,
not Langium IndexManager.
Query: edges whose `target_id` is an idea in the open file, plus `comment_link` /
`file_reference` rows whose `target_file` matches that file.
File-top CodeLens uses the `file_reference` subset
( file_inbound_code_lens ).
The extension host runs the query and pushes a snapshot to the language server.
The language server does not open SQLite ( extension_ui_consumers ).
Updates follow index sync independently of open-file parse
( open_file_reference_sequencing, inbound_snapshot_events ).
Mutation hooks already use the same store. Share one graph.
Related: index_cache_reuse, local_symbolic_analysis,
inbound_inlay_index_performance.
- implementation
- sqlite-store.ts, inbound-file-referencers.ts, reqlan-inlay-hint-provider.ts, reqlan-inbound-reference-inlay-label.ts, reqlan-inbound-snapshot.ts, reqlan-reference-code-lens.ts, reqlan-file-inbound-code-lens.ts, register-inbound-sqlite-sync.ts, inbound-snapshot-push.ts, queries.rs
- status
- done
- tests
- queries.rs:inbound_for_file_returns_edges_targeting_ideas_in_file, queries.rs:inbound_for_file_returns_file_reference_targeting_file, inbound-referencer-index-perf.test.ts:inlay referencers come from the pushed snapshot, not findAllReferences, inbound-file-referencers.test.ts, inbound-snapshot-push.test.ts
Interactive page: unify_inbound_indexes