@reqlan/analytical 0.9.1 → 0.10.1

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 (179) hide show
  1. package/README.md +19 -2
  2. package/README.template.md +1 -1
  3. package/out/core/barrel-page.d.ts +2 -1
  4. package/out/core/barrel-page.js +18 -83
  5. package/out/core/barrel-page.js.map +1 -1
  6. package/out/core/base-discovery.d.ts +6 -0
  7. package/out/core/base-discovery.js +47 -2
  8. package/out/core/base-discovery.js.map +1 -1
  9. package/out/core/create-base.js +10 -14
  10. package/out/core/create-base.js.map +1 -1
  11. package/out/core/file-reference-resolve.js +3 -1
  12. package/out/core/file-reference-resolve.js.map +1 -1
  13. package/out/core/index-error.d.ts +3 -3
  14. package/out/core/index-error.js.map +1 -1
  15. package/out/core/index-state-types.d.ts +47 -0
  16. package/out/core/index-state-types.js +11 -0
  17. package/out/core/index-state-types.js.map +1 -0
  18. package/out/core/path-relative.d.ts +15 -0
  19. package/out/core/path-relative.js +84 -0
  20. package/out/core/path-relative.js.map +1 -0
  21. package/out/core/rqignore.js +62 -62
  22. package/out/core/rqignore.js.map +1 -1
  23. package/out/core/types.d.ts +4 -3
  24. package/out/core/types.js +4 -1
  25. package/out/core/types.js.map +1 -1
  26. package/out/core/workspace-paths.d.ts +1 -2
  27. package/out/core/workspace-paths.js +6 -46
  28. package/out/core/workspace-paths.js.map +1 -1
  29. package/out/export/build-export-snapshot.js +1 -1
  30. package/out/export/build-export-snapshot.js.map +1 -1
  31. package/out/export/export-utils.d.ts +5 -0
  32. package/out/export/export-utils.js +38 -0
  33. package/out/export/export-utils.js.map +1 -0
  34. package/out/export/write-csv-export.js +1 -1
  35. package/out/export/write-csv-export.js.map +1 -1
  36. package/out/export/write-markdown-export.js +1 -1
  37. package/out/export/write-markdown-export.js.map +1 -1
  38. package/out/index-store/base-registry.d.ts +2 -3
  39. package/out/index-store/base-registry.js +8 -4
  40. package/out/index-store/base-registry.js.map +1 -1
  41. package/out/index-store/fuzzy-search-hit.d.ts +10 -0
  42. package/out/index-store/fuzzy-search-hit.js +2 -0
  43. package/out/index-store/fuzzy-search-hit.js.map +1 -0
  44. package/out/index-store/index-diagnostics-store.d.ts +4 -0
  45. package/out/index-store/index-diagnostics-store.js +44 -88
  46. package/out/index-store/index-diagnostics-store.js.map +1 -1
  47. package/out/index-store/index-file-error.d.ts +1 -1
  48. package/out/index-store/index-parse-issues.d.ts +4 -3
  49. package/out/index-store/index-parse-issues.js +0 -38
  50. package/out/index-store/index-parse-issues.js.map +1 -1
  51. package/out/index-store/index-status.d.ts +1 -1
  52. package/out/index-store/sqlite-store.d.ts +6 -2
  53. package/out/index-store/sqlite-store.js +70 -613
  54. package/out/index-store/sqlite-store.js.map +1 -1
  55. package/out/index-store/webview-graph-queries.d.ts +5 -0
  56. package/out/index-store/webview-graph-queries.js.map +1 -1
  57. package/out/index-store/workspace-index-file.d.ts +3 -14
  58. package/out/index-store/workspace-index-file.js +1 -114
  59. package/out/index-store/workspace-index-file.js.map +1 -1
  60. package/out/index-store/workspace-index-sync.d.ts +4 -17
  61. package/out/index-store/workspace-index-sync.js +29 -11
  62. package/out/index-store/workspace-index-sync.js.map +1 -1
  63. package/out/index-store/workspace-index.d.ts +36 -9
  64. package/out/index-store/workspace-index.js +223 -120
  65. package/out/index-store/workspace-index.js.map +1 -1
  66. package/out/index.d.ts +16 -43
  67. package/out/index.js +9 -25
  68. package/out/index.js.map +1 -1
  69. package/out/native/generated.d.ts +102 -0
  70. package/out/native/generated.js +4 -0
  71. package/out/native/generated.js.map +1 -0
  72. package/out/native/index.d.ts +17 -0
  73. package/out/native/index.js +12 -0
  74. package/out/native/index.js.map +1 -0
  75. package/out/native/load-native.d.ts +50 -0
  76. package/out/native/load-native.js +186 -0
  77. package/out/native/load-native.js.map +1 -0
  78. package/out/{analysis-api.d.ts → native/native-analysis-api.d.ts} +19 -19
  79. package/out/native/native-analysis-api.js +212 -0
  80. package/out/native/native-analysis-api.js.map +1 -0
  81. package/out/native/native-index-store.d.ts +5 -0
  82. package/out/native/native-index-store.js +6 -0
  83. package/out/native/native-index-store.js.map +1 -0
  84. package/out/native/native-sql-db.d.ts +135 -0
  85. package/out/native/native-sql-db.js +217 -0
  86. package/out/native/native-sql-db.js.map +1 -0
  87. package/out/native/native-workspace-index.d.ts +164 -0
  88. package/out/native/native-workspace-index.js +283 -0
  89. package/out/native/native-workspace-index.js.map +1 -0
  90. package/out/native/open-analysis-api.d.ts +16 -0
  91. package/out/native/open-analysis-api.js +21 -0
  92. package/out/native/open-analysis-api.js.map +1 -0
  93. package/out/native/parse-source.d.ts +24 -0
  94. package/out/native/parse-source.js +26 -0
  95. package/out/native/parse-source.js.map +1 -0
  96. package/package.json +18 -30
  97. package/out/analysis/analyser-registry.d.ts +0 -21
  98. package/out/analysis/analyser-registry.js +0 -33
  99. package/out/analysis/analyser-registry.js.map +0 -1
  100. package/out/analysis/completion-tracking-analyser.d.ts +0 -3
  101. package/out/analysis/completion-tracking-analyser.js +0 -37
  102. package/out/analysis/completion-tracking-analyser.js.map +0 -1
  103. package/out/analysis/contextual-search.d.ts +0 -26
  104. package/out/analysis/contextual-search.js +0 -94
  105. package/out/analysis/contextual-search.js.map +0 -1
  106. package/out/analysis/deprecation-impact-analyser.d.ts +0 -3
  107. package/out/analysis/deprecation-impact-analyser.js +0 -21
  108. package/out/analysis/deprecation-impact-analyser.js.map +0 -1
  109. package/out/analysis/file-related-analyser.d.ts +0 -5
  110. package/out/analysis/file-related-analyser.js +0 -41
  111. package/out/analysis/file-related-analyser.js.map +0 -1
  112. package/out/analysis/fuzzy-search-analyser.d.ts +0 -17
  113. package/out/analysis/fuzzy-search-analyser.js +0 -25
  114. package/out/analysis/fuzzy-search-analyser.js.map +0 -1
  115. package/out/analysis/fuzzy-search-worker-client.d.ts +0 -39
  116. package/out/analysis/fuzzy-search-worker-client.js +0 -178
  117. package/out/analysis/fuzzy-search-worker-client.js.map +0 -1
  118. package/out/analysis/fuzzy-search-worker.d.ts +0 -32
  119. package/out/analysis/fuzzy-search-worker.js +0 -81
  120. package/out/analysis/fuzzy-search-worker.js.map +0 -1
  121. package/out/analysis/fuzzy-search.d.ts +0 -62
  122. package/out/analysis/fuzzy-search.js +0 -471
  123. package/out/analysis/fuzzy-search.js.map +0 -1
  124. package/out/analysis/git-dates-analyser.d.ts +0 -12
  125. package/out/analysis/git-dates-analyser.js +0 -96
  126. package/out/analysis/git-dates-analyser.js.map +0 -1
  127. package/out/analysis/list-ideas-analyser.d.ts +0 -3
  128. package/out/analysis/list-ideas-analyser.js +0 -7
  129. package/out/analysis/list-ideas-analyser.js.map +0 -1
  130. package/out/analysis/local-graph-analyser.d.ts +0 -6
  131. package/out/analysis/local-graph-analyser.js +0 -42
  132. package/out/analysis/local-graph-analyser.js.map +0 -1
  133. package/out/analysis/semantic-search-analyser.d.ts +0 -8
  134. package/out/analysis/semantic-search-analyser.js +0 -51
  135. package/out/analysis/semantic-search-analyser.js.map +0 -1
  136. package/out/analysis-api.js +0 -199
  137. package/out/analysis-api.js.map +0 -1
  138. package/out/core/analytical-store.d.ts +0 -85
  139. package/out/core/analytical-store.js +0 -143
  140. package/out/core/analytical-store.js.map +0 -1
  141. package/out/core/context-model.d.ts +0 -204
  142. package/out/core/context-model.js +0 -36
  143. package/out/core/context-model.js.map +0 -1
  144. package/out/core/context-signals.d.ts +0 -154
  145. package/out/core/context-signals.js +0 -406
  146. package/out/core/context-signals.js.map +0 -1
  147. package/out/create-runtime.d.ts +0 -47
  148. package/out/create-runtime.js +0 -79
  149. package/out/create-runtime.js.map +0 -1
  150. package/out/export/export-html.d.ts +0 -4
  151. package/out/export/export-html.js +0 -12
  152. package/out/export/export-html.js.map +0 -1
  153. package/out/export/html-export-assets.d.ts +0 -3
  154. package/out/export/html-export-assets.js +0 -2294
  155. package/out/export/html-export-assets.js.map +0 -1
  156. package/out/export/html-export-template.d.ts +0 -18
  157. package/out/export/html-export-template.js +0 -1154
  158. package/out/export/html-export-template.js.map +0 -1
  159. package/out/export/html-export-utils.d.ts +0 -86
  160. package/out/export/html-export-utils.js +0 -485
  161. package/out/export/html-export-utils.js.map +0 -1
  162. package/out/export/write-html-export.d.ts +0 -2
  163. package/out/export/write-html-export.js +0 -181
  164. package/out/export/write-html-export.js.map +0 -1
  165. package/out/graph/physics-core-source.d.ts +0 -5
  166. package/out/graph/physics-core-source.js +0 -8
  167. package/out/graph/physics-core-source.js.map +0 -1
  168. package/out/graph/physics-core.d.ts +0 -141
  169. package/out/graph/physics-core.js +0 -237
  170. package/out/graph/physics-core.js.map +0 -1
  171. package/out/index-store/file-treatment.d.ts +0 -40
  172. package/out/index-store/file-treatment.js +0 -144
  173. package/out/index-store/file-treatment.js.map +0 -1
  174. package/out/index-store/idea-extractor.d.ts +0 -11
  175. package/out/index-store/idea-extractor.js +0 -351
  176. package/out/index-store/idea-extractor.js.map +0 -1
  177. package/out/index-store/overview-coverage.d.ts +0 -23
  178. package/out/index-store/overview-coverage.js +0 -254
  179. package/out/index-store/overview-coverage.js.map +0 -1
@@ -1,13 +1,12 @@
1
1
  /**
2
- * Multi-base index registry: one WorkspaceIndex + AnalyticalStore per base.
2
+ * Multi-base index registry: one WorkspaceIndex per base. The index lifecycle
3
+ * state now lives in the native runtime, not a per-base Zustand store.
3
4
  */
4
- import type { AnalyticalStore } from '../core/analytical-store.js';
5
5
  import { type BaseDescriptor } from '../core/base-discovery.js';
6
6
  import type { IndexStatusSnapshot } from './index-status.js';
7
7
  import { WorkspaceIndex } from './workspace-index.js';
8
8
  export interface RegisteredBase {
9
9
  descriptor: BaseDescriptor;
10
- store: AnalyticalStore;
11
10
  index: WorkspaceIndex;
12
11
  }
13
12
  export interface BaseStatusEntry {
@@ -1,6 +1,10 @@
1
- import { createAnalyticalStore } from '../core/analytical-store.js';
1
+ /**
2
+ * Multi-base index registry: one WorkspaceIndex per base. The index lifecycle
3
+ * state now lives in the native runtime, not a per-base Zustand store.
4
+ */
2
5
  import { baseForPath, discoverBases, filesOwnedByBase, selectDefaultBase } from '../core/base-discovery.js';
3
6
  import { resolveApplicationMemoryPath } from '../core/application-memory.js';
7
+ import { loadNativeEngine } from '../native/load-native.js';
4
8
  import { WorkspaceIndex } from './workspace-index.js';
5
9
  export class BaseRegistry {
6
10
  constructor() {
@@ -31,6 +35,7 @@ export class BaseRegistry {
31
35
  }
32
36
  /** Replace registry contents from discovered descriptors (does not open indexes). */
33
37
  replaceDescriptors(bases) {
38
+ loadNativeEngine();
34
39
  const keep = new Set(bases.map(b => b.id));
35
40
  for (const id of [...this.entries.keys()]) {
36
41
  if (!keep.has(id)) {
@@ -43,10 +48,9 @@ export class BaseRegistry {
43
48
  if (this.entries.has(descriptor.id)) {
44
49
  continue;
45
50
  }
46
- const store = createAnalyticalStore();
47
51
  const storagePath = resolveApplicationMemoryPath(descriptor.root);
48
- const index = new WorkspaceIndex(store, storagePath, descriptor.root);
49
- this.entries.set(descriptor.id, { descriptor, store, index });
52
+ const index = new WorkspaceIndex(storagePath, descriptor.root);
53
+ this.entries.set(descriptor.id, { descriptor, index });
50
54
  }
51
55
  }
52
56
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base-registry.js","sourceRoot":"","sources":["../../src/index-store/base-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-registry.js","sourceRoot":"","sources":["../../src/index-store/base-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /** Minimal hit shape returned by native fuzzySearch (no JS ranking module). */
2
+ export interface FuzzySearchHit {
3
+ id: string;
4
+ name: string;
5
+ kind: string;
6
+ fileUri: string;
7
+ summary: string;
8
+ lineStart: number;
9
+ score: number;
10
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=fuzzy-search-hit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzy-search-hit.js","sourceRoot":"","sources":["../../src/index-store/fuzzy-search-hit.ts"],"names":[],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { NativeSqlConnection } from '../native/native-sql-db.js';
1
2
  export type IndexTimingTrigger = 'soft_sync' | 'rebuild' | 'enqueue' | 'stale';
2
3
  export type IndexFileOutcome = 'mtime_skip' | 'mtime_refresh' | 'hash_skip' | 'persisted' | 'error';
3
4
  export interface IndexFileTimingRecord {
@@ -58,7 +59,10 @@ export declare class IndexDiagnosticsStore {
58
59
  private readonly db;
59
60
  private constructor();
60
61
  static open(dbPath: string): Promise<IndexDiagnosticsStore>;
62
+ /** Wrap an already-open native connection (e.g. NativeWorkspaceIndex diagnostics DB). */
63
+ static fromConnection(conn: NativeSqlConnection): Promise<IndexDiagnosticsStore>;
61
64
  close(): Promise<void>;
65
+ static deleteDatabaseFile(dbPath: string): Promise<void>;
62
66
  recordSyncRun(run: IndexSyncRunRecord): Promise<number>;
63
67
  listRecentRuns(limit?: number): Promise<IndexSyncRunSummary[]>;
64
68
  getRun(runId: number): Promise<IndexSyncRunSummary | undefined>;
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * Per-base indexing timing diagnostic store (`index-diagnostics.sqlite`).
3
3
  * Sibling of ideas-index; survives Clear & rebuild.
4
+ * Backed by rusqlite via the core native engine (NativeSqlDb).
4
5
  *
5
6
  * rq:["../../../reqlan rq/extension/module/index.rq".index_diagnostics_store]
6
7
  * rq:["../../../reqlan rq/extension/features-index-diagnostics.rq".index_diagnostics_metrics]
7
8
  * rq:["../../../reqlan rq/indexer/indexer.rq".index_diagnostics_timing]
8
9
  */
9
- import { mkdir, readFile, writeFile } from 'node:fs/promises';
10
- import { dirname } from 'node:path';
10
+ import { unlink } from 'node:fs/promises';
11
+ import { NativeSqlConnection } from '../native/native-sql-db.js';
11
12
  const SCHEMA_VERSION = 1;
12
13
  const MAX_RETAINED_RUNS = 50;
13
14
  const BASE_SQL = [
@@ -54,50 +55,54 @@ export class IndexDiagnosticsStore {
54
55
  this.db = db;
55
56
  }
56
57
  static async open(dbPath) {
57
- const db = await openDatabase(dbPath);
58
- const store = new IndexDiagnosticsStore(db);
58
+ const conn = await NativeSqlConnection.open(dbPath);
59
+ return IndexDiagnosticsStore.fromConnection(conn);
60
+ }
61
+ /** Wrap an already-open native connection (e.g. NativeWorkspaceIndex diagnostics DB). */
62
+ static async fromConnection(conn) {
63
+ const store = new IndexDiagnosticsStore({ conn });
59
64
  await store.migrate();
60
65
  return store;
61
66
  }
62
67
  async close() {
63
- await persistDatabase(this.db);
64
- this.db.db.close();
68
+ this.db.conn.close();
69
+ }
70
+ static async deleteDatabaseFile(dbPath) {
71
+ for (const suffix of ['', '-wal', '-shm']) {
72
+ try {
73
+ await unlink(`${dbPath}${suffix}`);
74
+ }
75
+ catch (error) {
76
+ if (typeof error === 'object' &&
77
+ error !== null &&
78
+ 'code' in error &&
79
+ error.code === 'ENOENT') {
80
+ continue;
81
+ }
82
+ throw error;
83
+ }
84
+ }
65
85
  }
66
86
  async recordSyncRun(run) {
67
87
  try {
68
- this.db.db.run('BEGIN');
69
- this.db.db.run(`INSERT INTO sync_runs (
88
+ this.db.conn.run('BEGIN');
89
+ this.db.conn.run(`INSERT INTO sync_runs (
70
90
  started_at, finished_at, duration_ms, trigger,
71
91
  total_files, skipped_mtime, indexed_files, error_files,
72
92
  cancelled, sum_file_duration_ms, avg_path_depth
73
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [
74
- run.startedAt,
75
- run.finishedAt,
76
- run.durationMs,
77
- run.trigger,
78
- run.totalFiles,
79
- run.skippedMtime,
80
- run.indexedFiles,
81
- run.errorFiles,
82
- run.cancelled ? 1 : 0,
83
- run.sumFileDurationMs,
84
- run.avgPathDepth ?? null
85
- ]);
86
- const idRow = await get(this.db, 'SELECT last_insert_rowid() AS id');
87
- const runId = idRow?.id ?? 0;
93
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, run.startedAt, run.finishedAt, run.durationMs, run.trigger, run.totalFiles, run.skippedMtime, run.indexedFiles, run.errorFiles, run.cancelled ? 1 : 0, run.sumFileDurationMs, run.avgPathDepth ?? null);
94
+ const runId = this.db.conn.lastInsertRowid();
88
95
  for (const file of run.files) {
89
- this.db.db.run(`INSERT INTO file_timings (run_id, file_uri, duration_ms, outcome, path_depth)
90
- VALUES (?, ?, ?, ?, ?)`, [runId, file.fileUri, file.durationMs, file.outcome, file.pathDepth]);
96
+ this.db.conn.run(`INSERT INTO file_timings (run_id, file_uri, duration_ms, outcome, path_depth)
97
+ VALUES (?, ?, ?, ?, ?)`, runId, file.fileUri, file.durationMs, file.outcome, file.pathDepth);
91
98
  }
92
- this.db.db.run('COMMIT');
93
- this.db.dirty = true;
99
+ this.db.conn.run('COMMIT');
94
100
  await this.trimOldRuns();
95
- await persistDatabase(this.db);
96
101
  return runId;
97
102
  }
98
103
  catch (error) {
99
104
  try {
100
- this.db.db.run('ROLLBACK');
105
+ this.db.conn.run('ROLLBACK');
101
106
  }
102
107
  catch {
103
108
  // ignore
@@ -106,11 +111,11 @@ export class IndexDiagnosticsStore {
106
111
  }
107
112
  }
108
113
  async listRecentRuns(limit = 20) {
109
- const rows = await all(this.db, `SELECT * FROM sync_runs ORDER BY id DESC LIMIT ?`, Math.max(1, Math.min(limit, MAX_RETAINED_RUNS)));
114
+ const rows = this.db.conn.all(`SELECT * FROM sync_runs ORDER BY id DESC LIMIT ?`, Math.max(1, Math.min(limit, MAX_RETAINED_RUNS)));
110
115
  return rows.map(mapRunSummary);
111
116
  }
112
117
  async getRun(runId) {
113
- const row = await get(this.db, `SELECT * FROM sync_runs WHERE id = ?`, runId);
118
+ const row = this.db.conn.get(`SELECT * FROM sync_runs WHERE id = ?`, runId);
114
119
  return row ? mapRunSummary(row) : undefined;
115
120
  }
116
121
  async listFileTimings(runId, options) {
@@ -121,11 +126,11 @@ export class IndexDiagnosticsStore {
121
126
  ? 'file_uri ASC'
122
127
  : 'duration_ms DESC, file_uri ASC';
123
128
  const limit = Math.max(1, Math.min(options?.limit ?? 500, 2000));
124
- const rows = await all(this.db, `SELECT * FROM file_timings WHERE run_id = ? ORDER BY ${orderSql} LIMIT ?`, runId, limit);
129
+ const rows = this.db.conn.all(`SELECT * FROM file_timings WHERE run_id = ? ORDER BY ${orderSql} LIMIT ?`, runId, limit);
125
130
  return rows.map(mapFileTiming);
126
131
  }
127
132
  async getOverview() {
128
- const agg = await get(this.db, `SELECT
133
+ const agg = this.db.conn.get(`SELECT
129
134
  COUNT(*) AS run_count,
130
135
  COALESCE(SUM(duration_ms), 0) AS total_duration,
131
136
  COALESCE(SUM(sum_file_duration_ms), 0) AS total_file_duration,
@@ -145,21 +150,18 @@ export class IndexDiagnosticsStore {
145
150
  }
146
151
  async migrate() {
147
152
  for (const sql of BASE_SQL) {
148
- this.db.db.run(sql);
153
+ this.db.conn.exec(sql);
149
154
  }
150
- this.db.db.run(`INSERT INTO meta (key, value) VALUES (?, ?)
151
- ON CONFLICT(key) DO UPDATE SET value = excluded.value`, ['schema_version', String(SCHEMA_VERSION)]);
152
- this.db.dirty = true;
153
- await persistDatabase(this.db);
155
+ this.db.conn.run(`INSERT INTO meta (key, value) VALUES (?, ?)
156
+ ON CONFLICT(key) DO UPDATE SET value = excluded.value`, 'schema_version', String(SCHEMA_VERSION));
154
157
  }
155
158
  async trimOldRuns() {
156
- const cutoff = await get(this.db, `SELECT id FROM sync_runs ORDER BY id DESC LIMIT 1 OFFSET ?`, MAX_RETAINED_RUNS - 1);
159
+ const cutoff = this.db.conn.get(`SELECT id FROM sync_runs ORDER BY id DESC LIMIT 1 OFFSET ?`, MAX_RETAINED_RUNS - 1);
157
160
  if (!cutoff) {
158
161
  return;
159
162
  }
160
- this.db.db.run(`DELETE FROM file_timings WHERE run_id < ?`, [cutoff.id]);
161
- this.db.db.run(`DELETE FROM sync_runs WHERE id < ?`, [cutoff.id]);
162
- this.db.dirty = true;
163
+ this.db.conn.run(`DELETE FROM file_timings WHERE run_id < ?`, cutoff.id);
164
+ this.db.conn.run(`DELETE FROM sync_runs WHERE id < ?`, cutoff.id);
163
165
  }
164
166
  }
165
167
  function mapRunSummary(row) {
@@ -188,50 +190,4 @@ function mapFileTiming(row) {
188
190
  pathDepth: row.path_depth
189
191
  };
190
192
  }
191
- let sqlJsModulePromise;
192
- async function getSqlJsModule() {
193
- sqlJsModulePromise ?? (sqlJsModulePromise = import('sql.js/dist/sql-asm.js').then(({ default: initSqlJs }) => initSqlJs({})));
194
- return sqlJsModulePromise;
195
- }
196
- async function openDatabase(path) {
197
- await mkdir(dirname(path), { recursive: true });
198
- const SQL = await getSqlJsModule();
199
- let bytes;
200
- try {
201
- bytes = new Uint8Array(await readFile(path));
202
- }
203
- catch {
204
- bytes = undefined;
205
- }
206
- return {
207
- db: bytes ? new SQL.Database(bytes) : new SQL.Database(),
208
- dbPath: path,
209
- dirty: false
210
- };
211
- }
212
- async function persistDatabase(db) {
213
- if (!db.dirty) {
214
- return;
215
- }
216
- await mkdir(dirname(db.dbPath), { recursive: true });
217
- await writeFile(db.dbPath, Buffer.from(db.db.export()));
218
- db.dirty = false;
219
- }
220
- async function get(db, sql, ...params) {
221
- const rows = await all(db, sql, ...params);
222
- return rows[0];
223
- }
224
- async function all(db, sql, ...params) {
225
- const statement = db.db.prepare(sql, params);
226
- const rows = [];
227
- try {
228
- while (statement.step()) {
229
- rows.push(statement.getAsObject());
230
- }
231
- return rows;
232
- }
233
- finally {
234
- statement.free();
235
- }
236
- }
237
193
  //# sourceMappingURL=index-diagnostics-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-diagnostics-store.js","sourceRoot":"","sources":["../../src/index-store/index-diagnostics-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-diagnostics-store.js","sourceRoot":"","sources":["../../src/index-store/index-diagnostics-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { IndexErrorPhase } from '../core/analytical-store.js';
1
+ import type { IndexErrorPhase } from '../core/index-state-types.js';
2
2
  import type { FileIndexIssueDraft } from './index-parse-issues.js';
3
3
  export declare class IndexFileError extends Error {
4
4
  readonly fileUri: string;
@@ -1,8 +1,9 @@
1
- import type { LangiumDocument } from 'langium';
2
- import type { FileIndexIssue, IndexErrorPhase } from '../core/analytical-store.js';
1
+ /**
2
+ * File-index issue helpers (Langium document parse helpers removed after native cutover).
3
+ */
4
+ import type { FileIndexIssue, IndexErrorPhase } from '../core/index-state-types.js';
3
5
  import type { IdeaRecord } from '../core/types.js';
4
6
  export type FileIndexIssueDraft = Omit<FileIndexIssue, 'fileUri' | 'at'>;
5
- export declare function collectParseIssues(document: LangiumDocument): FileIndexIssueDraft[];
6
7
  export declare function fileIssue(message: string, phase: IndexErrorPhase, line?: number, column?: number, ideaNames?: string[]): FileIndexIssueDraft;
7
8
  export declare function fileIssueFromError(phase: IndexErrorPhase, error: unknown, fallbackMessage: string, line?: number, column?: number, ideaNames?: string[]): FileIndexIssueDraft;
8
9
  export declare function unnamedIdeaIssues(ideas: IdeaRecord[]): FileIndexIssueDraft[];
@@ -1,25 +1,4 @@
1
1
  import { errorCauseMessage } from '../core/index-error.js';
2
- export function collectParseIssues(document) {
3
- const issues = [];
4
- for (const error of document.parseResult.parserErrors) {
5
- const position = parserErrorPosition(error);
6
- issues.push({
7
- line: position.line,
8
- column: position.column,
9
- message: error.message,
10
- phase: 'parse'
11
- });
12
- }
13
- for (const error of document.parseResult.lexerErrors) {
14
- issues.push({
15
- line: Math.max(0, (error.line ?? 1) - 1),
16
- column: Math.max(0, (error.column ?? 1) - 1),
17
- message: error.message,
18
- phase: 'parse'
19
- });
20
- }
21
- return issues;
22
- }
23
2
  export function fileIssue(message, phase, line = 0, column = 0, ideaNames) {
24
3
  return { line, column, message, phase, ideaNames };
25
4
  }
@@ -42,21 +21,4 @@ export function unnamedIdeaIssues(ideas) {
42
21
  export function validIdeas(ideas) {
43
22
  return ideas.filter(idea => idea.name?.trim());
44
23
  }
45
- function parserErrorPosition(error) {
46
- const token = error.token;
47
- if (token && !Number.isNaN(token.startOffset) && token.startLine !== undefined) {
48
- return {
49
- line: Math.max(0, token.startLine - 1),
50
- column: Math.max(0, (token.startColumn ?? 1) - 1)
51
- };
52
- }
53
- const previousToken = error.previousToken;
54
- if (previousToken && !Number.isNaN(previousToken.startOffset) && previousToken.endLine !== undefined) {
55
- return {
56
- line: Math.max(0, previousToken.endLine - 1),
57
- column: Math.max(0, (previousToken.endColumn ?? 1) - 1)
58
- };
59
- }
60
- return { line: 0, column: 0 };
61
- }
62
24
  //# sourceMappingURL=index-parse-issues.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-parse-issues.js","sourceRoot":"","sources":["../../src/index-store/index-parse-issues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-parse-issues.js","sourceRoot":"","sources":["../../src/index-store/index-parse-issues.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,MAAM,UAAU,SAAS,CACrB,OAAe,EACf,KAAsB,EACtB,IAAI,GAAG,CAAC,EACR,MAAM,GAAG,CAAC,EACV,SAAoB;IAEpB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAC9B,KAAsB,EACtB,KAAc,EACd,eAAuB,EACvB,IAAI,GAAG,CAAC,EACR,MAAM,GAAG,CAAC,EACV,SAAoB;IAEpB,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,OAAO;QACH,IAAI;QACJ,MAAM;QACN,OAAO,EAAE,eAAe;QACxB,KAAK;QACL,SAAS;QACT,KAAK;KACR,CAAC;AACN,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACjD,OAAO,KAAK;SACP,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SAClC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,uCAAuC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;AACvG,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAmB;IAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { DocumentUpdate, IndexState, WorkspaceFileChange } from '../core/analytical-store.js';
1
+ import type { DocumentUpdate, IndexState, WorkspaceFileChange } from '../core/index-state-types.js';
2
2
  import type { FileIndexIssueView, IndexErrorDetail } from '../core/index-error.js';
3
3
  export interface IndexSyncProgress {
4
4
  processed: number;
@@ -1,19 +1,23 @@
1
+ import { NativeSqlConnection } from '../native/native-sql-db.js';
1
2
  import type { EdgeRecord, IdeaRecord, IdeaReferenceChip, IdeaSummary, IdeaWithRange, IdeasetKind, IdeasetMemberRow, IdeasetTableRow, IdeaTableRow, ReferenceListRow, ReferenceTableRow, AncestorChainResult, TodoIdeaListResult } from '../core/types.js';
2
3
  import type { AttributesTableQuery, AttributeTableRow, IdeasTableQuery, IdeasetsTableQuery, ReferencesTableQuery } from './webview-table-queries.js';
3
4
  import type { GitIdeaTimelineEvent } from './webview-table-queries.js';
4
- import { type GraphViewQuery } from './webview-graph-queries.js';
5
+ import type { GraphViewQuery } from './webview-graph-queries.js';
5
6
  export declare class SqliteIndexStore {
6
7
  private readonly db;
7
8
  private constructor();
8
9
  static open(dbPath: string): Promise<SqliteIndexStore>;
10
+ /** Wrap an already-open native connection (e.g. NativeWorkspaceIndex ideas DB). */
11
+ static fromConnection(conn: NativeSqlConnection): Promise<SqliteIndexStore>;
9
12
  close(): Promise<void>;
10
- /** Close the in-memory database without writing back to disk. */
13
+ /** Close without extra flush work (file-backed rusqlite already durable). */
11
14
  closeWithoutPersist(): void;
12
15
  static deleteDatabaseFile(dbPath: string): Promise<void>;
13
16
  getDocumentHash(fileUri: string): Promise<string | undefined>;
14
17
  getDocumentMtimeMs(fileUri: string): Promise<number | undefined>;
15
18
  updateDocumentMtime(fileUri: string, mtimeMs: number): Promise<void>;
16
19
  listDocumentMtimes(): Promise<Map<string, number | undefined>>;
20
+ listDocumentUris(): Promise<string[]>;
17
21
  upsertDocument(fileUri: string, contentHash: string, ideas: IdeaRecord[], edges: EdgeRecord[], mtimeMs?: number): Promise<void>;
18
22
  removeDocument(fileUri: string): Promise<void>;
19
23
  /** Delete many document rows (and their ideas/edges) in one transaction. */