@memberjunction/db-auto-doc 3.4.0 → 4.1.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 +58 -26
- package/bin/run.js +4 -7
- package/dist/api/DBAutoDocAPI.js +14 -41
- package/dist/api/DBAutoDocAPI.js.map +1 -1
- package/dist/api/index.js +1 -5
- package/dist/api/index.js.map +1 -1
- package/dist/commands/analyze.d.ts +1 -1
- package/dist/commands/analyze.js +30 -36
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/export-sample-queries.d.ts +1 -1
- package/dist/commands/export-sample-queries.js +65 -94
- package/dist/commands/export-sample-queries.js.map +1 -1
- package/dist/commands/export.d.ts +2 -2
- package/dist/commands/export.js +49 -78
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/generate-queries.d.ts +2 -2
- package/dist/commands/generate-queries.d.ts.map +1 -1
- package/dist/commands/generate-queries.js +47 -73
- package/dist/commands/generate-queries.js.map +1 -1
- package/dist/commands/init.js +21 -27
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/reset.js +16 -22
- package/dist/commands/reset.js.map +1 -1
- package/dist/commands/status.js +16 -22
- package/dist/commands/status.js.map +1 -1
- package/dist/core/AnalysisEngine.js +7 -11
- package/dist/core/AnalysisEngine.js.map +1 -1
- package/dist/core/AnalysisOrchestrator.d.ts.map +1 -1
- package/dist/core/AnalysisOrchestrator.js +45 -56
- package/dist/core/AnalysisOrchestrator.js.map +1 -1
- package/dist/core/BackpropagationEngine.js +1 -5
- package/dist/core/BackpropagationEngine.js.map +1 -1
- package/dist/core/ConvergenceDetector.js +1 -5
- package/dist/core/ConvergenceDetector.js.map +1 -1
- package/dist/core/GuardrailsManager.js +1 -5
- package/dist/core/GuardrailsManager.js.map +1 -1
- package/dist/core/index.js +3 -9
- package/dist/core/index.js.map +1 -1
- package/dist/database/Database.d.ts.map +1 -1
- package/dist/database/Database.js +42 -37
- package/dist/database/Database.js.map +1 -1
- package/dist/database/TopologicalSorter.js +1 -5
- package/dist/database/TopologicalSorter.js.map +1 -1
- package/dist/database/index.js +2 -10
- package/dist/database/index.js.map +1 -1
- package/dist/discovery/ColumnStatsCache.js +1 -5
- package/dist/discovery/ColumnStatsCache.js.map +1 -1
- package/dist/discovery/DiscoveryEngine.js +11 -15
- package/dist/discovery/DiscoveryEngine.js.map +1 -1
- package/dist/discovery/DiscoveryTriggerAnalyzer.js +1 -5
- package/dist/discovery/DiscoveryTriggerAnalyzer.js.map +1 -1
- package/dist/discovery/FKDetector.js +1 -5
- package/dist/discovery/FKDetector.js.map +1 -1
- package/dist/discovery/LLMDiscoveryValidator.js +4 -8
- package/dist/discovery/LLMDiscoveryValidator.js.map +1 -1
- package/dist/discovery/LLMSanityChecker.js +3 -7
- package/dist/discovery/LLMSanityChecker.js.map +1 -1
- package/dist/discovery/PKDetector.js +1 -5
- package/dist/discovery/PKDetector.js.map +1 -1
- package/dist/discovery/index.js +4 -20
- package/dist/discovery/index.js.map +1 -1
- package/dist/drivers/BaseAutoDocDriver.js +1 -5
- package/dist/drivers/BaseAutoDocDriver.js.map +1 -1
- package/dist/drivers/MySQLDriver.js +8 -14
- package/dist/drivers/MySQLDriver.js.map +1 -1
- package/dist/drivers/PostgreSQLDriver.js +8 -11
- package/dist/drivers/PostgreSQLDriver.js.map +1 -1
- package/dist/drivers/SQLServerDriver.d.ts.map +1 -1
- package/dist/drivers/SQLServerDriver.js +27 -46
- package/dist/drivers/SQLServerDriver.js.map +1 -1
- package/dist/generators/CSVGenerator.js +1 -5
- package/dist/generators/CSVGenerator.js.map +1 -1
- package/dist/generators/HTMLGenerator.js +1 -5
- package/dist/generators/HTMLGenerator.js.map +1 -1
- package/dist/generators/MarkdownGenerator.js +1 -5
- package/dist/generators/MarkdownGenerator.js.map +1 -1
- package/dist/generators/MermaidGenerator.js +1 -5
- package/dist/generators/MermaidGenerator.js.map +1 -1
- package/dist/generators/ReportGenerator.js +1 -5
- package/dist/generators/ReportGenerator.js.map +1 -1
- package/dist/generators/SQLGenerator.js +1 -5
- package/dist/generators/SQLGenerator.js.map +1 -1
- package/dist/generators/SampleQueryGenerator.d.ts +1 -1
- package/dist/generators/SampleQueryGenerator.d.ts.map +1 -1
- package/dist/generators/SampleQueryGenerator.js +36 -40
- package/dist/generators/SampleQueryGenerator.js.map +1 -1
- package/dist/generators/index.js +6 -15
- package/dist/generators/index.js.map +1 -1
- package/dist/index.js +9 -25
- package/dist/index.js.map +1 -1
- package/dist/prompts/PromptEngine.d.ts.map +1 -1
- package/dist/prompts/PromptEngine.js +22 -49
- package/dist/prompts/PromptEngine.js.map +1 -1
- package/dist/prompts/PromptFileLoader.d.ts +1 -1
- package/dist/prompts/PromptFileLoader.d.ts.map +1 -1
- package/dist/prompts/PromptFileLoader.js +4 -31
- package/dist/prompts/PromptFileLoader.js.map +1 -1
- package/dist/prompts/index.js +2 -7
- package/dist/prompts/index.js.map +1 -1
- package/dist/state/IterationTracker.js +1 -5
- package/dist/state/IterationTracker.js.map +1 -1
- package/dist/state/StateManager.js +3 -30
- package/dist/state/StateManager.js.map +1 -1
- package/dist/state/StateValidator.js +1 -5
- package/dist/state/StateValidator.js.map +1 -1
- package/dist/state/index.js +3 -9
- package/dist/state/index.js.map +1 -1
- package/dist/types/analysis.js +1 -2
- package/dist/types/analysis.js.map +1 -1
- package/dist/types/config.js +1 -2
- package/dist/types/config.js.map +1 -1
- package/dist/types/discovery.js +1 -2
- package/dist/types/discovery.js.map +1 -1
- package/dist/types/driver.js +1 -2
- package/dist/types/driver.js.map +1 -1
- package/dist/types/index.js +4 -20
- package/dist/types/index.js.map +1 -1
- package/dist/types/prompts.js +1 -2
- package/dist/types/prompts.js.map +1 -1
- package/dist/types/sample-queries.js +1 -2
- package/dist/types/sample-queries.js.map +1 -1
- package/dist/types/state.js +1 -2
- package/dist/types/state.js.map +1 -1
- package/dist/utils/config-loader.js +3 -30
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/index.js +1 -5
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/llm-factory.js +6 -12
- package/dist/utils/llm-factory.js.map +1 -1
- package/package.json +25 -23
- package/prompts/backpropagation.md +55 -0
- package/prompts/convergence-check.md +79 -0
- package/prompts/cross-schema-check.md +61 -0
- package/prompts/cross-schema-sanity-check.md +133 -0
- package/prompts/dependency-level-sanity-check.md +92 -0
- package/prompts/query-fix.md +141 -0
- package/prompts/query-planning.md +144 -0
- package/prompts/query-refinement.md +151 -0
- package/prompts/schema-level-sanity-check.md +114 -0
- package/prompts/schema-sanity-check.md +54 -0
- package/prompts/semantic-comparison.md +78 -0
- package/prompts/single-query-generation.md +155 -0
- package/prompts/table-analysis.md +139 -0
package/README.md
CHANGED
|
@@ -1,39 +1,71 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
# @memberjunction/db-auto-doc
|
|
2
|
+
|
|
3
|
+
AI-powered database documentation generator for SQL Server, MySQL, and PostgreSQL. Analyzes database structure using LLMs to generate intelligent descriptions, discovers missing relationships, generates reference SQL queries, and saves documentation as database metadata.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
```mermaid
|
|
8
|
+
graph TD
|
|
9
|
+
A["CLI / Programmatic API"] --> B["AnalysisOrchestrator"]
|
|
10
|
+
B --> C["Database Layer<br/>(Schema Introspection)"]
|
|
11
|
+
B --> D["Analysis Engine<br/>(LLM Processing)"]
|
|
12
|
+
B --> E["State Manager<br/>(Progress Tracking)"]
|
|
13
|
+
B --> F["Guardrails Manager<br/>(Resource Limits)"]
|
|
14
|
+
|
|
15
|
+
C --> G["SQL Server"]
|
|
16
|
+
C --> H["PostgreSQL"]
|
|
17
|
+
C --> I["MySQL"]
|
|
18
|
+
|
|
19
|
+
D --> J["Description Generator"]
|
|
20
|
+
D --> K["Relationship Discovery"]
|
|
21
|
+
D --> L["Sample Query Generator"]
|
|
22
|
+
|
|
23
|
+
J --> M["Output Generators"]
|
|
24
|
+
M --> N["SQL Extended Properties"]
|
|
25
|
+
M --> O["Markdown / HTML / CSV"]
|
|
26
|
+
M --> P["Mermaid ERD Diagrams"]
|
|
27
|
+
|
|
28
|
+
style A fill:#2d6a9f,stroke:#1a4971,color:#fff
|
|
29
|
+
style B fill:#7c5295,stroke:#563a6b,color:#fff
|
|
30
|
+
style C fill:#2d8659,stroke:#1a5c3a,color:#fff
|
|
31
|
+
style D fill:#7c5295,stroke:#563a6b,color:#fff
|
|
32
|
+
style E fill:#b8762f,stroke:#8a5722,color:#fff
|
|
33
|
+
style F fill:#b8762f,stroke:#8a5722,color:#fff
|
|
34
|
+
style M fill:#2d6a9f,stroke:#1a4971,color:#fff
|
|
35
|
+
```
|
|
4
36
|
|
|
5
37
|
## Features
|
|
6
38
|
|
|
7
39
|
### Core Capabilities
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
40
|
+
- **AI-Powered Analysis** -- Uses OpenAI, Anthropic, Google, Groq, and other LLM providers to generate intelligent descriptions
|
|
41
|
+
- **Iterative Refinement** -- Multi-pass analysis with backpropagation for accuracy
|
|
42
|
+
- **Topological Processing** -- Analyzes tables in dependency order for better context
|
|
43
|
+
- **Data-Driven** -- Leverages cardinality, statistics, and sample data for insights
|
|
44
|
+
- **Convergence Detection** -- Automatically knows when analysis is complete
|
|
45
|
+
- **State Tracking** -- Full audit trail of all iterations and reasoning
|
|
46
|
+
- **Standalone** -- Works with any database, no MemberJunction required
|
|
15
47
|
|
|
16
48
|
### Multi-Database Support
|
|
17
|
-
- **SQL Server**
|
|
18
|
-
- **PostgreSQL**
|
|
19
|
-
- **MySQL**
|
|
20
|
-
- **Unified Interface**
|
|
49
|
+
- **SQL Server** -- Full support with extended properties
|
|
50
|
+
- **PostgreSQL** -- Complete implementation with COMMENT syntax
|
|
51
|
+
- **MySQL** -- Full support with column/table comments
|
|
52
|
+
- **Unified Interface** -- Single configuration approach across all databases
|
|
21
53
|
|
|
22
54
|
### Advanced Features
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
55
|
+
- **Relationship Discovery** -- Automatically detect missing primary and foreign keys using statistical analysis and LLM validation
|
|
56
|
+
- **Sample Query Generation** -- Generate reference SQL queries for AI agents with alignment tracking
|
|
57
|
+
- **Granular Guardrails** -- Multi-level resource controls (run, phase, iteration limits)
|
|
58
|
+
- **Resume Capability** -- Pause and resume analysis from checkpoint state files
|
|
59
|
+
- **Programmatic API** -- Use as a library in your own applications
|
|
60
|
+
- **Extensible** -- Custom database drivers and analysis plugins
|
|
29
61
|
|
|
30
62
|
### Output Formats
|
|
31
|
-
- **SQL Scripts**
|
|
32
|
-
- **Markdown Documentation**
|
|
33
|
-
- **HTML Documentation**
|
|
34
|
-
- **CSV Exports**
|
|
35
|
-
- **Mermaid Diagrams**
|
|
36
|
-
- **Analysis Reports**
|
|
63
|
+
- **SQL Scripts** -- Database-specific metadata scripts (extended properties, comments)
|
|
64
|
+
- **Markdown Documentation** -- Human-readable docs with ERD diagrams
|
|
65
|
+
- **HTML Documentation** -- Interactive, searchable documentation with embedded CSS/JS
|
|
66
|
+
- **CSV Exports** -- Spreadsheet-ready table and column data
|
|
67
|
+
- **Mermaid Diagrams** -- Standalone ERD files (.mmd and .html)
|
|
68
|
+
- **Analysis Reports** -- Detailed metrics and quality assessments
|
|
37
69
|
|
|
38
70
|
## Installation
|
|
39
71
|
|
package/bin/run.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import 'dotenv/config';
|
|
3
|
+
import { LoadAIProviders } from '@memberjunction/ai-provider-bundle';
|
|
4
|
+
import { execute } from '@oclif/core';
|
|
5
5
|
|
|
6
6
|
// Load AI providers to prevent tree shaking
|
|
7
|
-
const { LoadAIProviders } = require('@memberjunction/ai-provider-bundle');
|
|
8
7
|
LoadAIProviders();
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
oclif.run().then(oclif.flush).catch(oclif.Errors.handle)
|
|
9
|
+
await execute({ dir: import.meta.url });
|
package/dist/api/DBAutoDocAPI.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* DBAutoDoc Programmatic API
|
|
4
3
|
*
|
|
@@ -31,37 +30,12 @@
|
|
|
31
30
|
* console.log(`Tokens used: ${result.summary.totalTokens}`);
|
|
32
31
|
* ```
|
|
33
32
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
Object.defineProperty(o, k2, desc);
|
|
41
|
-
}) : (function(o, m, k, k2) {
|
|
42
|
-
if (k2 === undefined) k2 = k;
|
|
43
|
-
o[k2] = m[k];
|
|
44
|
-
}));
|
|
45
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
46
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
47
|
-
}) : function(o, v) {
|
|
48
|
-
o["default"] = v;
|
|
49
|
-
});
|
|
50
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
51
|
-
if (mod && mod.__esModule) return mod;
|
|
52
|
-
var result = {};
|
|
53
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
54
|
-
__setModuleDefault(result, mod);
|
|
55
|
-
return result;
|
|
56
|
-
};
|
|
57
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
58
|
-
exports.DBAutoDocAPI = void 0;
|
|
59
|
-
const path = __importStar(require("path"));
|
|
60
|
-
const fs = __importStar(require("fs/promises"));
|
|
61
|
-
const AnalysisOrchestrator_js_1 = require("../core/AnalysisOrchestrator.js");
|
|
62
|
-
const StateManager_js_1 = require("../state/StateManager.js");
|
|
63
|
-
const SQLGenerator_js_1 = require("../generators/SQLGenerator.js");
|
|
64
|
-
const MarkdownGenerator_js_1 = require("../generators/MarkdownGenerator.js");
|
|
33
|
+
import * as path from 'path';
|
|
34
|
+
import * as fs from 'fs/promises';
|
|
35
|
+
import { AnalysisOrchestrator } from '../core/AnalysisOrchestrator.js';
|
|
36
|
+
import { StateManager } from '../state/StateManager.js';
|
|
37
|
+
import { SQLGenerator } from '../generators/SQLGenerator.js';
|
|
38
|
+
import { MarkdownGenerator } from '../generators/MarkdownGenerator.js';
|
|
65
39
|
/**
|
|
66
40
|
* DBAutoDocAPI - Main API class
|
|
67
41
|
*
|
|
@@ -70,7 +44,7 @@ const MarkdownGenerator_js_1 = require("../generators/MarkdownGenerator.js");
|
|
|
70
44
|
* - export() - Generate SQL and/or Markdown from analysis state
|
|
71
45
|
* - getStatus() - Check analysis progress and metrics
|
|
72
46
|
*/
|
|
73
|
-
class DBAutoDocAPI {
|
|
47
|
+
export class DBAutoDocAPI {
|
|
74
48
|
/**
|
|
75
49
|
* Run database analysis
|
|
76
50
|
*
|
|
@@ -100,7 +74,7 @@ class DBAutoDocAPI {
|
|
|
100
74
|
// Build full config
|
|
101
75
|
const fullConfig = this.buildFullConfig(config);
|
|
102
76
|
// Create orchestrator
|
|
103
|
-
const orchestrator = new
|
|
77
|
+
const orchestrator = new AnalysisOrchestrator({
|
|
104
78
|
config: fullConfig,
|
|
105
79
|
onProgress
|
|
106
80
|
});
|
|
@@ -170,7 +144,7 @@ class DBAutoDocAPI {
|
|
|
170
144
|
try {
|
|
171
145
|
const onProgress = config?.onProgress || (() => { });
|
|
172
146
|
// Load the state to get context
|
|
173
|
-
const stateManager = new
|
|
147
|
+
const stateManager = new StateManager(stateFile);
|
|
174
148
|
const state = await stateManager.load();
|
|
175
149
|
if (!state) {
|
|
176
150
|
return {
|
|
@@ -200,7 +174,7 @@ class DBAutoDocAPI {
|
|
|
200
174
|
// Create orchestrator with resume path
|
|
201
175
|
const outputDir = path.dirname(stateFile);
|
|
202
176
|
fullConfig.output.outputDir = outputDir;
|
|
203
|
-
const orchestrator = new
|
|
177
|
+
const orchestrator = new AnalysisOrchestrator({
|
|
204
178
|
config: fullConfig,
|
|
205
179
|
resumeFromState: stateFile,
|
|
206
180
|
onProgress
|
|
@@ -276,7 +250,7 @@ class DBAutoDocAPI {
|
|
|
276
250
|
async export(stateFile, options) {
|
|
277
251
|
try {
|
|
278
252
|
// Load state
|
|
279
|
-
const stateManager = new
|
|
253
|
+
const stateManager = new StateManager(stateFile);
|
|
280
254
|
const state = await stateManager.load();
|
|
281
255
|
if (!state) {
|
|
282
256
|
return {
|
|
@@ -293,7 +267,7 @@ class DBAutoDocAPI {
|
|
|
293
267
|
const result = { success: true };
|
|
294
268
|
// Generate SQL
|
|
295
269
|
if (generateSQL) {
|
|
296
|
-
const sqlGen = new
|
|
270
|
+
const sqlGen = new SQLGenerator();
|
|
297
271
|
const sql = sqlGen.generate(state, {
|
|
298
272
|
approvedOnly: options?.approvedOnly || false,
|
|
299
273
|
confidenceThreshold: options?.confidenceThreshold || 0
|
|
@@ -304,7 +278,7 @@ class DBAutoDocAPI {
|
|
|
304
278
|
}
|
|
305
279
|
// Generate Markdown
|
|
306
280
|
if (generateMarkdown) {
|
|
307
|
-
const mdGen = new
|
|
281
|
+
const mdGen = new MarkdownGenerator();
|
|
308
282
|
const markdown = mdGen.generate(state);
|
|
309
283
|
const mdPath = path.join(outputDir, 'summary.md');
|
|
310
284
|
await fs.writeFile(mdPath, markdown, 'utf-8');
|
|
@@ -342,7 +316,7 @@ class DBAutoDocAPI {
|
|
|
342
316
|
*/
|
|
343
317
|
async getStatus(stateFile) {
|
|
344
318
|
try {
|
|
345
|
-
const stateManager = new
|
|
319
|
+
const stateManager = new StateManager(stateFile);
|
|
346
320
|
const state = await stateManager.load();
|
|
347
321
|
if (!state) {
|
|
348
322
|
return { exists: false };
|
|
@@ -526,5 +500,4 @@ class DBAutoDocAPI {
|
|
|
526
500
|
};
|
|
527
501
|
}
|
|
528
502
|
}
|
|
529
|
-
exports.DBAutoDocAPI = DBAutoDocAPI;
|
|
530
503
|
//# sourceMappingURL=DBAutoDocAPI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DBAutoDocAPI.js","sourceRoot":"","sources":["../../src/api/DBAutoDocAPI.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DBAutoDocAPI.js","sourceRoot":"","sources":["../../src/api/DBAutoDocAPI.ts"],"names":[],"mappings":"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"}
|
package/dist/api/index.js
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* DBAutoDoc Programmatic API
|
|
4
3
|
* Main entry point for library usage
|
|
5
4
|
*/
|
|
6
|
-
|
|
7
|
-
exports.DBAutoDocAPI = void 0;
|
|
8
|
-
var DBAutoDocAPI_js_1 = require("./DBAutoDocAPI.js");
|
|
9
|
-
Object.defineProperty(exports, "DBAutoDocAPI", { enumerable: true, get: function () { return DBAutoDocAPI_js_1.DBAutoDocAPI; } });
|
|
5
|
+
export { DBAutoDocAPI } from './DBAutoDocAPI.js';
|
|
10
6
|
//# sourceMappingURL=index.js.map
|
package/dist/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -6,7 +6,7 @@ export default class Analyze extends Command {
|
|
|
6
6
|
static description: string;
|
|
7
7
|
static examples: string[];
|
|
8
8
|
static flags: {
|
|
9
|
-
resume: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string
|
|
9
|
+
resume: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
10
10
|
config: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
11
11
|
};
|
|
12
12
|
static args: {};
|
package/dist/commands/analyze.js
CHANGED
|
@@ -1,27 +1,41 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Analyze command - Thin CLI wrapper around AnalysisOrchestrator
|
|
4
3
|
*/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
4
|
+
import { Command, Flags } from '@oclif/core';
|
|
5
|
+
import ora from 'ora';
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { ConfigLoader } from '../utils/config-loader.js';
|
|
8
|
+
import { AnalysisOrchestrator } from '../core/AnalysisOrchestrator.js';
|
|
9
|
+
export default class Analyze extends Command {
|
|
10
|
+
static { this.description = 'Analyze database and generate documentation'; }
|
|
11
|
+
static { this.examples = [
|
|
12
|
+
'$ db-auto-doc analyze',
|
|
13
|
+
'$ db-auto-doc analyze --resume ./output/run-6/state.json',
|
|
14
|
+
'$ db-auto-doc analyze --config ./my-config.json'
|
|
15
|
+
]; }
|
|
16
|
+
static { this.flags = {
|
|
17
|
+
resume: Flags.string({
|
|
18
|
+
char: 'r',
|
|
19
|
+
description: 'Resume from an existing state file',
|
|
20
|
+
required: false
|
|
21
|
+
}),
|
|
22
|
+
config: Flags.string({
|
|
23
|
+
char: 'c',
|
|
24
|
+
description: 'Path to config file',
|
|
25
|
+
default: './config.json'
|
|
26
|
+
})
|
|
27
|
+
}; }
|
|
28
|
+
static { this.args = {}; }
|
|
15
29
|
async run() {
|
|
16
30
|
const { flags } = await this.parse(Analyze);
|
|
17
|
-
const spinner = (
|
|
31
|
+
const spinner = ora();
|
|
18
32
|
try {
|
|
19
33
|
// Load configuration
|
|
20
34
|
spinner.start('Loading configuration');
|
|
21
|
-
const config = await
|
|
35
|
+
const config = await ConfigLoader.load(flags.config);
|
|
22
36
|
spinner.succeed('Configuration loaded');
|
|
23
37
|
// Create orchestrator
|
|
24
|
-
const orchestrator = new
|
|
38
|
+
const orchestrator = new AnalysisOrchestrator({
|
|
25
39
|
config,
|
|
26
40
|
resumeFromState: flags.resume,
|
|
27
41
|
onProgress: (message, data) => {
|
|
@@ -38,7 +52,7 @@ class Analyze extends core_1.Command {
|
|
|
38
52
|
const result = await orchestrator.execute();
|
|
39
53
|
if (result.success) {
|
|
40
54
|
spinner.succeed('Analysis complete!');
|
|
41
|
-
this.log(
|
|
55
|
+
this.log(chalk.green('\n✓ Analysis complete!'));
|
|
42
56
|
this.log(` Iterations: ${result.run.iterationsPerformed}`);
|
|
43
57
|
this.log(` Tokens used: ${result.run.totalTokensUsed?.toLocaleString() || 0}`);
|
|
44
58
|
this.log(` Estimated cost: $${result.run.estimatedCost?.toFixed(2) || '0.00'}`);
|
|
@@ -48,7 +62,7 @@ class Analyze extends core_1.Command {
|
|
|
48
62
|
this.log(` - extended-props.sql`);
|
|
49
63
|
this.log(` - summary.md`);
|
|
50
64
|
if (flags.resume) {
|
|
51
|
-
this.log(
|
|
65
|
+
this.log(chalk.blue(`\n Resumed from: ${flags.resume}`));
|
|
52
66
|
}
|
|
53
67
|
}
|
|
54
68
|
else {
|
|
@@ -62,24 +76,4 @@ class Analyze extends core_1.Command {
|
|
|
62
76
|
}
|
|
63
77
|
}
|
|
64
78
|
}
|
|
65
|
-
Analyze.description = 'Analyze database and generate documentation';
|
|
66
|
-
Analyze.examples = [
|
|
67
|
-
'$ db-auto-doc analyze',
|
|
68
|
-
'$ db-auto-doc analyze --resume ./output/run-6/state.json',
|
|
69
|
-
'$ db-auto-doc analyze --config ./my-config.json'
|
|
70
|
-
];
|
|
71
|
-
Analyze.flags = {
|
|
72
|
-
resume: core_1.Flags.string({
|
|
73
|
-
char: 'r',
|
|
74
|
-
description: 'Resume from an existing state file',
|
|
75
|
-
required: false
|
|
76
|
-
}),
|
|
77
|
-
config: core_1.Flags.string({
|
|
78
|
-
char: 'c',
|
|
79
|
-
description: 'Path to config file',
|
|
80
|
-
default: './config.json'
|
|
81
|
-
})
|
|
82
|
-
};
|
|
83
|
-
Analyze.args = {};
|
|
84
|
-
exports.default = Analyze;
|
|
85
79
|
//# sourceMappingURL=analyze.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export default class ExportSampleQueries extends Command {
|
|
|
10
10
|
output: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
11
11
|
'separate-sql-files': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
12
12
|
'sql-dir': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
13
|
-
category: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string
|
|
13
|
+
category: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
14
14
|
status: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
15
15
|
'min-confidence': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
16
16
|
'validated-only': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|