devmind 1.1.0 → 1.1.1

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 (55) hide show
  1. package/README.md +13 -1
  2. package/dist/cli/handlers.js +1 -1
  3. package/dist/cli/handlers.js.map +1 -1
  4. package/dist/cli/register-database.js +4 -0
  5. package/dist/cli/register-database.js.map +1 -1
  6. package/dist/codebase/generators/architecture-extractor.d.ts +41 -0
  7. package/dist/codebase/generators/architecture-extractor.js +388 -0
  8. package/dist/codebase/generators/architecture-extractor.js.map +1 -0
  9. package/dist/codebase/generators/architecture.d.ts +2 -4
  10. package/dist/codebase/generators/architecture.js +123 -30
  11. package/dist/codebase/generators/architecture.js.map +1 -1
  12. package/dist/codebase/generators/modules.js +8 -8
  13. package/dist/codebase/generators/overview.js +24 -24
  14. package/dist/codebase/index.js +1 -1
  15. package/dist/codebase/index.js.map +1 -1
  16. package/dist/codebase/parsers/typescript.js +9 -0
  17. package/dist/codebase/parsers/typescript.js.map +1 -1
  18. package/dist/codebase/scanners/filesystem.js +1 -4
  19. package/dist/codebase/scanners/filesystem.js.map +1 -1
  20. package/dist/commands/analyze.js +7 -1
  21. package/dist/commands/analyze.js.map +1 -1
  22. package/dist/commands/audit-design.js.map +1 -1
  23. package/dist/commands/audit-report.js.map +1 -1
  24. package/dist/commands/audit-source.js +3 -1
  25. package/dist/commands/audit-source.js.map +1 -1
  26. package/dist/commands/audit.js.map +1 -1
  27. package/dist/commands/claude-plugin.js.map +1 -1
  28. package/dist/commands/codex-plugin.js.map +1 -1
  29. package/dist/commands/design-system.js.map +1 -1
  30. package/dist/commands/extract.js +4 -1
  31. package/dist/commands/extract.js.map +1 -1
  32. package/dist/commands/retrieve.js +6 -2
  33. package/dist/commands/retrieve.js.map +1 -1
  34. package/dist/commands/status.js.map +1 -1
  35. package/dist/core/source-file-cache.js +4 -1
  36. package/dist/core/source-file-cache.js.map +1 -1
  37. package/dist/database/cli/register-database.js +4 -0
  38. package/dist/database/cli/register-database.js.map +1 -1
  39. package/dist/database/commands/generate.d.ts +1 -0
  40. package/dist/database/commands/generate.js +23 -14
  41. package/dist/database/commands/generate.js.map +1 -1
  42. package/dist/database/commands/handoff.js +123 -123
  43. package/dist/database/commands/handoff.js.map +1 -1
  44. package/dist/database/commands/learn.js +5 -1
  45. package/dist/database/commands/learn.js.map +1 -1
  46. package/dist/database/commands/memory.js +113 -113
  47. package/dist/database/commands/watch.js +1 -1
  48. package/dist/database/commands/watch.js.map +1 -1
  49. package/dist/database/extractors/mysql.js +45 -45
  50. package/dist/database/extractors/postgres.js +54 -54
  51. package/dist/database/extractors/sqlite.js +8 -8
  52. package/dist/database/generators/templates.js +520 -520
  53. package/dist/generators/unified.js +4 -3
  54. package/dist/generators/unified.js.map +1 -1
  55. package/package.json +85 -77
@@ -1 +1 @@
1
- {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../src/database/commands/handoff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../src/database/commands/handoff.ts"],"names":[],"mappings":"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"}
@@ -150,7 +150,11 @@ function normalizeCategory(input) {
150
150
  return input.trim().toLowerCase().replace(/\s+/g, '-');
151
151
  }
152
152
  function normalizeLearning(input) {
153
- return input.trim().replace(/\r\n/g, '\n').replace(/[ \t]+/g, ' ').replace(/\n{3,}/g, '\n\n');
153
+ return input
154
+ .trim()
155
+ .replace(/\r\n/g, '\n')
156
+ .replace(/[ \t]+/g, ' ')
157
+ .replace(/\n{3,}/g, '\n\n');
154
158
  }
155
159
  function createFingerprint(category, content) {
156
160
  return createHash('sha256').update(`${category}\n${content}`, 'utf8').digest('hex').slice(0, 16);
@@ -1 +1 @@
1
- {"version":3,"file":"learn.js","sourceRoot":"","sources":["../../../src/database/commands/learn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"learn.js","sourceRoot":"","sources":["../../../src/database/commands/learn.ts"],"names":[],"mappings":"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"}
@@ -88,32 +88,32 @@ export class MemoryInfrastructure {
88
88
  }
89
89
  getTemplateFallbacks() {
90
90
  return {
91
- 'edge-cases.md': `# Edge Cases
92
-
93
- This file captures known project edge cases and mitigations.
94
-
95
- ## Add Cases
96
-
97
- - Scenario:
98
- - Impact:
99
- - Mitigation:
91
+ 'edge-cases.md': `# Edge Cases
92
+
93
+ This file captures known project edge cases and mitigations.
94
+
95
+ ## Add Cases
96
+
97
+ - Scenario:
98
+ - Impact:
99
+ - Mitigation:
100
100
  `,
101
- 'state/CURRENT_STATE.md': `# Current State
102
-
103
- Generated by DevMind.
104
-
105
- - Status: initializing
106
- - Last Updated: ${new Date().toISOString()}
107
- - Next Step: run \`devmind generate\` or \`devmind scan\`
101
+ 'state/CURRENT_STATE.md': `# Current State
102
+
103
+ Generated by DevMind.
104
+
105
+ - Status: initializing
106
+ - Last Updated: ${new Date().toISOString()}
107
+ - Next Step: run \`devmind generate\` or \`devmind scan\`
108
108
  `,
109
- 'memory/checkpoint-patterns.md': `# Checkpoint Patterns
110
-
111
- Use checkpoints to preserve progress across sessions.
112
-
113
- ## Recommended
114
-
115
- - Save a checkpoint before large refactors.
116
- - Include a short message describing intent.
109
+ 'memory/checkpoint-patterns.md': `# Checkpoint Patterns
110
+
111
+ Use checkpoints to preserve progress across sessions.
112
+
113
+ ## Recommended
114
+
115
+ - Save a checkpoint before large refactors.
116
+ - Include a short message describing intent.
117
117
  `,
118
118
  };
119
119
  }
@@ -121,64 +121,64 @@ Use checkpoints to preserve progress across sessions.
121
121
  * Create initial learnings file
122
122
  */
123
123
  createInitialLearnings(schema) {
124
- return `# Project Learnings
125
-
126
- > Auto-generated on ${new Date().toISOString()}
127
-
128
- This file accumulates technical learnings, architectural decisions, and discovered patterns.
129
-
130
- ## Initial Schema Analysis
131
-
132
- - **Tables:** ${schema.tables.length}
133
- - **Database Type:** ${schema.databaseType}
134
- - **Schema Name:** ${schema.schemaName || 'N/A'}
135
-
136
- ## Codebase Knowledge
137
-
138
- - **Architecture:** (Pending analysis)
139
- - **Patterns:** (Pending analysis)
140
-
141
- ## Patterns
142
-
143
- See \`BUSINESS_LOGIC.md\` for detected patterns.
144
-
145
- ## Sessions
146
-
147
- ### Session 1 - ${new Date().toISOString().split('T')[0]}
148
- - Initial schema generation
149
- - Detected business patterns
150
- - Created memory infrastructure
151
-
152
- ---
153
-
154
- *Add new learnings below. Each session should append discoveries, edge cases, and best practices.*
124
+ return `# Project Learnings
125
+
126
+ > Auto-generated on ${new Date().toISOString()}
127
+
128
+ This file accumulates technical learnings, architectural decisions, and discovered patterns.
129
+
130
+ ## Initial Schema Analysis
131
+
132
+ - **Tables:** ${schema.tables.length}
133
+ - **Database Type:** ${schema.databaseType}
134
+ - **Schema Name:** ${schema.schemaName || 'N/A'}
135
+
136
+ ## Codebase Knowledge
137
+
138
+ - **Architecture:** (Pending analysis)
139
+ - **Patterns:** (Pending analysis)
140
+
141
+ ## Patterns
142
+
143
+ See \`BUSINESS_LOGIC.md\` for detected patterns.
144
+
145
+ ## Sessions
146
+
147
+ ### Session 1 - ${new Date().toISOString().split('T')[0]}
148
+ - Initial schema generation
149
+ - Detected business patterns
150
+ - Created memory infrastructure
151
+
152
+ ---
153
+
154
+ *Add new learnings below. Each session should append discoveries, edge cases, and best practices.*
155
155
  `;
156
156
  }
157
157
  /**
158
158
  * Create initial session history
159
159
  */
160
160
  createInitialHistory() {
161
- return `# Session History
162
-
163
- > Recent database context sessions
164
-
165
- ## ${new Date().toISOString().split('T')[0]} - Initial Generation
166
-
167
- **Status:** Completed
168
- **Agent:** devmind-db v1.0.3
169
-
170
- **Actions:**
171
- - Generated schema context
172
- - Created memory infrastructure
173
- - Detected business patterns
174
-
175
- **Discoveries:**
176
- - Schema structure analyzed
177
- - Memory layer initialized
178
-
179
- ---
180
-
181
- *New sessions will be appended below*
161
+ return `# Session History
162
+
163
+ > Recent database context sessions
164
+
165
+ ## ${new Date().toISOString().split('T')[0]} - Initial Generation
166
+
167
+ **Status:** Completed
168
+ **Agent:** devmind-db v1.0.3
169
+
170
+ **Actions:**
171
+ - Generated schema context
172
+ - Created memory infrastructure
173
+ - Detected business patterns
174
+
175
+ **Discoveries:**
176
+ - Schema structure analyzed
177
+ - Memory layer initialized
178
+
179
+ ---
180
+
181
+ *New sessions will be appended below*
182
182
  `;
183
183
  }
184
184
  /**
@@ -186,41 +186,41 @@ See \`BUSINESS_LOGIC.md\` for detected patterns.
186
186
  */
187
187
  createSchemaEvolution(schema) {
188
188
  const schemaHash = this.calculateSchemaHash(schema);
189
- return `# Schema Evolution
190
-
191
- > Track schema changes over time
192
-
193
- ## ${new Date().toISOString().split('T')[0]} - Baseline
194
-
195
- **Schema Hash:** \`${schemaHash}\`
196
- **Tables:** ${schema.tables.length}
197
- **Database:** ${schema.databaseType}
198
-
199
- ### Tables Created
200
- ${schema.tables.map((t) => `- ${t.name} (${t.columns.length} columns)`).join('\n')}
201
-
202
- ---
203
-
204
- *Schema changes will be tracked below*
189
+ return `# Schema Evolution
190
+
191
+ > Track schema changes over time
192
+
193
+ ## ${new Date().toISOString().split('T')[0]} - Baseline
194
+
195
+ **Schema Hash:** \`${schemaHash}\`
196
+ **Tables:** ${schema.tables.length}
197
+ **Database:** ${schema.databaseType}
198
+
199
+ ### Tables Created
200
+ ${schema.tables.map((t) => `- ${t.name} (${t.columns.length} columns)`).join('\n')}
201
+
202
+ ---
203
+
204
+ *Schema changes will be tracked below*
205
205
  `;
206
206
  }
207
207
  /**
208
208
  * Create codebase evolution tracking
209
209
  */
210
210
  createCodebaseEvolution(hash, stats) {
211
- return `# Codebase Evolution
212
-
213
- > Track codebase structure changes over time
214
-
215
- ## ${new Date().toISOString().split('T')[0]} - Baseline
216
-
217
- **Codebase Hash:** \`${hash}\`
218
- **Files:** ${stats?.files || 0}
219
- **LOC:** ${stats?.loc || 0}
220
-
221
- ---
222
-
223
- *Codebase changes will be tracked below*
211
+ return `# Codebase Evolution
212
+
213
+ > Track codebase structure changes over time
214
+
215
+ ## ${new Date().toISOString().split('T')[0]} - Baseline
216
+
217
+ **Codebase Hash:** \`${hash}\`
218
+ **Files:** ${stats?.files || 0}
219
+ **LOC:** ${stats?.loc || 0}
220
+
221
+ ---
222
+
223
+ *Codebase changes will be tracked below*
224
224
  `;
225
225
  }
226
226
  /**
@@ -337,14 +337,14 @@ ${schema.tables.map((t) => `- ${t.name} (${t.columns.length} columns)`).join('\n
337
337
  // Check if hash changed
338
338
  if (!content.includes(`\`${hash}\``)) {
339
339
  const timestamp = new Date().toISOString().split('T')[0];
340
- const entry = `
341
- ## ${timestamp} - Scan
342
-
343
- **Codebase Hash:** \`${hash}\`
344
- **Files:** ${stats.files}
345
- **LOC:** ${stats.loc}
346
-
347
- ---
340
+ const entry = `
341
+ ## ${timestamp} - Scan
342
+
343
+ **Codebase Hash:** \`${hash}\`
344
+ **Files:** ${stats.files}
345
+ **LOC:** ${stats.loc}
346
+
347
+ ---
348
348
  `;
349
349
  await writeFileSafe(evolutionPath, content + entry);
350
350
  }
@@ -41,7 +41,7 @@ export async function watch(options) {
41
41
  generating = true;
42
42
  logger.info(`Schema change detected, regenerating...`);
43
43
  try {
44
- await generate({});
44
+ await generate({ throwOnError: true });
45
45
  logger.success('Regeneration complete');
46
46
  }
47
47
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"watch.js","sourceRoot":"","sources":["../../../src/database/commands/watch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watch.js","sourceRoot":"","sources":["../../../src/database/commands/watch.ts"],"names":[],"mappings":"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"}
@@ -53,15 +53,15 @@ export class MySQLExtractor {
53
53
  }
54
54
  }
55
55
  async extractTables(connection) {
56
- const [rows] = await connection.query(`
57
- SELECT
58
- TABLE_NAME as table_name,
59
- TABLE_COMMENT as table_comment,
60
- ENGINE as engine,
61
- AUTO_INCREMENT as auto_increment
62
- FROM information_schema.TABLES
63
- WHERE TABLE_SCHEMA = ? AND TABLE_TYPE = 'BASE TABLE'
64
- ORDER BY TABLE_NAME
56
+ const [rows] = await connection.query(`
57
+ SELECT
58
+ TABLE_NAME as table_name,
59
+ TABLE_COMMENT as table_comment,
60
+ ENGINE as engine,
61
+ AUTO_INCREMENT as auto_increment
62
+ FROM information_schema.TABLES
63
+ WHERE TABLE_SCHEMA = ? AND TABLE_TYPE = 'BASE TABLE'
64
+ ORDER BY TABLE_NAME
65
65
  `, [this.databaseName]);
66
66
  return rows.map((row) => ({
67
67
  name: row.table_name,
@@ -71,17 +71,17 @@ export class MySQLExtractor {
71
71
  }));
72
72
  }
73
73
  async extractColumns(connection, tableName) {
74
- const [rows] = await connection.query(`
75
- SELECT
76
- COLUMN_NAME as column_name,
77
- COLUMN_TYPE as column_type,
78
- IS_NULLABLE as is_nullable,
79
- COLUMN_DEFAULT as column_default,
80
- EXTRA as extra,
81
- COLUMN_COMMENT as column_comment
82
- FROM information_schema.COLUMNS
83
- WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?
84
- ORDER BY ORDINAL_POSITION
74
+ const [rows] = await connection.query(`
75
+ SELECT
76
+ COLUMN_NAME as column_name,
77
+ COLUMN_TYPE as column_type,
78
+ IS_NULLABLE as is_nullable,
79
+ COLUMN_DEFAULT as column_default,
80
+ EXTRA as extra,
81
+ COLUMN_COMMENT as column_comment
82
+ FROM information_schema.COLUMNS
83
+ WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?
84
+ ORDER BY ORDINAL_POSITION
85
85
  `, [this.databaseName, tableName]);
86
86
  return rows.map((row) => ({
87
87
  name: row.column_name,
@@ -93,22 +93,22 @@ export class MySQLExtractor {
93
93
  }));
94
94
  }
95
95
  async extractIndexes(connection, tableName) {
96
- const [rows] = await connection.query(`
97
- SELECT
98
- INDEX_NAME as index_name,
99
- NON_UNIQUE as non_unique,
100
- INDEX_TYPE as index_type,
101
- GROUP_CONcat(COLUMN_NAME ORDER BY SEQ_IN_INDEX) as columns
102
- FROM information_schema.STATISTICS
103
- WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?
104
- GROUP BY INDEX_NAME, NON_UNIQUE, INDEX_TYPE
96
+ const [rows] = await connection.query(`
97
+ SELECT
98
+ INDEX_NAME as index_name,
99
+ NON_UNIQUE as non_unique,
100
+ INDEX_TYPE as index_type,
101
+ GROUP_CONcat(COLUMN_NAME ORDER BY SEQ_IN_INDEX) as columns
102
+ FROM information_schema.STATISTICS
103
+ WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?
104
+ GROUP BY INDEX_NAME, NON_UNIQUE, INDEX_TYPE
105
105
  `, [this.databaseName, tableName]);
106
106
  // Also get primary key info
107
- const [pkRows] = await connection.query(`
108
- SELECT
109
- INDEX_NAME as index_name
110
- FROM information_schema.STATISTICS
111
- WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? AND INDEX_NAME = 'PRIMARY'
107
+ const [pkRows] = await connection.query(`
108
+ SELECT
109
+ INDEX_NAME as index_name
110
+ FROM information_schema.STATISTICS
111
+ WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? AND INDEX_NAME = 'PRIMARY'
112
112
  `, [this.databaseName, tableName]);
113
113
  const primaryKeyIndexNames = pkRows.map((row) => row.index_name);
114
114
  return rows.map((row) => {
@@ -124,17 +124,17 @@ export class MySQLExtractor {
124
124
  });
125
125
  }
126
126
  async extractForeignKeys(connection, tableName) {
127
- const [rows] = await connection.query(`
128
- SELECT
129
- COLUMN_NAME as column_name,
130
- REFERENCED_TABLE_NAME as referenced_table_name,
131
- REFERENCED_COLUMN_NAME as referenced_column_name,
132
- DELETE_RULE as delete_rule,
133
- UPDATE_RULE as update_rule
134
- FROM information_schema.KEY_COLUMN_USAGE
135
- WHERE TABLE_SCHEMA = ?
136
- AND TABLE_NAME = ?
137
- AND REFERENCED_TABLE_NAME IS NOT NULL
127
+ const [rows] = await connection.query(`
128
+ SELECT
129
+ COLUMN_NAME as column_name,
130
+ REFERENCED_TABLE_NAME as referenced_table_name,
131
+ REFERENCED_COLUMN_NAME as referenced_column_name,
132
+ DELETE_RULE as delete_rule,
133
+ UPDATE_RULE as update_rule
134
+ FROM information_schema.KEY_COLUMN_USAGE
135
+ WHERE TABLE_SCHEMA = ?
136
+ AND TABLE_NAME = ?
137
+ AND REFERENCED_TABLE_NAME IS NOT NULL
138
138
  `, [this.databaseName, tableName]);
139
139
  return rows.map((row) => ({
140
140
  column: row.column_name,
@@ -41,14 +41,14 @@ export class PostgresExtractor {
41
41
  }
42
42
  }
43
43
  async extractTables(client, schemaName) {
44
- const query = `
45
- SELECT t.table_name, obj_description(c.oid, 'pg_class') as description
46
- FROM information_schema.tables t
47
- LEFT JOIN pg_class c ON c.relname = t.table_name
48
- LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
49
- WHERE t.table_schema = $1
50
- AND t.table_type = 'BASE TABLE'
51
- ORDER BY t.table_name
44
+ const query = `
45
+ SELECT t.table_name, obj_description(c.oid, 'pg_class') as description
46
+ FROM information_schema.tables t
47
+ LEFT JOIN pg_class c ON c.relname = t.table_name
48
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
49
+ WHERE t.table_schema = $1
50
+ AND t.table_type = 'BASE TABLE'
51
+ ORDER BY t.table_name
52
52
  `;
53
53
  const result = await client.query(query, [schemaName]);
54
54
  return result.rows.map((row) => ({
@@ -57,19 +57,19 @@ export class PostgresExtractor {
57
57
  }));
58
58
  }
59
59
  async extractColumns(client, schemaName, tableName) {
60
- const query = `
61
- SELECT
62
- c.column_name,
63
- c.data_type,
64
- c.is_nullable = 'YES' as is_nullable,
65
- c.column_default,
66
- pg_catalog.col_description(
67
- (SELECT c.oid FROM pg_class WHERE relname = $2)::regclass::oid,
68
- c.ordinal_position
69
- ) as description
70
- FROM information_schema.columns c
71
- WHERE c.table_schema = $1 AND c.table_name = $2
72
- ORDER BY c.ordinal_position
60
+ const query = `
61
+ SELECT
62
+ c.column_name,
63
+ c.data_type,
64
+ c.is_nullable = 'YES' as is_nullable,
65
+ c.column_default,
66
+ pg_catalog.col_description(
67
+ (SELECT c.oid FROM pg_class WHERE relname = $2)::regclass::oid,
68
+ c.ordinal_position
69
+ ) as description
70
+ FROM information_schema.columns c
71
+ WHERE c.table_schema = $1 AND c.table_name = $2
72
+ ORDER BY c.ordinal_position
73
73
  `;
74
74
  const result = await client.query(query, [schemaName, tableName]);
75
75
  return result.rows.map((row) => ({
@@ -81,19 +81,19 @@ export class PostgresExtractor {
81
81
  }));
82
82
  }
83
83
  async extractIndexes(client, schemaName, tableName) {
84
- const query = `
85
- SELECT
86
- i.relname as index_name,
87
- array_agg(a.attname ORDER BY ix.indkey::integer[]) as columns,
88
- ix.indisunique as is_unique,
89
- ix.indisprimary as is_primary_key
90
- FROM pg_class t
91
- JOIN pg_index ix ON t.oid = ix.indrelid
92
- JOIN pg_class i ON i.oid = ix.indexrelid
93
- JOIN pg_namespace n ON n.oid = t.relnamespace
94
- LEFT JOIN pg_attribute a ON a.attrelid = t.oid AND a.attnum = ANY(ix.indkey::integer[])
95
- WHERE t.relname = $1 AND n.nspname = $2
96
- GROUP BY i.relname, ix.indisunique, ix.indisprimary
84
+ const query = `
85
+ SELECT
86
+ i.relname as index_name,
87
+ array_agg(a.attname ORDER BY ix.indkey::integer[]) as columns,
88
+ ix.indisunique as is_unique,
89
+ ix.indisprimary as is_primary_key
90
+ FROM pg_class t
91
+ JOIN pg_index ix ON t.oid = ix.indrelid
92
+ JOIN pg_class i ON i.oid = ix.indexrelid
93
+ JOIN pg_namespace n ON n.oid = t.relnamespace
94
+ LEFT JOIN pg_attribute a ON a.attrelid = t.oid AND a.attnum = ANY(ix.indkey::integer[])
95
+ WHERE t.relname = $1 AND n.nspname = $2
96
+ GROUP BY i.relname, ix.indisunique, ix.indisprimary
97
97
  `;
98
98
  const result = await client.query(query, [tableName, schemaName]);
99
99
  return result.rows.map((row) => ({
@@ -104,26 +104,26 @@ export class PostgresExtractor {
104
104
  }));
105
105
  }
106
106
  async extractForeignKeys(client, schemaName, tableName) {
107
- const query = `
108
- SELECT
109
- kcu.column_name,
110
- ccu.table_name AS references_table,
111
- ccu.column_name AS references_column,
112
- rc.delete_rule AS on_delete,
113
- rc.update_rule AS on_update
114
- FROM information_schema.table_constraints AS tc
115
- JOIN information_schema.key_column_usage AS kcu
116
- ON tc.constraint_name = kcu.constraint_name
117
- AND tc.table_schema = kcu.table_schema
118
- JOIN information_schema.constraint_column_usage AS ccu
119
- ON ccu.constraint_name = tc.constraint_name
120
- AND ccu.table_schema = tc.table_schema
121
- JOIN information_schema.referential_constraints AS rc
122
- ON tc.constraint_name = rc.constraint_name
123
- AND tc.table_schema = rc.constraint_schema
124
- WHERE tc.constraint_type = 'FOREIGN KEY'
125
- AND tc.table_schema = $1
126
- AND tc.table_name = $2
107
+ const query = `
108
+ SELECT
109
+ kcu.column_name,
110
+ ccu.table_name AS references_table,
111
+ ccu.column_name AS references_column,
112
+ rc.delete_rule AS on_delete,
113
+ rc.update_rule AS on_update
114
+ FROM information_schema.table_constraints AS tc
115
+ JOIN information_schema.key_column_usage AS kcu
116
+ ON tc.constraint_name = kcu.constraint_name
117
+ AND tc.table_schema = kcu.table_schema
118
+ JOIN information_schema.constraint_column_usage AS ccu
119
+ ON ccu.constraint_name = tc.constraint_name
120
+ AND ccu.table_schema = tc.table_schema
121
+ JOIN information_schema.referential_constraints AS rc
122
+ ON tc.constraint_name = rc.constraint_name
123
+ AND tc.table_schema = rc.constraint_schema
124
+ WHERE tc.constraint_type = 'FOREIGN KEY'
125
+ AND tc.table_schema = $1
126
+ AND tc.table_name = $2
127
127
  `;
128
128
  const result = await client.query(query, [schemaName, tableName]);
129
129
  return result.rows.map((row) => ({