@maadb/core 0.7.11 → 0.7.12
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/dist/backend/sqlite/index.d.ts.map +1 -1
- package/dist/backend/sqlite/index.js +54 -10
- package/dist/backend/sqlite/index.js.map +1 -1
- package/dist/backend/sqlite/schema.d.ts +1 -1
- package/dist/backend/sqlite/schema.d.ts.map +1 -1
- package/dist/backend/sqlite/schema.js +5 -1
- package/dist/backend/sqlite/schema.js.map +1 -1
- package/dist/engine/helpers.d.ts +8 -0
- package/dist/engine/helpers.d.ts.map +1 -1
- package/dist/engine/helpers.js +10 -0
- package/dist/engine/helpers.js.map +1 -1
- package/dist/engine/indexing.d.ts.map +1 -1
- package/dist/engine/indexing.js +17 -3
- package/dist/engine/indexing.js.map +1 -1
- package/dist/engine/reads.d.ts.map +1 -1
- package/dist/engine/reads.js +51 -10
- package/dist/engine/reads.js.map +1 -1
- package/dist/engine/types.d.ts +1 -0
- package/dist/engine/types.d.ts.map +1 -1
- package/dist/engine/writes.js +3 -3
- package/dist/engine/writes.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/mcp/tools/read.js +1 -1
- package/dist/mcp/tools/read.js.map +1 -1
- package/dist/types.d.ts +5 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +20 -0
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// ============================================================================
|
|
5
5
|
import Database from 'better-sqlite3';
|
|
6
6
|
import { SCHEMA_SQL } from './schema.js';
|
|
7
|
-
import { docId as toDocId, docType as toDocType, schemaRef as toSchemaRef, filePath as toFilePath, blockId as toBlockId, } from '../../types.js';
|
|
7
|
+
import { docId as toDocId, docType as toDocType, schemaRef as toSchemaRef, filePath as toFilePath, blockId as toBlockId, resolveSystemSortKey, } from '../../types.js';
|
|
8
8
|
export class SqliteBackend {
|
|
9
9
|
db;
|
|
10
10
|
constructor(dbPath) {
|
|
@@ -21,6 +21,14 @@ export class SqliteBackend {
|
|
|
21
21
|
if (!cols.some(c => c.name === 'updated_at')) {
|
|
22
22
|
this.db.exec("ALTER TABLE documents ADD COLUMN updated_at TEXT NOT NULL DEFAULT ''");
|
|
23
23
|
}
|
|
24
|
+
// 0.7.12 — add created_at column. Existing rows backfill to updated_at
|
|
25
|
+
// as the best-available approximation (real creation time wasn't captured
|
|
26
|
+
// pre-0.7.12). Net-new databases skip the ALTER and start with the column
|
|
27
|
+
// already present from SCHEMA_SQL.
|
|
28
|
+
if (!cols.some(c => c.name === 'created_at')) {
|
|
29
|
+
this.db.exec("ALTER TABLE documents ADD COLUMN created_at TEXT NOT NULL DEFAULT ''");
|
|
30
|
+
this.db.exec("UPDATE documents SET created_at = updated_at WHERE created_at = ''");
|
|
31
|
+
}
|
|
24
32
|
}
|
|
25
33
|
close() {
|
|
26
34
|
this.db.close();
|
|
@@ -29,9 +37,9 @@ export class SqliteBackend {
|
|
|
29
37
|
putDocument(doc) {
|
|
30
38
|
this.db.prepare(`
|
|
31
39
|
INSERT OR REPLACE INTO documents
|
|
32
|
-
(doc_id, doc_type, schema_ref, file_path, file_hash, version, deleted, indexed_at, updated_at)
|
|
33
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
34
|
-
`).run(doc.docId, doc.docType, doc.schemaRef, doc.filePath, doc.fileHash, doc.version, doc.deleted ? 1 : 0, doc.indexedAt, doc.updatedAt);
|
|
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);
|
|
35
43
|
}
|
|
36
44
|
putObjects(docId, objects) {
|
|
37
45
|
this.db.prepare('DELETE FROM objects WHERE doc_id = ?').run(docId);
|
|
@@ -105,7 +113,25 @@ export class SqliteBackend {
|
|
|
105
113
|
return map;
|
|
106
114
|
}
|
|
107
115
|
getDocumentByPath(path) {
|
|
108
|
-
const
|
|
116
|
+
const original = path;
|
|
117
|
+
const stmt = this.db.prepare('SELECT * FROM documents WHERE file_path = ? AND deleted = 0');
|
|
118
|
+
let row = stmt.get(original);
|
|
119
|
+
// 0.7.12 — separator-tolerant lookup for the file_path canonicalization
|
|
120
|
+
// transition. Write-path emits forward-slash going forward, but legacy
|
|
121
|
+
// rows on Windows-written databases may still have backslash form until
|
|
122
|
+
// their next reindex touch (lazy migration). If the input form misses,
|
|
123
|
+
// try the alternate-separator form once before declaring missing. Cost:
|
|
124
|
+
// one extra query per miss during transition, zero in steady state.
|
|
125
|
+
if (!row) {
|
|
126
|
+
const alt = original.includes('\\')
|
|
127
|
+
? original.replaceAll('\\', '/')
|
|
128
|
+
: original.includes('/')
|
|
129
|
+
? original.replaceAll('/', '\\')
|
|
130
|
+
: null;
|
|
131
|
+
if (alt !== null) {
|
|
132
|
+
row = stmt.get(alt);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
109
135
|
return row ? rowToDocument(row) : null;
|
|
110
136
|
}
|
|
111
137
|
buildDocQuery(query) {
|
|
@@ -124,15 +150,32 @@ export class SqliteBackend {
|
|
|
124
150
|
}
|
|
125
151
|
findDocuments(query) {
|
|
126
152
|
const { where, params } = this.buildDocQuery(query);
|
|
153
|
+
// 0.7.12 — sort resolution. Engine layer validates sortBy as either a
|
|
154
|
+
// system sort key or an indexed schema field before we get here. Backend
|
|
155
|
+
// emits direct-column ORDER BY for system keys and the field_index
|
|
156
|
+
// subquery for schema fields. Deterministic tie-breaker on doc_id in the
|
|
157
|
+
// same direction so identical primary-sort values don't shuffle.
|
|
127
158
|
let orderClause;
|
|
159
|
+
const dir = query.sortOrder === 'asc' ? 'ASC' : 'DESC';
|
|
128
160
|
if (query.sortBy) {
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
161
|
+
const systemColumn = resolveSystemSortKey(query.sortBy);
|
|
162
|
+
if (systemColumn) {
|
|
163
|
+
if (systemColumn === 'doc_id') {
|
|
164
|
+
orderClause = `ORDER BY d.doc_id ${dir}`;
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
orderClause = `ORDER BY d.${systemColumn} ${dir}, d.doc_id ${dir}`;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
// Schema field — parameterized to prevent injection. Tie-breaker on doc_id.
|
|
172
|
+
orderClause = `ORDER BY (SELECT fi.field_value FROM field_index fi WHERE fi.doc_id = d.doc_id AND fi.field_name = ? LIMIT 1) ${dir}, d.doc_id ${dir}`;
|
|
173
|
+
params.push(query.sortBy);
|
|
174
|
+
}
|
|
133
175
|
}
|
|
134
176
|
else {
|
|
135
|
-
|
|
177
|
+
// Default sort: most-recently-indexed first with doc_id tie-breaker.
|
|
178
|
+
orderClause = 'ORDER BY d.indexed_at DESC, d.doc_id DESC';
|
|
136
179
|
}
|
|
137
180
|
const sql = `SELECT d.* FROM documents d WHERE ${where} ${orderClause} LIMIT ? OFFSET ?`;
|
|
138
181
|
params.push(query.limit ?? 50, query.offset ?? 0);
|
|
@@ -536,6 +579,7 @@ function rowToDocument(row) {
|
|
|
536
579
|
deleted: row.deleted === 1,
|
|
537
580
|
indexedAt: row.indexed_at,
|
|
538
581
|
updatedAt: row.updated_at,
|
|
582
|
+
createdAt: row.created_at,
|
|
539
583
|
};
|
|
540
584
|
}
|
|
541
585
|
//# 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);\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);\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";
|
|
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,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/backend/sqlite/schema.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,gxHAsFtB,CAAC"}
|
|
@@ -13,7 +13,11 @@ CREATE TABLE IF NOT EXISTS documents (
|
|
|
13
13
|
version INTEGER NOT NULL DEFAULT 1,
|
|
14
14
|
deleted INTEGER NOT NULL DEFAULT 0,
|
|
15
15
|
indexed_at TEXT NOT NULL,
|
|
16
|
-
updated_at TEXT NOT NULL DEFAULT ''
|
|
16
|
+
updated_at TEXT NOT NULL DEFAULT '',
|
|
17
|
+
-- 0.7.12 — engine-stamped creation time. Existing dbs pick it up via
|
|
18
|
+
-- ALTER TABLE in the migration block below; pre-existing rows backfill
|
|
19
|
+
-- to updated_at as the best-available approximation.
|
|
20
|
+
created_at TEXT NOT NULL DEFAULT ''
|
|
17
21
|
);
|
|
18
22
|
CREATE INDEX IF NOT EXISTS idx_documents_type ON documents(doc_type);
|
|
19
23
|
CREATE INDEX IF NOT EXISTS idx_documents_path ON documents(file_path);
|
|
@@ -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
|
|
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"}
|
package/dist/engine/helpers.d.ts
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import type { DocumentRecord } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* 0.7.12 — canonical relative-path helper. path.relative emits native
|
|
4
|
+
* separators (backslash on Windows); we store and look up file_path in
|
|
5
|
+
* forward-slash form so the SQLite index stays portable across platforms.
|
|
6
|
+
* Every write-path site that builds a documents.file_path value should
|
|
7
|
+
* route through this helper.
|
|
8
|
+
*/
|
|
9
|
+
export declare function toCanonicalRelPath(projectRoot: string, absPath: string): string;
|
|
2
10
|
export declare function readFrontmatter(projectRoot: string, doc: DocumentRecord): Promise<Record<string, unknown>>;
|
|
3
11
|
export declare function readFrontmatterSync(projectRoot: string, doc: DocumentRecord): Record<string, unknown> | null;
|
|
4
12
|
export declare function readBlockContent(projectRoot: string, doc: DocumentRecord, startLine: number, endLine: number, isPreamble: boolean): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/engine/helpers.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAKhH;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAS5G;AAED,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAOzJ;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CA+B7G;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBpF;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAkB7E"}
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/engine/helpers.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/E;AAED,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAKhH;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAS5G;AAED,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAOzJ;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CA+B7G;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBpF;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAkB7E"}
|
package/dist/engine/helpers.js
CHANGED
|
@@ -6,6 +6,16 @@ import { readFileSync } from 'node:fs';
|
|
|
6
6
|
import path from 'node:path';
|
|
7
7
|
import { glob } from 'node:fs/promises';
|
|
8
8
|
import { parseMatter } from '../parser/matter.js';
|
|
9
|
+
/**
|
|
10
|
+
* 0.7.12 — canonical relative-path helper. path.relative emits native
|
|
11
|
+
* separators (backslash on Windows); we store and look up file_path in
|
|
12
|
+
* forward-slash form so the SQLite index stays portable across platforms.
|
|
13
|
+
* Every write-path site that builds a documents.file_path value should
|
|
14
|
+
* route through this helper.
|
|
15
|
+
*/
|
|
16
|
+
export function toCanonicalRelPath(projectRoot, absPath) {
|
|
17
|
+
return path.relative(projectRoot, absPath).split(path.sep).join('/');
|
|
18
|
+
}
|
|
9
19
|
export async function readFrontmatter(projectRoot, doc) {
|
|
10
20
|
const absPath = path.join(projectRoot, doc.filePath);
|
|
11
21
|
const raw = await readFile(absPath, 'utf-8');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/engine/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/engine/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;AAC/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,
|
|
1
|
+
{"version":3,"file":"indexing.d.ts","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"AASA,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC/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,CAsFnG;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAK7G;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CA0HpG;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"}
|
package/dist/engine/indexing.js
CHANGED
|
@@ -10,7 +10,7 @@ import { docId as toDocId, docType as toDocType, filePath as toFilePath, } from
|
|
|
10
10
|
import { parseDocument } from '../parser/index.js';
|
|
11
11
|
import { validateFrontmatter } from '../schema/index.js';
|
|
12
12
|
import { extract } from '../extractor/index.js';
|
|
13
|
-
import { collectMarkdownFiles, computeNumericValue } from './helpers.js';
|
|
13
|
+
import { collectMarkdownFiles, computeNumericValue, toCanonicalRelPath } from './helpers.js';
|
|
14
14
|
// 0.7.4 (fup-2026-093) — Per-type schema fingerprint covering the indexed
|
|
15
15
|
// field set. When a schema edit flips a field's `index: false → true` (or
|
|
16
16
|
// adds/removes an indexed field), the fingerprint changes; indexAll detects
|
|
@@ -63,7 +63,10 @@ export async function indexAll(ctx, opts) {
|
|
|
63
63
|
const files = await collectMarkdownFiles(dirPath);
|
|
64
64
|
for (const file of files) {
|
|
65
65
|
result.scanned++;
|
|
66
|
-
|
|
66
|
+
// 0.7.12 — canonical (forward-slash) form for both the skip-by-hash
|
|
67
|
+
// lookup against getAllFileHashes (which now stores '/' post-0.7.12)
|
|
68
|
+
// and the filesOnDisk set used by the stale-row sweep.
|
|
69
|
+
const fp = toFilePath(toCanonicalRelPath(ctx.projectRoot, file));
|
|
67
70
|
const absPath = toFilePath(file);
|
|
68
71
|
filesOnDisk.add(fp);
|
|
69
72
|
// Skip-by-hash only applies when neither --force nor a schema-fingerprint
|
|
@@ -157,7 +160,11 @@ export function processDocument(ctx, parsed) {
|
|
|
157
160
|
validationResult: validation,
|
|
158
161
|
};
|
|
159
162
|
const extraction = extract(bound, schema, ctx.registry);
|
|
160
|
-
|
|
163
|
+
// 0.7.12 — canonicalize file_path to forward slashes at the write boundary
|
|
164
|
+
// so the SQLite index is portable across Windows/POSIX. Helper in
|
|
165
|
+
// engine/helpers.ts is the single source of truth for relative-path
|
|
166
|
+
// canonicalization; reuse it across all write-path sites.
|
|
167
|
+
const relativePath = toCanonicalRelPath(ctx.projectRoot, parsed.filePath);
|
|
161
168
|
const existing = ctx.backend.getDocument(bound.docId);
|
|
162
169
|
// Only bump version when file content actually changed — reindex of unchanged files preserves version
|
|
163
170
|
const contentChanged = !existing || existing.fileHash !== parsed.fileHash;
|
|
@@ -165,6 +172,12 @@ export function processDocument(ctx, parsed) {
|
|
|
165
172
|
? (contentChanged ? existing.version + 1 : existing.version)
|
|
166
173
|
: 1;
|
|
167
174
|
const now = new Date().toISOString();
|
|
175
|
+
// 0.7.12 — engine-stamped createdAt. Preserve on existing docs (immutable
|
|
176
|
+
// once set), backfill from updatedAt for pre-0.7.12 rows that migrated in
|
|
177
|
+
// with an empty createdAt, and stamp `now` for net-new docs.
|
|
178
|
+
const createdAt = existing
|
|
179
|
+
? (existing.createdAt || existing.updatedAt || now)
|
|
180
|
+
: now;
|
|
168
181
|
const docRecord = {
|
|
169
182
|
docId: bound.docId,
|
|
170
183
|
docType: bound.docType,
|
|
@@ -175,6 +188,7 @@ export function processDocument(ctx, parsed) {
|
|
|
175
188
|
deleted: false,
|
|
176
189
|
indexedAt: now,
|
|
177
190
|
updatedAt: contentChanged ? now : (existing?.updatedAt ?? now),
|
|
191
|
+
createdAt,
|
|
178
192
|
};
|
|
179
193
|
const fieldIndex = [];
|
|
180
194
|
for (const [name, field] of Object.entries(validatedFields)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexing.js","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,2DAA2D;AAC3D,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAe,MAAM,cAAc,CAAC;AAC/D,OAAO,EACL,KAAK,IAAI,OAAO,EAChB,OAAO,IAAI,SAAS,EACpB,QAAQ,IAAI,UAAU,GAUvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"indexing.js","sourceRoot":"","sources":["../../src/engine/indexing.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,2DAA2D;AAC3D,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAe,MAAM,cAAc,CAAC;AAC/D,OAAO,EACL,KAAK,IAAI,OAAO,EAChB,OAAO,IAAI,SAAS,EACpB,QAAQ,IAAI,UAAU,GAUvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE7F,0EAA0E;AAC1E,0EAA0E;AAC1E,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,EAAE;AACF,0EAA0E;AAC1E,0EAA0E;AAC1E,gEAAgE;AAChE,SAAS,8BAA8B,CAAC,MAAwB;IAC9D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACxC,IAAI,GAAG,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,KAAK,CAAC,IAAI,EAAE,CAAC;IACb,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAkB,EAAE,IAA0B;IAC3E,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,CAAC;IACnC,MAAM,MAAM,GAAgB,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAE/E,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,uCAAuC;IACvC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmB,CAAC;IACvD,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,EAAE,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;QAClD,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,CAAC,GAAG,CAAC,QAAkB,CAAC,CAAC;YACnC,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,oBAAoB,GAAG,QAAkB,EAAE,CAAC,CAAC;QACnF,IAAI,MAAM,KAAK,EAAE;YAAE,UAAU,CAAC,GAAG,CAAC,QAAkB,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;IACxE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrD,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,QAAkB,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEnC,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAElD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,oEAAoE;YACpE,qEAAqE;YACrE,uDAAuD;YACvD,MAAM,EAAE,GAAG,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;YACjE,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YACjC,WAAW,CAAC,GAAG,CAAC,EAAY,CAAC,CAAC;YAE9B,0EAA0E;YAC1E,wEAAwE;YACxE,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxC,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;oBAC/B,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,SAAS;gBACX,CAAC;YACH,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAClD,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;gBACnB,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,UAAU,CAAC,IAAI,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAoB,CAAC,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,GAAG,EAAE,CAAC;gBACR,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,yEAAyE;IACzE,8BAA8B;IAC9B,KAAK,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,mBAAmB,EAAE,CAAC;QACjD,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,oBAAoB,GAAG,QAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,YAAY,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAkB,EAAE,YAAsB;IACxE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC1E,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAE9B,OAAO,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAkB,EAAE,MAAsB;IACxE,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,cAAc,EAAE,4CAA4C,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC,cAAc,EAAE,iCAAiC,SAAS,GAAG,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,SAAS,CAAC,gBAAgB,EAAE,0CAA0C,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC,cAAc,EAAE,SAAS,SAAS,mBAAmB,CAAC,CAAC;IAC1E,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,4CAA4C;IAC5C,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAErH,MAAM,eAAe,GAAmC,EAAE,CAAC;IAC3D,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,eAAe,CAAC,SAAS,CAAC,GAAG;gBAC3B,IAAI,EAAE,SAAS;gBACf,KAAK;gBACL,SAAS,EAAE,QAAQ,CAAC,IAAI;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,KAAK;aACxB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAkB;QAC3B,MAAM;QACN,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;QACvB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,eAAe;QACf,gBAAgB,EAAE,UAAU;KAC7B,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAExD,2EAA2E;IAC3E,kEAAkE;IAClE,oEAAoE;IACpE,0DAA0D;IAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,QAAkB,CAAC,CAAC;IACpF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACtD,sGAAsG;IACtG,MAAM,cAAc,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC;IAC1E,MAAM,OAAO,GAAG,QAAQ;QACtB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC5D,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,0EAA0E;IAC1E,0EAA0E;IAC1E,6DAA6D;IAC7D,MAAM,SAAS,GAAG,QAAQ;QACxB,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,IAAI,GAAG,CAAC;QACnD,CAAC,CAAC,GAAG,CAAC;IACR,MAAM,SAAS,GAAmB;QAChC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC;QAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO;QACP,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,IAAI,GAAG,CAAC;QAC9D,SAAS;KACV,CAAC;IAEF,MAAM,UAAU,GAAsF,EAAE,CAAC;IACzG,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,mEAAmE;YACnE,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAC/B,MAAM,SAAS,GAAG,IAAI,YAAY,IAAI;wBACpC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;wBACpB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACjB,UAAU,CAAC,IAAI,CAAC;wBACd,IAAI;wBACJ,KAAK,EAAE,SAAS;wBAChB,YAAY,EAAE,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC;wBACjD,IAAI,EAAE,KAAK,CAAC,SAAS;qBACtB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,YAAY,IAAI;oBAC5C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;oBAC3B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI;oBACJ,KAAK,EAAE,UAAU;oBACjB,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;oBAC/D,IAAI,EAAE,KAAK,CAAC,SAAS;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAC7B,SAAS,EACT,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,aAAa,EACxB,MAAM,CAAC,MAAM,EACb,UAAU,CACX,CAAC;IAEF,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAkB,EAAE,IAAyC;IACzF,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC,gBAAgB,EAAE,aAAa,IAAI,CAAC,KAAe,aAAa,CAAC,CAAC;QAE7F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,QAAkB,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"AAUA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAG1D,OAAO,
|
|
1
|
+
{"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/reads.js
CHANGED
|
@@ -9,7 +9,7 @@ import { createHash } from 'node:crypto';
|
|
|
9
9
|
import { ok, singleErr } from '../errors.js';
|
|
10
10
|
import { validateFrontmatter } from '../schema/index.js';
|
|
11
11
|
import { logger } from './logger.js';
|
|
12
|
-
import { docId as toDocId, docType as toDocType, filePath as toFilePath, } from '../types.js';
|
|
12
|
+
import { docId as toDocId, docType as toDocType, filePath as toFilePath, resolveSystemSortKey, SYSTEM_SORT_KEY_ALIASES, } from '../types.js';
|
|
13
13
|
import { extractBody } from '../writer/index.js';
|
|
14
14
|
import { readFrontmatter, readFrontmatterSync, readBlockContent, collectMarkdownFiles } from './helpers.js';
|
|
15
15
|
export async function getDocument(ctx, id, depth, blockIdOrHeading) {
|
|
@@ -22,6 +22,7 @@ export async function getDocument(ctx, id, depth, blockIdOrHeading) {
|
|
|
22
22
|
docType: doc.docType,
|
|
23
23
|
version: doc.version,
|
|
24
24
|
updatedAt: doc.updatedAt,
|
|
25
|
+
createdAt: doc.createdAt,
|
|
25
26
|
depth,
|
|
26
27
|
frontmatter,
|
|
27
28
|
};
|
|
@@ -134,11 +135,53 @@ export function expandFilters(raw) {
|
|
|
134
135
|
}
|
|
135
136
|
return ok(out);
|
|
136
137
|
}
|
|
138
|
+
// 0.7.12 — sort contract validator. Accepts a system sort key (any alias in
|
|
139
|
+
// SYSTEM_SORT_KEY_ALIASES) regardless of docType, or an indexed schema field
|
|
140
|
+
// for the requested docType. Without docType, only system keys are accepted.
|
|
141
|
+
function validateSortBy(ctx, sortBy, docType) {
|
|
142
|
+
if (resolveSystemSortKey(sortBy) !== null)
|
|
143
|
+
return ok(true);
|
|
144
|
+
if (!docType) {
|
|
145
|
+
return singleErr('UNSUPPORTED_SORT_FIELD', `sortBy '${sortBy}' is not a system sort key (${SYSTEM_SORT_KEY_ALIASES.join(', ')}). ` +
|
|
146
|
+
`Provide docType to sort by an indexed schema field.`, undefined, { provided: sortBy, systemKeys: SYSTEM_SORT_KEY_ALIASES });
|
|
147
|
+
}
|
|
148
|
+
const schema = ctx.schemaStore.getSchemaForType(docType);
|
|
149
|
+
if (!schema) {
|
|
150
|
+
return singleErr('UNSUPPORTED_SORT_FIELD', `sortBy '${sortBy}' cannot be validated: no schema loaded for docType '${docType}'.`, undefined, { provided: sortBy, docType });
|
|
151
|
+
}
|
|
152
|
+
const field = schema.fields.get(sortBy);
|
|
153
|
+
if (!field) {
|
|
154
|
+
const indexedFields = [...schema.fields.values()]
|
|
155
|
+
.filter(f => f.index)
|
|
156
|
+
.map(f => f.name);
|
|
157
|
+
return singleErr('UNSUPPORTED_SORT_FIELD', `sortBy '${sortBy}' is not a field on docType '${docType}'. ` +
|
|
158
|
+
`Use a system sort key (${SYSTEM_SORT_KEY_ALIASES.join(', ')}) or an indexed field: ` +
|
|
159
|
+
`[${indexedFields.join(', ')}].`, undefined, { provided: sortBy, docType, indexedFields, systemKeys: SYSTEM_SORT_KEY_ALIASES });
|
|
160
|
+
}
|
|
161
|
+
if (!field.index) {
|
|
162
|
+
const indexedFields = [...schema.fields.values()]
|
|
163
|
+
.filter(f => f.index)
|
|
164
|
+
.map(f => f.name);
|
|
165
|
+
return singleErr('UNSUPPORTED_SORT_FIELD', `sortBy '${sortBy}' is a field on docType '${docType}' but not indexed. ` +
|
|
166
|
+
`Indexed fields available: [${indexedFields.join(', ')}]. ` +
|
|
167
|
+
`Or use a system sort key (${SYSTEM_SORT_KEY_ALIASES.join(', ')}).`, undefined, { provided: sortBy, docType, indexedFields, systemKeys: SYSTEM_SORT_KEY_ALIASES });
|
|
168
|
+
}
|
|
169
|
+
return ok(true);
|
|
170
|
+
}
|
|
137
171
|
export function findDocuments(ctx, query) {
|
|
138
172
|
// 0.7.1 R2 — validate + expand filters into atomic per-field arrays.
|
|
139
173
|
const expanded = expandFilters(query.filters);
|
|
140
174
|
if (!expanded.ok)
|
|
141
175
|
return expanded;
|
|
176
|
+
// 0.7.12 — sort contract. sortBy must be a system sort key (updated_at,
|
|
177
|
+
// indexed_at, doc_id, doc_type, created_at + camelCase aliases) or an
|
|
178
|
+
// indexed schema field of the requested docType. Unknown or unindexed keys
|
|
179
|
+
// reject up front so callers don't silently get all-NULL ordering.
|
|
180
|
+
if (query.sortBy !== undefined) {
|
|
181
|
+
const sortValidation = validateSortBy(ctx, query.sortBy, query.docType);
|
|
182
|
+
if (!sortValidation.ok)
|
|
183
|
+
return sortValidation;
|
|
184
|
+
}
|
|
142
185
|
let effectiveQuery = { ...query, filters: expanded.value };
|
|
143
186
|
let limitClamped;
|
|
144
187
|
if (query.limit !== undefined && query.limit > MAX_QUERY_LIMIT) {
|
|
@@ -677,17 +720,15 @@ export async function verifyIntegrity(ctx, query = {}) {
|
|
|
677
720
|
continue;
|
|
678
721
|
const files = await collectMarkdownFiles(dirPath);
|
|
679
722
|
for (const file of files) {
|
|
680
|
-
//
|
|
681
|
-
//
|
|
682
|
-
//
|
|
683
|
-
//
|
|
684
|
-
//
|
|
685
|
-
|
|
686
|
-
const relPathNative = path.relative(ctx.projectRoot, file);
|
|
687
|
-
const relPath = relPathNative.replace(/\\/g, '/');
|
|
723
|
+
// 0.7.12 — write-path canonicalizes file_path to forward slashes and
|
|
724
|
+
// getDocumentByPath is now separator-tolerant, so the prior two-forms
|
|
725
|
+
// dance is unnecessary. Look up by the canonical (forward-slash) form;
|
|
726
|
+
// the backend's fallback handles any legacy backslash rows still in the
|
|
727
|
+
// index from pre-0.7.12 Windows writes.
|
|
728
|
+
const relPath = path.relative(ctx.projectRoot, file).split(path.sep).join('/');
|
|
688
729
|
filesOnDisk.add(relPath);
|
|
689
730
|
scanned++;
|
|
690
|
-
const row = ctx.backend.getDocumentByPath(toFilePath(
|
|
731
|
+
const row = ctx.backend.getDocumentByPath(toFilePath(relPath));
|
|
691
732
|
if (!row) {
|
|
692
733
|
// filter scope is index-only — skip missing_in_index when filter active
|
|
693
734
|
if (enabled.has('missing_in_index') && allowedDocIds === null) {
|