Referenced by4
Labels2

Referencing ideas

IdeaStatusTagsSummaryKatz
definitionThe indexer should live in the [core_analysis] module. On-disk schema: [sqlite_schema.ideas_index_sqlite] and [diagnostics_schema.diagnostics_sqlite]. Layout and WAL sidecars: [sidecars.reqlan_directory_layout]. Consumers: [consumers.index_consumers] ( extends [consumption] ). Sequencing and triggers: [sequencing.index_sequencing] ( extends [triggers] ). Cache reuse opportunities: [cache_reuse.index_cache_reuse].0.040
indexer_rustin-progressThe [index] engine ( parse-for-index → extract → SQLite persist → incremental sync ) should be written in Rust. Crate: `reqlan-index` over `reqlan-parse` per ["../core_analysis/rust_port.rq".rust_crate_layout]. Extractor ports ["../../crates/reqlan-index/src/extract.rs"] including [wildcard_reference_edges]. Store ports schema v4 ( ["../../packages/analytical/src/index-store/schema.ts"] ) via rusqlite; diagnostics live in `index-diagnostics.sqlite` on the same engine. Sync keeps [nonblocking_index]: per-file upsert, mtime skip, hard rebuild, cancellable progress. Not the Langium LSP. Comment-file indexing: [index_code_files].0.172
ideas_index_sqlitedoneThe ideas graph for one [base_ownership] lives at `<base>/.reqlan/ideas-index.sqlite` under [application_memory]. Schema version is in ( `SCHEMA_VERSION` in [schema_ts] and [schema_rust] ). Runtime migrate runs in Rust ( [store_rust] ); TypeScript opens the store and calls native migrate ( [sqlite_store] ). Keep [schema_ts] aligned with [schema_rust]. Related: [index], [indexer_rust], [ownership], [sidecars.sqlite_wal_sidecars], [diagnostics_schema.diagnostics_sqlite], [consumers.index_consumers].0.226
schema_migrationsBase tables use `CREATE … IF NOT EXISTS` ( [schema_ts] `BASE_MIGRATIONS` / [schema_rust] ). Versioned upgrades run `(current+1)..=SCHEMA_VERSION`: - v2 — edge `source_line`, `snippet`, `is_resolved` - v3 — document `mtime_ms` - v4 — idea `git_change_count` Duplicate-column errors on ALTER are ignored so re-open is safe. Fresh databases create full v4 columns, then set `schema_version` to 4. Open pragmas: `foreign_keys=ON`, `journal_mode=WAL` ( [sidecars.sqlite_wal_sidecars] ). [ideas_index_sqlite]0.058

Reference labels

"../../packages/analytical/src/index-store/schema.ts", ../../packages/analytical/src/index-store/schema.ts