sdlc-agent-4-enterprise-server 1.23.0 → 1.24.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.
Files changed (45) hide show
  1. package/dist/config/index.d.ts +3 -0
  2. package/dist/config/index.js +2 -0
  3. package/dist/config/index.js.map +1 -1
  4. package/dist/database/adapters/PostgresAdapter.js +33 -4
  5. package/dist/database/adapters/PostgresAdapter.js.map +1 -1
  6. package/dist/database/migration/pg-schema-ensure.d.ts +16 -0
  7. package/dist/database/migration/pg-schema-ensure.js +167 -0
  8. package/dist/database/migration/pg-schema-ensure.js.map +1 -0
  9. package/dist/database/repositories/SymbolRepository.js +4 -1
  10. package/dist/database/repositories/SymbolRepository.js.map +1 -1
  11. package/dist/engine/indexer/__tests__/tree-sitter-pipeline.test.js +1 -0
  12. package/dist/engine/indexer/__tests__/tree-sitter-pipeline.test.js.map +1 -1
  13. package/dist/index.js +30 -0
  14. package/dist/index.js.map +1 -1
  15. package/dist/modules/memory/engine/crud.js +1 -1
  16. package/dist/modules/memory/engine/crud.js.map +1 -1
  17. package/dist/modules/memory/task-queue/TaskWorker.d.ts +10 -0
  18. package/dist/modules/memory/task-queue/TaskWorker.js +21 -0
  19. package/dist/modules/memory/task-queue/TaskWorker.js.map +1 -1
  20. package/dist/server/routes/admin/config.js +28 -1
  21. package/dist/server/routes/admin/config.js.map +1 -1
  22. package/dist/server/routes/admin/kb-entries.js +16 -1
  23. package/dist/server/routes/admin/kb-entries.js.map +1 -1
  24. package/dist/server/routes/api-index-decoupled.js +6 -2
  25. package/dist/server/routes/api-index-decoupled.js.map +1 -1
  26. package/dist/server/routes/api-index.js +14 -10
  27. package/dist/server/routes/api-index.js.map +1 -1
  28. package/dist/tool-router/ToolHandlerDecorators.js +3 -1
  29. package/dist/tool-router/ToolHandlerDecorators.js.map +1 -1
  30. package/dist/viewer/admin/index.html +8 -4
  31. package/package.json +2 -2
  32. package/src/config/index.ts +2 -0
  33. package/src/database/adapters/PostgresAdapter.ts +34 -4
  34. package/src/database/migration/pg-schema-ensure.ts +178 -0
  35. package/src/database/repositories/SymbolRepository.ts +3 -1
  36. package/src/engine/indexer/__tests__/tree-sitter-pipeline.test.ts +1 -0
  37. package/src/index.ts +34 -0
  38. package/src/modules/memory/engine/crud.ts +1 -1
  39. package/src/modules/memory/task-queue/TaskWorker.ts +21 -0
  40. package/src/server/routes/admin/config.ts +25 -1
  41. package/src/server/routes/admin/kb-entries.ts +17 -1
  42. package/src/server/routes/api-index-decoupled.ts +5 -2
  43. package/src/server/routes/api-index.ts +13 -10
  44. package/src/tool-router/ToolHandlerDecorators.ts +3 -1
  45. package/src/viewer/admin/index.html +8 -4
@@ -12,6 +12,7 @@ declare const UnifiedConfigSchema: z.ZodObject<{
12
12
  maxFileSize: z.ZodDefault<z.ZodNumber>;
13
13
  projectId: z.ZodDefault<z.ZodString>;
14
14
  workspace: z.ZodString;
15
+ indexTempDir: z.ZodString;
15
16
  dbPath: z.ZodString;
16
17
  configPath: z.ZodString;
17
18
  dataDir: z.ZodString;
@@ -32,6 +33,7 @@ declare const UnifiedConfigSchema: z.ZodObject<{
32
33
  maxFileSize: number;
33
34
  projectId: string;
34
35
  workspace: string;
36
+ indexTempDir: string;
35
37
  dbPath: string;
36
38
  configPath: string;
37
39
  dataDir: string;
@@ -41,6 +43,7 @@ declare const UnifiedConfigSchema: z.ZodObject<{
41
43
  includeExtensions: string[];
42
44
  }, {
43
45
  workspace: string;
46
+ indexTempDir: string;
44
47
  dbPath: string;
45
48
  configPath: string;
46
49
  dataDir: string;
@@ -32,6 +32,7 @@ const UnifiedConfigSchema = z.object({
32
32
  maxFileSize: z.number().default(512_000),
33
33
  projectId: z.string().default('default'),
34
34
  workspace: z.string(),
35
+ indexTempDir: z.string(),
35
36
  dbPath: z.string(),
36
37
  configPath: z.string(),
37
38
  dataDir: z.string(),
@@ -142,6 +143,7 @@ export function loadConfig(overrides) {
142
143
  maxFileSize: fileConfig.maxFileSize ?? 512_000,
143
144
  projectId: deriveProjectId(workspace, overrides),
144
145
  workspace,
146
+ indexTempDir: process.env.CODE_INTEL_INDEX_TEMP_DIR || path.join(os.tmpdir(), 'CodeIntel'),
145
147
  dbPath,
146
148
  configPath,
147
149
  dataDir: envDataDir,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
@@ -48,7 +48,24 @@ export class PostgresAdapter {
48
48
  prepare(sql) { throw new Error('Use async methods'); }
49
49
  // Async methods
50
50
  async runAsync(sql, params) {
51
- const r = await this.pool.query(this.translateParams(sql), params);
51
+ const translated = this.translateParams(sql);
52
+ // SA4E-104: If INSERT without RETURNING, add RETURNING id to get lastInsertRowid
53
+ const isInsert = /^\s*INSERT/i.test(sql);
54
+ const hasReturning = /RETURNING/i.test(sql);
55
+ if (isInsert && !hasReturning) {
56
+ const withReturning = translated + ' RETURNING id';
57
+ try {
58
+ const r = await this.pool.query(withReturning, params);
59
+ const insertedId = r.rows?.[0]?.id ?? 0;
60
+ return { changes: r.rowCount ?? 0, lastInsertRowid: insertedId };
61
+ }
62
+ catch {
63
+ // Fallback: table may not have 'id' column — run without RETURNING
64
+ const r = await this.pool.query(translated, params);
65
+ return { changes: r.rowCount ?? 0, lastInsertRowid: 0 };
66
+ }
67
+ }
68
+ const r = await this.pool.query(translated, params);
52
69
  return { changes: r.rowCount ?? 0, lastInsertRowid: 0 };
53
70
  }
54
71
  async getAsync(sql, params) {
@@ -63,16 +80,28 @@ export class PostgresAdapter {
63
80
  await this.pool.query(sql);
64
81
  }
65
82
  async transactionAsync(fn) {
66
- await this.pool.query('BEGIN');
83
+ const client = await this.pool.connect();
67
84
  try {
85
+ await client.query('BEGIN');
86
+ // Temporarily override pool.query to use this client for all calls within fn()
87
+ const originalQuery = this.pool.query.bind(this.pool);
88
+ this.pool.query = client.query.bind(client);
68
89
  const r = await fn();
69
- await this.pool.query('COMMIT');
90
+ this.pool.query = originalQuery;
91
+ await client.query('COMMIT');
70
92
  return r;
71
93
  }
72
94
  catch (err) {
73
- await this.pool.query('ROLLBACK');
95
+ try {
96
+ await client.query('ROLLBACK');
97
+ }
98
+ catch { /* ignore rollback error */ }
74
99
  throw err;
75
100
  }
101
+ finally {
102
+ // Restore pool.query in case it wasn't restored above (error path)
103
+ client.release();
104
+ }
76
105
  }
77
106
  getEngine() { return 'postgresql'; }
78
107
  async getVersion() { return this.serverVersion; }
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresAdapter.js","sourceRoot":"","sources":["../../../src/database/adapters/PostgresAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresAdapter.js","sourceRoot":"","sources":["../../../src/database/adapters/PostgresAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * PostgreSQL Schema Ensure — runs on startup to guarantee index tables
3
+ * (files, symbols, body_embeddings) exist with correct schema.
4
+ *
5
+ * Fixes SA4E schema mismatch: PG migration created incompatible schema
6
+ * vs what engine/db/schema.ts (SQLite) defines. This ensures both engines
7
+ * have identical table structure for the indexing pipeline.
8
+ *
9
+ * Safe to run multiple times (uses IF NOT EXISTS + IF NOT EXISTS for columns).
10
+ */
11
+ import type { DatabaseAdapter } from '../adapters/DatabaseAdapter.js';
12
+ /**
13
+ * Ensure PostgreSQL has the correct index schema on startup.
14
+ * Called from PostgresAdapter.connect() or server init when engine=postgresql.
15
+ */
16
+ export declare function ensurePostgresIndexSchema(adapter: DatabaseAdapter): Promise<void>;
@@ -0,0 +1,167 @@
1
+ /**
2
+ * PostgreSQL Schema Ensure — runs on startup to guarantee index tables
3
+ * (files, symbols, body_embeddings) exist with correct schema.
4
+ *
5
+ * Fixes SA4E schema mismatch: PG migration created incompatible schema
6
+ * vs what engine/db/schema.ts (SQLite) defines. This ensures both engines
7
+ * have identical table structure for the indexing pipeline.
8
+ *
9
+ * Safe to run multiple times (uses IF NOT EXISTS + IF NOT EXISTS for columns).
10
+ */
11
+ import pino from 'pino';
12
+ const logger = pino({ name: 'pg-schema-ensure' });
13
+ /**
14
+ * Ensure PostgreSQL has the correct index schema on startup.
15
+ * Called from PostgresAdapter.connect() or server init when engine=postgresql.
16
+ */
17
+ export async function ensurePostgresIndexSchema(adapter) {
18
+ if (adapter.getEngine() !== 'postgresql')
19
+ return;
20
+ if (!adapter.isConnected())
21
+ return;
22
+ try {
23
+ // 1. Ensure files table exists with correct columns
24
+ await adapter.execAsync(`
25
+ CREATE TABLE IF NOT EXISTS files (
26
+ id SERIAL PRIMARY KEY,
27
+ project_id TEXT NOT NULL DEFAULT '',
28
+ path TEXT NOT NULL DEFAULT '',
29
+ relative_path TEXT NOT NULL DEFAULT '',
30
+ language TEXT NOT NULL DEFAULT '',
31
+ module TEXT,
32
+ content_hash TEXT NOT NULL DEFAULT '',
33
+ size_bytes INTEGER NOT NULL DEFAULT 0,
34
+ last_indexed TEXT NOT NULL DEFAULT (NOW()::TEXT),
35
+ line_count INTEGER NOT NULL DEFAULT 0
36
+ )
37
+ `);
38
+ await safeExec(adapter, `CREATE UNIQUE INDEX IF NOT EXISTS idx_files_project_path ON files(project_id, path)`);
39
+ // 2. Ensure symbols table
40
+ await adapter.execAsync(`
41
+ CREATE TABLE IF NOT EXISTS symbols (
42
+ id SERIAL PRIMARY KEY,
43
+ project_id TEXT NOT NULL DEFAULT '',
44
+ file_id INTEGER NOT NULL DEFAULT 0,
45
+ name TEXT NOT NULL DEFAULT '',
46
+ kind TEXT NOT NULL DEFAULT '',
47
+ signature TEXT,
48
+ start_line INTEGER NOT NULL DEFAULT 0,
49
+ end_line INTEGER NOT NULL DEFAULT 0,
50
+ parent_symbol TEXT,
51
+ visibility TEXT,
52
+ doc_comment TEXT,
53
+ is_exported INTEGER DEFAULT 0,
54
+ complexity INTEGER DEFAULT 0
55
+ )
56
+ `);
57
+ // 3. Ensure body_embeddings table (SA4E-104: includes project_id + UNIQUE constraint)
58
+ await adapter.execAsync(`
59
+ CREATE TABLE IF NOT EXISTS body_embeddings (
60
+ id SERIAL PRIMARY KEY,
61
+ project_id TEXT NOT NULL DEFAULT '',
62
+ symbol_id INTEGER NOT NULL DEFAULT 0,
63
+ chunk_index INTEGER NOT NULL DEFAULT 0,
64
+ embedding BYTEA,
65
+ token_count INTEGER DEFAULT 0,
66
+ created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
67
+ UNIQUE(project_id, symbol_id, chunk_index)
68
+ )
69
+ `);
70
+ // SA4E-104: Add project_id column if table already exists without it
71
+ await safeExec(adapter, `ALTER TABLE body_embeddings ADD COLUMN IF NOT EXISTS project_id TEXT NOT NULL DEFAULT ''`);
72
+ await safeExec(adapter, `ALTER TABLE body_embeddings ADD COLUMN IF NOT EXISTS created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()`);
73
+ // SA4E-104: Create UNIQUE constraint for upsert ON CONFLICT clause
74
+ await safeExec(adapter, `CREATE UNIQUE INDEX IF NOT EXISTS idx_body_embeddings_upsert ON body_embeddings(project_id, symbol_id, chunk_index)`);
75
+ // 4. Ensure pending_tasks has serial ID
76
+ await safeExec(adapter, `CREATE SEQUENCE IF NOT EXISTS pending_tasks_id_seq`);
77
+ await safeExec(adapter, `ALTER TABLE pending_tasks ALTER COLUMN id SET DEFAULT nextval('pending_tasks_id_seq')`);
78
+ // 5. Ensure indexes exist
79
+ const indexes = [
80
+ 'CREATE INDEX IF NOT EXISTS idx_files_project ON files(project_id)',
81
+ 'CREATE INDEX IF NOT EXISTS idx_files_relpath ON files(relative_path)',
82
+ 'CREATE INDEX IF NOT EXISTS idx_symbols_project ON symbols(project_id)',
83
+ 'CREATE INDEX IF NOT EXISTS idx_symbols_file ON symbols(file_id)',
84
+ 'CREATE INDEX IF NOT EXISTS idx_symbols_name ON symbols(name)',
85
+ 'CREATE INDEX IF NOT EXISTS idx_symbols_kind ON symbols(kind)',
86
+ 'CREATE INDEX IF NOT EXISTS idx_body_symbol ON body_embeddings(symbol_id)',
87
+ ];
88
+ for (const idx of indexes) {
89
+ await safeExec(adapter, idx);
90
+ }
91
+ // 6. Ensure knowledge_entries has vector column
92
+ await safeExec(adapter, `ALTER TABLE knowledge_entries ADD COLUMN IF NOT EXISTS vector BYTEA DEFAULT NULL`);
93
+ // 7. Add ALL columns used by indexing engine (from engine/db/migrations.ts + indexing-engine.ts)
94
+ // Files table: full column set from indexing-engine.ts INSERT
95
+ const fileColumns = [
96
+ 'content_hash TEXT NOT NULL DEFAULT \'\'',
97
+ 'size_bytes INTEGER NOT NULL DEFAULT 0',
98
+ 'line_count INTEGER NOT NULL DEFAULT 0',
99
+ 'last_indexed TEXT DEFAULT NULL',
100
+ 'file_created_at TEXT DEFAULT NULL',
101
+ 'file_author TEXT DEFAULT NULL',
102
+ 'file_version TEXT DEFAULT NULL',
103
+ 'file_modified_at TEXT DEFAULT NULL',
104
+ ];
105
+ for (const col of fileColumns) {
106
+ await safeExec(adapter, `ALTER TABLE files ADD COLUMN IF NOT EXISTS ${col}`);
107
+ }
108
+ // Symbols table: enhanced columns from migrations.ts applyGraphMigrationsSync
109
+ const symColumns = [
110
+ 'is_exported INTEGER DEFAULT 0',
111
+ 'complexity INTEGER DEFAULT 0',
112
+ 'parent_symbol_id INTEGER DEFAULT NULL',
113
+ 'parameters TEXT DEFAULT NULL',
114
+ 'return_type TEXT DEFAULT NULL',
115
+ 'decorators TEXT DEFAULT NULL',
116
+ 'is_async INTEGER DEFAULT 0',
117
+ 'doc_comment_full TEXT DEFAULT NULL',
118
+ 'modifiers TEXT DEFAULT NULL',
119
+ 'file_path TEXT DEFAULT NULL',
120
+ ];
121
+ for (const col of symColumns) {
122
+ await safeExec(adapter, `ALTER TABLE symbols ADD COLUMN IF NOT EXISTS ${col}`);
123
+ }
124
+ // 8. Supporting tables from migrations.ts
125
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS relationships (
126
+ id SERIAL PRIMARY KEY, source_symbol_id INTEGER NOT NULL, target_symbol TEXT NOT NULL,
127
+ target_symbol_id INTEGER, kind TEXT NOT NULL, file_path TEXT NOT NULL DEFAULT '', line INTEGER NOT NULL DEFAULT 0, metadata TEXT
128
+ )`);
129
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS file_index (
130
+ path TEXT PRIMARY KEY, mtime INTEGER NOT NULL DEFAULT 0, content_hash TEXT NOT NULL DEFAULT '',
131
+ size_bytes INTEGER NOT NULL DEFAULT 0, last_indexed TEXT NOT NULL DEFAULT (NOW()::TEXT), symbol_count INTEGER DEFAULT 0
132
+ )`);
133
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS graph_meta (key TEXT PRIMARY KEY, value TEXT NOT NULL DEFAULT '')`);
134
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS code_dependencies (
135
+ id SERIAL PRIMARY KEY, source_file_id INTEGER NOT NULL, target_file_id INTEGER, target_path TEXT NOT NULL DEFAULT ''
136
+ )`);
137
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS code_call_graph (
138
+ id SERIAL PRIMARY KEY, caller_symbol_id INTEGER NOT NULL, callee_symbol_id INTEGER NOT NULL, call_site_line INTEGER DEFAULT 0
139
+ )`);
140
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS code_imports (
141
+ id SERIAL PRIMARY KEY, file_id INTEGER NOT NULL, imported_name TEXT NOT NULL DEFAULT '', source_module TEXT NOT NULL DEFAULT '', is_default INTEGER DEFAULT 0
142
+ )`);
143
+ await safeExec(adapter, `CREATE TABLE IF NOT EXISTS modules (
144
+ id SERIAL PRIMARY KEY, project_id TEXT NOT NULL DEFAULT '', name TEXT NOT NULL DEFAULT '', path TEXT
145
+ )`);
146
+ // 9. Additional indexes
147
+ await safeExec(adapter, 'CREATE INDEX IF NOT EXISTS idx_sym_parent ON symbols(parent_symbol_id)');
148
+ await safeExec(adapter, 'CREATE INDEX IF NOT EXISTS idx_sym_exported ON symbols(is_exported)');
149
+ await safeExec(adapter, 'CREATE INDEX IF NOT EXISTS idx_sym_file_kind ON symbols(file_id, kind)');
150
+ await safeExec(adapter, 'CREATE INDEX IF NOT EXISTS idx_rel_source_kind ON relationships(source_symbol_id, kind)');
151
+ await safeExec(adapter, 'CREATE INDEX IF NOT EXISTS idx_file_index_hash ON file_index(content_hash)');
152
+ logger.info('[pg-schema-ensure] Index schema verified/fixed');
153
+ }
154
+ catch (err) {
155
+ logger.error({ err }, '[pg-schema-ensure] Schema ensure failed (non-fatal)');
156
+ }
157
+ }
158
+ /** Execute SQL silently — log and continue on error. */
159
+ async function safeExec(adapter, sql) {
160
+ try {
161
+ await adapter.runAsync(sql, []);
162
+ }
163
+ catch {
164
+ // Ignore — statement may be redundant (column/index already exists)
165
+ }
166
+ }
167
+ //# sourceMappingURL=pg-schema-ensure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pg-schema-ensure.js","sourceRoot":"","sources":["../../../src/database/migration/pg-schema-ensure.ts"],"names":[],"mappings":"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"}
@@ -22,11 +22,14 @@ export class SymbolRepository {
22
22
  }
23
23
  async getSymbolDetail(symbolId) {
24
24
  try {
25
+ const numericId = parseInt(symbolId, 10);
26
+ if (isNaN(numericId))
27
+ return null;
25
28
  const row = await this.adapter.getAsync(`SELECT s.id, s.name, s.kind, s.signature, s.start_line, s.end_line,
26
29
  s.parent_symbol, s.visibility, s.doc_comment,
27
30
  f.relative_path, f.language, f.module
28
31
  FROM symbols s JOIN files f ON s.file_id = f.id
29
- WHERE s.id = ?`, [symbolId]);
32
+ WHERE s.id = ?`, [numericId]);
30
33
  if (!row)
31
34
  return null;
32
35
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"SymbolRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/SymbolRepository.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD,KAAK,CAAC,cAAc,CAAC,SAAkB;QACrC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,SAAS;gBACnB,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACzB,0EAA0E,gBAAgB,GAAG,EAC7F,CAAC,SAAS,CAAC,CACZ;gBACH,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACzB,sDAAsD,gBAAgB,GAAG,CAC1E,CAAC;YACN,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACrC;;;;wBAIgB,EAChB,CAAC,QAAQ,CAAC,CACX,CAAC;YACF,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC;YACtB,OAAO;gBACL,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI;gBAC1C,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;gBAChC,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;gBAChE,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;gBACvC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;gBAClC,UAAU,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;gBACnC,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;gBACvC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;aAC3D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"SymbolRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/SymbolRepository.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD,KAAK,CAAC,cAAc,CAAC,SAAkB;QACrC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,SAAS;gBACnB,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACzB,0EAA0E,gBAAgB,GAAG,EAC7F,CAAC,SAAS,CAAC,CACZ;gBACH,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACzB,sDAAsD,gBAAgB,GAAG,CAC1E,CAAC;YACN,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACzC,IAAI,KAAK,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CACrC;;;;wBAIgB,EAChB,CAAC,SAAS,CAAC,CACZ,CAAC;YACF,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC;YACtB,OAAO;gBACL,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI;gBAC1C,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;gBAChC,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;gBAChE,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;gBACvC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;gBAClC,UAAU,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;gBACnC,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;gBACvC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;aAC3D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
@@ -79,6 +79,7 @@ describe('KSA-145: Tree-sitter Pipeline Integration', () => {
79
79
  sqliteDbPath: dbPath,
80
80
  orchestrationConfigPath: path.join(tmpDir, '.code-intel', 'orchestration.json'),
81
81
  workspace: tmpDir,
82
+ indexTempDir: path.join(tmpDir, 'CodeIntel'),
82
83
  viewerPort: 0,
83
84
  dbPath,
84
85
  configPath: path.join(tmpDir, '.code-intel', 'config.json'),
@@ -1 +1 @@
1
- {"version":3,"file":"tree-sitter-pipeline.test.js","sourceRoot":"","sources":["../../../../src/engine/indexer/__tests__/tree-sitter-pipeline.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree-sitter-pipeline.test.js","sourceRoot":"","sources":["../../../../src/engine/indexer/__tests__/tree-sitter-pipeline.test.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@
4
4
  * and DI Container for dependency management.
5
5
  */
6
6
  import pino from 'pino/pino.js';
7
+ import * as fs from 'fs';
7
8
  import { loadConfig } from './config/index.js';
8
9
  import { ModuleRegistry } from './modules/ModuleRegistry.js';
9
10
  import { ModuleFactory } from './modules/ModuleFactory.js';
@@ -86,6 +87,35 @@ async function main() {
86
87
  await bus.emit(Events.ALL_MODULES_READY, { count: registry.getReadyCount() });
87
88
  logger.info({ readyModules: registry.getReadyCount(), totalModules: registry.getTotalCount() }, 'Modules initialized');
88
89
  // --- HTTP Server ---
90
+ // Ensure indexTempDir exists for source file writes
91
+ const indexTempDir = config.indexTempDir;
92
+ if (!fs.existsSync(indexTempDir)) {
93
+ fs.mkdirSync(indexTempDir, { recursive: true });
94
+ logger.info({ indexTempDir }, 'Created index temp directory');
95
+ }
96
+ // SA4E-103: Fix graph_nodes type for existing KB entries (one-time migration)
97
+ try {
98
+ const { getAdminAdapter } = await import('./admin/db/core.js');
99
+ const adminAdapter = getAdminAdapter();
100
+ if (adminAdapter.isConnected()) {
101
+ const engine = adminAdapter.getEngine();
102
+ // SA4E-104: Ensure body_embeddings has project_id + UNIQUE constraint on PG
103
+ if (engine === 'postgresql') {
104
+ const { ensurePostgresIndexSchema } = await import('./database/migration/pg-schema-ensure.js');
105
+ await ensurePostgresIndexSchema(adminAdapter);
106
+ }
107
+ if (engine === 'postgresql') {
108
+ await adminAdapter.runAsync(`UPDATE graph_nodes SET type = ke.type FROM knowledge_entries ke WHERE graph_nodes.entry_id = 'kb-entry:' || ke.id::text AND graph_nodes.type = 'KNOWLEDGE_ENTRY'`, []);
109
+ }
110
+ else {
111
+ await adminAdapter.runAsync(`UPDATE graph_nodes SET type = (SELECT ke.type FROM knowledge_entries ke WHERE 'kb-entry:' || ke.id = graph_nodes.entry_id) WHERE entry_id LIKE 'kb-entry:%' AND type = 'KNOWLEDGE_ENTRY'`, []);
112
+ }
113
+ logger.info('Fixed graph_nodes types from KNOWLEDGE_ENTRY to actual entry types');
114
+ }
115
+ }
116
+ catch (err) {
117
+ logger.warn({ err }, 'graph_nodes type migration skipped (non-fatal)');
118
+ }
89
119
  const toolRouter = factory.createToolRouter();
90
120
  const mcpConfigService = factory.createMcpConfigService();
91
121
  const server = factory.createHttpServer(toolRouter, mcpConfigService);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ export class MemoryEngineCrud {
56
56
  // Skip PEGA_AST (auxiliary — duplicates PEGA_RULE in graph)
57
57
  if (id > 0 && entry.type && !['PEGA_RULE', 'PEGA_DATA', 'PEGA_AST'].includes(entry.type)) {
58
58
  try {
59
- const graphType = entry.type === 'PEGA_SCHEMA' ? 'PEGA_SCHEMA' : 'KNOWLEDGE_ENTRY';
59
+ const graphType = entry.type || 'CONTEXT';
60
60
  const graphLabel = (entry.summary || entry.source || `entry-${id}`).slice(0, 200);
61
61
  const pid = entry.project_id || '';
62
62
  if (engine === 'postgresql') {
@@ -1 +1 @@
1
- {"version":3,"file":"crud.js","sourceRoot":"","sources":["../../../../src/modules/memory/engine/crud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crud.js","sourceRoot":"","sources":["../../../../src/modules/memory/engine/crud.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,8 @@ export declare class TaskWorker {
33
33
  private lastPollAt;
34
34
  private processing;
35
35
  private shutdownResolve;
36
+ /** SA4E-101: Track current processing task for status bar progress. */
37
+ private currentTaskInfo;
36
38
  constructor(db: DatabaseAdapter, engine: MemoryEngine, logger: Logger, config?: Partial<TaskWorkerConfig>);
37
39
  setTagAnalyzer(analyzer: TagAnalyzerService): void;
38
40
  setEmbeddingService(service: EmbeddingService): void;
@@ -57,6 +59,14 @@ export declare class TaskWorker {
57
59
  resetProcessingOnStartup(): Promise<number>;
58
60
  recoverStaleTasks(): Promise<number>;
59
61
  getStats(): Promise<TaskWorkerStats>;
62
+ /** SA4E-101: Get current task progress for status bar display. */
63
+ getProgress(): Promise<{
64
+ phase: string;
65
+ file: string;
66
+ current: number;
67
+ total: number;
68
+ percent: number;
69
+ } | null>;
60
70
  getRepository(): PendingTaskRepository;
61
71
  private schedulePoll;
62
72
  private poll;
@@ -22,6 +22,8 @@ export class TaskWorker {
22
22
  lastPollAt = null;
23
23
  processing = false;
24
24
  shutdownResolve = null;
25
+ /** SA4E-101: Track current processing task for status bar progress. */
26
+ currentTaskInfo = null;
25
27
  constructor(db, engine, logger, config) {
26
28
  this.repo = new PendingTaskRepository(db);
27
29
  this.engine = engine;
@@ -92,6 +94,22 @@ export class TaskWorker {
92
94
  const dbStats = await this.repo.getStats();
93
95
  return { ...dbStats, isRunning: this.running, lastPollAt: this.lastPollAt };
94
96
  }
97
+ /** SA4E-101: Get current task progress for status bar display. */
98
+ async getProgress() {
99
+ if (!this.processing || !this.currentTaskInfo)
100
+ return null;
101
+ const stats = await this.repo.getStats();
102
+ const total = stats.pending + stats.processing + stats.completed;
103
+ const current = stats.completed;
104
+ const percent = total > 0 ? Math.round((current / total) * 100) : 0;
105
+ return {
106
+ phase: this.currentTaskInfo.type,
107
+ file: this.currentTaskInfo.file,
108
+ current,
109
+ total,
110
+ percent,
111
+ };
112
+ }
95
113
  getRepository() { return this.repo; }
96
114
  // ── Private ──
97
115
  schedulePoll(delayMs) {
@@ -151,6 +169,9 @@ export class TaskWorker {
151
169
  this.repo.markFailed(task.id, 'invalid_json_payload');
152
170
  return;
153
171
  }
172
+ // SA4E-101: Track current task for progress reporting
173
+ const file = entry.source || `entry-${task.entry_id}`;
174
+ this.currentTaskInfo = { file, type: task.task_type, current: 0, total: 0 };
154
175
  switch (task.task_type) {
155
176
  case TaskType.TAG_ENRICHMENT:
156
177
  await this.processTagEnrichment(task, payload);