sdlc-agent-4-enterprise-server 1.43.0 → 1.44.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/README.md +3 -2
- package/dist/database/adapters/SqliteAdapter.d.ts +11 -0
- package/dist/database/adapters/SqliteAdapter.js +60 -7
- package/dist/database/adapters/SqliteAdapter.js.map +1 -1
- package/dist/database/migration/ensure-pega-category-counters.js +4 -2
- package/dist/database/migration/ensure-pega-category-counters.js.map +1 -1
- package/dist/database/migrations/000-init-system-tables.cjs +126 -0
- package/dist/database/migrations/000-init-system-tables.cjs.map +1 -0
- package/dist/database/migrations/000-init-system-tables.d.cts +2 -0
- package/dist/database/schema-registry/ensure-engine-schema.d.ts +14 -0
- package/dist/database/schema-registry/ensure-engine-schema.js +36 -0
- package/dist/database/schema-registry/ensure-engine-schema.js.map +1 -0
- package/dist/database/schema-registry/ensure-sa4e-300.js +19 -0
- package/dist/database/schema-registry/ensure-sa4e-300.js.map +1 -1
- package/dist/database/schema-registry/ensure-sa4e-303.d.ts +1 -0
- package/dist/database/schema-registry/ensure-sa4e-303.js +43 -8
- package/dist/database/schema-registry/ensure-sa4e-303.js.map +1 -1
- package/dist/engine/graph/migrator.js +4 -1
- package/dist/engine/graph/migrator.js.map +1 -1
- package/dist/index.js +42 -10
- package/dist/index.js.map +1 -1
- package/dist/modules/kb-graph/service/sync.js +15 -0
- package/dist/modules/kb-graph/service/sync.js.map +1 -1
- package/dist/modules/memory/engine/edge-on-ingest.d.ts +7 -0
- package/dist/modules/memory/engine/edge-on-ingest.js +14 -4
- package/dist/modules/memory/engine/edge-on-ingest.js.map +1 -1
- package/dist/modules/memory/migrations/001-add-scope-columns.d.ts +3 -1
- package/dist/modules/memory/migrations/001-add-scope-columns.js +11 -16
- package/dist/modules/memory/migrations/001-add-scope-columns.js.map +1 -1
- package/dist/modules/memory/migrations/002-add-evolution-columns.d.ts +3 -0
- package/dist/modules/memory/migrations/002-add-evolution-columns.js +32 -28
- package/dist/modules/memory/migrations/002-add-evolution-columns.js.map +1 -1
- package/dist/modules/memory/migrations/003-pending-tasks.d.ts +2 -0
- package/dist/modules/memory/migrations/003-pending-tasks.js +12 -11
- package/dist/modules/memory/migrations/003-pending-tasks.js.map +1 -1
- package/dist/rag/async-queue.d.ts +16 -0
- package/dist/rag/async-queue.js +20 -0
- package/dist/rag/async-queue.js.map +1 -0
- package/dist/rag/query-router.d.ts +12 -0
- package/dist/rag/query-router.js +42 -0
- package/dist/rag/query-router.js.map +1 -0
- package/dist/rag/semantic-cache.d.ts +14 -0
- package/dist/rag/semantic-cache.js +20 -0
- package/dist/rag/semantic-cache.js.map +1 -0
- package/dist/rag/summary-tree.d.ts +20 -0
- package/dist/rag/summary-tree.js +28 -0
- package/dist/rag/summary-tree.js.map +1 -0
- package/dist/routes/rag.d.ts +2 -0
- package/dist/routes/rag.js +62 -0
- package/dist/routes/rag.js.map +1 -0
- package/dist/server/HttpServer.js +7 -1
- package/dist/server/HttpServer.js.map +1 -1
- package/dist/server/routes/admin/kb-graph.js +27 -10
- package/dist/server/routes/admin/kb-graph.js.map +1 -1
- package/dist/server/routes/api-index.d.ts +31 -0
- package/dist/server/routes/api-index.js +270 -71
- package/dist/server/routes/api-index.js.map +1 -1
- package/dist/server/routes/auth/unified.js +9 -1
- package/dist/server/routes/auth/unified.js.map +1 -1
- package/dist/viewer/admin/index.html +71 -14
- package/knexfile.cjs +91 -0
- package/package.json +5 -2
- package/src/database/adapters/SqliteAdapter.ts +58 -7
- package/src/database/migration/ensure-pega-category-counters.ts +4 -2
- package/src/database/migrations/000-init-system-tables.cjs +131 -0
- package/src/database/schema-registry/ensure-engine-schema.ts +37 -0
- package/src/database/schema-registry/ensure-sa4e-300.ts +25 -1
- package/src/database/schema-registry/ensure-sa4e-303.ts +50 -9
- package/src/engine/graph/migrator.ts +8 -1
- package/src/index.ts +50 -14
- package/src/modules/kb-graph/service/sync.ts +14 -0
- package/src/modules/memory/__tests__/edge-on-ingest.test.ts +30 -0
- package/src/modules/memory/engine/edge-on-ingest.ts +18 -4
- package/src/modules/memory/migrations/001-add-scope-columns.ts +20 -20
- package/src/modules/memory/migrations/002-add-evolution-columns.ts +39 -33
- package/src/modules/memory/migrations/003-pending-tasks.ts +17 -11
- package/src/modules/memory/migrations/004-reset-sequences.ts +1 -1
- package/src/rag/__tests__/async-queue.test.ts +12 -0
- package/src/rag/__tests__/query-router.test.ts +20 -0
- package/src/rag/__tests__/semantic-cache.test.ts +11 -0
- package/src/rag/__tests__/summary-tree.test.ts +12 -0
- package/src/rag/async-queue.ts +29 -0
- package/src/rag/query-router.ts +41 -0
- package/src/rag/semantic-cache.ts +21 -0
- package/src/rag/summary-tree.ts +40 -0
- package/src/routes/rag.ts +60 -0
- package/src/server/HttpServer.ts +7 -1
- package/src/server/routes/__tests__/admin.test.ts +37 -0
- package/src/server/routes/__tests__/api-index-errors.test.ts +424 -0
- package/src/server/routes/admin/kb-graph.ts +29 -13
- package/src/server/routes/api-index.ts +255 -71
- package/src/server/routes/auth/unified.ts +9 -1
- package/src/viewer/admin/index.html +71 -14
- package/tests/e2e/reindex.e2e.test.ts +4 -0
- package/vitest.e2e.config.ts +8 -5
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
9
|
-
<img src="https://img.shields.io/badge/version-1.
|
|
9
|
+
<img src="https://img.shields.io/badge/version-1.44.0-blue?style=for-the-badge" alt="Version">
|
|
10
10
|
<img src="https://img.shields.io/badge/tools-66+-teal?style=for-the-badge" alt="Tools">
|
|
11
11
|
<img src="https://img.shields.io/badge/node-%3E%3D18-green?style=for-the-badge" alt="Node">
|
|
12
12
|
</p>
|
|
@@ -38,7 +38,7 @@ Server starts at **http://localhost:48721**. Verify it's running:
|
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
40
|
curl http://localhost:48721/health
|
|
41
|
-
# → {"status":"healthy","version":"1.
|
|
41
|
+
# → {"status":"healthy","version":"1.44.0","uptime":5,"tools_loaded":52}
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
### Development Mode (auto-reload)
|
|
@@ -233,6 +233,7 @@ The embedding model is expected at `.code-intel/models/model.onnx`. Download it:
|
|
|
233
233
|
|
|
234
234
|
| Version | Date | Ticket | Changes |
|
|
235
235
|
|---------|------|--------|---------|
|
|
236
|
+
| 1.44.0 | 2026-09-23 | SA4E-320/323 | Extension-side release: opt-in HTTPS bypass for remote backend (workspace-scoped `allowInsecureRemote`, runtime apply without reload, restrictedConfigurations + trust gate, Pega endpoint HTTPS enforcement); per-workspace isolation of Pega/Atlassian settings with keychain namespacing + one-time migration. No backend runtime code changes — version aligned. |
|
|
236
237
|
| 1.43.0 | 2026-09-22 | SA4E-262 | Multi-provider SSO unified on `sso_providers` (Entra/Google/GitHub, Strategy pattern). Entra email verification via Microsoft `xms_edov` claim (Entra omits standard `email_verified`); loopback SSO sessions no longer User-Agent-bound so extension `/api/admin/auth/me` works; JIT provisioning rejections return `403 provisioning_rejected` with a clear reason. |
|
|
237
238
|
| 1.42.2 | 2026-09-11 | SA4E-257 | Wire DB-backed MCP server config to McpClientManager: McpServerConfigRepository loads `mcp_servers` table, initializeAll reads enabled servers from DB, real-time hooks auto connect/reconnect/disconnect on CRUD, transport normalization `streamable-http → httpStream`, mock logs removed. Regression tests pass. |
|
|
238
239
|
| 1.42.1 | 2026-09-10 | SA4E-258 | Tenant scope stamping for tool execution: `/api/tools/execute` + `/api/code/search` stamp trusted scope onto tool args via canonical `__projectId`/`__userId` (not only `_projectContext`), fixing code-intel tools (fail-closed on missing `__projectId`) that returned "No results found". Covers MCP call path (mcpServer) + KB API route. Graph migrator idempotency, query-layer scope resolution, indexing-engine fixes. KB Graph: FileContainsSymbolStrategy dir-based match for LWC/Aura components (LWC_COMPONENT no longer isolated). Regression tests added (tools-execute-scope, orchestration dynamic IT, mcpServer calltool IT). |
|
|
@@ -10,7 +10,18 @@ export declare class SqliteAdapter implements DatabaseAdapter {
|
|
|
10
10
|
private db;
|
|
11
11
|
private connected;
|
|
12
12
|
private dirty;
|
|
13
|
+
/**
|
|
14
|
+
* Root-cause fix for sibling-adapter divergence: sqlite-wasm keeps a
|
|
15
|
+
* private in-memory DB per `new DB()` instance, so N adapters on the same
|
|
16
|
+
* host file each saw a different database (migrations visible on one,
|
|
17
|
+
* `no such table` on the others). File-backed adapters now share a single
|
|
18
|
+
* live DB per resolved path for the process lifetime (refcounted).
|
|
19
|
+
* `:memory:` adapters stay fully isolated (unit tests rely on it).
|
|
20
|
+
*/
|
|
21
|
+
private static shared;
|
|
22
|
+
private sharedKey;
|
|
13
23
|
constructor(dbPath: string, nativeBinding?: string | undefined);
|
|
24
|
+
private markDirty;
|
|
14
25
|
connect(): Promise<void>;
|
|
15
26
|
/**
|
|
16
27
|
* Load a previously exported host DB file into the live in-memory database.
|
|
@@ -14,10 +14,28 @@ export class SqliteAdapter {
|
|
|
14
14
|
db = null;
|
|
15
15
|
connected = false;
|
|
16
16
|
dirty = false;
|
|
17
|
+
/**
|
|
18
|
+
* Root-cause fix for sibling-adapter divergence: sqlite-wasm keeps a
|
|
19
|
+
* private in-memory DB per `new DB()` instance, so N adapters on the same
|
|
20
|
+
* host file each saw a different database (migrations visible on one,
|
|
21
|
+
* `no such table` on the others). File-backed adapters now share a single
|
|
22
|
+
* live DB per resolved path for the process lifetime (refcounted).
|
|
23
|
+
* `:memory:` adapters stay fully isolated (unit tests rely on it).
|
|
24
|
+
*/
|
|
25
|
+
static shared = new Map();
|
|
26
|
+
sharedKey = null;
|
|
17
27
|
constructor(dbPath, nativeBinding) {
|
|
18
28
|
this.dbPath = dbPath;
|
|
19
29
|
this.nativeBinding = nativeBinding;
|
|
20
30
|
}
|
|
31
|
+
markDirty() {
|
|
32
|
+
this.dirty = true;
|
|
33
|
+
if (this.sharedKey) {
|
|
34
|
+
const entry = SqliteAdapter.shared.get(this.sharedKey);
|
|
35
|
+
if (entry)
|
|
36
|
+
entry.dirty = true;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
21
39
|
async connect() {
|
|
22
40
|
if (this.connected && this.db)
|
|
23
41
|
return;
|
|
@@ -29,6 +47,19 @@ export class SqliteAdapter {
|
|
|
29
47
|
fs.mkdirSync(dir, { recursive: true });
|
|
30
48
|
}
|
|
31
49
|
}
|
|
50
|
+
// Shared-DB fast path: another adapter already owns the live DB for
|
|
51
|
+
// this file — reuse it so every consumer sees the same tables/rows.
|
|
52
|
+
const useShared = useFile;
|
|
53
|
+
if (useShared) {
|
|
54
|
+
const existing = SqliteAdapter.shared.get(this.dbPath);
|
|
55
|
+
if (existing) {
|
|
56
|
+
this.db = existing.db;
|
|
57
|
+
this.sharedKey = this.dbPath;
|
|
58
|
+
existing.refs++;
|
|
59
|
+
this.connected = true;
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
32
63
|
// Root cause of SQLITE_CANTOPEN on Linux CI: @sqlite.org/sqlite-wasm in
|
|
33
64
|
// Node.js only supports in-memory databases (see its README). Host file
|
|
34
65
|
// paths are NOT visible inside the WASM MEMFS virtual FS, so
|
|
@@ -44,6 +75,10 @@ export class SqliteAdapter {
|
|
|
44
75
|
this.importHostFile(this.dbPath);
|
|
45
76
|
deserialized = true;
|
|
46
77
|
}
|
|
78
|
+
if (useShared) {
|
|
79
|
+
SqliteAdapter.shared.set(this.dbPath, { db: this.db, refs: 1, dirty: false });
|
|
80
|
+
this.sharedKey = this.dbPath;
|
|
81
|
+
}
|
|
47
82
|
// SA4E-262 fix: WAL is a file-system journal mode. On the WASM in-memory /
|
|
48
83
|
// deserialized DB it attempts to create WAL files inside MEMFS and throws
|
|
49
84
|
// SQLITE_CANTOPEN. Skip it — durability for host-file DBs is provided by
|
|
@@ -97,12 +132,30 @@ export class SqliteAdapter {
|
|
|
97
132
|
}
|
|
98
133
|
async disconnect() {
|
|
99
134
|
if (this.db) {
|
|
100
|
-
|
|
135
|
+
const entry = this.sharedKey ? SqliteAdapter.shared.get(this.sharedKey) : undefined;
|
|
136
|
+
// The shared live object is always current, so export when any holder
|
|
137
|
+
// dirtied it — one export persists everyone's changes.
|
|
138
|
+
if (this.dbPath !== ':memory:' && this.dbPath !== '' && (this.dirty || entry?.dirty)) {
|
|
101
139
|
const data = sqlite3.capi.sqlite3_js_db_export(this.db, 'main');
|
|
102
140
|
fs.writeFileSync(this.dbPath, Buffer.from(data));
|
|
141
|
+
this.dirty = false;
|
|
142
|
+
if (entry)
|
|
143
|
+
entry.dirty = false;
|
|
144
|
+
}
|
|
145
|
+
if (entry && this.sharedKey) {
|
|
146
|
+
entry.refs--;
|
|
147
|
+
// Last holder closes the shared DB; a later connect re-imports
|
|
148
|
+
// from the exported host file, preserving persistence semantics.
|
|
149
|
+
if (entry.refs <= 0) {
|
|
150
|
+
this.db.close();
|
|
151
|
+
SqliteAdapter.shared.delete(this.sharedKey);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
this.db.close();
|
|
103
156
|
}
|
|
104
|
-
this.db.close();
|
|
105
157
|
this.db = null;
|
|
158
|
+
this.sharedKey = null;
|
|
106
159
|
this.connected = false;
|
|
107
160
|
}
|
|
108
161
|
}
|
|
@@ -126,7 +179,7 @@ export class SqliteAdapter {
|
|
|
126
179
|
}
|
|
127
180
|
execInternal(sql, params) {
|
|
128
181
|
const normalized = normalizeSqlitePlaceholders(sql);
|
|
129
|
-
this.
|
|
182
|
+
this.markDirty();
|
|
130
183
|
const db = this.getDb();
|
|
131
184
|
if (params && params.length > 0) {
|
|
132
185
|
const stmt = db.prepare(normalized);
|
|
@@ -146,7 +199,7 @@ export class SqliteAdapter {
|
|
|
146
199
|
}
|
|
147
200
|
run(sql, params) {
|
|
148
201
|
const normalized = normalizeSqlitePlaceholders(sql);
|
|
149
|
-
this.
|
|
202
|
+
this.markDirty();
|
|
150
203
|
const db = this.getDb();
|
|
151
204
|
if (params && params.length) {
|
|
152
205
|
const stmt = db.prepare(normalized);
|
|
@@ -177,7 +230,7 @@ export class SqliteAdapter {
|
|
|
177
230
|
return rows;
|
|
178
231
|
}
|
|
179
232
|
exec(sql) {
|
|
180
|
-
this.
|
|
233
|
+
this.markDirty();
|
|
181
234
|
try {
|
|
182
235
|
this.getDb().exec(normalizeSqlitePlaceholders(sql));
|
|
183
236
|
}
|
|
@@ -190,7 +243,7 @@ export class SqliteAdapter {
|
|
|
190
243
|
}
|
|
191
244
|
}
|
|
192
245
|
transaction(fn) {
|
|
193
|
-
this.
|
|
246
|
+
this.markDirty();
|
|
194
247
|
this.db.exec('BEGIN TRANSACTION;');
|
|
195
248
|
try {
|
|
196
249
|
const result = fn();
|
|
@@ -207,7 +260,7 @@ export class SqliteAdapter {
|
|
|
207
260
|
const db = this.getDb();
|
|
208
261
|
return {
|
|
209
262
|
run: (...params) => {
|
|
210
|
-
this.
|
|
263
|
+
this.markDirty();
|
|
211
264
|
const stmt = db.prepare(normalized);
|
|
212
265
|
if (params.length > 0)
|
|
213
266
|
stmt.bind(params);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqliteAdapter.js","sourceRoot":"","sources":["../../../src/database/adapters/SqliteAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SqliteAdapter.js","sourceRoot":"","sources":["../../../src/database/adapters/SqliteAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,10 +7,12 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export async function ensurePegaCategoryCountersTable(db) {
|
|
9
9
|
const isPg = db.getEngine() === 'postgresql';
|
|
10
|
-
// PG: gen_random_uuid() (pgcrypto/pg13+)
|
|
10
|
+
// PG: gen_random_uuid() (pgcrypto/pg13+); SQLite: 32-char random hex.
|
|
11
|
+
// (The previous UUID-formatting expression had unbalanced parentheses and
|
|
12
|
+
// broke with `near "||": syntax error` — keep the default simple and valid.)
|
|
11
13
|
const idDefault = isPg
|
|
12
14
|
? `DEFAULT gen_random_uuid()::text`
|
|
13
|
-
: `DEFAULT (lower(hex(randomblob(
|
|
15
|
+
: `DEFAULT (lower(hex(randomblob(16))))`;
|
|
14
16
|
const nowDefault = isPg ? `now()` : `(datetime('now'))`;
|
|
15
17
|
await db.execAsync(`
|
|
16
18
|
CREATE TABLE IF NOT EXISTS pega_category_counters (
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-pega-category-counters.js","sourceRoot":"","sources":["../../../src/database/migration/ensure-pega-category-counters.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,EAAmB;IACvE,MAAM,IAAI,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,YAAY,CAAC;IAC7C,
|
|
1
|
+
{"version":3,"file":"ensure-pega-category-counters.js","sourceRoot":"","sources":["../../../src/database/migration/ensure-pega-category-counters.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,EAAmB;IACvE,MAAM,IAAI,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,YAAY,CAAC;IAC7C,sEAAsE;IACtE,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,SAAS,GAAG,IAAI;QACpB,CAAC,CAAC,iCAAiC;QACnC,CAAC,CAAC,sCAAsC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAExD,MAAM,EAAE,CAAC,SAAS,CAAC;;4BAEO,SAAS;;;2CAGM,UAAU;;;;GAIlD,CAAC,CAAC;IAEH,8FAA8F;IAC9F,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,sGAAsG,CAAC,CAAC;IAC7H,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gDAAgD;QAChD,MAAM,YAAY,GAAG,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,KAAK,CAAC,gEAAgE,EAAE,YAAY,CAAC,CAAC;IAChG,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Migration 000: Initialize system tables (Knex manual-migration snapshot).
|
|
3
|
+
*
|
|
4
|
+
* Canonical schemas — copied from the runtime sources of truth so a manual
|
|
5
|
+
* `npx knex migrate:latest` produces the same tables the dev server creates:
|
|
6
|
+
* - mcp_tools <- src/engine/db/schema.ts SCHEMA_V1
|
|
7
|
+
* - knowledge_entries <- src/modules/memory/schema/tables.ts TABLES (+FTS/triggers)
|
|
8
|
+
* - pending_tasks <- src/modules/memory/migrations/003-pending-tasks.ts
|
|
9
|
+
*
|
|
10
|
+
* SQLite flavor (staging/dev). Production uses PostgreSQL via DATABASE_URL.
|
|
11
|
+
* NOTE: the dev server does NOT run Knex at startup; it uses its own
|
|
12
|
+
* engine/db migrations + schema-registry ensures. This file is for manual
|
|
13
|
+
* provisioning / fresh environments only. Run with the same env as the server:
|
|
14
|
+
* CODE_INTEL_DATA_DIR=C:\staging\data CODE_INTEL_DB=index-staging.db
|
|
15
|
+
* npx knex migrate:latest --knexfile knexfile.cjs
|
|
16
|
+
*/
|
|
17
|
+
'use strict';
|
|
18
|
+
const up = async function (knex) {
|
|
19
|
+
// 1. mcp_tools — registered MCP tools (canonical: schema.ts)
|
|
20
|
+
await knex.raw(`
|
|
21
|
+
CREATE TABLE IF NOT EXISTS mcp_tools (
|
|
22
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
23
|
+
name TEXT NOT NULL UNIQUE,
|
|
24
|
+
description TEXT NOT NULL,
|
|
25
|
+
schema_json TEXT NOT NULL,
|
|
26
|
+
category TEXT,
|
|
27
|
+
server TEXT,
|
|
28
|
+
vector BLOB
|
|
29
|
+
)
|
|
30
|
+
`);
|
|
31
|
+
await knex.raw(`CREATE INDEX IF NOT EXISTS idx_mcp_tools_server ON mcp_tools(server)`);
|
|
32
|
+
// 2. knowledge_entries — knowledge base (canonical: memory/schema/tables.ts)
|
|
33
|
+
await knex.raw(`
|
|
34
|
+
CREATE TABLE IF NOT EXISTS knowledge_entries (
|
|
35
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
36
|
+
content TEXT NOT NULL,
|
|
37
|
+
summary TEXT NOT NULL,
|
|
38
|
+
type TEXT NOT NULL,
|
|
39
|
+
tier TEXT NOT NULL DEFAULT 'WORKING',
|
|
40
|
+
scope TEXT NOT NULL DEFAULT 'USER',
|
|
41
|
+
user_id TEXT DEFAULT NULL,
|
|
42
|
+
project_id TEXT DEFAULT NULL,
|
|
43
|
+
source TEXT,
|
|
44
|
+
source_ref TEXT,
|
|
45
|
+
tags TEXT NOT NULL DEFAULT '',
|
|
46
|
+
confidence REAL NOT NULL DEFAULT 1.0,
|
|
47
|
+
access_count INTEGER NOT NULL DEFAULT 0,
|
|
48
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
49
|
+
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
50
|
+
last_accessed_at TEXT,
|
|
51
|
+
expires_at TEXT,
|
|
52
|
+
pinned INTEGER NOT NULL DEFAULT 0,
|
|
53
|
+
pin_order INTEGER NOT NULL DEFAULT 0,
|
|
54
|
+
structured_map TEXT NOT NULL DEFAULT '{}',
|
|
55
|
+
quality_score INTEGER DEFAULT NULL,
|
|
56
|
+
archived INTEGER NOT NULL DEFAULT 0,
|
|
57
|
+
agent_name TEXT DEFAULT NULL,
|
|
58
|
+
owner TEXT DEFAULT NULL,
|
|
59
|
+
needs_verification INTEGER NOT NULL DEFAULT 0,
|
|
60
|
+
epoch_id TEXT DEFAULT NULL,
|
|
61
|
+
superseded_by INTEGER DEFAULT NULL
|
|
62
|
+
)
|
|
63
|
+
`);
|
|
64
|
+
await knex.raw(`
|
|
65
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS knowledge_fts USING fts5(
|
|
66
|
+
summary, content, tags, type,
|
|
67
|
+
content=knowledge_entries, content_rowid=id,
|
|
68
|
+
tokenize='porter unicode61'
|
|
69
|
+
)
|
|
70
|
+
`);
|
|
71
|
+
await knex.raw(`
|
|
72
|
+
CREATE TRIGGER IF NOT EXISTS knowledge_fts_ai AFTER INSERT ON knowledge_entries BEGIN
|
|
73
|
+
INSERT INTO knowledge_fts(rowid, summary, content, tags, type)
|
|
74
|
+
VALUES (new.id, new.summary, new.content, new.tags, new.type);
|
|
75
|
+
END
|
|
76
|
+
`);
|
|
77
|
+
await knex.raw(`
|
|
78
|
+
CREATE TRIGGER IF NOT EXISTS knowledge_fts_ad AFTER DELETE ON knowledge_entries BEGIN
|
|
79
|
+
INSERT INTO knowledge_fts(knowledge_fts, rowid, summary, content, tags, type)
|
|
80
|
+
VALUES ('delete', old.id, old.summary, old.content, old.tags, old.type);
|
|
81
|
+
END
|
|
82
|
+
`);
|
|
83
|
+
await knex.raw(`
|
|
84
|
+
CREATE TRIGGER IF NOT EXISTS knowledge_fts_au AFTER UPDATE ON knowledge_entries BEGIN
|
|
85
|
+
INSERT INTO knowledge_fts(knowledge_fts, rowid, summary, content, tags, type)
|
|
86
|
+
VALUES ('delete', old.id, old.summary, old.content, old.tags, old.type);
|
|
87
|
+
INSERT INTO knowledge_fts(rowid, summary, content, tags, type)
|
|
88
|
+
VALUES (new.id, new.summary, new.content, new.tags, new.type);
|
|
89
|
+
END
|
|
90
|
+
`);
|
|
91
|
+
// 3. pending_tasks — SDLC pipeline queue (canonical: migration 003)
|
|
92
|
+
await knex.raw(`
|
|
93
|
+
CREATE TABLE IF NOT EXISTS pending_tasks (
|
|
94
|
+
id INTEGER PRIMARY KEY,
|
|
95
|
+
task_type TEXT NOT NULL,
|
|
96
|
+
entry_id INTEGER NOT NULL,
|
|
97
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
98
|
+
payload TEXT NOT NULL,
|
|
99
|
+
error TEXT,
|
|
100
|
+
error_message TEXT,
|
|
101
|
+
retry_count INTEGER NOT NULL DEFAULT 0,
|
|
102
|
+
max_retries INTEGER NOT NULL DEFAULT 3,
|
|
103
|
+
priority INTEGER NOT NULL DEFAULT 5,
|
|
104
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
105
|
+
started_at TEXT,
|
|
106
|
+
completed_at TEXT,
|
|
107
|
+
updated_at TEXT,
|
|
108
|
+
claimed_at TEXT,
|
|
109
|
+
dead_lettered_at TEXT,
|
|
110
|
+
FOREIGN KEY (entry_id) REFERENCES knowledge_entries(id) ON DELETE CASCADE
|
|
111
|
+
)
|
|
112
|
+
`);
|
|
113
|
+
await knex.raw(`CREATE INDEX IF NOT EXISTS idx_pending_tasks_status_created ON pending_tasks(status, created_at)`);
|
|
114
|
+
await knex.raw(`CREATE INDEX IF NOT EXISTS idx_pending_tasks_entry_id ON pending_tasks(entry_id)`);
|
|
115
|
+
};
|
|
116
|
+
const down = async function (knex) {
|
|
117
|
+
await knex.raw(`DROP TABLE IF EXISTS pending_tasks`);
|
|
118
|
+
await knex.raw(`DROP TRIGGER IF EXISTS knowledge_fts_au`);
|
|
119
|
+
await knex.raw(`DROP TRIGGER IF EXISTS knowledge_fts_ad`);
|
|
120
|
+
await knex.raw(`DROP TRIGGER IF EXISTS knowledge_fts_ai`);
|
|
121
|
+
await knex.raw(`DROP TABLE IF EXISTS knowledge_fts`);
|
|
122
|
+
await knex.raw(`DROP TABLE IF EXISTS knowledge_entries`);
|
|
123
|
+
await knex.raw(`DROP TABLE IF EXISTS mcp_tools`);
|
|
124
|
+
};
|
|
125
|
+
module.exports = { up, down };
|
|
126
|
+
//# sourceMappingURL=000-init-system-tables.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"000-init-system-tables.cjs","sourceRoot":"","sources":["../../../src/database/migrations/000-init-system-tables.cjs"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,YAAY,CAAC;AAEb,MAAM,EAAE,GAAG,KAAK,WAAU,IAAI;IAC5B,6DAA6D;IAC7D,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;GAUd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IAEvF,6EAA6E;IAC7E,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8Bd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;GAMd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;GAKd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;GAKd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;;GAOd,CAAC,CAAC;IAEH,oEAAoE;IACpE,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;GAoBd,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,GAAG,CAAC,kGAAkG,CAAC,CAAC;IACnH,MAAM,IAAI,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;AACrG,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,KAAK,WAAU,IAAI;IAC9B,MAAM,IAAI,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACrD,MAAM,IAAI,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAC1D,MAAM,IAAI,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAC1D,MAAM,IAAI,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAC1D,MAAM,IAAI,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACrD,MAAM,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACzD,MAAM,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure engine index schema on the serving adapter (unified DB).
|
|
3
|
+
*
|
|
4
|
+
* Root cause: SqliteAdapter (sqlite-wasm) keeps a private in-memory DB per
|
|
5
|
+
* instance and only exports to the host file on disconnect(). The versioned
|
|
6
|
+
* migrations in engine/db run on database-manager's adapter, so sibling
|
|
7
|
+
* adapters (the one serving tools/queries) can miss the index tables
|
|
8
|
+
* (files/symbols/modules/symbols_fts) and every code-intel tool fails with
|
|
9
|
+
* `no such table`. Re-applying the canonical SCHEMA_V1 here is idempotent
|
|
10
|
+
* (all statements are CREATE TABLE/INDEX IF NOT EXISTS) and makes the
|
|
11
|
+
* serving adapter self-sufficient on every boot, on any engine path that
|
|
12
|
+
* lands on SQLite.
|
|
13
|
+
*/
|
|
14
|
+
export declare function ensureEngineIndexSchema(): Promise<void>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure engine index schema on the serving adapter (unified DB).
|
|
3
|
+
*
|
|
4
|
+
* Root cause: SqliteAdapter (sqlite-wasm) keeps a private in-memory DB per
|
|
5
|
+
* instance and only exports to the host file on disconnect(). The versioned
|
|
6
|
+
* migrations in engine/db run on database-manager's adapter, so sibling
|
|
7
|
+
* adapters (the one serving tools/queries) can miss the index tables
|
|
8
|
+
* (files/symbols/modules/symbols_fts) and every code-intel tool fails with
|
|
9
|
+
* `no such table`. Re-applying the canonical SCHEMA_V1 here is idempotent
|
|
10
|
+
* (all statements are CREATE TABLE/INDEX IF NOT EXISTS) and makes the
|
|
11
|
+
* serving adapter self-sufficient on every boot, on any engine path that
|
|
12
|
+
* lands on SQLite.
|
|
13
|
+
*/
|
|
14
|
+
import pino from 'pino';
|
|
15
|
+
import { getDbAdapter } from '../../admin/db/core.js';
|
|
16
|
+
import { SCHEMA_V1 } from '../../engine/db/schema.js';
|
|
17
|
+
const logger = pino({ name: 'engine-schema' });
|
|
18
|
+
export async function ensureEngineIndexSchema() {
|
|
19
|
+
const adapter = getDbAdapter();
|
|
20
|
+
// SCHEMA_V1 is SQLite-flavored DDL (AUTOINCREMENT, datetime('now')) — only
|
|
21
|
+
// meaningful for sqlite-wasm siblings. PostgreSQL schema is managed by
|
|
22
|
+
// database-manager migrations + pg-schema-ensure; running SQLite DDL there
|
|
23
|
+
// is a syntax error, so skip on non-sqlite engines.
|
|
24
|
+
if (adapter.getEngine() !== 'sqlite') {
|
|
25
|
+
logger.debug('[engine-schema] non-sqlite engine, skipping');
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
await adapter.execAsync(SCHEMA_V1);
|
|
30
|
+
logger.info('[engine-schema] index tables ensured (files/symbols/modules/fts)');
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
logger.warn({ err }, '[engine-schema] ensure failed (non-fatal)');
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=ensure-engine-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ensure-engine-schema.js","sourceRoot":"","sources":["../../../src/database/schema-registry/ensure-engine-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,oDAAoD;IACpD,IAAI,OAAO,CAAC,SAAS,EAAE,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAClF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,2CAA2C,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
|
|
@@ -10,6 +10,25 @@ import { getDbAdapter } from '../../admin/db/core.js';
|
|
|
10
10
|
const logger = pino({ name: 'sa4e-300-cleanup' });
|
|
11
11
|
export async function ensureSa4e300Cleanup() {
|
|
12
12
|
const adapter = getDbAdapter();
|
|
13
|
+
// Engine-aware existence check (use allAsync: runAsync returns only {changes}).
|
|
14
|
+
let tableExists = false;
|
|
15
|
+
try {
|
|
16
|
+
if (adapter.getEngine() === 'postgresql') {
|
|
17
|
+
const rows = await adapter.allAsync(`SELECT table_name FROM information_schema.tables WHERE table_name = $1`, ['pending_tasks']);
|
|
18
|
+
tableExists = rows.length > 0;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
const rows = await adapter.allAsync(`SELECT name FROM sqlite_master WHERE type='table' AND name='pending_tasks'`);
|
|
22
|
+
tableExists = rows.length > 0;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
console.debug('[sa4e-300] Table check failed:', err.message);
|
|
27
|
+
}
|
|
28
|
+
if (!tableExists) {
|
|
29
|
+
console.debug('[sa4e-300] pending_tasks table not found, skipping cleanup');
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
13
32
|
try {
|
|
14
33
|
const result = await adapter.runAsync(`DELETE FROM pending_tasks
|
|
15
34
|
WHERE task_type = 'CODE_ENRICHMENT'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-sa4e-300.js","sourceRoot":"","sources":["../../../src/database/schema-registry/ensure-sa4e-300.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CACnC;;;kDAG4C,EAC5C,EAAE,CACH,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,iDAAiD,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,uDAAuD,CAAC,CAAC;IAChF,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"ensure-sa4e-300.js","sourceRoot":"","sources":["../../../src/database/schema-registry/ensure-sa4e-300.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,gFAAgF;IAChF,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,SAAS,EAAE,KAAK,YAAY,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CACjC,wEAAwE,EACxE,CAAC,eAAe,CAAC,CAClB,CAAC;YACF,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CACjC,4EAA4E,CAC7E,CAAC;YACF,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC5E,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CACnC;;;kDAG4C,EAC5C,EAAE,CACH,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,iDAAiD,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,uDAAuD,CAAC,CAAC;IAChF,CAAC;AACH,CAAC"}
|
|
@@ -1,20 +1,55 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* SA4E-303 — Cleanup unused edge tables
|
|
3
3
|
* Drops code_dependencies and code_call_graph which are unused in tree-sitter pipeline.
|
|
4
|
+
* Safe to run on every boot (idempotent).
|
|
4
5
|
*/
|
|
5
6
|
import pino from 'pino';
|
|
6
|
-
import { getDbAdapter
|
|
7
|
+
import { getDbAdapter } from '../../admin/db/core.js';
|
|
7
8
|
const logger = pino({ name: 'sa4e-303-cleanup' });
|
|
8
9
|
export async function ensureSa4e303DropUnusedTables() {
|
|
9
|
-
const engine = getActiveEngine();
|
|
10
10
|
const adapter = getDbAdapter();
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
const isPg = adapter.getEngine() === 'postgresql';
|
|
12
|
+
const tableExists = async (name) => {
|
|
13
|
+
try {
|
|
14
|
+
if (isPg) {
|
|
15
|
+
const rows = await adapter.allAsync(`SELECT table_name FROM information_schema.tables WHERE table_name = $1`, [name]);
|
|
16
|
+
return rows.length > 0;
|
|
17
|
+
}
|
|
18
|
+
const rows = await adapter.allAsync(`SELECT name FROM sqlite_master WHERE type='table' AND name=?`, [name]);
|
|
19
|
+
return rows.length > 0;
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
console.debug('[sa4e-303] Table check failed:', err.message);
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
// Check if code_dependencies table exists (use allAsync: runAsync returns only {changes}).
|
|
27
|
+
const depsExists = await tableExists('code_dependencies');
|
|
28
|
+
// Check if code_call_graph table exists
|
|
29
|
+
const graphExists = await tableExists('code_call_graph');
|
|
30
|
+
if (depsExists) {
|
|
31
|
+
try {
|
|
32
|
+
await adapter.runAsync(`DROP TABLE IF EXISTS code_dependencies`, []);
|
|
33
|
+
logger.info('[sa4e-303] Dropped code_dependencies table');
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
logger.warn({ err }, '[sa4e-303] Could not drop code_dependencies (non-fatal)');
|
|
37
|
+
}
|
|
15
38
|
}
|
|
16
|
-
|
|
17
|
-
|
|
39
|
+
else {
|
|
40
|
+
console.debug('[sa4e-303] code_dependencies table not found, skipping');
|
|
41
|
+
}
|
|
42
|
+
if (graphExists) {
|
|
43
|
+
try {
|
|
44
|
+
await adapter.runAsync(`DROP TABLE IF EXISTS code_call_graph`, []);
|
|
45
|
+
logger.info('[sa4e-303] Dropped code_call_graph table');
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
logger.warn({ err }, '[sa4e-303] Could not drop code_call_graph (non-fatal)');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
console.debug('[sa4e-303] code_call_graph table not found, skipping');
|
|
18
53
|
}
|
|
19
54
|
}
|
|
20
55
|
//# sourceMappingURL=ensure-sa4e-303.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-sa4e-303.js","sourceRoot":"","sources":["../../../src/database/schema-registry/ensure-sa4e-303.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ensure-sa4e-303.js","sourceRoot":"","sources":["../../../src/database/schema-registry/ensure-sa4e-303.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,6BAA6B;IACjD,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,KAAK,YAAY,CAAC;IAClD,MAAM,WAAW,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;QAC3D,IAAI,CAAC;YACH,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CACjC,wEAAwE,EACxE,CAAC,IAAI,CAAC,CACP,CAAC;gBACF,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YACzB,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CACjC,8DAA8D,EAC9D,CAAC,IAAI,CAAC,CACP,CAAC;YACF,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YACxE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,2FAA2F;IAC3F,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAE1D,wCAAwC;IACxC,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAEzD,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,QAAQ,CAAC,wCAAwC,EAAE,EAAE,CAAC,CAAC;YACrE,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,yDAAyD,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,QAAQ,CAAC,sCAAsC,EAAE,EAAE,CAAC,CAAC;YACnE,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,uDAAuD,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACxE,CAAC;AACH,CAAC"}
|
|
@@ -115,11 +115,14 @@ export async function runGraphMigrations(adapter) {
|
|
|
115
115
|
await ensurePostgresSymbolFts(adapter);
|
|
116
116
|
logger.error('[graph-migrator] PostgreSQL symbol FTS (tsvector) ready');
|
|
117
117
|
}
|
|
118
|
-
// Update schema version
|
|
118
|
+
// Update schema version (ensure tracking table exists first — fresh DBs may
|
|
119
|
+
// reach here before engine/db SCHEMA_V1 has created it).
|
|
119
120
|
if (engine === 'sqlite') {
|
|
121
|
+
await adapter.execAsync(`CREATE TABLE IF NOT EXISTS schema_version (version INTEGER PRIMARY KEY, applied_at TEXT NOT NULL DEFAULT (datetime('now')))`);
|
|
120
122
|
await adapter.runAsync('INSERT OR REPLACE INTO schema_version (version) VALUES (?)', [3]);
|
|
121
123
|
}
|
|
122
124
|
else {
|
|
125
|
+
await adapter.execAsync(`CREATE TABLE IF NOT EXISTS schema_version (version INTEGER PRIMARY KEY, applied_at TIMESTAMPTZ NOT NULL DEFAULT current_timestamp)`);
|
|
123
126
|
await adapter.runAsync('INSERT INTO schema_version (version) VALUES ($1) ON CONFLICT (version) DO NOTHING', [3]);
|
|
124
127
|
}
|
|
125
128
|
logger.error('[graph-migrator] Schema version set to 3');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../../src/engine/graph/migrator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../../src/engine/graph/migrator.ts"],"names":[],"mappings":"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"}
|