@probelabs/visor 0.1.97 → 0.1.100
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 +16 -15
- package/action.yml +7 -2
- package/defaults/.visor.yaml +7 -6
- package/dist/action-cli-bridge.d.ts +1 -0
- package/dist/action-cli-bridge.d.ts.map +1 -1
- package/dist/ai-review-service.d.ts.map +1 -1
- package/dist/check-execution-engine.d.ts +8 -2
- package/dist/check-execution-engine.d.ts.map +1 -1
- package/dist/cli-main.d.ts.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/config.d.ts +5 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/debug-visualizer/debug-span-exporter.d.ts +47 -0
- package/dist/debug-visualizer/debug-span-exporter.d.ts.map +1 -0
- package/dist/debug-visualizer/trace-reader.d.ts +117 -0
- package/dist/debug-visualizer/trace-reader.d.ts.map +1 -0
- package/dist/debug-visualizer/ui/index.html +2568 -0
- package/dist/debug-visualizer/ws-server.d.ts +99 -0
- package/dist/debug-visualizer/ws-server.d.ts.map +1 -0
- package/dist/defaults/.visor.yaml +7 -6
- package/dist/failure-condition-evaluator.d.ts.map +1 -1
- package/dist/generated/config-schema.d.ts +7 -3
- package/dist/generated/config-schema.d.ts.map +1 -1
- package/dist/generated/config-schema.json +7 -3
- package/dist/git-repository-analyzer.d.ts +1 -7
- package/dist/git-repository-analyzer.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17668 -1760
- package/dist/liquid-extensions.d.ts +1 -1
- package/dist/liquid-extensions.d.ts.map +1 -1
- package/dist/output/code-review/schema.json +2 -2
- package/dist/output/traces/run-2025-10-22T10-40-34-055Z.ndjson +218 -0
- package/dist/pr-analyzer.d.ts +2 -1
- package/dist/pr-analyzer.d.ts.map +1 -1
- package/dist/providers/ai-check-provider.d.ts.map +1 -1
- package/dist/providers/check-provider-registry.d.ts.map +1 -1
- package/dist/providers/check-provider.interface.d.ts +17 -6
- package/dist/providers/check-provider.interface.d.ts.map +1 -1
- package/dist/providers/command-check-provider.d.ts.map +1 -1
- package/dist/providers/github-ops-provider.d.ts.map +1 -1
- package/dist/providers/http-check-provider.d.ts.map +1 -1
- package/dist/providers/human-input-check-provider.d.ts +78 -0
- package/dist/providers/human-input-check-provider.d.ts.map +1 -0
- package/dist/providers/index.d.ts +2 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/mcp-check-provider.d.ts.map +1 -1
- package/dist/providers/memory-check-provider.d.ts.map +1 -1
- package/dist/sdk/check-execution-engine-F3662LY7.mjs +11 -0
- package/dist/sdk/{chunk-I3GQJIR7.mjs → chunk-B5QBV2QJ.mjs} +2 -2
- package/dist/sdk/chunk-B5QBV2QJ.mjs.map +1 -0
- package/dist/sdk/{chunk-IG3BFIIN.mjs → chunk-FVS5CJ5S.mjs} +30 -1
- package/dist/sdk/chunk-FVS5CJ5S.mjs.map +1 -0
- package/dist/sdk/{chunk-YXOWIDEF.mjs → chunk-TUTOLSFV.mjs} +15 -3
- package/dist/sdk/chunk-TUTOLSFV.mjs.map +1 -0
- package/dist/sdk/{chunk-4VK6WTYU.mjs → chunk-X2JKUOE5.mjs} +1375 -570
- package/dist/sdk/chunk-X2JKUOE5.mjs.map +1 -0
- package/dist/sdk/{liquid-extensions-GMEGEGC3.mjs → liquid-extensions-KVL4MKRH.mjs} +2 -2
- package/dist/sdk/{mermaid-telemetry-4DUEYCLE.mjs → mermaid-telemetry-FBF6D35S.mjs} +2 -2
- package/dist/sdk/sdk.d.mts +62 -4
- package/dist/sdk/sdk.d.ts +62 -4
- package/dist/sdk/sdk.js +1658 -723
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +60 -15
- package/dist/sdk/sdk.mjs.map +1 -1
- package/dist/sdk/{tracer-init-RJGAIOBP.mjs → tracer-init-WC75N5NW.mjs} +2 -2
- package/dist/sdk.d.ts +5 -2
- package/dist/sdk.d.ts.map +1 -1
- package/dist/telemetry/file-span-exporter.d.ts.map +1 -1
- package/dist/telemetry/opentelemetry.d.ts +2 -0
- package/dist/telemetry/opentelemetry.d.ts.map +1 -1
- package/dist/telemetry/state-capture.d.ts +53 -0
- package/dist/telemetry/state-capture.d.ts.map +1 -0
- package/dist/telemetry/trace-helpers.d.ts.map +1 -1
- package/dist/traces/run-2025-10-22T10-40-34-055Z.ndjson +218 -0
- package/dist/types/cli.d.ts +6 -0
- package/dist/types/cli.d.ts.map +1 -1
- package/dist/types/config.d.ts +44 -3
- package/dist/types/config.d.ts.map +1 -1
- package/dist/utils/config-loader.d.ts +5 -0
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/file-exclusion.d.ts +50 -0
- package/dist/utils/file-exclusion.d.ts.map +1 -0
- package/dist/utils/interactive-prompt.d.ts +26 -0
- package/dist/utils/interactive-prompt.d.ts.map +1 -0
- package/dist/utils/sandbox.d.ts +26 -0
- package/dist/utils/sandbox.d.ts.map +1 -0
- package/dist/utils/stdin-reader.d.ts +22 -0
- package/dist/utils/stdin-reader.d.ts.map +1 -0
- package/dist/utils/tracer-init.d.ts +0 -5
- package/dist/utils/tracer-init.d.ts.map +1 -1
- package/package.json +8 -4
- package/dist/output/traces/run-2025-10-19T14-24-36-341Z.ndjson +0 -40
- package/dist/output/traces/run-2025-10-19T14-24-48-674Z.ndjson +0 -40
- package/dist/output/traces/run-2025-10-19T14-24-49-238Z.ndjson +0 -40
- package/dist/output/traces/run-2025-10-19T14-24-49-761Z.ndjson +0 -40
- package/dist/output/traces/run-2025-10-19T14-24-50-279Z.ndjson +0 -12
- package/dist/sdk/check-execution-engine-S7BFPVWA.mjs +0 -11
- package/dist/sdk/chunk-4VK6WTYU.mjs.map +0 -1
- package/dist/sdk/chunk-I3GQJIR7.mjs.map +0 -1
- package/dist/sdk/chunk-IG3BFIIN.mjs.map +0 -1
- package/dist/sdk/chunk-YXOWIDEF.mjs.map +0 -1
- package/dist/traces/run-2025-10-19T14-24-36-341Z.ndjson +0 -40
- package/dist/traces/run-2025-10-19T14-24-48-674Z.ndjson +0 -40
- package/dist/traces/run-2025-10-19T14-24-49-238Z.ndjson +0 -40
- package/dist/traces/run-2025-10-19T14-24-49-761Z.ndjson +0 -40
- package/dist/traces/run-2025-10-19T14-24-50-279Z.ndjson +0 -12
- /package/dist/sdk/{check-execution-engine-S7BFPVWA.mjs.map → check-execution-engine-F3662LY7.mjs.map} +0 -0
- /package/dist/sdk/{liquid-extensions-GMEGEGC3.mjs.map → liquid-extensions-KVL4MKRH.mjs.map} +0 -0
- /package/dist/sdk/{mermaid-telemetry-4DUEYCLE.mjs.map → mermaid-telemetry-FBF6D35S.mjs.map} +0 -0
- /package/dist/sdk/{tracer-init-RJGAIOBP.mjs.map → tracer-init-WC75N5NW.mjs.map} +0 -0
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
sanitizeLabel,
|
|
6
6
|
sanitizeLabelList,
|
|
7
7
|
withPermissionsContext
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-B5QBV2QJ.mjs";
|
|
9
9
|
import "./chunk-WMJKH4XE.mjs";
|
|
10
10
|
export {
|
|
11
11
|
ReadFileTag,
|
|
@@ -15,4 +15,4 @@ export {
|
|
|
15
15
|
sanitizeLabelList,
|
|
16
16
|
withPermissionsContext
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=liquid-extensions-
|
|
18
|
+
//# sourceMappingURL=liquid-extensions-KVL4MKRH.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
addDiagramBlock,
|
|
3
3
|
addEvent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FVS5CJ5S.mjs";
|
|
5
5
|
import "./chunk-WMJKH4XE.mjs";
|
|
6
6
|
|
|
7
7
|
// src/utils/mermaid-telemetry.ts
|
|
@@ -58,4 +58,4 @@ function emitMermaidFromMarkdown(checkName, markdown, origin) {
|
|
|
58
58
|
export {
|
|
59
59
|
emitMermaidFromMarkdown
|
|
60
60
|
};
|
|
61
|
-
//# sourceMappingURL=mermaid-telemetry-
|
|
61
|
+
//# sourceMappingURL=mermaid-telemetry-FBF6D35S.mjs.map
|
package/dist/sdk/sdk.d.mts
CHANGED
|
@@ -120,7 +120,7 @@ interface FailureConditionResult {
|
|
|
120
120
|
/**
|
|
121
121
|
* Valid check types in configuration
|
|
122
122
|
*/
|
|
123
|
-
type ConfigCheckType = 'ai' | 'command' | 'http' | 'http_input' | 'http_client' | 'noop' | 'log' | 'memory' | 'github' | 'claude-code' | 'mcp';
|
|
123
|
+
type ConfigCheckType = 'ai' | 'command' | 'http' | 'http_input' | 'http_client' | 'noop' | 'log' | 'memory' | 'github' | 'claude-code' | 'mcp' | 'human-input';
|
|
124
124
|
/**
|
|
125
125
|
* Valid event triggers for checks
|
|
126
126
|
*/
|
|
@@ -325,6 +325,17 @@ interface CheckConfig {
|
|
|
325
325
|
argsTransform?: string;
|
|
326
326
|
/** Session ID for HTTP transport (optional, server may generate one) */
|
|
327
327
|
sessionId?: string;
|
|
328
|
+
/**
|
|
329
|
+
* Human input provider specific options (optional, only used when type === 'human-input').
|
|
330
|
+
*/
|
|
331
|
+
/** Placeholder text to show in input field */
|
|
332
|
+
placeholder?: string;
|
|
333
|
+
/** Allow empty input (default: false) */
|
|
334
|
+
allow_empty?: boolean;
|
|
335
|
+
/** Support multiline input (default: false) */
|
|
336
|
+
multiline?: boolean;
|
|
337
|
+
/** Default value if timeout occurs or empty input when allow_empty is true */
|
|
338
|
+
default?: string;
|
|
328
339
|
}
|
|
329
340
|
/**
|
|
330
341
|
* Backoff policy for retries
|
|
@@ -530,6 +541,32 @@ interface MemoryConfig {
|
|
|
530
541
|
/** Auto-save after operations (default: true if storage: file) */
|
|
531
542
|
auto_save?: boolean;
|
|
532
543
|
}
|
|
544
|
+
/**
|
|
545
|
+
* Human input request passed to hooks
|
|
546
|
+
*/
|
|
547
|
+
interface HumanInputRequest {
|
|
548
|
+
/** Check ID requesting input */
|
|
549
|
+
checkId: string;
|
|
550
|
+
/** Prompt to display to user */
|
|
551
|
+
prompt: string;
|
|
552
|
+
/** Placeholder text (optional) */
|
|
553
|
+
placeholder?: string;
|
|
554
|
+
/** Whether empty input is allowed */
|
|
555
|
+
allowEmpty: boolean;
|
|
556
|
+
/** Whether multiline input is supported */
|
|
557
|
+
multiline: boolean;
|
|
558
|
+
/** Timeout in milliseconds (optional) */
|
|
559
|
+
timeout?: number;
|
|
560
|
+
/** Default value if timeout or empty (optional) */
|
|
561
|
+
default?: string;
|
|
562
|
+
}
|
|
563
|
+
/**
|
|
564
|
+
* Hooks for runtime integration (SDK mode)
|
|
565
|
+
*/
|
|
566
|
+
interface VisorHooks {
|
|
567
|
+
/** Called when human input is required */
|
|
568
|
+
onHumanInput?: (request: HumanInputRequest) => Promise<string>;
|
|
569
|
+
}
|
|
533
570
|
/**
|
|
534
571
|
* Main Visor configuration
|
|
535
572
|
*/
|
|
@@ -538,14 +575,18 @@ interface VisorConfig {
|
|
|
538
575
|
version: string;
|
|
539
576
|
/** Extends from other configurations - can be file path, HTTP(S) URL, or "default" */
|
|
540
577
|
extends?: string | string[];
|
|
541
|
-
/**
|
|
542
|
-
|
|
578
|
+
/** Step configurations (recommended) */
|
|
579
|
+
steps?: Record<string, CheckConfig>;
|
|
580
|
+
/** Check configurations (legacy, use 'steps' instead) - always populated after normalization */
|
|
581
|
+
checks?: Record<string, CheckConfig>;
|
|
543
582
|
/** Output configuration */
|
|
544
583
|
output: OutputConfig;
|
|
545
584
|
/** HTTP server configuration for receiving webhooks */
|
|
546
585
|
http_server?: HttpServerConfig;
|
|
547
586
|
/** Memory storage configuration */
|
|
548
587
|
memory?: MemoryConfig;
|
|
588
|
+
/** Runtime hooks for SDK integration */
|
|
589
|
+
hooks?: VisorHooks;
|
|
549
590
|
/** Global environment variables */
|
|
550
591
|
env?: EnvConfig;
|
|
551
592
|
/** Global AI model setting */
|
|
@@ -568,6 +609,21 @@ interface VisorConfig {
|
|
|
568
609
|
routing?: RoutingDefaults;
|
|
569
610
|
}
|
|
570
611
|
|
|
612
|
+
/**
|
|
613
|
+
* Execution context passed to check providers
|
|
614
|
+
*/
|
|
615
|
+
interface ExecutionContext {
|
|
616
|
+
/** Session information for AI session reuse */
|
|
617
|
+
parentSessionId?: string;
|
|
618
|
+
reuseSession?: boolean;
|
|
619
|
+
/** CLI message value (from --message argument) */
|
|
620
|
+
cliMessage?: string;
|
|
621
|
+
/** SDK hooks for human input */
|
|
622
|
+
hooks?: {
|
|
623
|
+
onHumanInput?: (request: HumanInputRequest) => Promise<string>;
|
|
624
|
+
};
|
|
625
|
+
}
|
|
626
|
+
|
|
571
627
|
/**
|
|
572
628
|
* Statistics for a single check execution
|
|
573
629
|
*/
|
|
@@ -672,6 +728,8 @@ interface RunOptions extends VisorOptions {
|
|
|
672
728
|
};
|
|
673
729
|
/** Strict mode: treat config warnings (like unknown keys) as errors (default: false) */
|
|
674
730
|
strictValidation?: boolean;
|
|
731
|
+
/** Execution context for providers (CLI message, hooks, etc.) */
|
|
732
|
+
executionContext?: ExecutionContext;
|
|
675
733
|
}
|
|
676
734
|
/**
|
|
677
735
|
* Load and validate a Visor config.
|
|
@@ -690,4 +748,4 @@ declare function resolveChecks(checkIds: string[], config: VisorConfig | undefin
|
|
|
690
748
|
*/
|
|
691
749
|
declare function runChecks(opts?: RunOptions): Promise<AnalysisResult>;
|
|
692
750
|
|
|
693
|
-
export { type RunOptions, type TagFilter, type VisorConfig, type VisorOptions, loadConfig, resolveChecks, runChecks };
|
|
751
|
+
export { type ExecutionContext, type HumanInputRequest, type RunOptions, type TagFilter, type VisorConfig, type VisorOptions, loadConfig, resolveChecks, runChecks };
|
package/dist/sdk/sdk.d.ts
CHANGED
|
@@ -120,7 +120,7 @@ interface FailureConditionResult {
|
|
|
120
120
|
/**
|
|
121
121
|
* Valid check types in configuration
|
|
122
122
|
*/
|
|
123
|
-
type ConfigCheckType = 'ai' | 'command' | 'http' | 'http_input' | 'http_client' | 'noop' | 'log' | 'memory' | 'github' | 'claude-code' | 'mcp';
|
|
123
|
+
type ConfigCheckType = 'ai' | 'command' | 'http' | 'http_input' | 'http_client' | 'noop' | 'log' | 'memory' | 'github' | 'claude-code' | 'mcp' | 'human-input';
|
|
124
124
|
/**
|
|
125
125
|
* Valid event triggers for checks
|
|
126
126
|
*/
|
|
@@ -325,6 +325,17 @@ interface CheckConfig {
|
|
|
325
325
|
argsTransform?: string;
|
|
326
326
|
/** Session ID for HTTP transport (optional, server may generate one) */
|
|
327
327
|
sessionId?: string;
|
|
328
|
+
/**
|
|
329
|
+
* Human input provider specific options (optional, only used when type === 'human-input').
|
|
330
|
+
*/
|
|
331
|
+
/** Placeholder text to show in input field */
|
|
332
|
+
placeholder?: string;
|
|
333
|
+
/** Allow empty input (default: false) */
|
|
334
|
+
allow_empty?: boolean;
|
|
335
|
+
/** Support multiline input (default: false) */
|
|
336
|
+
multiline?: boolean;
|
|
337
|
+
/** Default value if timeout occurs or empty input when allow_empty is true */
|
|
338
|
+
default?: string;
|
|
328
339
|
}
|
|
329
340
|
/**
|
|
330
341
|
* Backoff policy for retries
|
|
@@ -530,6 +541,32 @@ interface MemoryConfig {
|
|
|
530
541
|
/** Auto-save after operations (default: true if storage: file) */
|
|
531
542
|
auto_save?: boolean;
|
|
532
543
|
}
|
|
544
|
+
/**
|
|
545
|
+
* Human input request passed to hooks
|
|
546
|
+
*/
|
|
547
|
+
interface HumanInputRequest {
|
|
548
|
+
/** Check ID requesting input */
|
|
549
|
+
checkId: string;
|
|
550
|
+
/** Prompt to display to user */
|
|
551
|
+
prompt: string;
|
|
552
|
+
/** Placeholder text (optional) */
|
|
553
|
+
placeholder?: string;
|
|
554
|
+
/** Whether empty input is allowed */
|
|
555
|
+
allowEmpty: boolean;
|
|
556
|
+
/** Whether multiline input is supported */
|
|
557
|
+
multiline: boolean;
|
|
558
|
+
/** Timeout in milliseconds (optional) */
|
|
559
|
+
timeout?: number;
|
|
560
|
+
/** Default value if timeout or empty (optional) */
|
|
561
|
+
default?: string;
|
|
562
|
+
}
|
|
563
|
+
/**
|
|
564
|
+
* Hooks for runtime integration (SDK mode)
|
|
565
|
+
*/
|
|
566
|
+
interface VisorHooks {
|
|
567
|
+
/** Called when human input is required */
|
|
568
|
+
onHumanInput?: (request: HumanInputRequest) => Promise<string>;
|
|
569
|
+
}
|
|
533
570
|
/**
|
|
534
571
|
* Main Visor configuration
|
|
535
572
|
*/
|
|
@@ -538,14 +575,18 @@ interface VisorConfig {
|
|
|
538
575
|
version: string;
|
|
539
576
|
/** Extends from other configurations - can be file path, HTTP(S) URL, or "default" */
|
|
540
577
|
extends?: string | string[];
|
|
541
|
-
/**
|
|
542
|
-
|
|
578
|
+
/** Step configurations (recommended) */
|
|
579
|
+
steps?: Record<string, CheckConfig>;
|
|
580
|
+
/** Check configurations (legacy, use 'steps' instead) - always populated after normalization */
|
|
581
|
+
checks?: Record<string, CheckConfig>;
|
|
543
582
|
/** Output configuration */
|
|
544
583
|
output: OutputConfig;
|
|
545
584
|
/** HTTP server configuration for receiving webhooks */
|
|
546
585
|
http_server?: HttpServerConfig;
|
|
547
586
|
/** Memory storage configuration */
|
|
548
587
|
memory?: MemoryConfig;
|
|
588
|
+
/** Runtime hooks for SDK integration */
|
|
589
|
+
hooks?: VisorHooks;
|
|
549
590
|
/** Global environment variables */
|
|
550
591
|
env?: EnvConfig;
|
|
551
592
|
/** Global AI model setting */
|
|
@@ -568,6 +609,21 @@ interface VisorConfig {
|
|
|
568
609
|
routing?: RoutingDefaults;
|
|
569
610
|
}
|
|
570
611
|
|
|
612
|
+
/**
|
|
613
|
+
* Execution context passed to check providers
|
|
614
|
+
*/
|
|
615
|
+
interface ExecutionContext {
|
|
616
|
+
/** Session information for AI session reuse */
|
|
617
|
+
parentSessionId?: string;
|
|
618
|
+
reuseSession?: boolean;
|
|
619
|
+
/** CLI message value (from --message argument) */
|
|
620
|
+
cliMessage?: string;
|
|
621
|
+
/** SDK hooks for human input */
|
|
622
|
+
hooks?: {
|
|
623
|
+
onHumanInput?: (request: HumanInputRequest) => Promise<string>;
|
|
624
|
+
};
|
|
625
|
+
}
|
|
626
|
+
|
|
571
627
|
/**
|
|
572
628
|
* Statistics for a single check execution
|
|
573
629
|
*/
|
|
@@ -672,6 +728,8 @@ interface RunOptions extends VisorOptions {
|
|
|
672
728
|
};
|
|
673
729
|
/** Strict mode: treat config warnings (like unknown keys) as errors (default: false) */
|
|
674
730
|
strictValidation?: boolean;
|
|
731
|
+
/** Execution context for providers (CLI message, hooks, etc.) */
|
|
732
|
+
executionContext?: ExecutionContext;
|
|
675
733
|
}
|
|
676
734
|
/**
|
|
677
735
|
* Load and validate a Visor config.
|
|
@@ -690,4 +748,4 @@ declare function resolveChecks(checkIds: string[], config: VisorConfig | undefin
|
|
|
690
748
|
*/
|
|
691
749
|
declare function runChecks(opts?: RunOptions): Promise<AnalysisResult>;
|
|
692
750
|
|
|
693
|
-
export { type RunOptions, type TagFilter, type VisorConfig, type VisorOptions, loadConfig, resolveChecks, runChecks };
|
|
751
|
+
export { type ExecutionContext, type HumanInputRequest, type RunOptions, type TagFilter, type VisorConfig, type VisorOptions, loadConfig, resolveChecks, runChecks };
|