@maadb/core 0.7.15 → 0.7.17

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.
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  [![TypeScript](https://img.shields.io/badge/typescript-strict-blue.svg)](tsconfig.json)
6
6
  [![Tests](https://img.shields.io/badge/tests-982%20passing-brightgreen.svg)](tests)
7
7
  [![npm](https://img.shields.io/npm/v/@maadb/core.svg)](https://www.npmjs.com/package/@maadb/core)
8
- [![Version](https://img.shields.io/badge/version-0.7.15-purple.svg)](Version.md)
8
+ [![Version](https://img.shields.io/badge/version-0.7.16-purple.svg)](Version.md)
9
9
 
10
10
  > **Markdown is the database. The engine makes it queryable.**
11
11
 
@@ -350,9 +350,10 @@ In multi-project mode, session tools are always available pre-bind: `maad_projec
350
350
 
351
351
  ## Current state
352
352
 
353
- **Current:** v0.7.15`maad version` command, CI on every push/PR (Ubuntu + Windows), LF line-ending enforcement, MAADb brand sweep, packaging hardening.
353
+ **Current:** v0.7.16dependency security wave: simple-git 3.36.0 (high-severity advisory) with engine-side env hardening, js-yaml 4.2.0 with version-independent serializer quoting, better-sqlite3 12.10.0; zero `npm audit` findings.
354
354
 
355
355
  Recent shipped scope:
356
+ - **0.7.15** — `maad version` command, CI on every push/PR (Ubuntu + Windows), LF line-ending enforcement, MAADb brand sweep, packaging hardening
356
357
  - **0.7.14** — Correctness patch from a full engine audit: CRLF/BOM-tolerant writes, merged git child environment, numeric sort ordering, composite filters on join/verify, pagination guards, pathspec-scoped audit commits
357
358
  - **0.7.13** — Per-document index-time memory guards (annotation cap + byte backstop) so one pathological document can't exhaust the engine process
358
359
  - **0.7.12** — `maad_query` sort contract (`UNSUPPORTED_SORT_FIELD` instead of silent NULL ordering), engine-stamped `createdAt`, file-path canonicalization
@@ -41,10 +41,23 @@ export interface MaadBackend {
41
41
  }>;
42
42
  getSampleDocIds(docType: DocType, limit: number): DocId[];
43
43
  removeDocument(docId: DocId): void;
44
+ /**
45
+ * 0.7.17 — refresh SQLite query-planner statistics (`ANALYZE`). Called after
46
+ * a full reindex so the planner has up-to-date selectivity data for the
47
+ * composite field_index indexes; without stats it can fall back to the
48
+ * low-selectivity deleted index and full-scan on sorted queries.
49
+ */
50
+ analyze(): void;
44
51
  getFileHash(path: FilePath): string | null;
45
52
  getAllFileHashes(): Map<FilePath, string>;
46
53
  getStats(): BackendStats;
47
54
  countBrokenRefs(): number;
55
+ /**
56
+ * 0.7.17 — count live records flagged invalid at index time (`valid = 0`).
57
+ * Backs summary()'s validation-error warning without re-reading every file,
58
+ * and is uncapped (the prior inline scan silently stopped at 100k docs).
59
+ */
60
+ countInvalidDocuments(): number;
48
61
  /**
49
62
  * 0.7.10 — return soft-deleted records (`deleted = 1`) whose `updated_at`
50
63
  * predates `olderThanIso`. Drives `maad_purge_soft_deleted`. Ordered by
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/backend/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/backend/adapter.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ export declare class SqliteBackend implements MaadBackend {
27
27
  getDocumentByPath(path: FilePath): DocumentRecord | null;
28
28
  private buildDocQuery;
29
29
  findDocuments(query: DocumentQuery): DocumentMatch[];
30
+ private findDocumentsScalarSorted;
30
31
  countDocuments(query: DocumentQuery): number;
31
32
  getFieldValues(docIds: DocId[], fieldNames: string[]): Map<string, Record<string, string>>;
32
33
  private buildObjQuery;
@@ -53,12 +54,14 @@ export declare class SqliteBackend implements MaadBackend {
53
54
  }>;
54
55
  aggregate(query: AggregateQuery): AggregateResult;
55
56
  removeDocument(docId: DocId): void;
57
+ analyze(): void;
56
58
  getFileHash(path: FilePath): string | null;
57
59
  getAllFileHashes(): Map<FilePath, string>;
58
60
  findSoftDeletedBefore(olderThanIso: string, limit: number): DocumentRecord[];
59
61
  getMeta(key: string): string | null;
60
62
  setMeta(key: string, value: string): void;
61
63
  getStats(): BackendStats;
64
+ countInvalidDocuments(): number;
62
65
  countBrokenRefs(): number;
63
66
  getBrokenRefs(): Array<{
64
67
  sourceDocId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,15 @@ export class SqliteBackend {
29
29
  this.db.exec("ALTER TABLE documents ADD COLUMN created_at TEXT NOT NULL DEFAULT ''");
30
30
  this.db.exec("UPDATE documents SET created_at = updated_at WHERE created_at = ''");
31
31
  }
32
+ // 0.7.17 — add valid column. Existing rows default to 1 (valid) and
33
+ // self-correct to their true index-time validity on the next reindex.
34
+ if (!cols.some(c => c.name === 'valid')) {
35
+ this.db.exec("ALTER TABLE documents ADD COLUMN valid INTEGER NOT NULL DEFAULT 1");
36
+ }
37
+ // Created here, after the column is guaranteed present (fresh DBs get it
38
+ // from SCHEMA_SQL's CREATE TABLE; existing DBs from the ALTER above) — it
39
+ // cannot live in SCHEMA_SQL, which runs before this migration.
40
+ this.db.exec('CREATE INDEX IF NOT EXISTS idx_documents_valid ON documents(valid, deleted)');
32
41
  }
33
42
  close() {
34
43
  this.db.close();
@@ -37,9 +46,12 @@ export class SqliteBackend {
37
46
  putDocument(doc) {
38
47
  this.db.prepare(`
39
48
  INSERT OR REPLACE INTO documents
40
- (doc_id, doc_type, schema_ref, file_path, file_hash, version, deleted, indexed_at, updated_at, created_at)
41
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
42
- `).run(doc.docId, doc.docType, doc.schemaRef, doc.filePath, doc.fileHash, doc.version, doc.deleted ? 1 : 0, doc.indexedAt, doc.updatedAt, doc.createdAt);
49
+ (doc_id, doc_type, schema_ref, file_path, file_hash, version, deleted, indexed_at, updated_at, created_at, valid)
50
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
51
+ `).run(doc.docId, doc.docType, doc.schemaRef, doc.filePath, doc.fileHash, doc.version, doc.deleted ? 1 : 0, doc.indexedAt, doc.updatedAt, doc.createdAt,
52
+ // 0.7.17 — undefined (callers that don't compute validity) is treated as
53
+ // valid so the column never blocks a write; the indexer always sets it.
54
+ doc.valid === false ? 0 : 1);
43
55
  }
44
56
  putObjects(docId, objects) {
45
57
  this.db.prepare('DELETE FROM objects WHERE doc_id = ?').run(docId);
@@ -149,6 +161,13 @@ export class SqliteBackend {
149
161
  return { where: conditions.join(' AND '), params };
150
162
  }
151
163
  findDocuments(query) {
164
+ // 0.7.17 — scalar schema-field sort takes the sort-index-driven fast path:
165
+ // walk the sort field's field_index in order, gate rows with EXISTS filter
166
+ // probes, and stop at LIMIT (no full materialize + temp-b-tree sort). System
167
+ // sort keys and list schema fields fall through to the aggregate path below.
168
+ if (query.sortBy && resolveSystemSortKey(query.sortBy) === null && !query.sortListField) {
169
+ return this.findDocumentsScalarSorted(query);
170
+ }
152
171
  const { where, params } = this.buildDocQuery(query);
153
172
  // 0.7.12 — sort resolution. Engine layer validates sortBy as either a
154
173
  // system sort key or an indexed schema field before we get here. Backend
@@ -193,6 +212,93 @@ export class SqliteBackend {
193
212
  filePath: toFilePath(row.file_path),
194
213
  }));
195
214
  }
215
+ // 0.7.17 — sort-index-driven query for scalar schema-field sorts. Drives from
216
+ // the sort field's field_index rows (one per doc for a scalar field) so the
217
+ // covering index yields rows already in sort order and the LIMIT terminates
218
+ // early — O(limit) instead of materializing and temp-b-tree sorting the whole
219
+ // matched set. Filters become correlated EXISTS probes against the index.
220
+ //
221
+ // Docs with no value for the sort field own no driving row, so they are
222
+ // gathered by a second query and concatenated on the NULL-ordering side
223
+ // (SQLite orders NULL smallest: missing sorts last under DESC, first under
224
+ // ASC) — preserving the same result SET and missing-value ordering as the
225
+ // aggregate path, while keeping the early-terminating scan for present docs.
226
+ findDocumentsScalarSorted(query) {
227
+ const dir = query.sortOrder === 'asc' ? 'ASC' : 'DESC';
228
+ const sortCol = query.sortNumeric ? 'sfi.numeric_value' : 'sfi.field_value';
229
+ const sortField = query.sortBy;
230
+ const limit = sanitizePageParam(query.limit, 50);
231
+ const offset = sanitizePageParam(query.offset, 0);
232
+ const need = offset + limit;
233
+ if (need === 0)
234
+ return [];
235
+ const docTypeClause = query.docType ? ' AND d.doc_type = ?' : '';
236
+ const docTypeParam = query.docType ? [query.docType] : [];
237
+ // Correlated EXISTS probes for filters (present-value arm). buildFilterSQL
238
+ // emits unqualified field_name/field_value/numeric_value, which bind to the
239
+ // inner field_index alias; the correlation is the alias.doc_id = sfi.doc_id.
240
+ const existsConds = [];
241
+ const existsParams = [];
242
+ let exIdx = 0;
243
+ if (query.filters) {
244
+ for (const [field, condition] of Object.entries(query.filters)) {
245
+ const atomics = Array.isArray(condition) ? condition : [condition];
246
+ for (const c of atomics) {
247
+ const { sql, values } = buildFilterSQL(field, c);
248
+ const alias = `fex${exIdx++}`;
249
+ existsConds.push(`EXISTS (SELECT 1 FROM field_index ${alias} WHERE ${alias}.doc_id = sfi.doc_id AND ${sql})`);
250
+ existsParams.push(...values);
251
+ }
252
+ }
253
+ }
254
+ const existsWhere = existsConds.length ? ' AND ' + existsConds.join(' AND ') : '';
255
+ // Arm A — docs that HAVE the sort field, in index order, early-terminating.
256
+ const presentArm = (lim) => {
257
+ const sql = `SELECT d.doc_id, d.doc_type, d.file_path ` +
258
+ `FROM field_index sfi ` +
259
+ `JOIN documents d ON d.doc_id = sfi.doc_id AND d.deleted = 0${docTypeClause} ` +
260
+ `WHERE sfi.field_name = ?${existsWhere} ` +
261
+ `ORDER BY ${sortCol} ${dir}, sfi.doc_id ${dir} ` +
262
+ `LIMIT ?`;
263
+ const params = [...docTypeParam, sortField, ...existsParams, lim];
264
+ return this.db.prepare(sql).all(...params);
265
+ };
266
+ // Arm B — docs MISSING the sort field. Filters reuse the IN form on d.doc_id.
267
+ const missingArm = (lim) => {
268
+ const conds = ['d.deleted = 0'];
269
+ const params = [];
270
+ if (query.docType) {
271
+ conds.push('d.doc_type = ?');
272
+ params.push(query.docType);
273
+ }
274
+ conds.push('NOT EXISTS (SELECT 1 FROM field_index WHERE doc_id = d.doc_id AND field_name = ?)');
275
+ params.push(sortField);
276
+ if (query.filters) {
277
+ for (const [field, condition] of Object.entries(query.filters)) {
278
+ applyFieldFilters(field, condition, conds, params);
279
+ }
280
+ }
281
+ const sql = `SELECT d.doc_id, d.doc_type, d.file_path FROM documents d ` +
282
+ `WHERE ${conds.join(' AND ')} ORDER BY d.doc_id ${dir} LIMIT ?`;
283
+ params.push(lim);
284
+ return this.db.prepare(sql).all(...params);
285
+ };
286
+ // NULL (missing) sorts smallest: present-first under DESC, missing-first
287
+ // under ASC. Fetch the leading arm up to `need`; only touch the trailing
288
+ // arm if the requested page extends past the leading arm's rows.
289
+ const leading = dir === 'DESC' ? presentArm(need) : missingArm(need);
290
+ let combined = leading;
291
+ if (leading.length < need) {
292
+ const remaining = need - leading.length;
293
+ const trailing = dir === 'DESC' ? missingArm(remaining) : presentArm(remaining);
294
+ combined = leading.concat(trailing);
295
+ }
296
+ return combined.slice(offset, offset + limit).map((row) => ({
297
+ docId: toDocId(row.doc_id),
298
+ docType: toDocType(row.doc_type),
299
+ filePath: toFilePath(row.file_path),
300
+ }));
301
+ }
196
302
  countDocuments(query) {
197
303
  const { where, params } = this.buildDocQuery(query);
198
304
  const row = this.db.prepare(`SELECT COUNT(*) as cnt FROM documents d WHERE ${where}`).get(...params);
@@ -439,6 +545,13 @@ export class SqliteBackend {
439
545
  // CASCADE deletes handle objects, relationships, blocks, field_index
440
546
  this.db.prepare('DELETE FROM documents WHERE doc_id = ?').run(docId);
441
547
  }
548
+ // 0.7.17 — refresh planner statistics after a full reindex. ANALYZE scans the
549
+ // indexes to populate sqlite_stat1; cheap relative to the reindex that
550
+ // precedes it (~1s at 240k field_index rows) and keeps the planner choosing
551
+ // the composite field_index indexes over the low-selectivity deleted index.
552
+ analyze() {
553
+ this.db.exec('ANALYZE');
554
+ }
442
555
  getFileHash(path) {
443
556
  const row = this.db.prepare('SELECT file_hash FROM documents WHERE file_path = ? AND deleted = 0').get(path);
444
557
  return row?.file_hash ?? null;
@@ -482,6 +595,16 @@ export class SqliteBackend {
482
595
  documentCountByType,
483
596
  };
484
597
  }
598
+ // 0.7.17 — count live records flagged invalid at index time. Backs
599
+ // summary().warnings.validationErrors without re-reading every file. The
600
+ // count reflects index-mode structural validity (precision enforcement is
601
+ // write-time only — same posture as the read-mode validation summary() used
602
+ // to run inline), and is accurate for records indexed since the 0.7.17
603
+ // upgrade; pre-0.7.17 rows read as valid until their next reindex.
604
+ countInvalidDocuments() {
605
+ const row = this.db.prepare('SELECT COUNT(*) as cnt FROM documents WHERE deleted = 0 AND valid = 0').get();
606
+ return row.cnt;
607
+ }
485
608
  countBrokenRefs() {
486
609
  const row = this.db.prepare(`
487
610
  SELECT COUNT(*) as cnt FROM relationships r
@@ -595,6 +718,7 @@ function rowToDocument(row) {
595
718
  indexedAt: row.indexed_at,
596
719
  updatedAt: row.updated_at,
597
720
  createdAt: row.created_at,
721
+ valid: row.valid !== 0,
598
722
  };
599
723
  }
600
724
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const SCHEMA_SQL = "\n-- Documents table: one row per markdown file\nCREATE TABLE IF NOT EXISTS documents (\n doc_id TEXT PRIMARY KEY,\n doc_type TEXT NOT NULL,\n schema_ref TEXT NOT NULL,\n file_path TEXT NOT NULL UNIQUE,\n file_hash TEXT NOT NULL,\n version INTEGER NOT NULL DEFAULT 1,\n deleted INTEGER NOT NULL DEFAULT 0,\n indexed_at TEXT NOT NULL,\n updated_at TEXT NOT NULL DEFAULT '',\n -- 0.7.12 \u2014 engine-stamped creation time. Existing dbs pick it up via\n -- ALTER TABLE in the migration block below; pre-existing rows backfill\n -- to updated_at as the best-available approximation.\n created_at TEXT NOT NULL DEFAULT ''\n);\nCREATE INDEX IF NOT EXISTS idx_documents_type ON documents(doc_type);\nCREATE INDEX IF NOT EXISTS idx_documents_path ON documents(file_path);\nCREATE INDEX IF NOT EXISTS idx_documents_deleted ON documents(deleted);\n\n-- Extracted objects table: inline annotations and indexed fields\nCREATE TABLE IF NOT EXISTS objects (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n primitive TEXT NOT NULL,\n subtype TEXT NOT NULL,\n value TEXT NOT NULL,\n normalized_value TEXT,\n label TEXT NOT NULL,\n role TEXT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n source_line INTEGER NOT NULL,\n block_id TEXT\n);\nCREATE INDEX IF NOT EXISTS idx_objects_primitive ON objects(primitive);\nCREATE INDEX IF NOT EXISTS idx_objects_subtype ON objects(subtype);\nCREATE INDEX IF NOT EXISTS idx_objects_value ON objects(value);\nCREATE INDEX IF NOT EXISTS idx_objects_doc_id ON objects(doc_id);\nCREATE INDEX IF NOT EXISTS idx_objects_normalized ON objects(normalized_value);\n\n-- Relationships table: edges between documents\nCREATE TABLE IF NOT EXISTS relationships (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n source_doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n target_doc_id TEXT NOT NULL,\n field TEXT NOT NULL,\n relation_type TEXT NOT NULL CHECK(relation_type IN ('ref', 'mention'))\n);\nCREATE INDEX IF NOT EXISTS idx_rel_source ON relationships(source_doc_id);\nCREATE INDEX IF NOT EXISTS idx_rel_target ON relationships(target_doc_id);\nCREATE INDEX IF NOT EXISTS idx_rel_type ON relationships(relation_type);\n\n-- Blocks table: heading-delimited sections\nCREATE TABLE IF NOT EXISTS blocks (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n block_id TEXT,\n heading TEXT NOT NULL,\n level INTEGER NOT NULL,\n start_line INTEGER NOT NULL,\n end_line INTEGER NOT NULL\n);\nCREATE INDEX IF NOT EXISTS idx_blocks_doc_id ON blocks(doc_id);\nCREATE INDEX IF NOT EXISTS idx_blocks_block_id ON blocks(block_id);\n\n-- Field index: denormalized frontmatter fields for fast filtering\nCREATE TABLE IF NOT EXISTS field_index (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n field_name TEXT NOT NULL,\n field_value TEXT,\n numeric_value REAL,\n field_type TEXT NOT NULL\n);\nCREATE INDEX IF NOT EXISTS idx_field_doc ON field_index(doc_id);\nCREATE INDEX IF NOT EXISTS idx_field_name_value ON field_index(field_name, field_value);\nCREATE INDEX IF NOT EXISTS idx_field_name_numeric ON field_index(field_name, numeric_value);\n\n-- Engine meta key/value store (0.7.4, fup-2026-093). Holds per-type schema\n-- index fingerprints so indexAll can detect \"indexed-field set changed since\n-- last run\" and force-rebuild affected types regardless of file-hash skip.\n-- Keys are namespaced (e.g. schema_index_fp:<doc_type>).\nCREATE TABLE IF NOT EXISTS engine_meta (\n key TEXT PRIMARY KEY,\n value TEXT NOT NULL\n);\n";
1
+ export declare const SCHEMA_SQL = "\n-- Documents table: one row per markdown file\nCREATE TABLE IF NOT EXISTS documents (\n doc_id TEXT PRIMARY KEY,\n doc_type TEXT NOT NULL,\n schema_ref TEXT NOT NULL,\n file_path TEXT NOT NULL UNIQUE,\n file_hash TEXT NOT NULL,\n version INTEGER NOT NULL DEFAULT 1,\n deleted INTEGER NOT NULL DEFAULT 0,\n indexed_at TEXT NOT NULL,\n updated_at TEXT NOT NULL DEFAULT '',\n -- 0.7.12 \u2014 engine-stamped creation time. Existing dbs pick it up via\n -- ALTER TABLE in the migration block below; pre-existing rows backfill\n -- to updated_at as the best-available approximation.\n created_at TEXT NOT NULL DEFAULT '',\n -- 0.7.17 \u2014 structural validity at index time (1 = valid, 0 = invalid). Lets\n -- summary() COUNT invalid records instead of re-reading and re-validating\n -- every file per call. Existing rows pick it up via ALTER (default 1) and\n -- self-correct on next reindex.\n valid INTEGER NOT NULL DEFAULT 1\n);\nCREATE INDEX IF NOT EXISTS idx_documents_type ON documents(doc_type);\nCREATE INDEX IF NOT EXISTS idx_documents_path ON documents(file_path);\nCREATE INDEX IF NOT EXISTS idx_documents_deleted ON documents(deleted);\n-- 0.7.17 \u2014 composite for the findDocuments driving scan. Without it the planner\n-- picks the low-selectivity idx_documents_deleted (deleted=0 matches every live\n-- row) and full-scans documents before sorting. Leading deleted keeps the\n-- live-rows predicate sargable; doc_type narrows; doc_id covers the tie-breaker.\nCREATE INDEX IF NOT EXISTS idx_documents_del_type_id ON documents(deleted, doc_type, doc_id);\n-- NB: the idx_documents_valid index lives in the init() migration block, not\n-- here. It references the valid column, which existing databases only gain via\n-- ALTER after this SCHEMA_SQL runs, so creating it here would fail on\n-- pre-0.7.17 databases with a no-such-column error.\n\n-- Extracted objects table: inline annotations and indexed fields\nCREATE TABLE IF NOT EXISTS objects (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n primitive TEXT NOT NULL,\n subtype TEXT NOT NULL,\n value TEXT NOT NULL,\n normalized_value TEXT,\n label TEXT NOT NULL,\n role TEXT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n source_line INTEGER NOT NULL,\n block_id TEXT\n);\nCREATE INDEX IF NOT EXISTS idx_objects_primitive ON objects(primitive);\nCREATE INDEX IF NOT EXISTS idx_objects_subtype ON objects(subtype);\nCREATE INDEX IF NOT EXISTS idx_objects_value ON objects(value);\nCREATE INDEX IF NOT EXISTS idx_objects_doc_id ON objects(doc_id);\nCREATE INDEX IF NOT EXISTS idx_objects_normalized ON objects(normalized_value);\n\n-- Relationships table: edges between documents\nCREATE TABLE IF NOT EXISTS relationships (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n source_doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n target_doc_id TEXT NOT NULL,\n field TEXT NOT NULL,\n relation_type TEXT NOT NULL CHECK(relation_type IN ('ref', 'mention'))\n);\nCREATE INDEX IF NOT EXISTS idx_rel_source ON relationships(source_doc_id);\nCREATE INDEX IF NOT EXISTS idx_rel_target ON relationships(target_doc_id);\nCREATE INDEX IF NOT EXISTS idx_rel_type ON relationships(relation_type);\n\n-- Blocks table: heading-delimited sections\nCREATE TABLE IF NOT EXISTS blocks (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n block_id TEXT,\n heading TEXT NOT NULL,\n level INTEGER NOT NULL,\n start_line INTEGER NOT NULL,\n end_line INTEGER NOT NULL\n);\nCREATE INDEX IF NOT EXISTS idx_blocks_doc_id ON blocks(doc_id);\nCREATE INDEX IF NOT EXISTS idx_blocks_block_id ON blocks(block_id);\n\n-- Field index: denormalized frontmatter fields for fast filtering\nCREATE TABLE IF NOT EXISTS field_index (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n doc_id TEXT NOT NULL REFERENCES documents(doc_id) ON DELETE CASCADE,\n field_name TEXT NOT NULL,\n field_value TEXT,\n numeric_value REAL,\n field_type TEXT NOT NULL\n);\nCREATE INDEX IF NOT EXISTS idx_field_doc ON field_index(doc_id);\nCREATE INDEX IF NOT EXISTS idx_field_name_value ON field_index(field_name, field_value);\nCREATE INDEX IF NOT EXISTS idx_field_name_numeric ON field_index(field_name, numeric_value);\n-- 0.7.17 \u2014 covering indexes for the sort-index-driven query path. The first two\n-- let the engine walk a scalar sort field (text/date -> field_value,\n-- number/amount -> numeric_value) in index order with doc_id covered, so a\n-- sorted+limited query terminates early instead of materializing + temp-b-tree\n-- sorting the whole matched set. The third covers the per-doc EXISTS filter\n-- probes (one 4-col index subsumes both text and numeric by-doc lookups, vs two\n-- 3-col indexes \u2014 half the write amplification).\nCREATE INDEX IF NOT EXISTS idx_field_name_value_doc ON field_index(field_name, field_value, doc_id);\nCREATE INDEX IF NOT EXISTS idx_field_name_numeric_doc ON field_index(field_name, numeric_value, doc_id);\nCREATE INDEX IF NOT EXISTS idx_field_doc_name_value ON field_index(doc_id, field_name, field_value, numeric_value);\n\n-- Engine meta key/value store (0.7.4, fup-2026-093). Holds per-type schema\n-- index fingerprints so indexAll can detect \"indexed-field set changed since\n-- last run\" and force-rebuild affected types regardless of file-hash skip.\n-- Keys are namespaced (e.g. schema_index_fp:<doc_type>).\nCREATE TABLE IF NOT EXISTS engine_meta (\n key TEXT PRIMARY KEY,\n value TEXT NOT NULL\n);\n";
2
2
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/schema.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,gxHAsFtB,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/schema.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,+mLA8GtB,CAAC"}
@@ -17,11 +17,25 @@ CREATE TABLE IF NOT EXISTS documents (
17
17
  -- 0.7.12 — engine-stamped creation time. Existing dbs pick it up via
18
18
  -- ALTER TABLE in the migration block below; pre-existing rows backfill
19
19
  -- to updated_at as the best-available approximation.
20
- created_at TEXT NOT NULL DEFAULT ''
20
+ created_at TEXT NOT NULL DEFAULT '',
21
+ -- 0.7.17 — structural validity at index time (1 = valid, 0 = invalid). Lets
22
+ -- summary() COUNT invalid records instead of re-reading and re-validating
23
+ -- every file per call. Existing rows pick it up via ALTER (default 1) and
24
+ -- self-correct on next reindex.
25
+ valid INTEGER NOT NULL DEFAULT 1
21
26
  );
22
27
  CREATE INDEX IF NOT EXISTS idx_documents_type ON documents(doc_type);
23
28
  CREATE INDEX IF NOT EXISTS idx_documents_path ON documents(file_path);
24
29
  CREATE INDEX IF NOT EXISTS idx_documents_deleted ON documents(deleted);
30
+ -- 0.7.17 — composite for the findDocuments driving scan. Without it the planner
31
+ -- picks the low-selectivity idx_documents_deleted (deleted=0 matches every live
32
+ -- row) and full-scans documents before sorting. Leading deleted keeps the
33
+ -- live-rows predicate sargable; doc_type narrows; doc_id covers the tie-breaker.
34
+ CREATE INDEX IF NOT EXISTS idx_documents_del_type_id ON documents(deleted, doc_type, doc_id);
35
+ -- NB: the idx_documents_valid index lives in the init() migration block, not
36
+ -- here. It references the valid column, which existing databases only gain via
37
+ -- ALTER after this SCHEMA_SQL runs, so creating it here would fail on
38
+ -- pre-0.7.17 databases with a no-such-column error.
25
39
 
26
40
  -- Extracted objects table: inline annotations and indexed fields
27
41
  CREATE TABLE IF NOT EXISTS objects (
@@ -79,6 +93,16 @@ CREATE TABLE IF NOT EXISTS field_index (
79
93
  CREATE INDEX IF NOT EXISTS idx_field_doc ON field_index(doc_id);
80
94
  CREATE INDEX IF NOT EXISTS idx_field_name_value ON field_index(field_name, field_value);
81
95
  CREATE INDEX IF NOT EXISTS idx_field_name_numeric ON field_index(field_name, numeric_value);
96
+ -- 0.7.17 — covering indexes for the sort-index-driven query path. The first two
97
+ -- let the engine walk a scalar sort field (text/date -> field_value,
98
+ -- number/amount -> numeric_value) in index order with doc_id covered, so a
99
+ -- sorted+limited query terminates early instead of materializing + temp-b-tree
100
+ -- sorting the whole matched set. The third covers the per-doc EXISTS filter
101
+ -- probes (one 4-col index subsumes both text and numeric by-doc lookups, vs two
102
+ -- 3-col indexes — half the write amplification).
103
+ CREATE INDEX IF NOT EXISTS idx_field_name_value_doc ON field_index(field_name, field_value, doc_id);
104
+ CREATE INDEX IF NOT EXISTS idx_field_name_numeric_doc ON field_index(field_name, numeric_value, doc_id);
105
+ CREATE INDEX IF NOT EXISTS idx_field_doc_name_value ON field_index(doc_id, field_name, field_value, numeric_value);
82
106
 
83
107
  -- Engine meta key/value store (0.7.4, fup-2026-093). Holds per-type schema
84
108
  -- index fingerprints so indexAll can detect "indexed-field set changed since
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/backend/sqlite/schema.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,gBAAgB;AAChB,+DAA+D;AAC/D,+EAA+E;AAE/E,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsFzB,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/backend/sqlite/schema.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,gBAAgB;AAChB,+DAA+D;AAC/D,+EAA+E;AAE/E,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8GzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"indexing.d.ts","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"AASA,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAIL,KAAK,KAAK,EAEV,KAAK,QAAQ,EACb,KAAK,cAAc,EAGnB,KAAK,gBAAgB,EAGtB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAuB9C,wBAAsB,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAyFnG;AA2CD,wBAAsB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAuC7G;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CA6HpG;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAYzH"}
1
+ {"version":3,"file":"indexing.d.ts","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"AASA,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAIL,KAAK,KAAK,EAEV,KAAK,QAAQ,EACb,KAAK,cAAc,EAGnB,KAAK,gBAAgB,EAGtB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAuB9C,wBAAsB,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAgGnG;AA2CD,wBAAsB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAuC7G;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAiIpG;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAYzH"}
@@ -112,6 +112,12 @@ export async function indexAll(ctx, opts) {
112
112
  if (dirtyTypes.size > 0) {
113
113
  result.rebuiltTypes = [...dirtyTypes].sort();
114
114
  }
115
+ // 0.7.17 — refresh planner statistics after a rebuild touched rows. Skipped
116
+ // on a no-op pass (everything hash-skipped) so steady-state reindex polling
117
+ // doesn't pay for an ANALYZE that would change nothing.
118
+ if (result.indexed > 0) {
119
+ ctx.backend.analyze();
120
+ }
115
121
  return result;
116
122
  }
117
123
  // 0.7.13 — per-doc index-time memory guards. A single document can allocate
@@ -260,6 +266,10 @@ export function processDocument(ctx, parsed) {
260
266
  indexedAt: now,
261
267
  updatedAt: contentChanged ? now : (existing?.updatedAt ?? now),
262
268
  createdAt,
269
+ // 0.7.17 — persist index-time structural validity so summary() can COUNT
270
+ // invalid records instead of re-reading every file. `validation` was
271
+ // computed above in mode 'index'.
272
+ valid: validation.valid,
263
273
  };
264
274
  const fieldIndex = [];
265
275
  for (const [name, field] of Object.entries(validatedFields)) {
@@ -1 +1 @@
1
- {"version":3,"file":"indexing.js","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexing.js","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../../src/engine/maintenance.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,aAAa,EAClB,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,EACzB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAwDnC"}
1
+ {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../../src/engine/maintenance.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,aAAa,EAClB,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,EACzB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAiEnC"}