@jafreck/lore 0.3.3 → 0.3.5
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 +23 -6
- package/dist/cli.js +56 -0
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/indexer/embedder.d.ts +67 -30
- package/dist/indexer/embedder.d.ts.map +1 -1
- package/dist/indexer/embedder.js +151 -146
- package/dist/indexer/embedder.js.map +1 -1
- package/dist/indexer/graph-analysis.d.ts +115 -0
- package/dist/indexer/graph-analysis.d.ts.map +1 -0
- package/dist/indexer/graph-analysis.js +575 -0
- package/dist/indexer/graph-analysis.js.map +1 -0
- package/dist/indexer/stages/embedding.d.ts +9 -0
- package/dist/indexer/stages/embedding.d.ts.map +1 -1
- package/dist/indexer/stages/embedding.js +127 -83
- package/dist/indexer/stages/embedding.js.map +1 -1
- package/dist/lore-server/db.d.ts +74 -0
- package/dist/lore-server/db.d.ts.map +1 -1
- package/dist/lore-server/db.js +114 -0
- package/dist/lore-server/db.js.map +1 -1
- package/dist/lore-server/server.d.ts.map +1 -1
- package/dist/lore-server/server.js +7 -17
- package/dist/lore-server/server.js.map +1 -1
- package/dist/lore-server/tool-registry.d.ts.map +1 -1
- package/dist/lore-server/tool-registry.js +6 -1
- package/dist/lore-server/tool-registry.js.map +1 -1
- package/dist/lore-server/tools/graph-analysis.d.ts +64 -0
- package/dist/lore-server/tools/graph-analysis.d.ts.map +1 -0
- package/dist/lore-server/tools/graph-analysis.js +82 -0
- package/dist/lore-server/tools/graph-analysis.js.map +1 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +4 -5
- package/dist/runtime.js.map +1 -1
- package/package.json +2 -1
- package/dist/indexer/ensure-python-deps.d.ts +0 -22
- package/dist/indexer/ensure-python-deps.d.ts.map +0 -1
- package/dist/indexer/ensure-python-deps.js +0 -47
- package/dist/indexer/ensure-python-deps.js.map +0 -1
|
@@ -3,11 +3,18 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Pipeline stage: embed symbol signatures, documentation sections, and
|
|
5
5
|
* commit messages into vec0 virtual tables for semantic search.
|
|
6
|
+
*
|
|
7
|
+
* Optimisations:
|
|
8
|
+
* - **Token-aware batching**: batches are sized by estimated token budget
|
|
9
|
+
* rather than a fixed item count, avoiding pathological padding waste
|
|
10
|
+
* when one long signature inflates the whole batch.
|
|
11
|
+
* - **Skip-unchanged**: in update mode, symbols whose embedding input text
|
|
12
|
+
* has not changed (by SHA-256 hash) are skipped entirely.
|
|
13
|
+
* - **Double-buffered I/O**: the next `embed()` call fires while the
|
|
14
|
+
* current batch's vectors are written to SQLite.
|
|
6
15
|
*/
|
|
7
16
|
import { setLoreMeta, createVec0Tables } from '../db.js';
|
|
8
|
-
import { buildStructuralEmbeddingText } from '../embedder.js';
|
|
9
|
-
/** Number of items to embed per batch. */
|
|
10
|
-
const EMBED_BATCH_SIZE = 64;
|
|
17
|
+
import { buildStructuralEmbeddingText, hashEmbeddingText, tokenAwareBatch } from '../embedder.js';
|
|
11
18
|
/**
|
|
12
19
|
* Embed symbol signatures, documentation sections, and commit messages.
|
|
13
20
|
*
|
|
@@ -27,8 +34,8 @@ export class EmbeddingStage {
|
|
|
27
34
|
// Resolve scoped file/doc IDs for incremental embedding.
|
|
28
35
|
const changedFileIds = resolveFileIds(db, context.changedSourcePaths, context.branch);
|
|
29
36
|
const changedDocIds = resolveDocIds(db, context.changedDocPaths, context.branch);
|
|
30
|
-
await embedStructural(db, embedder, changedFileIds);
|
|
31
|
-
await embedDocumentation(db, embedder, changedDocIds);
|
|
37
|
+
await embedStructural(db, embedder, changedFileIds, /* skipUnchanged */ true);
|
|
38
|
+
await embedDocumentation(db, embedder, changedDocIds, /* skipUnchanged */ true);
|
|
32
39
|
}
|
|
33
40
|
else {
|
|
34
41
|
await embedStructural(db, embedder);
|
|
@@ -40,11 +47,12 @@ export class EmbeddingStage {
|
|
|
40
47
|
context.log.indexing('embedding complete');
|
|
41
48
|
}
|
|
42
49
|
}
|
|
43
|
-
|
|
44
|
-
async function embedStructural(db, embedder, fileIds) {
|
|
50
|
+
async function embedStructural(db, embedder, fileIds, skipUnchanged = false) {
|
|
45
51
|
setLoreMeta(db, 'embedding_model', embedder.modelName);
|
|
46
52
|
setLoreMeta(db, 'embedding_dims', String(embedder.dims));
|
|
47
53
|
createVec0Tables(db, embedder.dims);
|
|
54
|
+
// Ensure the hash tracking column exists (idempotent).
|
|
55
|
+
ensureEmbeddingHashColumn(db, 'symbol_embeddings');
|
|
48
56
|
const baseQuery = `SELECT id, name, signature, resolved_type_signature, resolved_return_type
|
|
49
57
|
FROM symbols
|
|
50
58
|
WHERE (signature IS NOT NULL
|
|
@@ -59,49 +67,46 @@ async function embedStructural(db, embedder, fileIds) {
|
|
|
59
67
|
else {
|
|
60
68
|
symbols = db.prepare(baseQuery).all();
|
|
61
69
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
db.transaction(() => {
|
|
77
|
-
for (let j = 0; j < pendingBatch.length; j++) {
|
|
78
|
-
const sym = pendingBatch[j];
|
|
79
|
-
if (sym)
|
|
80
|
-
insertEmbed.run(sym.id, JSON.stringify(embeddings[j]));
|
|
81
|
-
}
|
|
82
|
-
})();
|
|
83
|
-
}
|
|
84
|
-
pendingEmbed = embedder.embed(texts);
|
|
85
|
-
pendingBatch = batch;
|
|
70
|
+
// Build texts and compute hashes; filter out unchanged if requested.
|
|
71
|
+
const items = [];
|
|
72
|
+
const existingHashes = skipUnchanged ? loadExistingHashes(db, 'symbol_embeddings', symbols.map(s => s.id)) : new Map();
|
|
73
|
+
for (const sym of symbols) {
|
|
74
|
+
const text = buildStructuralEmbeddingText({
|
|
75
|
+
name: sym.name,
|
|
76
|
+
signature: sym.signature,
|
|
77
|
+
resolvedTypeSignature: sym.resolved_type_signature,
|
|
78
|
+
resolvedReturnType: sym.resolved_return_type,
|
|
79
|
+
});
|
|
80
|
+
const hash = hashEmbeddingText(text);
|
|
81
|
+
if (skipUnchanged && existingHashes.get(sym.id) === hash)
|
|
82
|
+
continue;
|
|
83
|
+
items.push({ sym, text, hash });
|
|
86
84
|
}
|
|
87
|
-
if (
|
|
88
|
-
|
|
85
|
+
if (items.length === 0)
|
|
86
|
+
return;
|
|
87
|
+
const insertEmbed = db.prepare('INSERT OR REPLACE INTO symbol_embeddings(rowid, embedding) VALUES (CAST(? AS INTEGER), json(?))');
|
|
88
|
+
const insertHash = db.prepare('INSERT OR REPLACE INTO symbol_embeddings_hashes(rowid, content_hash) VALUES (?, ?)');
|
|
89
|
+
const batches = tokenAwareBatch(items, (item) => item.text);
|
|
90
|
+
await embedBatchesDoubleBuffered(batches, embedder, (item) => item.text, (batch, embeddings) => {
|
|
89
91
|
db.transaction(() => {
|
|
90
|
-
for (let j = 0; j <
|
|
91
|
-
const
|
|
92
|
-
if (
|
|
93
|
-
insertEmbed.run(sym.id, JSON.stringify(embeddings[j]));
|
|
92
|
+
for (let j = 0; j < batch.length; j++) {
|
|
93
|
+
const item = batch[j];
|
|
94
|
+
if (item) {
|
|
95
|
+
insertEmbed.run(item.sym.id, JSON.stringify(embeddings[j]));
|
|
96
|
+
insertHash.run(item.sym.id, item.hash);
|
|
97
|
+
}
|
|
94
98
|
}
|
|
95
99
|
})();
|
|
96
|
-
}
|
|
100
|
+
});
|
|
97
101
|
}
|
|
98
102
|
// ─── Documentation section embeddings ─────────────────────────────────────────
|
|
99
|
-
async function embedDocumentation(db, embedder, docIds) {
|
|
103
|
+
async function embedDocumentation(db, embedder, docIds, skipUnchanged = false) {
|
|
100
104
|
db.exec(`
|
|
101
105
|
CREATE VIRTUAL TABLE IF NOT EXISTS doc_section_embeddings USING vec0(
|
|
102
106
|
embedding FLOAT[${embedder.dims}]
|
|
103
107
|
);
|
|
104
108
|
`);
|
|
109
|
+
ensureEmbeddingHashColumn(db, 'doc_section_embeddings');
|
|
105
110
|
let sections;
|
|
106
111
|
if (docIds && docIds.length > 0) {
|
|
107
112
|
sections = db.prepare(`SELECT id, title, content
|
|
@@ -116,36 +121,32 @@ async function embedDocumentation(db, embedder, docIds) {
|
|
|
116
121
|
}
|
|
117
122
|
if (sections.length === 0)
|
|
118
123
|
return;
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
db.transaction(() => {
|
|
129
|
-
for (let j = 0; j < pendingBatch.length; j++) {
|
|
130
|
-
const section = pendingBatch[j];
|
|
131
|
-
if (section)
|
|
132
|
-
insertEmbed.run(section.id, JSON.stringify(embeddings[j]));
|
|
133
|
-
}
|
|
134
|
-
})();
|
|
135
|
-
}
|
|
136
|
-
pendingEmbed = embedder.embed(texts);
|
|
137
|
-
pendingBatch = batch;
|
|
124
|
+
// Build texts, compute hashes, filter unchanged.
|
|
125
|
+
const items = [];
|
|
126
|
+
const existingHashes = skipUnchanged ? loadExistingHashes(db, 'doc_section_embeddings', sections.map(s => s.id)) : new Map();
|
|
127
|
+
for (const section of sections) {
|
|
128
|
+
const text = section.content || section.title;
|
|
129
|
+
const hash = hashEmbeddingText(text);
|
|
130
|
+
if (skipUnchanged && existingHashes.get(section.id) === hash)
|
|
131
|
+
continue;
|
|
132
|
+
items.push({ section, text, hash });
|
|
138
133
|
}
|
|
139
|
-
if (
|
|
140
|
-
|
|
134
|
+
if (items.length === 0)
|
|
135
|
+
return;
|
|
136
|
+
const insertEmbed = db.prepare('INSERT OR REPLACE INTO doc_section_embeddings(rowid, embedding) VALUES (CAST(? AS INTEGER), json(?))');
|
|
137
|
+
const insertHash = db.prepare('INSERT OR REPLACE INTO doc_section_embeddings_hashes(rowid, content_hash) VALUES (?, ?)');
|
|
138
|
+
const batches = tokenAwareBatch(items, (item) => item.text);
|
|
139
|
+
await embedBatchesDoubleBuffered(batches, embedder, (item) => item.text, (batch, embeddings) => {
|
|
141
140
|
db.transaction(() => {
|
|
142
|
-
for (let j = 0; j <
|
|
143
|
-
const
|
|
144
|
-
if (
|
|
145
|
-
insertEmbed.run(section.id, JSON.stringify(embeddings[j]));
|
|
141
|
+
for (let j = 0; j < batch.length; j++) {
|
|
142
|
+
const item = batch[j];
|
|
143
|
+
if (item) {
|
|
144
|
+
insertEmbed.run(item.section.id, JSON.stringify(embeddings[j]));
|
|
145
|
+
insertHash.run(item.section.id, item.hash);
|
|
146
|
+
}
|
|
146
147
|
}
|
|
147
148
|
})();
|
|
148
|
-
}
|
|
149
|
+
});
|
|
149
150
|
}
|
|
150
151
|
// ─── Commit message embeddings ────────────────────────────────────────────────
|
|
151
152
|
async function embedCommitMessages(db, embedder) {
|
|
@@ -158,34 +159,77 @@ async function embedCommitMessages(db, embedder) {
|
|
|
158
159
|
if (commits.length === 0)
|
|
159
160
|
return;
|
|
160
161
|
const insertEmbed = db.prepare('INSERT OR REPLACE INTO commit_embeddings(rowid, embedding) VALUES (CAST(? AS INTEGER), json(?))');
|
|
161
|
-
|
|
162
|
+
const batches = tokenAwareBatch(commits, (c) => c.message);
|
|
163
|
+
await embedBatchesDoubleBuffered(batches, embedder, (c) => c.message, (batch, embeddings) => {
|
|
164
|
+
db.transaction(() => {
|
|
165
|
+
for (let j = 0; j < batch.length; j++) {
|
|
166
|
+
const commit = batch[j];
|
|
167
|
+
if (commit)
|
|
168
|
+
insertEmbed.run(commit.rowid, JSON.stringify(embeddings[j]));
|
|
169
|
+
}
|
|
170
|
+
})();
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
// ─── Double-buffered batch embedding ──────────────────────────────────────────
|
|
174
|
+
/**
|
|
175
|
+
* Embeds pre-batched items using double-buffered I/O: fires the next
|
|
176
|
+
* `embed()` call while writing the current batch's results to the DB.
|
|
177
|
+
*/
|
|
178
|
+
async function embedBatchesDoubleBuffered(batches, embedder, getText, writeBatch) {
|
|
162
179
|
let pendingEmbed = null;
|
|
163
180
|
let pendingBatch = [];
|
|
164
|
-
for (
|
|
165
|
-
const
|
|
181
|
+
for (const batch of batches) {
|
|
182
|
+
const texts = batch.map(getText);
|
|
183
|
+
// Write the previous batch while starting the next embed.
|
|
166
184
|
if (pendingEmbed) {
|
|
167
185
|
const embeddings = await pendingEmbed;
|
|
168
|
-
|
|
169
|
-
for (let j = 0; j < pendingBatch.length; j++) {
|
|
170
|
-
const commit = pendingBatch[j];
|
|
171
|
-
if (commit)
|
|
172
|
-
insertEmbed.run(commit.rowid, JSON.stringify(embeddings[j]));
|
|
173
|
-
}
|
|
174
|
-
})();
|
|
186
|
+
writeBatch(pendingBatch, embeddings);
|
|
175
187
|
}
|
|
176
|
-
pendingEmbed = embedder.embed(
|
|
188
|
+
pendingEmbed = embedder.embed(texts);
|
|
177
189
|
pendingBatch = batch;
|
|
178
190
|
}
|
|
191
|
+
// Drain the last pending batch.
|
|
179
192
|
if (pendingEmbed) {
|
|
180
193
|
const embeddings = await pendingEmbed;
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
194
|
+
writeBatch(pendingBatch, embeddings);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
// ─── Skip-unchanged helpers ───────────────────────────────────────────────────
|
|
198
|
+
/**
|
|
199
|
+
* Idempotently add a `content_hash` column to an embedding virtual table's
|
|
200
|
+
* shadow storage. vec0 virtual tables don't support ALTER TABLE, so we use
|
|
201
|
+
* a companion regular table for the hash.
|
|
202
|
+
*/
|
|
203
|
+
function ensureEmbeddingHashColumn(db, tableName) {
|
|
204
|
+
db.exec(`
|
|
205
|
+
CREATE TABLE IF NOT EXISTS ${tableName}_hashes (
|
|
206
|
+
rowid INTEGER PRIMARY KEY,
|
|
207
|
+
content_hash TEXT NOT NULL
|
|
208
|
+
);
|
|
209
|
+
`);
|
|
210
|
+
// Migrate: if we previously stored content_hash inline in the INSERT OR REPLACE
|
|
211
|
+
// statement, the vec0 table ignores unknown columns silently, so nothing to migrate.
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Load existing content hashes for a set of row IDs from the hash companion table.
|
|
215
|
+
*/
|
|
216
|
+
function loadExistingHashes(db, tableName, ids) {
|
|
217
|
+
const map = new Map();
|
|
218
|
+
if (ids.length === 0)
|
|
219
|
+
return map;
|
|
220
|
+
const hashTable = `${tableName}_hashes`;
|
|
221
|
+
const hasTable = db.prepare("SELECT 1 AS present FROM sqlite_master WHERE type = 'table' AND name = ?").get(hashTable);
|
|
222
|
+
if (!hasTable)
|
|
223
|
+
return map;
|
|
224
|
+
const CHUNK = 900;
|
|
225
|
+
for (let i = 0; i < ids.length; i += CHUNK) {
|
|
226
|
+
const chunk = ids.slice(i, i + CHUNK);
|
|
227
|
+
const rows = db.prepare(`SELECT rowid, content_hash FROM ${hashTable} WHERE rowid IN (${chunk.map(() => '?').join(', ')})`).all(...chunk);
|
|
228
|
+
for (const row of rows) {
|
|
229
|
+
map.set(row.rowid, row.content_hash);
|
|
230
|
+
}
|
|
188
231
|
}
|
|
232
|
+
return map;
|
|
189
233
|
}
|
|
190
234
|
// ─── Update-mode helpers ──────────────────────────────────────────────────────
|
|
191
235
|
function deleteSymbolEmbeddings(db, symbolIds) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding.js","sourceRoot":"","sources":["../../../src/indexer/stages/embedding.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"embedding.js","sourceRoot":"","sources":["../../../src/indexer/stages/embedding.ts"],"names":[],"mappings":"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"}
|
package/dist/lore-server/db.d.ts
CHANGED
|
@@ -168,6 +168,9 @@ export interface ListResolvedEdgesOptions {
|
|
|
168
168
|
fileId?: number;
|
|
169
169
|
/** Filter by caller branch. */
|
|
170
170
|
branch?: string;
|
|
171
|
+
/** Allowlist of resolution methods to include. When set, only edges whose
|
|
172
|
+
* `resolution_method` is in this list are returned. */
|
|
173
|
+
methods?: string[];
|
|
171
174
|
/** Maximum rows to return. Default: 100 000. */
|
|
172
175
|
limit?: number;
|
|
173
176
|
}
|
|
@@ -184,6 +187,77 @@ export interface ListResolvedEdgesOptions {
|
|
|
184
187
|
* - Defaults to a high limit (100 000) to avoid silent truncation
|
|
185
188
|
*/
|
|
186
189
|
export declare function listResolvedEdges(db: Database.Database, options?: ListResolvedEdgesOptions): ResolvedEdge[];
|
|
190
|
+
export interface TypeRefEdge {
|
|
191
|
+
ref_id: number;
|
|
192
|
+
symbol_id: number | null;
|
|
193
|
+
symbol_name: string | null;
|
|
194
|
+
symbol_kind: string | null;
|
|
195
|
+
symbol_file_id: number | null;
|
|
196
|
+
symbol_file_path: string | null;
|
|
197
|
+
type_id: number | null;
|
|
198
|
+
type_name: string;
|
|
199
|
+
type_name_bare: string;
|
|
200
|
+
type_kind: string | null;
|
|
201
|
+
type_file_id: number | null;
|
|
202
|
+
type_file_path: string | null;
|
|
203
|
+
ref_kind: string;
|
|
204
|
+
ref_line: number;
|
|
205
|
+
ref_character: number | null;
|
|
206
|
+
resolution_method: string;
|
|
207
|
+
}
|
|
208
|
+
export interface ListTypeRefsOptions {
|
|
209
|
+
/** Only include edges where `type_id` is resolved (non-NULL). Default: false. */
|
|
210
|
+
resolvedOnly?: boolean;
|
|
211
|
+
/** Restrict to edges from this file. */
|
|
212
|
+
fileId?: number;
|
|
213
|
+
/** Filter by branch. */
|
|
214
|
+
branch?: string;
|
|
215
|
+
/** Allowlist of resolution methods to include. */
|
|
216
|
+
methods?: string[];
|
|
217
|
+
/** Maximum rows to return. Default: 100 000. */
|
|
218
|
+
limit?: number;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Returns type-reference edges from `type_refs`, joining through
|
|
222
|
+
* `symbols` and `files` to denormalize source/target metadata.
|
|
223
|
+
*/
|
|
224
|
+
export declare function listTypeRefs(db: Database.Database, options?: ListTypeRefsOptions): TypeRefEdge[];
|
|
225
|
+
export interface SymbolRelationshipEdge {
|
|
226
|
+
ref_id: number;
|
|
227
|
+
source_symbol_id: number | null;
|
|
228
|
+
source_name: string | null;
|
|
229
|
+
source_kind: string | null;
|
|
230
|
+
source_file_id: number | null;
|
|
231
|
+
source_file_path: string | null;
|
|
232
|
+
target_symbol_id: number | null;
|
|
233
|
+
target_symbol_name: string;
|
|
234
|
+
target_kind: string | null;
|
|
235
|
+
target_file_id: number | null;
|
|
236
|
+
target_file_path: string | null;
|
|
237
|
+
relationship_type: string;
|
|
238
|
+
line: number;
|
|
239
|
+
character: number | null;
|
|
240
|
+
resolution_method: string;
|
|
241
|
+
}
|
|
242
|
+
export interface ListSymbolRelationshipsOptions {
|
|
243
|
+
/** Only include edges where `target_symbol_id` is resolved (non-NULL). Default: false. */
|
|
244
|
+
resolvedOnly?: boolean;
|
|
245
|
+
/** Restrict to edges from this file. */
|
|
246
|
+
fileId?: number;
|
|
247
|
+
/** Filter by branch. */
|
|
248
|
+
branch?: string;
|
|
249
|
+
/** Filter by relationship type (e.g. 'extends', 'implements'). */
|
|
250
|
+
relationshipType?: string;
|
|
251
|
+
/** Allowlist of resolution methods to include. */
|
|
252
|
+
methods?: string[];
|
|
253
|
+
/** Maximum rows to return. Default: 100 000. */
|
|
254
|
+
limit?: number;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Returns symbol-relationship edges (extends, implements, etc.) from
|
|
258
|
+
* `symbol_relationships`, joining through `symbols` and `files`.
|
|
259
|
+
*/
|
|
260
|
+
export declare function listSymbolRelationships(db: Database.Database, options?: ListSymbolRelationshipsOptions): SymbolRelationshipEdge[];
|
|
187
261
|
export interface DocRow {
|
|
188
262
|
id: number;
|
|
189
263
|
path: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lore-server/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lore-server/db.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAMtC,YAAY,EAAE,QAAQ,EAAE,CAAC;AASzB;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAc5D;AAID,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACA,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC;CACzB,GACC;IACA,OAAO,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACC;IACA,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC,CAAC;AAEJ,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE9D,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAQD,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAStF;AASD,yFAAyF;AACzF,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,gBAAgB,EAAE,CA6BpB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,qBAAqB,CAwBvB;AA+BD,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC;AACpG,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,EAAE,CAAC;AA2BlH,oEAAoE;AACpE,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC;AACjG,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,SAAS,EAAE,CAAC;AA+B9F,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,yBAAyB,GAC9B,iBAAiB,EAAE,CAsCrB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAuCD,qFAAqF;AACrF,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,MAAM,GACX,iBAAiB,EAAE,CAcrB;AAED,8EAA8E;AAC9E,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,EACjB,KAAK,SAAM,GACV,iBAAiB,EAAE,CAerB;AAID,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,8CAA8C;AAC9C,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAKnG;AAED,2CAA2C;AAC3C,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAKvG;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAS3F;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,SAAO,GACX,OAAO,EAAE,CAuBX;AAID,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,wBAAwB;IACvC,mFAAmF;IACnF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;4DACwD;IACxD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,wBAA6B,GACrC,YAAY,EAAE,CAqDhB;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,mBAAwB,GAChC,WAAW,EAAE,CAsDf;AAID,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,8BAA8B;IAC7C,0FAA0F;IAC1F,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,8BAAmC,GAC3C,sBAAsB,EAAE,CAyD1B;AAID,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,6BAA8B,SAAQ,mBAAmB;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,KAAK,EAAE,MAAM,CAAC;CACf;AAYD,6DAA6D;AAC7D,wBAAgB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,GAAE,YAAiB,GAAG,MAAM,EAAE,CAyBjF;AAED,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoBrG;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,GAAE,mBAAwB,GAC7B,aAAa,EAAE,CA6CjB;AAED,wFAAwF;AACxF,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,qBAAqB,GAC1B,aAAa,EAAE,CAkDjB;AAED,sGAAsG;AACtG,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,6BAA6B,GAClC,qBAAqB,EAAE,CAkDzB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,sEAAsE;AACtE,wBAAgB,4BAA4B,CAC1C,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,cAAc,EAAE,CA4BlB;AAUD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,QAAQ,CAAC,QAAQ,EACtB,KAAK,GAAE,qBAA0B,GAChC,cAAc,EAAE,CAElB;AAID,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,SAAK,GACT,aAAa,EAAE,CAoCjB;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,GAAE,iBAAsB,GAAG,WAAW,EAAE,CAgChG;AAID,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAWD,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAkED,+DAA+D;AAC/D,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAIxF;AAED,yFAAyF;AACzF,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,SAAK,GAAG,SAAS,EAAE,CAIhF;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,SAAS,EAAE,CA8BlG;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,SAAS,EAAE,CAUlG;AAED,sDAAsD;AACtD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,CAIzF;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE,CAQvF;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,SAAS,EAAE,CA0BjG;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAUlE;AAED,2EAA2E;AAC3E,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,SAAK,GACT,SAAS,EAAE,CAmBb;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,EACrC,OAAO,GAAE,kBAAuB,GAC/B,gBAAgB,EAAE,CAiBpB;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAE,kBAAuB,GAAG,aAAa,EAAE,CAgBxG;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,kBAAuB,GAC/B,kBAAkB,EAAE,CAkBtB;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,kBAAuB,GAC/B,oBAAoB,EAAE,CAkBxB;AAED,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,kBAAuB,GAC/B,sBAAsB,EAAE,CAmB1B;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,kBAAuB,GAC/B,iBAAiB,EAAE,CAarB;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE,kBAAuB,GAC/B,uBAAuB,EAAE,CAkB3B;AAID,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,qDAAqD;AACrD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,cAAc,GAAG,SAAS,CAStF;AAED,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,iBAAiB,CA0C7E;AAED,kEAAkE;AAClE,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,cAAc,GAAG,SAAS,CAoBzF;AAED,qFAAqF;AACrF,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GACrF,uBAAuB,EAAE,CAmG3B;AAED,2FAA2F;AAC3F,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAO5B"}
|
package/dist/lore-server/db.js
CHANGED
|
@@ -348,6 +348,11 @@ export function listResolvedEdges(db, options = {}) {
|
|
|
348
348
|
where.push('f_caller.branch = ?');
|
|
349
349
|
params.push(options.branch);
|
|
350
350
|
}
|
|
351
|
+
if (options.methods !== undefined && options.methods.length > 0) {
|
|
352
|
+
const ph = options.methods.map(() => '?').join(', ');
|
|
353
|
+
where.push(`sr.resolution_method IN (${ph})`);
|
|
354
|
+
params.push(...options.methods);
|
|
355
|
+
}
|
|
351
356
|
const limit = options.limit ?? 100_000;
|
|
352
357
|
params.push(limit);
|
|
353
358
|
const whereClause = where.length > 0 ? `WHERE ${where.join(' AND ')}` : '';
|
|
@@ -377,6 +382,115 @@ export function listResolvedEdges(db, options = {}) {
|
|
|
377
382
|
LIMIT ?`)
|
|
378
383
|
.all(...params);
|
|
379
384
|
}
|
|
385
|
+
/**
|
|
386
|
+
* Returns type-reference edges from `type_refs`, joining through
|
|
387
|
+
* `symbols` and `files` to denormalize source/target metadata.
|
|
388
|
+
*/
|
|
389
|
+
export function listTypeRefs(db, options = {}) {
|
|
390
|
+
const where = [];
|
|
391
|
+
const params = [];
|
|
392
|
+
if (options.resolvedOnly) {
|
|
393
|
+
where.push('tr.type_id IS NOT NULL');
|
|
394
|
+
}
|
|
395
|
+
if (options.fileId !== undefined) {
|
|
396
|
+
where.push('tr.file_id = ?');
|
|
397
|
+
params.push(options.fileId);
|
|
398
|
+
}
|
|
399
|
+
if (options.branch !== undefined) {
|
|
400
|
+
where.push('f_src.branch = ?');
|
|
401
|
+
params.push(options.branch);
|
|
402
|
+
}
|
|
403
|
+
if (options.methods !== undefined && options.methods.length > 0) {
|
|
404
|
+
const ph = options.methods.map(() => '?').join(', ');
|
|
405
|
+
where.push(`tr.resolution_method IN (${ph})`);
|
|
406
|
+
params.push(...options.methods);
|
|
407
|
+
}
|
|
408
|
+
const limit = options.limit ?? 100_000;
|
|
409
|
+
params.push(limit);
|
|
410
|
+
const whereClause = where.length > 0 ? `WHERE ${where.join(' AND ')}` : '';
|
|
411
|
+
return db
|
|
412
|
+
.prepare(`SELECT tr.id AS ref_id,
|
|
413
|
+
tr.symbol_id,
|
|
414
|
+
s_src.name AS symbol_name,
|
|
415
|
+
s_src.kind AS symbol_kind,
|
|
416
|
+
s_src.file_id AS symbol_file_id,
|
|
417
|
+
f_src.path AS symbol_file_path,
|
|
418
|
+
tr.type_id,
|
|
419
|
+
tr.type_name,
|
|
420
|
+
tr.type_name_bare,
|
|
421
|
+
s_dst.kind AS type_kind,
|
|
422
|
+
s_dst.file_id AS type_file_id,
|
|
423
|
+
f_dst.path AS type_file_path,
|
|
424
|
+
tr.ref_kind,
|
|
425
|
+
tr.ref_line,
|
|
426
|
+
tr.ref_character,
|
|
427
|
+
tr.resolution_method
|
|
428
|
+
FROM type_refs tr
|
|
429
|
+
JOIN files f_src ON f_src.id = tr.file_id
|
|
430
|
+
LEFT JOIN symbols s_src ON s_src.id = tr.symbol_id
|
|
431
|
+
LEFT JOIN symbols s_dst ON s_dst.id = tr.type_id
|
|
432
|
+
LEFT JOIN files f_dst ON f_dst.id = s_dst.file_id
|
|
433
|
+
${whereClause}
|
|
434
|
+
ORDER BY tr.file_id ASC, tr.ref_line ASC
|
|
435
|
+
LIMIT ?`)
|
|
436
|
+
.all(...params);
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* Returns symbol-relationship edges (extends, implements, etc.) from
|
|
440
|
+
* `symbol_relationships`, joining through `symbols` and `files`.
|
|
441
|
+
*/
|
|
442
|
+
export function listSymbolRelationships(db, options = {}) {
|
|
443
|
+
const where = [];
|
|
444
|
+
const params = [];
|
|
445
|
+
if (options.resolvedOnly) {
|
|
446
|
+
where.push('rel.target_symbol_id IS NOT NULL');
|
|
447
|
+
}
|
|
448
|
+
if (options.fileId !== undefined) {
|
|
449
|
+
where.push('rel.file_id = ?');
|
|
450
|
+
params.push(options.fileId);
|
|
451
|
+
}
|
|
452
|
+
if (options.branch !== undefined) {
|
|
453
|
+
where.push('f_src.branch = ?');
|
|
454
|
+
params.push(options.branch);
|
|
455
|
+
}
|
|
456
|
+
if (options.relationshipType !== undefined) {
|
|
457
|
+
where.push('rel.relationship_type = ?');
|
|
458
|
+
params.push(options.relationshipType);
|
|
459
|
+
}
|
|
460
|
+
if (options.methods !== undefined && options.methods.length > 0) {
|
|
461
|
+
const ph = options.methods.map(() => '?').join(', ');
|
|
462
|
+
where.push(`rel.resolution_method IN (${ph})`);
|
|
463
|
+
params.push(...options.methods);
|
|
464
|
+
}
|
|
465
|
+
const limit = options.limit ?? 100_000;
|
|
466
|
+
params.push(limit);
|
|
467
|
+
const whereClause = where.length > 0 ? `WHERE ${where.join(' AND ')}` : '';
|
|
468
|
+
return db
|
|
469
|
+
.prepare(`SELECT rel.id AS ref_id,
|
|
470
|
+
rel.source_symbol_id,
|
|
471
|
+
s_src.name AS source_name,
|
|
472
|
+
s_src.kind AS source_kind,
|
|
473
|
+
s_src.file_id AS source_file_id,
|
|
474
|
+
f_src.path AS source_file_path,
|
|
475
|
+
rel.target_symbol_id,
|
|
476
|
+
rel.target_symbol_name,
|
|
477
|
+
s_dst.kind AS target_kind,
|
|
478
|
+
s_dst.file_id AS target_file_id,
|
|
479
|
+
f_dst.path AS target_file_path,
|
|
480
|
+
rel.relationship_type,
|
|
481
|
+
rel.line,
|
|
482
|
+
rel.character,
|
|
483
|
+
rel.resolution_method
|
|
484
|
+
FROM symbol_relationships rel
|
|
485
|
+
JOIN files f_src ON f_src.id = rel.file_id
|
|
486
|
+
LEFT JOIN symbols s_src ON s_src.id = rel.source_symbol_id
|
|
487
|
+
LEFT JOIN symbols s_dst ON s_dst.id = rel.target_symbol_id
|
|
488
|
+
LEFT JOIN files f_dst ON f_dst.id = s_dst.file_id
|
|
489
|
+
${whereClause}
|
|
490
|
+
ORDER BY rel.file_id ASC, rel.line ASC
|
|
491
|
+
LIMIT ?`)
|
|
492
|
+
.all(...params);
|
|
493
|
+
}
|
|
380
494
|
function normalizeDocKinds(kind, kinds) {
|
|
381
495
|
const merged = [
|
|
382
496
|
...(kind ? [kind] : []),
|