@probelabs/visor 0.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 +1240 -0
- package/action.yml +142 -0
- package/defaults/.visor.yaml +184 -0
- package/dist/action-cli-bridge.d.ts +104 -0
- package/dist/action-cli-bridge.d.ts.map +1 -0
- package/dist/action-cli-bridge.js +372 -0
- package/dist/action-cli-bridge.js.map +1 -0
- package/dist/ai-review-service.d.ts +84 -0
- package/dist/ai-review-service.d.ts.map +1 -0
- package/dist/ai-review-service.js +674 -0
- package/dist/ai-review-service.js.map +1 -0
- package/dist/check-execution-engine.d.ts +165 -0
- package/dist/check-execution-engine.d.ts.map +1 -0
- package/dist/check-execution-engine.js +1172 -0
- package/dist/check-execution-engine.js.map +1 -0
- package/dist/cli-main.d.ts +6 -0
- package/dist/cli-main.d.ts.map +1 -0
- package/dist/cli-main.js +247 -0
- package/dist/cli-main.js.map +1 -0
- package/dist/cli.d.ts +47 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +224 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands.d.ts +10 -0
- package/dist/commands.d.ts.map +1 -0
- package/dist/commands.js +53 -0
- package/dist/commands.js.map +1 -0
- package/dist/config.d.ts +63 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +369 -0
- package/dist/config.js.map +1 -0
- package/dist/dependency-resolver.d.ts +54 -0
- package/dist/dependency-resolver.d.ts.map +1 -0
- package/dist/dependency-resolver.js +163 -0
- package/dist/dependency-resolver.js.map +1 -0
- package/dist/event-mapper.d.ts +125 -0
- package/dist/event-mapper.d.ts.map +1 -0
- package/dist/event-mapper.js +311 -0
- package/dist/event-mapper.js.map +1 -0
- package/dist/failure-condition-evaluator.d.ts +81 -0
- package/dist/failure-condition-evaluator.d.ts.map +1 -0
- package/dist/failure-condition-evaluator.js +445 -0
- package/dist/failure-condition-evaluator.js.map +1 -0
- package/dist/git-repository-analyzer.d.ts +45 -0
- package/dist/git-repository-analyzer.d.ts.map +1 -0
- package/dist/git-repository-analyzer.js +285 -0
- package/dist/git-repository-analyzer.js.map +1 -0
- package/dist/github-check-service.d.ts +104 -0
- package/dist/github-check-service.d.ts.map +1 -0
- package/dist/github-check-service.js +382 -0
- package/dist/github-check-service.js.map +1 -0
- package/dist/github-comments.d.ts +109 -0
- package/dist/github-comments.d.ts.map +1 -0
- package/dist/github-comments.js +289 -0
- package/dist/github-comments.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1265 -0
- package/dist/index.js.map +1 -0
- package/dist/output-formatters.d.ts +66 -0
- package/dist/output-formatters.d.ts.map +1 -0
- package/dist/output-formatters.js +624 -0
- package/dist/output-formatters.js.map +1 -0
- package/dist/pr-analyzer.d.ts +47 -0
- package/dist/pr-analyzer.d.ts.map +1 -0
- package/dist/pr-analyzer.js +194 -0
- package/dist/pr-analyzer.js.map +1 -0
- package/dist/pr-detector.d.ts +78 -0
- package/dist/pr-detector.d.ts.map +1 -0
- package/dist/pr-detector.js +357 -0
- package/dist/pr-detector.js.map +1 -0
- package/dist/providers/ai-check-provider.d.ts +40 -0
- package/dist/providers/ai-check-provider.d.ts.map +1 -0
- package/dist/providers/ai-check-provider.js +416 -0
- package/dist/providers/ai-check-provider.js.map +1 -0
- package/dist/providers/check-provider-registry.d.ts +67 -0
- package/dist/providers/check-provider-registry.d.ts.map +1 -0
- package/dist/providers/check-provider-registry.js +138 -0
- package/dist/providers/check-provider-registry.js.map +1 -0
- package/dist/providers/check-provider.interface.d.ts +78 -0
- package/dist/providers/check-provider.interface.d.ts.map +1 -0
- package/dist/providers/check-provider.interface.js +11 -0
- package/dist/providers/check-provider.interface.js.map +1 -0
- package/dist/providers/index.d.ts +10 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +19 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/script-check-provider.d.ts +20 -0
- package/dist/providers/script-check-provider.d.ts.map +1 -0
- package/dist/providers/script-check-provider.js +163 -0
- package/dist/providers/script-check-provider.js.map +1 -0
- package/dist/providers/tool-check-provider.d.ts +19 -0
- package/dist/providers/tool-check-provider.d.ts.map +1 -0
- package/dist/providers/tool-check-provider.js +125 -0
- package/dist/providers/tool-check-provider.js.map +1 -0
- package/dist/providers/webhook-check-provider.d.ts +21 -0
- package/dist/providers/webhook-check-provider.d.ts.map +1 -0
- package/dist/providers/webhook-check-provider.js +173 -0
- package/dist/providers/webhook-check-provider.js.map +1 -0
- package/dist/reviewer.d.ts +88 -0
- package/dist/reviewer.d.ts.map +1 -0
- package/dist/reviewer.js +760 -0
- package/dist/reviewer.js.map +1 -0
- package/dist/types/cli.d.ts +41 -0
- package/dist/types/cli.d.ts.map +1 -0
- package/dist/types/cli.js +3 -0
- package/dist/types/cli.js.map +1 -0
- package/dist/types/config.d.ts +315 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +6 -0
- package/dist/types/config.js.map +1 -0
- package/dist/utils/env-resolver.d.ts +38 -0
- package/dist/utils/env-resolver.d.ts.map +1 -0
- package/dist/utils/env-resolver.js +130 -0
- package/dist/utils/env-resolver.js.map +1 -0
- package/package.json +116 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../src/reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Valid check types that can be performed by Visor
|
|
3
|
+
*/
|
|
4
|
+
export type CheckType = 'performance' | 'architecture' | 'security' | 'style' | 'all';
|
|
5
|
+
/**
|
|
6
|
+
* Valid output formats for CLI results
|
|
7
|
+
*/
|
|
8
|
+
export type OutputFormat = 'table' | 'json' | 'markdown' | 'sarif';
|
|
9
|
+
/**
|
|
10
|
+
* CLI options parsed from command line arguments
|
|
11
|
+
*/
|
|
12
|
+
export interface CliOptions {
|
|
13
|
+
/** Array of check types to perform */
|
|
14
|
+
checks: CheckType[];
|
|
15
|
+
/** Output format for results */
|
|
16
|
+
output: OutputFormat;
|
|
17
|
+
/** Path to configuration file */
|
|
18
|
+
configPath?: string;
|
|
19
|
+
/** Timeout for check operations in milliseconds (default: 600000ms / 10 minutes) */
|
|
20
|
+
timeout?: number;
|
|
21
|
+
/** Enable debug mode for detailed output */
|
|
22
|
+
debug?: boolean;
|
|
23
|
+
/** Stop execution on first failure condition */
|
|
24
|
+
failFast?: boolean;
|
|
25
|
+
/** Show help text */
|
|
26
|
+
help?: boolean;
|
|
27
|
+
/** Show version */
|
|
28
|
+
version?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* CLI command configuration
|
|
32
|
+
*/
|
|
33
|
+
export interface CliCommand {
|
|
34
|
+
/** Command name */
|
|
35
|
+
name: string;
|
|
36
|
+
/** Command description */
|
|
37
|
+
description: string;
|
|
38
|
+
/** Command options */
|
|
39
|
+
options: CliOptions;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/types/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,KAAK,CAAC;AAEtF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,sCAAsC;IACtC,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,gCAAgC;IAChC,MAAM,EAAE,YAAY,CAAC;IACrB,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mBAAmB;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,OAAO,EAAE,UAAU,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/types/cli.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for Visor configuration system
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Failure condition severity levels
|
|
6
|
+
*/
|
|
7
|
+
export type FailureConditionSeverity = 'error' | 'warning' | 'info';
|
|
8
|
+
/**
|
|
9
|
+
* Simple failure condition - just an expression string
|
|
10
|
+
*/
|
|
11
|
+
export type SimpleFailureCondition = string;
|
|
12
|
+
/**
|
|
13
|
+
* Complex failure condition with additional metadata
|
|
14
|
+
*/
|
|
15
|
+
export interface ComplexFailureCondition {
|
|
16
|
+
/** Expression to evaluate using Function Constructor */
|
|
17
|
+
condition: string;
|
|
18
|
+
/** Human-readable message when condition is met */
|
|
19
|
+
message?: string;
|
|
20
|
+
/** Severity level of the failure */
|
|
21
|
+
severity?: FailureConditionSeverity;
|
|
22
|
+
/** Whether this condition should halt execution */
|
|
23
|
+
halt_execution?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Failure condition - can be a simple expression string or complex object
|
|
27
|
+
*/
|
|
28
|
+
export type FailureCondition = SimpleFailureCondition | ComplexFailureCondition;
|
|
29
|
+
/**
|
|
30
|
+
* Collection of failure conditions
|
|
31
|
+
*/
|
|
32
|
+
export interface FailureConditions {
|
|
33
|
+
[conditionName: string]: FailureCondition;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Context object available to expressions for failure condition evaluation
|
|
37
|
+
*/
|
|
38
|
+
export interface FailureConditionContext {
|
|
39
|
+
/** Check results - raw output from the check/schema */
|
|
40
|
+
output: {
|
|
41
|
+
/** Check results */
|
|
42
|
+
issues?: Array<{
|
|
43
|
+
file: string;
|
|
44
|
+
line: number;
|
|
45
|
+
endLine?: number;
|
|
46
|
+
ruleId: string;
|
|
47
|
+
message: string;
|
|
48
|
+
severity: 'info' | 'warning' | 'error' | 'critical';
|
|
49
|
+
category: 'security' | 'performance' | 'style' | 'logic' | 'documentation';
|
|
50
|
+
group?: string;
|
|
51
|
+
schema?: string;
|
|
52
|
+
suggestion?: string;
|
|
53
|
+
replacement?: string;
|
|
54
|
+
}>;
|
|
55
|
+
/** Array of suggestions from the check */
|
|
56
|
+
suggestions?: string[];
|
|
57
|
+
/** Any additional fields provided by the check/schema */
|
|
58
|
+
[key: string]: any;
|
|
59
|
+
};
|
|
60
|
+
/** Previous check outputs for dependencies - keyed by check name */
|
|
61
|
+
outputs?: Record<string, any>;
|
|
62
|
+
/** Check context information */
|
|
63
|
+
checkName?: string;
|
|
64
|
+
schema?: string;
|
|
65
|
+
group?: string;
|
|
66
|
+
/** Debug information (if available) */
|
|
67
|
+
debug?: {
|
|
68
|
+
/** Any errors that occurred during processing */
|
|
69
|
+
errors: string[];
|
|
70
|
+
/** Processing time in milliseconds */
|
|
71
|
+
processingTime: number;
|
|
72
|
+
/** AI provider used */
|
|
73
|
+
provider: string;
|
|
74
|
+
/** AI model used */
|
|
75
|
+
model: string;
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Result of failure condition evaluation
|
|
80
|
+
*/
|
|
81
|
+
export interface FailureConditionResult {
|
|
82
|
+
/** Name of the condition that was evaluated */
|
|
83
|
+
conditionName: string;
|
|
84
|
+
/** Whether the condition evaluated to true (failure) */
|
|
85
|
+
failed: boolean;
|
|
86
|
+
/** The expression that was evaluated */
|
|
87
|
+
expression: string;
|
|
88
|
+
/** Human-readable message */
|
|
89
|
+
message?: string;
|
|
90
|
+
/** Severity of the failure */
|
|
91
|
+
severity: FailureConditionSeverity;
|
|
92
|
+
/** Whether execution should halt */
|
|
93
|
+
haltExecution: boolean;
|
|
94
|
+
/** Error message if evaluation failed */
|
|
95
|
+
error?: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Valid check types in configuration
|
|
99
|
+
*/
|
|
100
|
+
export type ConfigCheckType = 'ai';
|
|
101
|
+
/**
|
|
102
|
+
* Valid event triggers for checks
|
|
103
|
+
*/
|
|
104
|
+
export type EventTrigger = 'pr_opened' | 'pr_updated' | 'pr_closed';
|
|
105
|
+
/**
|
|
106
|
+
* Valid output formats
|
|
107
|
+
*/
|
|
108
|
+
export type ConfigOutputFormat = 'table' | 'json' | 'markdown' | 'sarif';
|
|
109
|
+
/**
|
|
110
|
+
* Valid grouping options
|
|
111
|
+
*/
|
|
112
|
+
export type GroupByOption = 'check' | 'file' | 'severity';
|
|
113
|
+
/**
|
|
114
|
+
* Environment variable reference configuration
|
|
115
|
+
*/
|
|
116
|
+
export interface EnvConfig {
|
|
117
|
+
[key: string]: string | number | boolean;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* AI provider configuration
|
|
121
|
+
*/
|
|
122
|
+
export interface AIProviderConfig {
|
|
123
|
+
/** AI provider to use */
|
|
124
|
+
provider?: 'google' | 'anthropic' | 'openai' | 'mock';
|
|
125
|
+
/** Model name to use */
|
|
126
|
+
model?: string;
|
|
127
|
+
/** API key (usually from environment variables) */
|
|
128
|
+
apiKey?: string;
|
|
129
|
+
/** Request timeout in milliseconds */
|
|
130
|
+
timeout?: number;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Configuration for a single check
|
|
134
|
+
*/
|
|
135
|
+
export interface CheckConfig {
|
|
136
|
+
/** Type of check to perform */
|
|
137
|
+
type: ConfigCheckType;
|
|
138
|
+
/** AI prompt for the check - can be inline string or file path (auto-detected) */
|
|
139
|
+
prompt: string;
|
|
140
|
+
/** Focus area for the check (security/performance/style/architecture/all) - optional */
|
|
141
|
+
focus?: string;
|
|
142
|
+
/** Command that triggers this check (e.g., "review", "security-scan") - optional */
|
|
143
|
+
command?: string;
|
|
144
|
+
/** Events that trigger this check */
|
|
145
|
+
on: EventTrigger[];
|
|
146
|
+
/** File patterns that trigger this check (optional) */
|
|
147
|
+
triggers?: string[];
|
|
148
|
+
/** AI provider configuration (optional) */
|
|
149
|
+
ai?: AIProviderConfig;
|
|
150
|
+
/** AI model to use for this check - overrides global setting */
|
|
151
|
+
ai_model?: string;
|
|
152
|
+
/** AI provider to use for this check - overrides global setting */
|
|
153
|
+
ai_provider?: 'google' | 'anthropic' | 'openai' | 'mock' | string;
|
|
154
|
+
/** Environment variables for this check */
|
|
155
|
+
env?: EnvConfig;
|
|
156
|
+
/** Check IDs that this check depends on (optional) */
|
|
157
|
+
depends_on?: string[];
|
|
158
|
+
/** Group name for comment separation (e.g., "code-review", "pr-overview") - optional */
|
|
159
|
+
group?: string;
|
|
160
|
+
/** Schema type for template rendering (e.g., "code-review", "markdown") - optional */
|
|
161
|
+
schema?: string;
|
|
162
|
+
/** Custom template configuration - optional */
|
|
163
|
+
template?: CustomTemplateConfig;
|
|
164
|
+
/** Condition to determine if check should run - runs if expression evaluates to true */
|
|
165
|
+
if?: string;
|
|
166
|
+
/** Simple fail condition - fails check if expression evaluates to true */
|
|
167
|
+
fail_if?: string;
|
|
168
|
+
/** Check-specific failure conditions - optional (deprecated, use fail_if) */
|
|
169
|
+
failure_conditions?: FailureConditions;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Custom template configuration
|
|
173
|
+
*/
|
|
174
|
+
export interface CustomTemplateConfig {
|
|
175
|
+
/** Path to custom template file (relative to config file or absolute) */
|
|
176
|
+
file?: string;
|
|
177
|
+
/** Raw template content as string */
|
|
178
|
+
content?: string;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Prompt configuration - supports both string and file reference
|
|
182
|
+
*/
|
|
183
|
+
export interface PromptConfig {
|
|
184
|
+
/** Raw prompt content as string (supports Liquid templates) */
|
|
185
|
+
content?: string;
|
|
186
|
+
/** Path to prompt file (relative to config file or absolute) */
|
|
187
|
+
file?: string;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Debug mode configuration
|
|
191
|
+
*/
|
|
192
|
+
export interface DebugConfig {
|
|
193
|
+
/** Enable debug mode */
|
|
194
|
+
enabled: boolean;
|
|
195
|
+
/** Include AI prompts in debug output */
|
|
196
|
+
includePrompts: boolean;
|
|
197
|
+
/** Include raw AI responses in debug output */
|
|
198
|
+
includeRawResponses: boolean;
|
|
199
|
+
/** Include timing information */
|
|
200
|
+
includeTiming: boolean;
|
|
201
|
+
/** Include provider information */
|
|
202
|
+
includeProviderInfo: boolean;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* PR comment output configuration
|
|
206
|
+
*/
|
|
207
|
+
export interface PrCommentOutput {
|
|
208
|
+
/** Format of the output */
|
|
209
|
+
format: ConfigOutputFormat;
|
|
210
|
+
/** How to group the results */
|
|
211
|
+
group_by: GroupByOption;
|
|
212
|
+
/** Whether to collapse sections by default */
|
|
213
|
+
collapse: boolean;
|
|
214
|
+
/** Debug mode configuration (optional) */
|
|
215
|
+
debug?: DebugConfig;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* File comment output configuration
|
|
219
|
+
*/
|
|
220
|
+
export interface FileCommentOutput {
|
|
221
|
+
/** Whether file comments are enabled */
|
|
222
|
+
enabled: boolean;
|
|
223
|
+
/** Whether to show inline comments */
|
|
224
|
+
inline: boolean;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* GitHub Check Runs output configuration
|
|
228
|
+
*/
|
|
229
|
+
export interface GitHubCheckOutput {
|
|
230
|
+
/** Whether GitHub check runs are enabled */
|
|
231
|
+
enabled: boolean;
|
|
232
|
+
/** Whether to create individual check runs per configured check */
|
|
233
|
+
per_check: boolean;
|
|
234
|
+
/** Custom name prefix for check runs */
|
|
235
|
+
name_prefix?: string;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Output configuration
|
|
239
|
+
*/
|
|
240
|
+
export interface OutputConfig {
|
|
241
|
+
/** PR comment configuration */
|
|
242
|
+
pr_comment: PrCommentOutput;
|
|
243
|
+
/** File comment configuration (optional) */
|
|
244
|
+
file_comment?: FileCommentOutput;
|
|
245
|
+
/** GitHub check runs configuration (optional) */
|
|
246
|
+
github_checks?: GitHubCheckOutput;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Main Visor configuration
|
|
250
|
+
*/
|
|
251
|
+
export interface VisorConfig {
|
|
252
|
+
/** Configuration version */
|
|
253
|
+
version: string;
|
|
254
|
+
/** Check configurations */
|
|
255
|
+
checks: Record<string, CheckConfig>;
|
|
256
|
+
/** Output configuration */
|
|
257
|
+
output: OutputConfig;
|
|
258
|
+
/** Global environment variables */
|
|
259
|
+
env?: EnvConfig;
|
|
260
|
+
/** Global AI model setting */
|
|
261
|
+
ai_model?: string;
|
|
262
|
+
/** Global AI provider setting */
|
|
263
|
+
ai_provider?: 'google' | 'anthropic' | 'openai' | 'mock' | string;
|
|
264
|
+
/** Simple global fail condition - fails if expression evaluates to true */
|
|
265
|
+
fail_if?: string;
|
|
266
|
+
/** Global failure conditions - optional (deprecated, use fail_if) */
|
|
267
|
+
failure_conditions?: FailureConditions;
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Environment variable overrides
|
|
271
|
+
*/
|
|
272
|
+
export interface EnvironmentOverrides {
|
|
273
|
+
/** Config file path from environment */
|
|
274
|
+
configPath?: string;
|
|
275
|
+
/** Output format from environment */
|
|
276
|
+
outputFormat?: string;
|
|
277
|
+
/** Additional environment overrides */
|
|
278
|
+
[key: string]: string | undefined;
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* Merged configuration result
|
|
282
|
+
*/
|
|
283
|
+
export interface MergedConfig {
|
|
284
|
+
/** Base configuration from file */
|
|
285
|
+
config: Partial<VisorConfig>;
|
|
286
|
+
/** CLI-specified checks */
|
|
287
|
+
cliChecks: string[];
|
|
288
|
+
/** CLI-specified output format */
|
|
289
|
+
cliOutput: string;
|
|
290
|
+
/** Environment variable overrides */
|
|
291
|
+
environmentOverrides?: EnvironmentOverrides;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Configuration validation error
|
|
295
|
+
*/
|
|
296
|
+
export interface ConfigValidationError {
|
|
297
|
+
/** Field that failed validation */
|
|
298
|
+
field: string;
|
|
299
|
+
/** Error message */
|
|
300
|
+
message: string;
|
|
301
|
+
/** Invalid value (if applicable) */
|
|
302
|
+
value?: unknown;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Configuration loading options
|
|
306
|
+
*/
|
|
307
|
+
export interface ConfigLoadOptions {
|
|
308
|
+
/** Whether to validate the configuration */
|
|
309
|
+
validate?: boolean;
|
|
310
|
+
/** Whether to merge with defaults */
|
|
311
|
+
mergeDefaults?: boolean;
|
|
312
|
+
/** Custom validation rules */
|
|
313
|
+
customValidation?: (config: Partial<VisorConfig>) => ConfigValidationError[];
|
|
314
|
+
}
|
|
315
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable resolution utilities
|
|
3
|
+
* Supports GitHub Actions-like syntax for referencing environment variables
|
|
4
|
+
*/
|
|
5
|
+
import { EnvConfig } from '../types/config';
|
|
6
|
+
/**
|
|
7
|
+
* Resolves environment variables in configuration values
|
|
8
|
+
* Supports the following syntaxes:
|
|
9
|
+
* - ${{ env.VARIABLE_NAME }} (GitHub Actions style)
|
|
10
|
+
* - ${VARIABLE_NAME} (shell style)
|
|
11
|
+
* - $VARIABLE_NAME (simple shell style)
|
|
12
|
+
* - Direct environment variable names
|
|
13
|
+
*/
|
|
14
|
+
export declare class EnvironmentResolver {
|
|
15
|
+
/**
|
|
16
|
+
* Resolves a single configuration value that may contain environment variable references
|
|
17
|
+
*/
|
|
18
|
+
static resolveValue(value: string | number | boolean): string | number | boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Resolves all environment variables in an EnvConfig object
|
|
21
|
+
*/
|
|
22
|
+
static resolveEnvConfig(envConfig: EnvConfig): EnvConfig;
|
|
23
|
+
/**
|
|
24
|
+
* Applies environment configuration to the process environment
|
|
25
|
+
* This allows checks to access their specific environment variables
|
|
26
|
+
*/
|
|
27
|
+
static applyEnvConfig(envConfig: EnvConfig): void;
|
|
28
|
+
/**
|
|
29
|
+
* Creates a temporary environment for a specific check execution
|
|
30
|
+
* Returns a cleanup function to restore the original environment
|
|
31
|
+
*/
|
|
32
|
+
static withTemporaryEnv<T>(envConfig: EnvConfig, callback: () => T | Promise<T>): T | Promise<T>;
|
|
33
|
+
/**
|
|
34
|
+
* Validates that all required environment variables are available
|
|
35
|
+
*/
|
|
36
|
+
static validateRequiredEnvVars(envConfig: EnvConfig, requiredVars: string[]): string[];
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=env-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/env-resolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO;IAuBhF;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAUxD;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAUjD;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAoDhG;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;CAavF"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Environment variable resolution utilities
|
|
4
|
+
* Supports GitHub Actions-like syntax for referencing environment variables
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.EnvironmentResolver = void 0;
|
|
8
|
+
/**
|
|
9
|
+
* Resolves environment variables in configuration values
|
|
10
|
+
* Supports the following syntaxes:
|
|
11
|
+
* - ${{ env.VARIABLE_NAME }} (GitHub Actions style)
|
|
12
|
+
* - ${VARIABLE_NAME} (shell style)
|
|
13
|
+
* - $VARIABLE_NAME (simple shell style)
|
|
14
|
+
* - Direct environment variable names
|
|
15
|
+
*/
|
|
16
|
+
class EnvironmentResolver {
|
|
17
|
+
/**
|
|
18
|
+
* Resolves a single configuration value that may contain environment variable references
|
|
19
|
+
*/
|
|
20
|
+
static resolveValue(value) {
|
|
21
|
+
if (typeof value !== 'string') {
|
|
22
|
+
return value;
|
|
23
|
+
}
|
|
24
|
+
// GitHub Actions style: ${{ env.VARIABLE_NAME }}
|
|
25
|
+
let resolved = value.replace(/\$\{\{\s*env\.([A-Z_][A-Z0-9_]*)\s*\}\}/g, (match, envVar) => {
|
|
26
|
+
return process.env[envVar] || match;
|
|
27
|
+
});
|
|
28
|
+
// Shell style: ${VARIABLE_NAME}
|
|
29
|
+
resolved = resolved.replace(/\$\{([A-Z_][A-Z0-9_]*)\}/g, (match, envVar) => {
|
|
30
|
+
return process.env[envVar] || match;
|
|
31
|
+
});
|
|
32
|
+
// Simple shell style: $VARIABLE_NAME
|
|
33
|
+
resolved = resolved.replace(/\$([A-Z_][A-Z0-9_]*)/g, (match, envVar) => {
|
|
34
|
+
return process.env[envVar] || match;
|
|
35
|
+
});
|
|
36
|
+
return resolved;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolves all environment variables in an EnvConfig object
|
|
40
|
+
*/
|
|
41
|
+
static resolveEnvConfig(envConfig) {
|
|
42
|
+
const resolved = {};
|
|
43
|
+
for (const [key, value] of Object.entries(envConfig)) {
|
|
44
|
+
resolved[key] = this.resolveValue(value);
|
|
45
|
+
}
|
|
46
|
+
return resolved;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Applies environment configuration to the process environment
|
|
50
|
+
* This allows checks to access their specific environment variables
|
|
51
|
+
*/
|
|
52
|
+
static applyEnvConfig(envConfig) {
|
|
53
|
+
const resolved = this.resolveEnvConfig(envConfig);
|
|
54
|
+
for (const [key, value] of Object.entries(resolved)) {
|
|
55
|
+
if (value !== undefined) {
|
|
56
|
+
process.env[key] = String(value);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Creates a temporary environment for a specific check execution
|
|
62
|
+
* Returns a cleanup function to restore the original environment
|
|
63
|
+
*/
|
|
64
|
+
static withTemporaryEnv(envConfig, callback) {
|
|
65
|
+
const resolved = this.resolveEnvConfig(envConfig);
|
|
66
|
+
const originalValues = {};
|
|
67
|
+
// Store original values and apply new ones
|
|
68
|
+
for (const [key, value] of Object.entries(resolved)) {
|
|
69
|
+
originalValues[key] = process.env[key];
|
|
70
|
+
if (value !== undefined) {
|
|
71
|
+
process.env[key] = String(value);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
const result = callback();
|
|
76
|
+
// If callback returns a promise, handle cleanup after it resolves
|
|
77
|
+
if (result instanceof Promise) {
|
|
78
|
+
return result.finally(() => {
|
|
79
|
+
// Restore original values
|
|
80
|
+
for (const [key, originalValue] of Object.entries(originalValues)) {
|
|
81
|
+
if (originalValue === undefined) {
|
|
82
|
+
delete process.env[key];
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
process.env[key] = originalValue;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
// Restore original values immediately for sync callbacks
|
|
91
|
+
for (const [key, originalValue] of Object.entries(originalValues)) {
|
|
92
|
+
if (originalValue === undefined) {
|
|
93
|
+
delete process.env[key];
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
process.env[key] = originalValue;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
// Restore original values on error
|
|
103
|
+
for (const [key, originalValue] of Object.entries(originalValues)) {
|
|
104
|
+
if (originalValue === undefined) {
|
|
105
|
+
delete process.env[key];
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
process.env[key] = originalValue;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
throw error;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Validates that all required environment variables are available
|
|
116
|
+
*/
|
|
117
|
+
static validateRequiredEnvVars(envConfig, requiredVars) {
|
|
118
|
+
const resolved = this.resolveEnvConfig(envConfig);
|
|
119
|
+
const missing = [];
|
|
120
|
+
for (const varName of requiredVars) {
|
|
121
|
+
const value = resolved[varName] || process.env[varName];
|
|
122
|
+
if (!value) {
|
|
123
|
+
missing.push(varName);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return missing;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.EnvironmentResolver = EnvironmentResolver;
|
|
130
|
+
//# sourceMappingURL=env-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-resolver.js","sourceRoot":"","sources":["../../src/utils/env-resolver.ts"],"names":[],"mappings":"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"}
|