baseguard 1.0.3 → 1.0.4
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/.baseguardrc.example.json +63 -63
- package/.eslintrc.json +24 -24
- package/.prettierrc +7 -7
- package/CHANGELOG.md +195 -195
- package/DEPLOYMENT.md +624 -624
- package/DEPLOYMENT_CHECKLIST.md +239 -239
- package/DEPLOYMENT_SUMMARY_v1.0.2.md +202 -202
- package/QUICK_START.md +134 -134
- package/README.md +488 -488
- package/RELEASE_NOTES_v1.0.2.md +434 -434
- package/bin/base.js +627 -627
- package/dist/ai/fix-manager.d.ts.map +1 -1
- package/dist/ai/fix-manager.js +1 -1
- package/dist/ai/fix-manager.js.map +1 -1
- package/dist/ai/gemini-analyzer.d.ts.map +1 -1
- package/dist/ai/gemini-analyzer.js +29 -35
- package/dist/ai/gemini-analyzer.js.map +1 -1
- package/dist/ai/gemini-code-fixer.d.ts.map +1 -1
- package/dist/ai/gemini-code-fixer.js +58 -58
- package/dist/ai/gemini-code-fixer.js.map +1 -1
- package/dist/ai/jules-implementer.d.ts +3 -0
- package/dist/ai/jules-implementer.d.ts.map +1 -1
- package/dist/ai/jules-implementer.js +63 -32
- package/dist/ai/jules-implementer.js.map +1 -1
- package/dist/ai/unified-code-fixer.js.map +1 -1
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +1 -1
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/config.js +2 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/fix.d.ts.map +1 -1
- package/dist/commands/fix.js +44 -15
- package/dist/commands/fix.js.map +1 -1
- package/dist/core/api-key-manager.js +2 -2
- package/dist/core/api-key-manager.js.map +1 -1
- package/dist/core/baseguard.d.ts +1 -0
- package/dist/core/baseguard.d.ts.map +1 -1
- package/dist/core/baseguard.js +13 -10
- package/dist/core/baseguard.js.map +1 -1
- package/dist/core/baseline-checker.d.ts.map +1 -1
- package/dist/core/baseline-checker.js +2 -1
- package/dist/core/baseline-checker.js.map +1 -1
- package/dist/core/configuration-recovery.d.ts.map +1 -1
- package/dist/core/configuration-recovery.js +1 -1
- package/dist/core/configuration-recovery.js.map +1 -1
- package/dist/core/debug-logger.d.ts.map +1 -1
- package/dist/core/debug-logger.js +1 -1
- package/dist/core/debug-logger.js.map +1 -1
- package/dist/core/error-handler.d.ts.map +1 -1
- package/dist/core/error-handler.js +2 -1
- package/dist/core/error-handler.js.map +1 -1
- package/dist/core/gitignore-manager.js +5 -5
- package/dist/core/graceful-degradation-manager.d.ts.map +1 -1
- package/dist/core/graceful-degradation-manager.js +16 -16
- package/dist/core/graceful-degradation-manager.js.map +1 -1
- package/dist/core/lazy-loader.d.ts.map +1 -1
- package/dist/core/lazy-loader.js +9 -2
- package/dist/core/lazy-loader.js.map +1 -1
- package/dist/core/memory-manager.d.ts +0 -3
- package/dist/core/memory-manager.d.ts.map +1 -1
- package/dist/core/memory-manager.js.map +1 -1
- package/dist/core/parser-worker.d.ts +2 -0
- package/dist/core/parser-worker.d.ts.map +1 -0
- package/dist/core/parser-worker.js +19 -0
- package/dist/core/parser-worker.js.map +1 -0
- package/dist/core/startup-optimizer.d.ts.map +1 -1
- package/dist/core/startup-optimizer.js +4 -8
- package/dist/core/startup-optimizer.js.map +1 -1
- package/dist/core/system-error-handler.d.ts.map +1 -1
- package/dist/core/system-error-handler.js.map +1 -1
- package/dist/git/automation-engine.d.ts.map +1 -1
- package/dist/git/automation-engine.js +5 -4
- package/dist/git/automation-engine.js.map +1 -1
- package/dist/git/github-manager.d.ts.map +1 -1
- package/dist/git/github-manager.js.map +1 -1
- package/dist/git/hook-manager.js +5 -5
- package/dist/git/hook-manager.js.map +1 -1
- package/dist/parsers/parser-manager.d.ts.map +1 -1
- package/dist/parsers/parser-manager.js +1 -1
- package/dist/parsers/parser-manager.js.map +1 -1
- package/dist/parsers/svelte-parser.js +1 -1
- package/dist/parsers/svelte-parser.js.map +1 -1
- package/dist/parsers/vanilla-parser.d.ts.map +1 -1
- package/dist/parsers/vanilla-parser.js.map +1 -1
- package/dist/parsers/vue-parser.d.ts.map +1 -1
- package/dist/parsers/vue-parser.js.map +1 -1
- package/dist/ui/components.d.ts +1 -1
- package/dist/ui/components.d.ts.map +1 -1
- package/dist/ui/components.js +11 -11
- package/dist/ui/components.js.map +1 -1
- package/dist/ui/terminal-header.js +14 -14
- package/package.json +105 -105
- package/src/ai/__tests__/gemini-analyzer.test.ts +180 -180
- package/src/ai/agentkit-orchestrator.ts +533 -533
- package/src/ai/fix-manager.ts +362 -362
- package/src/ai/gemini-analyzer.ts +665 -671
- package/src/ai/gemini-code-fixer.ts +539 -540
- package/src/ai/index.ts +3 -3
- package/src/ai/jules-implementer.ts +504 -460
- package/src/ai/unified-code-fixer.ts +347 -347
- package/src/commands/automation.ts +343 -343
- package/src/commands/check.ts +298 -299
- package/src/commands/config.ts +584 -583
- package/src/commands/fix.ts +264 -238
- package/src/commands/index.ts +6 -6
- package/src/commands/init.ts +155 -155
- package/src/commands/status.ts +306 -306
- package/src/core/api-key-manager.ts +298 -298
- package/src/core/baseguard.ts +757 -756
- package/src/core/baseline-checker.ts +564 -563
- package/src/core/cache-manager.ts +271 -271
- package/src/core/configuration-recovery.ts +672 -673
- package/src/core/configuration.ts +595 -595
- package/src/core/debug-logger.ts +590 -590
- package/src/core/directory-filter.ts +420 -420
- package/src/core/error-handler.ts +518 -517
- package/src/core/file-processor.ts +337 -337
- package/src/core/gitignore-manager.ts +168 -168
- package/src/core/graceful-degradation-manager.ts +596 -596
- package/src/core/index.ts +16 -16
- package/src/core/lazy-loader.ts +317 -307
- package/src/core/memory-manager.ts +290 -295
- package/src/core/parser-worker.ts +33 -0
- package/src/core/startup-optimizer.ts +246 -255
- package/src/core/system-error-handler.ts +755 -756
- package/src/git/automation-engine.ts +361 -361
- package/src/git/github-manager.ts +190 -192
- package/src/git/hook-manager.ts +210 -210
- package/src/git/index.ts +3 -3
- package/src/index.ts +7 -7
- package/src/parsers/feature-validator.ts +558 -558
- package/src/parsers/index.ts +7 -7
- package/src/parsers/parser-manager.ts +418 -419
- package/src/parsers/parser.ts +25 -25
- package/src/parsers/react-parser-optimized.ts +160 -160
- package/src/parsers/react-parser.ts +358 -358
- package/src/parsers/svelte-parser.ts +510 -510
- package/src/parsers/vanilla-parser.ts +685 -686
- package/src/parsers/vue-parser.ts +476 -478
- package/src/types/index.ts +95 -95
- package/src/ui/components.ts +567 -567
- package/src/ui/help.ts +192 -192
- package/src/ui/index.ts +3 -3
- package/src/ui/prompts.ts +680 -680
- package/src/ui/terminal-header.ts +58 -58
- package/test-build.js +40 -40
- package/test-config-commands.js +55 -55
- package/test-header-simple.js +32 -32
- package/test-terminal-header.js +11 -11
- package/test-ui.js +28 -28
- package/tests/e2e/baseguard.e2e.test.ts +515 -515
- package/tests/e2e/cross-platform.e2e.test.ts +419 -419
- package/tests/e2e/git-integration.e2e.test.ts +486 -486
- package/tests/fixtures/react-project/package.json +13 -13
- package/tests/fixtures/react-project/src/App.css +75 -75
- package/tests/fixtures/react-project/src/App.tsx +76 -76
- package/tests/fixtures/svelte-project/package.json +10 -10
- package/tests/fixtures/svelte-project/src/App.svelte +368 -368
- package/tests/fixtures/vanilla-project/index.html +75 -75
- package/tests/fixtures/vanilla-project/script.js +330 -330
- package/tests/fixtures/vanilla-project/styles.css +358 -358
- package/tests/fixtures/vue-project/package.json +11 -11
- package/tests/fixtures/vue-project/src/App.vue +215 -215
- package/tsconfig.json +34 -34
- package/vitest.config.ts +11 -11
- package/dist/terminal-header.d.ts +0 -12
- package/dist/terminal-header.js +0 -45
package/src/types/index.ts
CHANGED
|
@@ -1,96 +1,96 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Core data models for BaseGuard
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
export interface Violation {
|
|
6
|
-
feature: string; // 'container-type'
|
|
7
|
-
featureId: string; // 'container-queries' (web-features ID)
|
|
8
|
-
file: string; // 'src/Card.css'
|
|
9
|
-
line: number; // 15
|
|
10
|
-
column: number; // 5
|
|
11
|
-
context: string; // ' container-type: inline-size;'
|
|
12
|
-
browser: string; // 'safari'
|
|
13
|
-
required: string; // '15'
|
|
14
|
-
actual: string | false; // '16' or false
|
|
15
|
-
baselineStatus: string; // 'newly' | 'widely' | false
|
|
16
|
-
reason: string; // Human-readable explanation
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export interface Analysis {
|
|
20
|
-
violation: Violation;
|
|
21
|
-
userImpact: string; // "8% of users on Safari 15"
|
|
22
|
-
marketShare: number; // 0.08
|
|
23
|
-
fixStrategy: string; // "progressive enhancement"
|
|
24
|
-
bestPractices: string[]; // ["Use @supports", "Add fallback"]
|
|
25
|
-
sources: string[]; // ["https://web.dev/...", "https://mdn..."]
|
|
26
|
-
plainEnglish: string; // Full explanation
|
|
27
|
-
confidence: number; // 0.0-1.0
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export interface Fix {
|
|
31
|
-
violation: Violation;
|
|
32
|
-
analysis: Analysis;
|
|
33
|
-
patch: string; // Unified diff format
|
|
34
|
-
explanation: string; // What the fix does
|
|
35
|
-
filePath: string; // Target file
|
|
36
|
-
preview: string; // Human-readable preview
|
|
37
|
-
confidence: number; // 0.0-1.0
|
|
38
|
-
testable: boolean; // Can be automatically tested
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export interface BrowserTarget {
|
|
42
|
-
browser: string; // 'chrome', 'safari', 'firefox', etc.
|
|
43
|
-
minVersion: string | 'baseline' | 'baseline-newly';
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export interface Configuration {
|
|
47
|
-
version: string;
|
|
48
|
-
targets: BrowserTarget[];
|
|
49
|
-
apiKeys: {
|
|
50
|
-
jules: string | null;
|
|
51
|
-
gemini: string | null;
|
|
52
|
-
};
|
|
53
|
-
codingAgent: {
|
|
54
|
-
primary: 'jules' | 'gemini';
|
|
55
|
-
fallback: 'jules' | 'gemini';
|
|
56
|
-
};
|
|
57
|
-
automation: {
|
|
58
|
-
enabled: boolean;
|
|
59
|
-
trigger: 'pre-commit' | 'pre-push';
|
|
60
|
-
autoAnalyze: boolean;
|
|
61
|
-
autoFix: boolean;
|
|
62
|
-
blockCommit: boolean;
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export interface DetectedFeature {
|
|
67
|
-
feature: string; // e.g., 'container-type', 'dialog.showModal'
|
|
68
|
-
type: 'css' | 'js' | 'html';
|
|
69
|
-
line: number;
|
|
70
|
-
column: number;
|
|
71
|
-
context: string; // surrounding code for display
|
|
72
|
-
file?: string; // file path where feature was detected
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export interface CompatibilityResult {
|
|
76
|
-
violations: Violation[];
|
|
77
|
-
featureData: any; // web-features data structure
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
export interface AutomationOptions {
|
|
81
|
-
trigger: 'pre-commit' | 'pre-push';
|
|
82
|
-
strict?: boolean;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export interface JulesSession {
|
|
86
|
-
id: string;
|
|
87
|
-
status: string;
|
|
88
|
-
title: string;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
export interface JulesActivity {
|
|
92
|
-
id: string;
|
|
93
|
-
type: string;
|
|
94
|
-
status: string;
|
|
95
|
-
timestamp: string;
|
|
1
|
+
/**
|
|
2
|
+
* Core data models for BaseGuard
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
export interface Violation {
|
|
6
|
+
feature: string; // 'container-type'
|
|
7
|
+
featureId: string; // 'container-queries' (web-features ID)
|
|
8
|
+
file: string; // 'src/Card.css'
|
|
9
|
+
line: number; // 15
|
|
10
|
+
column: number; // 5
|
|
11
|
+
context: string; // ' container-type: inline-size;'
|
|
12
|
+
browser: string; // 'safari'
|
|
13
|
+
required: string; // '15'
|
|
14
|
+
actual: string | false; // '16' or false
|
|
15
|
+
baselineStatus: string; // 'newly' | 'widely' | false
|
|
16
|
+
reason: string; // Human-readable explanation
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface Analysis {
|
|
20
|
+
violation: Violation;
|
|
21
|
+
userImpact: string; // "8% of users on Safari 15"
|
|
22
|
+
marketShare: number; // 0.08
|
|
23
|
+
fixStrategy: string; // "progressive enhancement"
|
|
24
|
+
bestPractices: string[]; // ["Use @supports", "Add fallback"]
|
|
25
|
+
sources: string[]; // ["https://web.dev/...", "https://mdn..."]
|
|
26
|
+
plainEnglish: string; // Full explanation
|
|
27
|
+
confidence: number; // 0.0-1.0
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface Fix {
|
|
31
|
+
violation: Violation;
|
|
32
|
+
analysis: Analysis;
|
|
33
|
+
patch: string; // Unified diff format
|
|
34
|
+
explanation: string; // What the fix does
|
|
35
|
+
filePath: string; // Target file
|
|
36
|
+
preview: string; // Human-readable preview
|
|
37
|
+
confidence: number; // 0.0-1.0
|
|
38
|
+
testable: boolean; // Can be automatically tested
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface BrowserTarget {
|
|
42
|
+
browser: string; // 'chrome', 'safari', 'firefox', etc.
|
|
43
|
+
minVersion: string | 'baseline' | 'baseline-newly';
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface Configuration {
|
|
47
|
+
version: string;
|
|
48
|
+
targets: BrowserTarget[];
|
|
49
|
+
apiKeys: {
|
|
50
|
+
jules: string | null;
|
|
51
|
+
gemini: string | null;
|
|
52
|
+
};
|
|
53
|
+
codingAgent: {
|
|
54
|
+
primary: 'jules' | 'gemini';
|
|
55
|
+
fallback: 'jules' | 'gemini';
|
|
56
|
+
};
|
|
57
|
+
automation: {
|
|
58
|
+
enabled: boolean;
|
|
59
|
+
trigger: 'pre-commit' | 'pre-push';
|
|
60
|
+
autoAnalyze: boolean;
|
|
61
|
+
autoFix: boolean;
|
|
62
|
+
blockCommit: boolean;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface DetectedFeature {
|
|
67
|
+
feature: string; // e.g., 'container-type', 'dialog.showModal'
|
|
68
|
+
type: 'css' | 'js' | 'html';
|
|
69
|
+
line: number;
|
|
70
|
+
column: number;
|
|
71
|
+
context: string; // surrounding code for display
|
|
72
|
+
file?: string; // file path where feature was detected
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export interface CompatibilityResult {
|
|
76
|
+
violations: Violation[];
|
|
77
|
+
featureData: any; // web-features data structure
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export interface AutomationOptions {
|
|
81
|
+
trigger: 'pre-commit' | 'pre-push';
|
|
82
|
+
strict?: boolean;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export interface JulesSession {
|
|
86
|
+
id: string;
|
|
87
|
+
status: string;
|
|
88
|
+
title: string;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export interface JulesActivity {
|
|
92
|
+
id: string;
|
|
93
|
+
type: string;
|
|
94
|
+
status: string;
|
|
95
|
+
timestamp: string;
|
|
96
96
|
}
|