@soleri/core 2.5.0 → 2.6.0
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/brain/intelligence.d.ts +1 -0
- package/dist/brain/intelligence.d.ts.map +1 -1
- package/dist/brain/intelligence.js +164 -148
- package/dist/brain/intelligence.js.map +1 -1
- package/dist/control/identity-manager.d.ts +3 -1
- package/dist/control/identity-manager.d.ts.map +1 -1
- package/dist/control/identity-manager.js +49 -51
- package/dist/control/identity-manager.js.map +1 -1
- package/dist/control/intent-router.d.ts +1 -0
- package/dist/control/intent-router.d.ts.map +1 -1
- package/dist/control/intent-router.js +32 -32
- package/dist/control/intent-router.js.map +1 -1
- package/dist/curator/curator.d.ts +1 -0
- package/dist/curator/curator.d.ts.map +1 -1
- package/dist/curator/curator.js +48 -99
- package/dist/curator/curator.js.map +1 -1
- package/dist/governance/governance.d.ts +1 -0
- package/dist/governance/governance.d.ts.map +1 -1
- package/dist/governance/governance.js +51 -68
- package/dist/governance/governance.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/persistence/index.d.ts +2 -1
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +1 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/postgres-provider.d.ts +46 -0
- package/dist/persistence/postgres-provider.d.ts.map +1 -0
- package/dist/persistence/postgres-provider.js +115 -0
- package/dist/persistence/postgres-provider.js.map +1 -0
- package/dist/persistence/sqlite-provider.d.ts +5 -2
- package/dist/persistence/sqlite-provider.d.ts.map +1 -1
- package/dist/persistence/sqlite-provider.js +39 -1
- package/dist/persistence/sqlite-provider.js.map +1 -1
- package/dist/persistence/types.d.ts +23 -1
- package/dist/persistence/types.d.ts.map +1 -1
- package/dist/project/project-registry.d.ts +4 -4
- package/dist/project/project-registry.d.ts.map +1 -1
- package/dist/project/project-registry.js +25 -50
- package/dist/project/project-registry.js.map +1 -1
- package/dist/runtime/admin-extra-ops.d.ts +3 -3
- package/dist/runtime/admin-extra-ops.d.ts.map +1 -1
- package/dist/runtime/admin-extra-ops.js +29 -3
- package/dist/runtime/admin-extra-ops.js.map +1 -1
- package/dist/runtime/core-ops.d.ts +4 -4
- package/dist/runtime/core-ops.js +4 -4
- package/dist/runtime/runtime.js +1 -1
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/vault-extra-ops.d.ts +3 -2
- package/dist/runtime/vault-extra-ops.d.ts.map +1 -1
- package/dist/runtime/vault-extra-ops.js +40 -2
- package/dist/runtime/vault-extra-ops.js.map +1 -1
- package/dist/vault/vault.d.ts +21 -0
- package/dist/vault/vault.d.ts.map +1 -1
- package/dist/vault/vault.js +99 -0
- package/dist/vault/vault.js.map +1 -1
- package/package.json +4 -2
- package/src/__tests__/admin-extra-ops.test.ts +2 -2
- package/src/__tests__/core-ops.test.ts +8 -2
- package/src/__tests__/persistence.test.ts +66 -0
- package/src/__tests__/postgres-provider.test.ts +58 -0
- package/src/__tests__/vault-extra-ops.test.ts +2 -2
- package/src/__tests__/vault.test.ts +184 -0
- package/src/brain/intelligence.ts +258 -307
- package/src/control/identity-manager.ts +77 -75
- package/src/control/intent-router.ts +55 -57
- package/src/curator/curator.ts +124 -145
- package/src/governance/governance.ts +90 -107
- package/src/index.ts +2 -0
- package/src/persistence/index.ts +2 -0
- package/src/persistence/postgres-provider.ts +157 -0
- package/src/persistence/sqlite-provider.ts +55 -2
- package/src/persistence/types.ts +31 -1
- package/src/project/project-registry.ts +69 -74
- package/src/runtime/admin-extra-ops.ts +36 -3
- package/src/runtime/core-ops.ts +4 -4
- package/src/runtime/runtime.ts +1 -1
- package/src/runtime/vault-extra-ops.ts +42 -2
- package/src/vault/vault.ts +118 -0
package/dist/curator/curator.js
CHANGED
|
@@ -23,16 +23,17 @@ const DEFAULT_TAG_ALIASES = [
|
|
|
23
23
|
export class Curator {
|
|
24
24
|
vault;
|
|
25
25
|
cognee;
|
|
26
|
+
provider;
|
|
26
27
|
constructor(vault, cognee) {
|
|
27
28
|
this.vault = vault;
|
|
28
29
|
this.cognee = cognee;
|
|
30
|
+
this.provider = vault.getProvider();
|
|
29
31
|
this.initializeTables();
|
|
30
32
|
this.seedDefaultAliases();
|
|
31
33
|
}
|
|
32
34
|
// ─── Schema ─────────────────────────────────────────────────────
|
|
33
35
|
initializeTables() {
|
|
34
|
-
|
|
35
|
-
db.exec(`
|
|
36
|
+
this.provider.execSql(`
|
|
36
37
|
CREATE TABLE IF NOT EXISTS curator_entry_state (
|
|
37
38
|
entry_id TEXT PRIMARY KEY,
|
|
38
39
|
status TEXT NOT NULL DEFAULT 'active' CHECK(status IN ('active', 'stale', 'archived')),
|
|
@@ -84,30 +85,25 @@ export class Curator {
|
|
|
84
85
|
resolved_at INTEGER,
|
|
85
86
|
UNIQUE(pattern_id, antipattern_id)
|
|
86
87
|
);
|
|
88
|
+
CREATE INDEX IF NOT EXISTS idx_curator_state_status ON curator_entry_state(status);
|
|
89
|
+
CREATE INDEX IF NOT EXISTS idx_curator_changelog_entry ON curator_changelog(entry_id);
|
|
87
90
|
`);
|
|
88
91
|
}
|
|
89
92
|
seedDefaultAliases() {
|
|
90
|
-
|
|
91
|
-
const insertCanonical = db.prepare('INSERT OR IGNORE INTO curator_tag_canonical (tag) VALUES (?)');
|
|
92
|
-
const insertAlias = db.prepare('INSERT OR IGNORE INTO curator_tag_alias (alias, canonical) VALUES (?, ?)');
|
|
93
|
-
const tx = db.transaction(() => {
|
|
93
|
+
this.provider.transaction(() => {
|
|
94
94
|
const canonicals = new Set(DEFAULT_TAG_ALIASES.map(([, c]) => c));
|
|
95
95
|
for (const tag of canonicals) {
|
|
96
|
-
|
|
96
|
+
this.provider.run('INSERT OR IGNORE INTO curator_tag_canonical (tag) VALUES (?)', [tag]);
|
|
97
97
|
}
|
|
98
98
|
for (const [alias, canonical] of DEFAULT_TAG_ALIASES) {
|
|
99
|
-
|
|
99
|
+
this.provider.run('INSERT OR IGNORE INTO curator_tag_alias (alias, canonical) VALUES (?, ?)', [alias, canonical]);
|
|
100
100
|
}
|
|
101
101
|
});
|
|
102
|
-
tx();
|
|
103
102
|
}
|
|
104
103
|
// ─── Status ─────────────────────────────────────────────────────
|
|
105
104
|
getStatus() {
|
|
106
|
-
const
|
|
107
|
-
const
|
|
108
|
-
const lastGroomed = db
|
|
109
|
-
.prepare('SELECT MAX(last_groomed_at) as ts FROM curator_entry_state WHERE last_groomed_at IS NOT NULL')
|
|
110
|
-
.get();
|
|
105
|
+
const tableCount = (table) => (this.provider.get(`SELECT COUNT(*) as count FROM ${table}`) ?? { count: 0 }).count;
|
|
106
|
+
const lastGroomed = this.provider.get('SELECT MAX(last_groomed_at) as ts FROM curator_entry_state WHERE last_groomed_at IS NOT NULL') ?? { ts: null };
|
|
111
107
|
return {
|
|
112
108
|
initialized: true,
|
|
113
109
|
tables: {
|
|
@@ -122,9 +118,8 @@ export class Curator {
|
|
|
122
118
|
}
|
|
123
119
|
// ─── Tag Normalization ──────────────────────────────────────────
|
|
124
120
|
normalizeTag(tag) {
|
|
125
|
-
const db = this.vault.getDb();
|
|
126
121
|
const lower = tag.toLowerCase().trim();
|
|
127
|
-
const row =
|
|
122
|
+
const row = this.provider.get('SELECT canonical FROM curator_tag_alias WHERE alias = ?', [lower]);
|
|
128
123
|
if (row) {
|
|
129
124
|
return { original: tag, normalized: row.canonical, wasAliased: true };
|
|
130
125
|
}
|
|
@@ -146,27 +141,22 @@ export class Curator {
|
|
|
146
141
|
}
|
|
147
142
|
if (changed) {
|
|
148
143
|
const dedupedTags = [...new Set(normalizedTags)];
|
|
149
|
-
|
|
150
|
-
db.prepare('UPDATE entries SET tags = ?, updated_at = unixepoch() WHERE id = ?').run(JSON.stringify(dedupedTags), entryId);
|
|
144
|
+
this.provider.run('UPDATE entries SET tags = ?, updated_at = unixepoch() WHERE id = ?', [JSON.stringify(dedupedTags), entryId]);
|
|
151
145
|
this.logChange('normalize_tags', entryId, JSON.stringify(entry.tags), JSON.stringify(dedupedTags), 'Tag normalization');
|
|
152
146
|
}
|
|
153
147
|
return results;
|
|
154
148
|
}
|
|
155
149
|
addTagAlias(alias, canonical) {
|
|
156
|
-
const db = this.vault.getDb();
|
|
157
150
|
const lower = alias.toLowerCase().trim();
|
|
158
151
|
const canonicalLower = canonical.toLowerCase().trim();
|
|
159
|
-
|
|
160
|
-
|
|
152
|
+
this.provider.run('INSERT OR IGNORE INTO curator_tag_canonical (tag) VALUES (?)', [canonicalLower]);
|
|
153
|
+
this.provider.run('INSERT OR REPLACE INTO curator_tag_alias (alias, canonical) VALUES (?, ?)', [lower, canonicalLower]);
|
|
161
154
|
}
|
|
162
155
|
getCanonicalTags() {
|
|
163
|
-
const
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
FROM curator_tag_canonical c
|
|
168
|
-
ORDER BY c.tag`)
|
|
169
|
-
.all();
|
|
156
|
+
const rows = this.provider.all(`SELECT c.tag, c.description,
|
|
157
|
+
(SELECT COUNT(*) FROM curator_tag_alias a WHERE a.canonical = c.tag) as alias_count
|
|
158
|
+
FROM curator_tag_canonical c
|
|
159
|
+
ORDER BY c.tag`);
|
|
170
160
|
return rows.map((row) => ({
|
|
171
161
|
tag: row.tag,
|
|
172
162
|
description: row.description,
|
|
@@ -175,11 +165,8 @@ export class Curator {
|
|
|
175
165
|
}));
|
|
176
166
|
}
|
|
177
167
|
countTagUsage(tag) {
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
.prepare('SELECT COUNT(*) as count FROM entries WHERE tags LIKE ?')
|
|
181
|
-
.get(`%"${tag}"%`);
|
|
182
|
-
return row.count;
|
|
168
|
+
const row = this.provider.get('SELECT COUNT(*) as count FROM entries WHERE tags LIKE ?', [`%"${tag}"%`]);
|
|
169
|
+
return row?.count ?? 0;
|
|
183
170
|
}
|
|
184
171
|
// ─── Duplicate Detection ────────────────────────────────────────
|
|
185
172
|
detectDuplicates(entryId, threshold) {
|
|
@@ -234,10 +221,7 @@ export class Curator {
|
|
|
234
221
|
if (antipatterns.length === 0 || patterns.length === 0)
|
|
235
222
|
return [];
|
|
236
223
|
const vocabulary = this.buildVocabulary(entries);
|
|
237
|
-
const db = this.vault.getDb();
|
|
238
224
|
const detected = [];
|
|
239
|
-
const insertStmt = db.prepare(`INSERT OR IGNORE INTO curator_contradictions (pattern_id, antipattern_id, similarity)
|
|
240
|
-
VALUES (?, ?, ?)`);
|
|
241
225
|
for (const ap of antipatterns) {
|
|
242
226
|
// Stage 1: FTS5 candidate retrieval (fall back to all patterns if FTS returns empty)
|
|
243
227
|
let candidates;
|
|
@@ -256,12 +240,11 @@ export class Curator {
|
|
|
256
240
|
const pVec = calculateTfIdf(tokenize(pText), vocabulary);
|
|
257
241
|
const similarity = cosineSimilarity(apVec, pVec);
|
|
258
242
|
if (similarity >= effectiveThreshold) {
|
|
259
|
-
const result =
|
|
243
|
+
const result = this.provider.run('INSERT OR IGNORE INTO curator_contradictions (pattern_id, antipattern_id, similarity) VALUES (?, ?, ?)', [pattern.id, ap.id, similarity]);
|
|
260
244
|
if (result.changes > 0) {
|
|
261
|
-
const row =
|
|
262
|
-
|
|
263
|
-
.
|
|
264
|
-
detected.push(this.rowToContradiction(row));
|
|
245
|
+
const row = this.provider.get('SELECT * FROM curator_contradictions WHERE pattern_id = ? AND antipattern_id = ?', [pattern.id, ap.id]);
|
|
246
|
+
if (row)
|
|
247
|
+
detected.push(this.rowToContradiction(row));
|
|
265
248
|
}
|
|
266
249
|
}
|
|
267
250
|
}
|
|
@@ -269,17 +252,15 @@ export class Curator {
|
|
|
269
252
|
return detected;
|
|
270
253
|
}
|
|
271
254
|
getContradictions(status) {
|
|
272
|
-
const db = this.vault.getDb();
|
|
273
255
|
const query = status
|
|
274
256
|
? 'SELECT * FROM curator_contradictions WHERE status = ? ORDER BY similarity DESC'
|
|
275
257
|
: 'SELECT * FROM curator_contradictions ORDER BY similarity DESC';
|
|
276
|
-
const rows = (status ?
|
|
258
|
+
const rows = this.provider.all(query, status ? [status] : undefined);
|
|
277
259
|
return rows.map((r) => this.rowToContradiction(r));
|
|
278
260
|
}
|
|
279
261
|
resolveContradiction(id, resolution) {
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
const row = db.prepare('SELECT * FROM curator_contradictions WHERE id = ?').get(id);
|
|
262
|
+
this.provider.run('UPDATE curator_contradictions SET status = ?, resolved_at = unixepoch() WHERE id = ?', [resolution, id]);
|
|
263
|
+
const row = this.provider.get('SELECT * FROM curator_contradictions WHERE id = ?', [id]);
|
|
283
264
|
return row ? this.rowToContradiction(row) : null;
|
|
284
265
|
}
|
|
285
266
|
async detectContradictionsHybrid(threshold) {
|
|
@@ -291,10 +272,7 @@ export class Curator {
|
|
|
291
272
|
return { contradictions: [], cogneeAvailable: false, method: 'tfidf-only' };
|
|
292
273
|
}
|
|
293
274
|
const vocabulary = this.buildVocabulary(entries);
|
|
294
|
-
const db = this.vault.getDb();
|
|
295
275
|
const detected = [];
|
|
296
|
-
const insertStmt = db.prepare(`INSERT OR IGNORE INTO curator_contradictions (pattern_id, antipattern_id, similarity)
|
|
297
|
-
VALUES (?, ?, ?)`);
|
|
298
276
|
const cogneeAvailable = this.cognee?.isAvailable ?? false;
|
|
299
277
|
for (const ap of antipatterns) {
|
|
300
278
|
let candidates;
|
|
@@ -327,12 +305,11 @@ export class Curator {
|
|
|
327
305
|
}
|
|
328
306
|
}
|
|
329
307
|
if (finalScore >= effectiveThreshold) {
|
|
330
|
-
const result =
|
|
308
|
+
const result = this.provider.run('INSERT OR IGNORE INTO curator_contradictions (pattern_id, antipattern_id, similarity) VALUES (?, ?, ?)', [pattern.id, ap.id, finalScore]);
|
|
331
309
|
if (result.changes > 0) {
|
|
332
|
-
const row =
|
|
333
|
-
|
|
334
|
-
.
|
|
335
|
-
detected.push(this.rowToContradiction(row));
|
|
310
|
+
const row = this.provider.get('SELECT * FROM curator_contradictions WHERE pattern_id = ? AND antipattern_id = ?', [pattern.id, ap.id]);
|
|
311
|
+
if (row)
|
|
312
|
+
detected.push(this.rowToContradiction(row));
|
|
336
313
|
}
|
|
337
314
|
}
|
|
338
315
|
}
|
|
@@ -350,15 +327,14 @@ export class Curator {
|
|
|
350
327
|
return null;
|
|
351
328
|
const tagsNormalized = this.normalizeTags(entryId);
|
|
352
329
|
// Check staleness based on entry's updated_at timestamp
|
|
353
|
-
const
|
|
354
|
-
const row = db.prepare('SELECT updated_at FROM entries WHERE id = ?').get(entryId);
|
|
330
|
+
const row = this.provider.get('SELECT updated_at FROM entries WHERE id = ?', [entryId]);
|
|
355
331
|
const now = Math.floor(Date.now() / 1000);
|
|
356
332
|
const stale = row ? now - row.updated_at > DEFAULT_STALE_DAYS * 86400 : false;
|
|
357
333
|
const status = stale ? 'stale' : 'active';
|
|
358
334
|
// Upsert entry state
|
|
359
|
-
|
|
335
|
+
this.provider.run(`INSERT INTO curator_entry_state (entry_id, status, last_groomed_at)
|
|
360
336
|
VALUES (?, ?, unixepoch())
|
|
361
|
-
ON CONFLICT(entry_id) DO UPDATE SET status = excluded.status, last_groomed_at = unixepoch()
|
|
337
|
+
ON CONFLICT(entry_id) DO UPDATE SET status = excluded.status, last_groomed_at = unixepoch()`, [entryId, status]);
|
|
362
338
|
this.logChange('groom', entryId, null, `status=${status}`, 'Routine grooming');
|
|
363
339
|
return {
|
|
364
340
|
entryId,
|
|
@@ -398,12 +374,9 @@ export class Curator {
|
|
|
398
374
|
// Detect duplicates
|
|
399
375
|
const duplicates = this.detectDuplicates(undefined, duplicateThreshold);
|
|
400
376
|
// Detect stale entries
|
|
401
|
-
const db = this.vault.getDb();
|
|
402
377
|
const now = Math.floor(Date.now() / 1000);
|
|
403
378
|
const staleThreshold = now - staleDaysThreshold * 86400;
|
|
404
|
-
const staleRows =
|
|
405
|
-
.prepare('SELECT id FROM entries WHERE updated_at < ?')
|
|
406
|
-
.all(staleThreshold);
|
|
379
|
+
const staleRows = this.provider.all('SELECT id FROM entries WHERE updated_at < ?', [staleThreshold]);
|
|
407
380
|
const staleEntries = staleRows.map((r) => r.id);
|
|
408
381
|
// Detect contradictions
|
|
409
382
|
const contradictions = this.detectContradictions(contradictionThreshold);
|
|
@@ -411,9 +384,9 @@ export class Curator {
|
|
|
411
384
|
if (!dryRun) {
|
|
412
385
|
// Archive stale entries
|
|
413
386
|
for (const entryId of staleEntries) {
|
|
414
|
-
|
|
387
|
+
this.provider.run(`INSERT INTO curator_entry_state (entry_id, status, last_groomed_at)
|
|
415
388
|
VALUES (?, 'archived', unixepoch())
|
|
416
|
-
ON CONFLICT(entry_id) DO UPDATE SET status = 'archived', last_groomed_at = unixepoch()
|
|
389
|
+
ON CONFLICT(entry_id) DO UPDATE SET status = 'archived', last_groomed_at = unixepoch()`, [entryId]);
|
|
417
390
|
this.logChange('archive', entryId, 'active', 'archived', 'Stale entry archived during consolidation');
|
|
418
391
|
mutations++;
|
|
419
392
|
}
|
|
@@ -441,10 +414,7 @@ export class Curator {
|
|
|
441
414
|
}
|
|
442
415
|
// ─── Changelog ──────────────────────────────────────────────────
|
|
443
416
|
getEntryHistory(entryId, limit) {
|
|
444
|
-
const
|
|
445
|
-
const rows = db
|
|
446
|
-
.prepare('SELECT * FROM curator_changelog WHERE entry_id = ? ORDER BY created_at DESC, id DESC LIMIT ?')
|
|
447
|
-
.all(entryId, limit ?? 50);
|
|
417
|
+
const rows = this.provider.all('SELECT * FROM curator_changelog WHERE entry_id = ? ORDER BY created_at DESC, id DESC LIMIT ?', [entryId, limit ?? 50]);
|
|
448
418
|
return rows.map((r) => this.rowToChangelog(r));
|
|
449
419
|
}
|
|
450
420
|
// ─── Health Audit ───────────────────────────────────────────────
|
|
@@ -485,12 +455,9 @@ export class Curator {
|
|
|
485
455
|
}
|
|
486
456
|
coverageScore = Math.max(0, coverageScore);
|
|
487
457
|
// Freshness: penalize stale entries
|
|
488
|
-
const db = this.vault.getDb();
|
|
489
458
|
const now = Math.floor(Date.now() / 1000);
|
|
490
459
|
const staleThreshold = now - DEFAULT_STALE_DAYS * 86400;
|
|
491
|
-
const staleCount =
|
|
492
|
-
.prepare('SELECT COUNT(*) as count FROM entries WHERE updated_at < ?')
|
|
493
|
-
.get(staleThreshold).count;
|
|
460
|
+
const staleCount = (this.provider.get('SELECT COUNT(*) as count FROM entries WHERE updated_at < ?', [staleThreshold]) ?? { count: 0 }).count;
|
|
494
461
|
const staleRatio = staleCount / entries.length;
|
|
495
462
|
const freshnessScore = 1 - staleRatio;
|
|
496
463
|
if (staleRatio > 0.3) {
|
|
@@ -525,9 +492,7 @@ export class Curator {
|
|
|
525
492
|
recommendations.push(`${lowTagEntries.length} entries have fewer than 2 tags — improve tagging.`);
|
|
526
493
|
}
|
|
527
494
|
// Penalize ungroomed entries
|
|
528
|
-
const groomedCount =
|
|
529
|
-
.prepare('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL')
|
|
530
|
-
.get().count;
|
|
495
|
+
const groomedCount = (this.provider.get('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL') ?? { count: 0 }).count;
|
|
531
496
|
if (groomedCount < entries.length) {
|
|
532
497
|
const ungroomed = entries.length - groomedCount;
|
|
533
498
|
const penalty = Math.min(10, Math.round((ungroomed / entries.length) * 10));
|
|
@@ -554,17 +519,11 @@ export class Curator {
|
|
|
554
519
|
const entry = this.vault.get(entryId);
|
|
555
520
|
if (!entry)
|
|
556
521
|
return { recorded: false, historyId: -1 };
|
|
557
|
-
const
|
|
558
|
-
const result = db
|
|
559
|
-
.prepare('INSERT INTO curator_entry_history (entry_id, snapshot, changed_by, change_reason, created_at) VALUES (?, ?, ?, ?, unixepoch())')
|
|
560
|
-
.run(entryId, JSON.stringify(entry), changedBy ?? 'system', changeReason ?? null);
|
|
522
|
+
const result = this.provider.run('INSERT INTO curator_entry_history (entry_id, snapshot, changed_by, change_reason, created_at) VALUES (?, ?, ?, ?, unixepoch())', [entryId, JSON.stringify(entry), changedBy ?? 'system', changeReason ?? null]);
|
|
561
523
|
return { recorded: true, historyId: Number(result.lastInsertRowid) };
|
|
562
524
|
}
|
|
563
525
|
getVersionHistory(entryId) {
|
|
564
|
-
const
|
|
565
|
-
const rows = db
|
|
566
|
-
.prepare('SELECT * FROM curator_entry_history WHERE entry_id = ? ORDER BY created_at ASC, id ASC')
|
|
567
|
-
.all(entryId);
|
|
526
|
+
const rows = this.provider.all('SELECT * FROM curator_entry_history WHERE entry_id = ? ORDER BY created_at ASC, id ASC', [entryId]);
|
|
568
527
|
return rows.map((row) => ({
|
|
569
528
|
historyId: row.id,
|
|
570
529
|
entryId: row.entry_id,
|
|
@@ -576,26 +535,17 @@ export class Curator {
|
|
|
576
535
|
}
|
|
577
536
|
// ─── Queue Stats ──────────────────────────────────────────────
|
|
578
537
|
getQueueStats() {
|
|
579
|
-
const
|
|
580
|
-
const
|
|
581
|
-
const groomedEntries = db
|
|
582
|
-
.prepare('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL')
|
|
583
|
-
.get().count;
|
|
538
|
+
const totalEntries = (this.provider.get('SELECT COUNT(*) as count FROM entries') ?? { count: 0 }).count;
|
|
539
|
+
const groomedEntries = (this.provider.get('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL') ?? { count: 0 }).count;
|
|
584
540
|
const ungroomedEntries = totalEntries - groomedEntries;
|
|
585
541
|
const now = Math.floor(Date.now() / 1000);
|
|
586
542
|
const staleThreshold = now - 30 * 86400;
|
|
587
543
|
const freshThreshold = now - 7 * 86400;
|
|
588
|
-
const staleEntries =
|
|
589
|
-
|
|
590
|
-
.get(staleThreshold).count;
|
|
591
|
-
const freshEntries = db
|
|
592
|
-
.prepare('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL AND last_groomed_at >= ?')
|
|
593
|
-
.get(freshThreshold).count;
|
|
544
|
+
const staleEntries = (this.provider.get('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL AND last_groomed_at < ?', [staleThreshold]) ?? { count: 0 }).count;
|
|
545
|
+
const freshEntries = (this.provider.get('SELECT COUNT(*) as count FROM curator_entry_state WHERE last_groomed_at IS NOT NULL AND last_groomed_at >= ?', [freshThreshold]) ?? { count: 0 }).count;
|
|
594
546
|
let avgDaysSinceGroom = 0;
|
|
595
547
|
if (groomedEntries > 0) {
|
|
596
|
-
const sumRow =
|
|
597
|
-
.prepare('SELECT SUM(? - last_groomed_at) as total FROM curator_entry_state WHERE last_groomed_at IS NOT NULL')
|
|
598
|
-
.get(now);
|
|
548
|
+
const sumRow = this.provider.get('SELECT SUM(? - last_groomed_at) as total FROM curator_entry_state WHERE last_groomed_at IS NOT NULL', [now]) ?? { total: 0 };
|
|
599
549
|
const totalSeconds = sumRow.total ?? 0;
|
|
600
550
|
avgDaysSinceGroom = Math.round((totalSeconds / groomedEntries / 86400) * 100) / 100;
|
|
601
551
|
}
|
|
@@ -694,8 +644,7 @@ export class Curator {
|
|
|
694
644
|
return vocabulary;
|
|
695
645
|
}
|
|
696
646
|
logChange(action, entryId, beforeValue, afterValue, reason) {
|
|
697
|
-
|
|
698
|
-
db.prepare('INSERT INTO curator_changelog (action, entry_id, before_value, after_value, reason) VALUES (?, ?, ?, ?, ?)').run(action, entryId, beforeValue, afterValue, reason);
|
|
647
|
+
this.provider.run('INSERT INTO curator_changelog (action, entry_id, before_value, after_value, reason) VALUES (?, ?, ?, ?, ?)', [action, entryId, beforeValue, afterValue, reason]);
|
|
699
648
|
}
|
|
700
649
|
rowToContradiction(row) {
|
|
701
650
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curator.js","sourceRoot":"","sources":["../../src/curator/curator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"curator.js","sourceRoot":"","sources":["../../src/curator/curator.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { Vault } from '../vault/vault.js';
|
|
|
2
2
|
import type { PolicyType, PolicyPreset, VaultPolicy, QuotaStatus, PolicyDecision, BatchDecision, PolicyAuditEntry, Proposal, ProposalStats, GovernanceDashboard } from './types.js';
|
|
3
3
|
export declare class Governance {
|
|
4
4
|
private vault;
|
|
5
|
+
private provider;
|
|
5
6
|
constructor(vault: Vault);
|
|
6
7
|
private initializeTables;
|
|
7
8
|
getPolicy(projectPath: string): VaultPolicy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../src/governance/governance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../src/governance/governance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EAIZ,WAAW,EACX,WAAW,EACX,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,QAAQ,EAER,aAAa,EACb,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAyDpB,qBAAa,UAAU;IACrB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,QAAQ,CAAsB;gBAE1B,KAAK,EAAE,KAAK;IAQxB,OAAO,CAAC,gBAAgB;IAgExB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAsB3C,SAAS,CACP,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI;IAwBP,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAwBhF,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAqChD,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IA2BtE,eAAe,CACb,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACxD,cAAc;IAkEjB,aAAa,CACX,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACjE,aAAa,EAAE;IASlB,OAAO,CAAC,aAAa;IA4BrB,OAAO,CACL,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,EACD,MAAM,CAAC,EAAE,MAAM,GACd,MAAM;IAiBT,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAOxE,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAItF,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,SAAS,CAAC,EAAE,MAAM,GACjB,QAAQ,GAAG,IAAI;IAyBlB,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE;IAetE,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,aAAa;IAmErD,oBAAoB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAcjD,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,mBAAmB;IAoCtD,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,eAAe;CAOxB"}
|