@oalacea/daemon 0.6.3 → 0.7.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 +268 -58
- package/bin/Dockerfile +158 -16
- package/dist/cli/cli.d.ts.map +1 -1
- package/dist/cli/cli.js +22 -2
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/commands/command.types.d.ts +216 -0
- package/dist/cli/commands/command.types.d.ts.map +1 -0
- package/dist/cli/commands/command.types.js +64 -0
- package/dist/cli/commands/command.types.js.map +1 -0
- package/dist/cli/commands/history.command.d.ts +91 -0
- package/dist/cli/commands/history.command.d.ts.map +1 -0
- package/dist/cli/commands/history.command.js +336 -0
- package/dist/cli/commands/history.command.js.map +1 -0
- package/dist/cli/commands/index.d.ts +14 -3
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +7 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.command.d.ts +12 -14
- package/dist/cli/commands/init.command.d.ts.map +1 -1
- package/dist/cli/commands/init.command.js +278 -144
- package/dist/cli/commands/init.command.js.map +1 -1
- package/dist/cli/commands/optimize.command.d.ts +110 -0
- package/dist/cli/commands/optimize.command.d.ts.map +1 -0
- package/dist/cli/commands/optimize.command.js +497 -0
- package/dist/cli/commands/optimize.command.js.map +1 -0
- package/dist/cli/commands/report.command.d.ts +110 -0
- package/dist/cli/commands/report.command.d.ts.map +1 -0
- package/dist/cli/commands/report.command.js +532 -0
- package/dist/cli/commands/report.command.js.map +1 -0
- package/dist/cli/commands/review.command.d.ts +110 -0
- package/dist/cli/commands/review.command.d.ts.map +1 -0
- package/dist/cli/commands/review.command.js +520 -0
- package/dist/cli/commands/review.command.js.map +1 -0
- package/dist/cli/commands/score.command.d.ts +47 -0
- package/dist/cli/commands/score.command.d.ts.map +1 -0
- package/dist/cli/commands/score.command.js +261 -0
- package/dist/cli/commands/score.command.js.map +1 -0
- package/dist/cli/utils/index.d.ts +10 -0
- package/dist/cli/utils/index.d.ts.map +1 -0
- package/dist/cli/utils/index.js +10 -0
- package/dist/cli/utils/index.js.map +1 -0
- package/dist/cli/utils/output.d.ts +192 -0
- package/dist/cli/utils/output.d.ts.map +1 -0
- package/dist/cli/utils/output.js +411 -0
- package/dist/cli/utils/output.js.map +1 -0
- package/dist/cli/utils/progress.d.ts +204 -0
- package/dist/cli/utils/progress.d.ts.map +1 -0
- package/dist/cli/utils/progress.js +396 -0
- package/dist/cli/utils/progress.js.map +1 -0
- package/dist/core/types/index.d.ts +1 -0
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/core/types/project.types.d.ts +3 -3
- package/dist/core/types/project.types.d.ts.map +1 -1
- package/dist/core/types/scoring.types.d.ts +301 -0
- package/dist/core/types/scoring.types.d.ts.map +1 -0
- package/dist/core/types/scoring.types.js +8 -0
- package/dist/core/types/scoring.types.js.map +1 -0
- package/dist/services/detection/framework-detector.d.ts.map +1 -1
- package/dist/services/detection/framework-detector.js +74 -5
- package/dist/services/detection/framework-detector.js.map +1 -1
- package/dist/services/index.d.ts +12 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +14 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/optimization/detectors/bug-detector.d.ts +82 -0
- package/dist/services/optimization/detectors/bug-detector.d.ts.map +1 -0
- package/dist/services/optimization/detectors/bug-detector.js +443 -0
- package/dist/services/optimization/detectors/bug-detector.js.map +1 -0
- package/dist/services/optimization/detectors/code-smell-detector.d.ts +108 -0
- package/dist/services/optimization/detectors/code-smell-detector.d.ts.map +1 -0
- package/dist/services/optimization/detectors/code-smell-detector.js +569 -0
- package/dist/services/optimization/detectors/code-smell-detector.js.map +1 -0
- package/dist/services/optimization/detectors/index.d.ts +7 -0
- package/dist/services/optimization/detectors/index.d.ts.map +1 -0
- package/dist/services/optimization/detectors/index.js +7 -0
- package/dist/services/optimization/detectors/index.js.map +1 -0
- package/dist/services/optimization/detectors/perf-detector.d.ts +80 -0
- package/dist/services/optimization/detectors/perf-detector.d.ts.map +1 -0
- package/dist/services/optimization/detectors/perf-detector.js +451 -0
- package/dist/services/optimization/detectors/perf-detector.js.map +1 -0
- package/dist/services/optimization/index.d.ts +61 -0
- package/dist/services/optimization/index.d.ts.map +1 -0
- package/dist/services/optimization/index.js +69 -0
- package/dist/services/optimization/index.js.map +1 -0
- package/dist/services/optimization/optimization.service.d.ts +65 -0
- package/dist/services/optimization/optimization.service.d.ts.map +1 -0
- package/dist/services/optimization/optimization.service.js +511 -0
- package/dist/services/optimization/optimization.service.js.map +1 -0
- package/dist/services/optimization/optimization.types.d.ts +343 -0
- package/dist/services/optimization/optimization.types.d.ts.map +1 -0
- package/dist/services/optimization/optimization.types.js +8 -0
- package/dist/services/optimization/optimization.types.js.map +1 -0
- package/dist/services/optimization/optimizers/code-optimizer.d.ts +87 -0
- package/dist/services/optimization/optimizers/code-optimizer.d.ts.map +1 -0
- package/dist/services/optimization/optimizers/code-optimizer.js +436 -0
- package/dist/services/optimization/optimizers/code-optimizer.js.map +1 -0
- package/dist/services/optimization/optimizers/index.d.ts +7 -0
- package/dist/services/optimization/optimizers/index.d.ts.map +1 -0
- package/dist/services/optimization/optimizers/index.js +7 -0
- package/dist/services/optimization/optimizers/index.js.map +1 -0
- package/dist/services/optimization/optimizers/perf-optimizer.d.ts +64 -0
- package/dist/services/optimization/optimizers/perf-optimizer.d.ts.map +1 -0
- package/dist/services/optimization/optimizers/perf-optimizer.js +330 -0
- package/dist/services/optimization/optimizers/perf-optimizer.js.map +1 -0
- package/dist/services/optimization/optimizers/refact-optimizer.d.ts +82 -0
- package/dist/services/optimization/optimizers/refact-optimizer.d.ts.map +1 -0
- package/dist/services/optimization/optimizers/refact-optimizer.js +354 -0
- package/dist/services/optimization/optimizers/refact-optimizer.js.map +1 -0
- package/dist/services/optimization/patterns/anti-patterns.d.ts +31 -0
- package/dist/services/optimization/patterns/anti-patterns.d.ts.map +1 -0
- package/dist/services/optimization/patterns/anti-patterns.js +501 -0
- package/dist/services/optimization/patterns/anti-patterns.js.map +1 -0
- package/dist/services/optimization/patterns/index.d.ts +5 -0
- package/dist/services/optimization/patterns/index.d.ts.map +1 -0
- package/dist/services/optimization/patterns/index.js +5 -0
- package/dist/services/optimization/patterns/index.js.map +1 -0
- package/dist/services/reporting/export/chart.exporter.d.ts +59 -0
- package/dist/services/reporting/export/chart.exporter.d.ts.map +1 -0
- package/dist/services/reporting/export/chart.exporter.js +350 -0
- package/dist/services/reporting/export/chart.exporter.js.map +1 -0
- package/dist/services/reporting/export/index.d.ts +9 -0
- package/dist/services/reporting/export/index.d.ts.map +1 -0
- package/dist/services/reporting/export/index.js +10 -0
- package/dist/services/reporting/export/index.js.map +1 -0
- package/dist/services/reporting/export/pdf.exporter.d.ts +133 -0
- package/dist/services/reporting/export/pdf.exporter.d.ts.map +1 -0
- package/dist/services/reporting/export/pdf.exporter.js +270 -0
- package/dist/services/reporting/export/pdf.exporter.js.map +1 -0
- package/dist/services/reporting/history.service.d.ts +93 -0
- package/dist/services/reporting/history.service.d.ts.map +1 -0
- package/dist/services/reporting/history.service.js +285 -0
- package/dist/services/reporting/history.service.js.map +1 -0
- package/dist/services/reporting/index.d.ts +15 -0
- package/dist/services/reporting/index.d.ts.map +1 -0
- package/dist/services/reporting/index.js +16 -0
- package/dist/services/reporting/index.js.map +1 -0
- package/dist/services/reporting/report.service.d.ts +102 -0
- package/dist/services/reporting/report.service.d.ts.map +1 -0
- package/dist/services/reporting/report.service.js +240 -0
- package/dist/services/reporting/report.service.js.map +1 -0
- package/dist/services/reporting/reporting.types.d.ts +329 -0
- package/dist/services/reporting/reporting.types.d.ts.map +1 -0
- package/dist/services/reporting/reporting.types.js +8 -0
- package/dist/services/reporting/reporting.types.js.map +1 -0
- package/dist/services/reporting/templates/html.template.d.ts +81 -0
- package/dist/services/reporting/templates/html.template.d.ts.map +1 -0
- package/dist/services/reporting/templates/html.template.js +741 -0
- package/dist/services/reporting/templates/html.template.js.map +1 -0
- package/dist/services/reporting/templates/json.template.d.ts +85 -0
- package/dist/services/reporting/templates/json.template.d.ts.map +1 -0
- package/dist/services/reporting/templates/json.template.js +308 -0
- package/dist/services/reporting/templates/json.template.js.map +1 -0
- package/dist/services/reporting/templates/markdown.template.d.ts +69 -0
- package/dist/services/reporting/templates/markdown.template.d.ts.map +1 -0
- package/dist/services/reporting/templates/markdown.template.js +311 -0
- package/dist/services/reporting/templates/markdown.template.js.map +1 -0
- package/dist/services/reporting/trend-analyzer.d.ts +73 -0
- package/dist/services/reporting/trend-analyzer.d.ts.map +1 -0
- package/dist/services/reporting/trend-analyzer.js +291 -0
- package/dist/services/reporting/trend-analyzer.js.map +1 -0
- package/dist/services/review/analyzers/dependency-analyzer.d.ts +87 -0
- package/dist/services/review/analyzers/dependency-analyzer.d.ts.map +1 -0
- package/dist/services/review/analyzers/dependency-analyzer.js +458 -0
- package/dist/services/review/analyzers/dependency-analyzer.js.map +1 -0
- package/dist/services/review/analyzers/index.d.ts +13 -0
- package/dist/services/review/analyzers/index.d.ts.map +1 -0
- package/dist/services/review/analyzers/index.js +13 -0
- package/dist/services/review/analyzers/index.js.map +1 -0
- package/dist/services/review/analyzers/nestjs-analyzer.d.ts +210 -0
- package/dist/services/review/analyzers/nestjs-analyzer.d.ts.map +1 -0
- package/dist/services/review/analyzers/nestjs-analyzer.js +571 -0
- package/dist/services/review/analyzers/nestjs-analyzer.js.map +1 -0
- package/dist/services/review/analyzers/performance-analyzer.d.ts +91 -0
- package/dist/services/review/analyzers/performance-analyzer.d.ts.map +1 -0
- package/dist/services/review/analyzers/performance-analyzer.js +589 -0
- package/dist/services/review/analyzers/performance-analyzer.js.map +1 -0
- package/dist/services/review/analyzers/security-analyzer.d.ts +96 -0
- package/dist/services/review/analyzers/security-analyzer.d.ts.map +1 -0
- package/dist/services/review/analyzers/security-analyzer.js +512 -0
- package/dist/services/review/analyzers/security-analyzer.js.map +1 -0
- package/dist/services/review/analyzers/static-analyzer.d.ts +90 -0
- package/dist/services/review/analyzers/static-analyzer.d.ts.map +1 -0
- package/dist/services/review/analyzers/static-analyzer.js +423 -0
- package/dist/services/review/analyzers/static-analyzer.js.map +1 -0
- package/dist/services/review/fixers/auto-fixer.d.ts +94 -0
- package/dist/services/review/fixers/auto-fixer.d.ts.map +1 -0
- package/dist/services/review/fixers/auto-fixer.js +404 -0
- package/dist/services/review/fixers/auto-fixer.js.map +1 -0
- package/dist/services/review/fixers/index.d.ts +11 -0
- package/dist/services/review/fixers/index.d.ts.map +1 -0
- package/dist/services/review/fixers/index.js +11 -0
- package/dist/services/review/fixers/index.js.map +1 -0
- package/dist/services/review/fixers/refactor-suggester.d.ts +100 -0
- package/dist/services/review/fixers/refactor-suggester.d.ts.map +1 -0
- package/dist/services/review/fixers/refactor-suggester.js +555 -0
- package/dist/services/review/fixers/refactor-suggester.js.map +1 -0
- package/dist/services/review/fixers/test-generator.d.ts +99 -0
- package/dist/services/review/fixers/test-generator.d.ts.map +1 -0
- package/dist/services/review/fixers/test-generator.js +458 -0
- package/dist/services/review/fixers/test-generator.js.map +1 -0
- package/dist/services/review/index.d.ts +14 -0
- package/dist/services/review/index.d.ts.map +1 -0
- package/dist/services/review/index.js +14 -0
- package/dist/services/review/index.js.map +1 -0
- package/dist/services/review/reporters/fix-reporter.d.ts +67 -0
- package/dist/services/review/reporters/fix-reporter.d.ts.map +1 -0
- package/dist/services/review/reporters/fix-reporter.js +437 -0
- package/dist/services/review/reporters/fix-reporter.js.map +1 -0
- package/dist/services/review/reporters/index.d.ts +10 -0
- package/dist/services/review/reporters/index.d.ts.map +1 -0
- package/dist/services/review/reporters/index.js +10 -0
- package/dist/services/review/reporters/index.js.map +1 -0
- package/dist/services/review/reporters/score-reporter.d.ts +84 -0
- package/dist/services/review/reporters/score-reporter.d.ts.map +1 -0
- package/dist/services/review/reporters/score-reporter.js +560 -0
- package/dist/services/review/reporters/score-reporter.js.map +1 -0
- package/dist/services/review/review.service.d.ts +129 -0
- package/dist/services/review/review.service.d.ts.map +1 -0
- package/dist/services/review/review.service.js +396 -0
- package/dist/services/review/review.service.js.map +1 -0
- package/dist/services/review/review.types.d.ts +443 -0
- package/dist/services/review/review.types.d.ts.map +1 -0
- package/dist/services/review/review.types.js +11 -0
- package/dist/services/review/review.types.js.map +1 -0
- package/dist/services/scoring/dimensions/accessibility.analyzer.d.ts +53 -0
- package/dist/services/scoring/dimensions/accessibility.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/accessibility.analyzer.js +260 -0
- package/dist/services/scoring/dimensions/accessibility.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/backend-logic.analyzer.d.ts +138 -0
- package/dist/services/scoring/dimensions/backend-logic.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/backend-logic.analyzer.js +713 -0
- package/dist/services/scoring/dimensions/backend-logic.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/business-logic.analyzer.d.ts +142 -0
- package/dist/services/scoring/dimensions/business-logic.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/business-logic.analyzer.js +747 -0
- package/dist/services/scoring/dimensions/business-logic.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/code-quality.analyzer.d.ts +142 -0
- package/dist/services/scoring/dimensions/code-quality.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/code-quality.analyzer.js +685 -0
- package/dist/services/scoring/dimensions/code-quality.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/index.d.ts +18 -0
- package/dist/services/scoring/dimensions/index.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/index.js +27 -0
- package/dist/services/scoring/dimensions/index.js.map +1 -0
- package/dist/services/scoring/dimensions/performance.analyzer.d.ts +125 -0
- package/dist/services/scoring/dimensions/performance.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/performance.analyzer.js +615 -0
- package/dist/services/scoring/dimensions/performance.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/security.analyzer.d.ts +53 -0
- package/dist/services/scoring/dimensions/security.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/security.analyzer.js +327 -0
- package/dist/services/scoring/dimensions/security.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/seo.analyzer.d.ts +77 -0
- package/dist/services/scoring/dimensions/seo.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/seo.analyzer.js +502 -0
- package/dist/services/scoring/dimensions/seo.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/test-coverage.analyzer.d.ts +106 -0
- package/dist/services/scoring/dimensions/test-coverage.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/test-coverage.analyzer.js +496 -0
- package/dist/services/scoring/dimensions/test-coverage.analyzer.js.map +1 -0
- package/dist/services/scoring/dimensions/ui-ux.analyzer.d.ts +126 -0
- package/dist/services/scoring/dimensions/ui-ux.analyzer.d.ts.map +1 -0
- package/dist/services/scoring/dimensions/ui-ux.analyzer.js +665 -0
- package/dist/services/scoring/dimensions/ui-ux.analyzer.js.map +1 -0
- package/dist/services/scoring/index.d.ts +10 -0
- package/dist/services/scoring/index.d.ts.map +1 -0
- package/dist/services/scoring/index.js +10 -0
- package/dist/services/scoring/index.js.map +1 -0
- package/dist/services/scoring/scoring-service.d.ts +222 -0
- package/dist/services/scoring/scoring-service.d.ts.map +1 -0
- package/dist/services/scoring/scoring-service.js +636 -0
- package/dist/services/scoring/scoring-service.js.map +1 -0
- package/package.json +11 -3
- package/templates/README.md +183 -0
- package/templates/nestjs/controller.spec.ts +203 -0
- package/templates/nestjs/e2e/api.e2e-spec.ts +451 -0
- package/templates/nestjs/e2e/auth.e2e-spec.ts +533 -0
- package/templates/nestjs/fixtures/test-module.ts +311 -0
- package/templates/nestjs/guard.spec.ts +314 -0
- package/templates/nestjs/interceptor.spec.ts +458 -0
- package/templates/nestjs/module.spec.ts +173 -0
- package/templates/nestjs/pipe.spec.ts +474 -0
- package/templates/nestjs/service.spec.ts +296 -0
- package/templates/rust/Cargo.toml +72 -0
- package/templates/rust/actix-controller.test.rs +114 -0
- package/templates/rust/axum-handler.test.rs +117 -0
- package/templates/rust/integration.test.rs +63 -0
- package/templates/rust/rocket-route.test.rs +106 -0
- package/templates/rust/unit.test.rs +38 -0
package/dist/cli/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command Types
|
|
3
|
+
*
|
|
4
|
+
* Shared types for CLI commands.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/commands/command.types
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Dimension type for scoring and analysis
|
|
10
|
+
*/
|
|
11
|
+
export type Dimension = 'test' | 'security' | 'performance' | 'reliability' | 'maintainability' | 'coverage';
|
|
12
|
+
/**
|
|
13
|
+
* Output format for commands
|
|
14
|
+
*/
|
|
15
|
+
export type OutputFormat = 'text' | 'json' | 'html' | 'markdown' | 'junit';
|
|
16
|
+
/**
|
|
17
|
+
* Base command options
|
|
18
|
+
*/
|
|
19
|
+
export interface BaseCommandOptions {
|
|
20
|
+
/** Verbose output */
|
|
21
|
+
verbose?: boolean;
|
|
22
|
+
/** Silent mode (minimal output) */
|
|
23
|
+
silent?: boolean;
|
|
24
|
+
/** JSON output */
|
|
25
|
+
json?: boolean;
|
|
26
|
+
/** Output format */
|
|
27
|
+
format?: OutputFormat;
|
|
28
|
+
/** Project directory (defaults to cwd) */
|
|
29
|
+
projectDir?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Score command options
|
|
33
|
+
*/
|
|
34
|
+
export interface ScoreOptions extends BaseCommandOptions {
|
|
35
|
+
/** Specific dimension(s) to show */
|
|
36
|
+
dim?: Dimension | Dimension[];
|
|
37
|
+
/** Show trend/history */
|
|
38
|
+
trend?: boolean;
|
|
39
|
+
/** Number of historical points to show */
|
|
40
|
+
historyPoints?: number;
|
|
41
|
+
/** Compare with previous score */
|
|
42
|
+
compare?: boolean;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Review command options
|
|
46
|
+
*/
|
|
47
|
+
export interface ReviewOptions extends BaseCommandOptions {
|
|
48
|
+
/** Apply auto-fixes for issues found */
|
|
49
|
+
fix?: boolean;
|
|
50
|
+
/** Non-interactive mode (auto-confirm) */
|
|
51
|
+
auto?: boolean;
|
|
52
|
+
/** Report format */
|
|
53
|
+
output?: OutputFormat;
|
|
54
|
+
/** Specific dimension(s) to review */
|
|
55
|
+
dim?: Dimension | Dimension[];
|
|
56
|
+
/** Severity threshold */
|
|
57
|
+
severity?: 'low' | 'medium' | 'high' | 'critical';
|
|
58
|
+
/** Output file path */
|
|
59
|
+
outputFile?: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Optimize command options
|
|
63
|
+
*/
|
|
64
|
+
export interface OptimizeOptions extends BaseCommandOptions {
|
|
65
|
+
/** Performance optimizations only */
|
|
66
|
+
perf?: boolean;
|
|
67
|
+
/** Bug fixes only */
|
|
68
|
+
bugs?: boolean;
|
|
69
|
+
/** Security fixes only */
|
|
70
|
+
security?: boolean;
|
|
71
|
+
/** Apply optimizations (dry-run if false) */
|
|
72
|
+
apply?: boolean;
|
|
73
|
+
/** Show what would be done without applying */
|
|
74
|
+
dryRun?: boolean;
|
|
75
|
+
/** Maximum number of optimizations to apply */
|
|
76
|
+
maxChanges?: number;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Command execution result
|
|
80
|
+
*/
|
|
81
|
+
export interface CommandResult {
|
|
82
|
+
/** Exit code (0 = success) */
|
|
83
|
+
exitCode: number;
|
|
84
|
+
/** Result message */
|
|
85
|
+
message?: string;
|
|
86
|
+
/** Additional data */
|
|
87
|
+
data?: unknown;
|
|
88
|
+
/** Error if any */
|
|
89
|
+
error?: Error;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Progress callback for long-running operations
|
|
93
|
+
*/
|
|
94
|
+
export interface ProgressCallbacks {
|
|
95
|
+
/** Called when operation starts */
|
|
96
|
+
onStart?: (message: string) => void;
|
|
97
|
+
/** Called with progress update (0-100) */
|
|
98
|
+
onProgress?: (percent: number, message?: string) => void;
|
|
99
|
+
/** Called when operation completes */
|
|
100
|
+
onComplete?: (message: string) => void;
|
|
101
|
+
/** Called when operation fails */
|
|
102
|
+
onError?: (error: Error) => void;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Score breakdown by dimension
|
|
106
|
+
*/
|
|
107
|
+
export interface ScoreBreakdown {
|
|
108
|
+
/** Dimension name */
|
|
109
|
+
dimension: Dimension;
|
|
110
|
+
/** Score (0-100) */
|
|
111
|
+
score: number;
|
|
112
|
+
/** Weight in overall score */
|
|
113
|
+
weight: number;
|
|
114
|
+
/** Status */
|
|
115
|
+
status: 'excellent' | 'good' | 'fair' | 'poor' | 'critical';
|
|
116
|
+
/** Issues found */
|
|
117
|
+
issues: number;
|
|
118
|
+
/** Recommendations */
|
|
119
|
+
recommendations: number;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Trend data point
|
|
123
|
+
*/
|
|
124
|
+
export interface TrendDataPoint {
|
|
125
|
+
/** Timestamp */
|
|
126
|
+
timestamp: Date;
|
|
127
|
+
/** Overall score */
|
|
128
|
+
score: number;
|
|
129
|
+
/** Breakdown by dimension */
|
|
130
|
+
breakdown: Record<string, number>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Dimension parser helper
|
|
134
|
+
*/
|
|
135
|
+
export declare class DimensionParser {
|
|
136
|
+
private static readonly ALL_DIMENSIONS;
|
|
137
|
+
private static readonly VALID_DIMENSIONS;
|
|
138
|
+
/**
|
|
139
|
+
* Parse dimension argument(s) into array
|
|
140
|
+
*/
|
|
141
|
+
static parse(dimInput?: string | string[]): Dimension[];
|
|
142
|
+
/**
|
|
143
|
+
* Validate a dimension string
|
|
144
|
+
*/
|
|
145
|
+
static validate(dim: string): Dimension;
|
|
146
|
+
/**
|
|
147
|
+
* Get all available dimensions
|
|
148
|
+
*/
|
|
149
|
+
static getAll(): Dimension[];
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Report command options
|
|
153
|
+
*/
|
|
154
|
+
export interface ReportOptions extends BaseCommandOptions {
|
|
155
|
+
/** Report format */
|
|
156
|
+
format?: 'html' | 'markdown' | 'json' | 'junit' | 'text';
|
|
157
|
+
/** Output file path */
|
|
158
|
+
output?: string;
|
|
159
|
+
/** Include trend data */
|
|
160
|
+
includeTrend?: boolean;
|
|
161
|
+
/** Include charts in HTML */
|
|
162
|
+
includeCharts?: boolean;
|
|
163
|
+
/** Theme for HTML report */
|
|
164
|
+
theme?: 'light' | 'dark' | 'auto';
|
|
165
|
+
/** Open report after generation */
|
|
166
|
+
open?: boolean;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* History command options
|
|
170
|
+
*/
|
|
171
|
+
export interface HistoryOptions extends BaseCommandOptions {
|
|
172
|
+
/** Maximum number of entries to show */
|
|
173
|
+
limit?: number;
|
|
174
|
+
/** Clear all history */
|
|
175
|
+
clear?: boolean;
|
|
176
|
+
/** Prune old entries */
|
|
177
|
+
prune?: boolean;
|
|
178
|
+
/** Compare with previous entry */
|
|
179
|
+
compare?: boolean;
|
|
180
|
+
/** Focus on specific dimension */
|
|
181
|
+
dimension?: string;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Init command options
|
|
185
|
+
*/
|
|
186
|
+
export interface InitOptions extends BaseCommandOptions {
|
|
187
|
+
/** Force overwrite existing files */
|
|
188
|
+
force?: boolean;
|
|
189
|
+
/** Skip Dockerfile creation */
|
|
190
|
+
skipDocker?: boolean;
|
|
191
|
+
/** Custom test directory */
|
|
192
|
+
testDir?: string;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Detect command options
|
|
196
|
+
*/
|
|
197
|
+
export interface DetectOptions extends BaseCommandOptions {
|
|
198
|
+
/** Show detailed output */
|
|
199
|
+
detailed?: boolean;
|
|
200
|
+
/** JSON output */
|
|
201
|
+
json?: boolean;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Test command options
|
|
205
|
+
*/
|
|
206
|
+
export interface TestOptions extends BaseCommandOptions {
|
|
207
|
+
/** Run with coverage */
|
|
208
|
+
coverage?: boolean;
|
|
209
|
+
/** Watch mode */
|
|
210
|
+
watch?: boolean;
|
|
211
|
+
/** Specific test file/pattern */
|
|
212
|
+
pattern?: string;
|
|
213
|
+
/** Test runner to use */
|
|
214
|
+
runner?: 'vitest' | 'jest' | 'mocha' | 'pytest';
|
|
215
|
+
}
|
|
216
|
+
//# sourceMappingURL=command.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.types.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/command.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command Types
|
|
3
|
+
*
|
|
4
|
+
* Shared types for CLI commands.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/commands/command.types
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Dimension parser helper
|
|
10
|
+
*/
|
|
11
|
+
export class DimensionParser {
|
|
12
|
+
static ALL_DIMENSIONS = [
|
|
13
|
+
'test',
|
|
14
|
+
'security',
|
|
15
|
+
'performance',
|
|
16
|
+
'reliability',
|
|
17
|
+
'maintainability',
|
|
18
|
+
'coverage',
|
|
19
|
+
];
|
|
20
|
+
// Explicit string array for 'all' validation
|
|
21
|
+
static VALID_DIMENSIONS = [
|
|
22
|
+
'test',
|
|
23
|
+
'security',
|
|
24
|
+
'performance',
|
|
25
|
+
'reliability',
|
|
26
|
+
'maintainability',
|
|
27
|
+
'coverage',
|
|
28
|
+
'all',
|
|
29
|
+
];
|
|
30
|
+
/**
|
|
31
|
+
* Parse dimension argument(s) into array
|
|
32
|
+
*/
|
|
33
|
+
static parse(dimInput) {
|
|
34
|
+
if (!dimInput) {
|
|
35
|
+
return [...this.ALL_DIMENSIONS];
|
|
36
|
+
}
|
|
37
|
+
if (typeof dimInput === 'string') {
|
|
38
|
+
if (dimInput === 'all') {
|
|
39
|
+
return [...this.ALL_DIMENSIONS];
|
|
40
|
+
}
|
|
41
|
+
return dimInput.split(',').map((d) => this.validate(d.trim()));
|
|
42
|
+
}
|
|
43
|
+
return dimInput.map((d) => (typeof d === 'string' ? this.validate(d) : d));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Validate a dimension string
|
|
47
|
+
*/
|
|
48
|
+
static validate(dim) {
|
|
49
|
+
if (this.VALID_DIMENSIONS.includes(dim)) {
|
|
50
|
+
if (dim === 'all') {
|
|
51
|
+
throw new Error(`Use 'all' as a standalone value, not as a dimension`);
|
|
52
|
+
}
|
|
53
|
+
return dim;
|
|
54
|
+
}
|
|
55
|
+
throw new Error(`Invalid dimension: ${dim}. Valid: ${this.VALID_DIMENSIONS.filter(d => d !== 'all').join(', ')}`);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Get all available dimensions
|
|
59
|
+
*/
|
|
60
|
+
static getAll() {
|
|
61
|
+
return [...this.ALL_DIMENSIONS];
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=command.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.types.js","sourceRoot":"","sources":["../../../src/cli/commands/command.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA8IH;;GAEG;AACH,MAAM,OAAO,eAAe;IAClB,MAAM,CAAU,cAAc,GAAgB;QACpD,MAAM;QACN,UAAU;QACV,aAAa;QACb,aAAa;QACb,iBAAiB;QACjB,UAAU;KACF,CAAC;IAEX,6CAA6C;IACrC,MAAM,CAAU,gBAAgB,GAAG;QACzC,MAAM;QACN,UAAU;QACV,aAAa;QACb,aAAa;QACb,iBAAiB;QACjB,UAAU;QACV,KAAK;KACG,CAAC;IAEX;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,QAA4B;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,CAAC;YACD,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAW;QACzB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAU,CAAC,EAAE,CAAC;YAC/C,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,GAAgB,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,YAAY,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM;QACX,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* History Command
|
|
3
|
+
*
|
|
4
|
+
* Manages and displays historical score tracking.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/commands/history
|
|
7
|
+
*/
|
|
8
|
+
import type { HistoryOptions } from './command.types.js';
|
|
9
|
+
/**
|
|
10
|
+
* History entry
|
|
11
|
+
*/
|
|
12
|
+
interface HistoryEntry {
|
|
13
|
+
timestamp: Date;
|
|
14
|
+
commit: string;
|
|
15
|
+
branch: string;
|
|
16
|
+
overall: number;
|
|
17
|
+
dimensions: Record<string, number>;
|
|
18
|
+
issueCount: number;
|
|
19
|
+
criticalCount: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* History command result
|
|
23
|
+
*/
|
|
24
|
+
interface HistoryResult {
|
|
25
|
+
entries: HistoryEntry[];
|
|
26
|
+
summary: {
|
|
27
|
+
totalEntries: number;
|
|
28
|
+
latestScore: number;
|
|
29
|
+
averageScore: number;
|
|
30
|
+
bestScore: number;
|
|
31
|
+
worstScore: number;
|
|
32
|
+
trend: 'improving' | 'stable' | 'declining';
|
|
33
|
+
};
|
|
34
|
+
period: {
|
|
35
|
+
start: Date;
|
|
36
|
+
end: Date;
|
|
37
|
+
days: number;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* History command for Daemon
|
|
42
|
+
*
|
|
43
|
+
* Manages score history:
|
|
44
|
+
* - View historical scores
|
|
45
|
+
* - Show trends over time
|
|
46
|
+
* - Compare snapshots
|
|
47
|
+
* - Clear history
|
|
48
|
+
* - Prune old entries
|
|
49
|
+
*/
|
|
50
|
+
export declare class HistoryCommand {
|
|
51
|
+
private readonly HISTORY_DIR;
|
|
52
|
+
private readonly HISTORY_FILE;
|
|
53
|
+
/**
|
|
54
|
+
* Execute the history command
|
|
55
|
+
*/
|
|
56
|
+
execute(args: string[]): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Parse command line arguments
|
|
59
|
+
*/
|
|
60
|
+
private parseArgs;
|
|
61
|
+
/**
|
|
62
|
+
* Process history command
|
|
63
|
+
*/
|
|
64
|
+
private processHistory;
|
|
65
|
+
/**
|
|
66
|
+
* Build history result
|
|
67
|
+
*/
|
|
68
|
+
private buildResult;
|
|
69
|
+
/**
|
|
70
|
+
* Create empty result
|
|
71
|
+
*/
|
|
72
|
+
private createEmptyResult;
|
|
73
|
+
/**
|
|
74
|
+
* Clear history
|
|
75
|
+
*/
|
|
76
|
+
private clearHistory;
|
|
77
|
+
/**
|
|
78
|
+
* Prune history keeping only recent entries
|
|
79
|
+
*/
|
|
80
|
+
private pruneHistory;
|
|
81
|
+
/**
|
|
82
|
+
* Display formatted results
|
|
83
|
+
*/
|
|
84
|
+
private displayResults;
|
|
85
|
+
/**
|
|
86
|
+
* Color score output
|
|
87
|
+
*/
|
|
88
|
+
private colorScore;
|
|
89
|
+
}
|
|
90
|
+
export type { HistoryOptions, HistoryEntry, HistoryResult };
|
|
91
|
+
//# sourceMappingURL=history.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/history.command.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMzD;;GAEG;AACH,UAAU,YAAY;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,UAAU,aAAa;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;KAC7C,CAAC;IACF,MAAM,EAAE;QACN,KAAK,EAAE,IAAI,CAAC;QACZ,GAAG,EAAE,IAAI,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;;;;;;;;GASG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAE9C;;OAEG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC5C;;OAEG;IACH,OAAO,CAAC,SAAS;IAqDjB;;OAEG;YACW,cAAc;IAgD5B;;OAEG;IACH,OAAO,CAAC,WAAW;IA2CnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;OAEG;YACW,YAAY;IAS1B;;OAEG;YACW,YAAY;IAyB1B;;OAEG;IACH,OAAO,CAAC,cAAc;IA+EtB;;OAEG;IACH,OAAO,CAAC,UAAU;CAMnB;AAED,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC"}
|