0xray 3.4.2 → 3.4.3
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/.xray/features.json +13 -7
- package/README.md +2 -2
- package/dist/CHANGELOG.md +16 -0
- package/dist/README.md +2 -2
- package/dist/agents/architect.d.ts +2 -0
- package/dist/agents/backend-engineer.d.ts +8 -0
- package/dist/agents/bug-triage-specialist.d.ts +2 -0
- package/dist/agents/code-analyzer.d.ts +7 -0
- package/dist/agents/code-reviewer.d.ts +2 -0
- package/dist/agents/content-creator.d.ts +9 -0
- package/dist/agents/database-engineer.d.ts +8 -0
- package/dist/agents/devops-engineer.d.ts +8 -0
- package/dist/agents/frontend-engineer.d.ts +8 -0
- package/dist/agents/frontend-ui-ux-engineer.d.ts +8 -0
- package/dist/agents/growth-strategist.d.ts +8 -0
- package/dist/agents/index.d.ts +25 -0
- package/dist/agents/known-names.d.ts +26 -0
- package/dist/agents/librarian-agents-updater.d.ts +30 -0
- package/dist/agents/log-monitor.d.ts +2 -0
- package/dist/agents/mobile-developer.d.ts +9 -0
- package/dist/agents/multimodal-looker.d.ts +9 -0
- package/dist/agents/performance-engineer.d.ts +8 -0
- package/dist/agents/refactorer.d.ts +2 -0
- package/dist/agents/registry.d.ts +37 -0
- package/dist/agents/researcher.d.ts +2 -0
- package/dist/agents/security-auditor.d.ts +2 -0
- package/dist/agents/seo-consultant.d.ts +8 -0
- package/dist/agents/strategist.d.ts +7 -0
- package/dist/agents/tech-writer.d.ts +8 -0
- package/dist/agents/testing-lead.d.ts +2 -0
- package/dist/agents/types.d.ts +45 -0
- package/dist/analytics/consent-manager.d.ts +92 -0
- package/dist/analytics/emerging-pattern-detector.d.ts +66 -0
- package/dist/analytics/pattern-learning-engine.d.ts +79 -0
- package/dist/analytics/pattern-performance-tracker.d.ts +96 -0
- package/dist/analytics/predictive-analytics.d.ts +40 -0
- package/dist/analytics/prompt-pattern-analyzer.d.ts +98 -0
- package/dist/analytics/routing-performance-analyzer.d.ts +100 -0
- package/dist/analytics/routing-refiner.d.ts +102 -0
- package/dist/analytics/simple-pattern-analyzer.d.ts +79 -0
- package/dist/architect/architect-tools.d.ts +70 -0
- package/dist/architect/architectural-integrity.d.ts +20 -0
- package/dist/benchmark/performance-benchmark.d.ts +103 -0
- package/dist/cli/commands/analytics-disable.d.ts +9 -0
- package/dist/cli/commands/analytics-enable-action.d.ts +8 -0
- package/dist/cli/commands/analytics-preview.d.ts +9 -0
- package/dist/cli/commands/analytics-status.d.ts +9 -0
- package/dist/cli/commands/antigravity-status.d.ts +9 -0
- package/dist/cli/commands/archive-logs.d.ts +23 -0
- package/dist/cli/commands/credible-init.d.ts +11 -0
- package/dist/cli/commands/enforce.d.ts +12 -0
- package/dist/cli/commands/govern.d.ts +29 -0
- package/dist/cli/commands/grok-install.d.ts +7 -0
- package/dist/cli/commands/hermes-install.d.ts +2 -0
- package/dist/cli/commands/mcp-install.d.ts +4 -0
- package/dist/cli/commands/openclaw-install.d.ts +2 -0
- package/dist/cli/commands/opencode-install.d.ts +2 -0
- package/dist/cli/commands/plugin-commands.d.ts +18 -0
- package/dist/cli/commands/publish-agent.d.ts +15 -0
- package/dist/cli/commands/security-audit.d.ts +23 -0
- package/dist/cli/commands/skill-install.d.ts +6 -0
- package/dist/cli/commands/status.d.ts +41 -0
- package/dist/cli/commands/storyteller.d.ts +19 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/server.d.ts +1 -0
- package/dist/config/default-agents.d.ts +12 -0
- package/dist/config/routing-mappings.d.ts +26 -0
- package/dist/core/activity-logger.d.ts +71 -0
- package/dist/core/adaptive-kernel.d.ts +108 -0
- package/dist/core/agent-spawn-gate.d.ts +56 -0
- package/dist/core/boot-orchestrator.d.ts +99 -0
- package/dist/core/codex-formatter.d.ts +95 -0
- package/dist/core/codex-injector.d.ts +73 -0
- package/dist/core/config-loader.d.ts +59 -0
- package/dist/core/config-paths.d.ts +66 -0
- package/dist/core/context-loader.d.ts +120 -0
- package/dist/core/context-validator.d.ts +52 -0
- package/dist/core/features-config.d.ts +485 -0
- package/dist/core/framework-logger.d.ts +76 -0
- package/dist/core/index.d.ts +5 -0
- package/dist/core/kernel-patterns.d.ts +129 -0
- package/dist/core/logging-config.d.ts +10 -0
- package/dist/core/model-router.d.ts +56 -0
- package/dist/core/orchestrator.d.ts +71 -0
- package/dist/core/system-prompt-generator.d.ts +34 -0
- package/dist/core/trace-context.d.ts +12 -0
- package/dist/core/xray-activation.d.ts +14 -0
- package/dist/delegation/agent-delegator.d.ts +185 -0
- package/dist/delegation/agent-expertise.d.ts +15 -0
- package/dist/delegation/analytics/index.d.ts +11 -0
- package/dist/delegation/analytics/learning-engine.d.ts +84 -0
- package/dist/delegation/analytics/outcome-tracker.d.ts +117 -0
- package/dist/delegation/analytics/routing-analytics.d.ts +60 -0
- package/dist/delegation/ast-code-parser.d.ts +173 -0
- package/dist/delegation/codebase-context-analyzer.d.ts +164 -0
- package/dist/delegation/complexity-analyzer.d.ts +110 -0
- package/dist/delegation/complexity-core.d.ts +119 -0
- package/dist/delegation/config/types.d.ts +247 -0
- package/dist/delegation/dependency-graph-builder.d.ts +94 -0
- package/dist/delegation/index.d.ts +25 -0
- package/dist/delegation/metrics-aggregator.d.ts +91 -0
- package/dist/delegation/session-coordinator.d.ts +132 -0
- package/dist/delegation/strategy-selector.d.ts +27 -0
- package/dist/delegation/voting-coordinator.d.ts +48 -0
- package/dist/delegation/voting-types.d.ts +154 -0
- package/dist/delegation/weighted-voting-aggregator.d.ts +36 -0
- package/dist/enforcement/core/index.d.ts +14 -0
- package/dist/enforcement/core/rule-executor.d.ts +157 -0
- package/dist/enforcement/core/rule-hierarchy.d.ts +145 -0
- package/dist/enforcement/core/rule-registry.d.ts +196 -0
- package/dist/enforcement/core/violation-fixer.d.ts +105 -0
- package/dist/enforcement/enforcer-tools.d.ts +78 -0
- package/dist/enforcement/index.d.ts +22 -0
- package/dist/enforcement/loaders/agent-triage-loader.d.ts +98 -0
- package/dist/enforcement/loaders/agents-md-validation-loader.d.ts +75 -0
- package/dist/enforcement/loaders/base-loader.d.ts +82 -0
- package/dist/enforcement/loaders/codex-loader.d.ts +76 -0
- package/dist/enforcement/loaders/index.d.ts +36 -0
- package/dist/enforcement/loaders/loader-orchestrator.d.ts +96 -0
- package/dist/enforcement/loaders/processor-loader.d.ts +59 -0
- package/dist/enforcement/rule-enforcer.d.ts +142 -0
- package/dist/enforcement/test-auto-healing.d.ts +83 -0
- package/dist/enforcement/types.d.ts +500 -0
- package/dist/enforcement/validators/architecture-validators.d.ts +154 -0
- package/dist/enforcement/validators/base-validator.d.ts +87 -0
- package/dist/enforcement/validators/code-quality-validators.d.ts +88 -0
- package/dist/enforcement/validators/index.d.ts +14 -0
- package/dist/enforcement/validators/security-validators.d.ts +52 -0
- package/dist/enforcement/validators/testing-validators.d.ts +80 -0
- package/dist/enforcement/validators/validator-registry.d.ts +91 -0
- package/dist/execution/opencode-cli-invoker.d.ts +8 -0
- package/dist/execution/proposal-applier.d.ts +24 -0
- package/dist/governance/codex-policy.service.d.ts +56 -0
- package/dist/governance/governance-core.d.ts +53 -0
- package/dist/governance/governance-service.d.ts +38 -0
- package/dist/governance/governance-types.d.ts +90 -0
- package/dist/governance/llm-governance-provider.d.ts +13 -0
- package/dist/index.d.ts +28 -0
- package/dist/inference/deploy-verifier.d.ts +26 -0
- package/dist/inference/index.d.ts +10 -0
- package/dist/inference/inference-accumulator.d.ts +29 -0
- package/dist/inference/inference-agent-invoker.d.ts +3 -0
- package/dist/inference/inference-applier.d.ts +4 -0
- package/dist/inference/inference-cycle.d.ts +70 -0
- package/dist/inference/inference-proposal-generator.d.ts +3 -0
- package/dist/inference/semantic-patterns.d.ts +7 -0
- package/dist/inference/session-capture.d.ts +32 -0
- package/dist/infrastructure/iac-validator.d.ts +150 -0
- package/dist/infrastructure/schemas/cloud-schemas.d.ts +482 -0
- package/dist/integrations/base/ExampleIntegration.d.ts +46 -0
- package/dist/integrations/base/Integration.d.ts +266 -0
- package/dist/integrations/base/index.d.ts +11 -0
- package/dist/integrations/base/registry.d.ts +272 -0
- package/dist/integrations/base/types.d.ts +167 -0
- package/dist/integrations/enforcement-gate.d.ts +44 -0
- package/dist/integrations/governance/governance-client.d.ts +75 -0
- package/dist/integrations/governance/index.d.ts +98 -0
- package/dist/integrations/governance/types.d.ts +238 -0
- package/dist/integrations/grok/grok-cli.d.ts +25 -0
- package/dist/integrations/openclaw/api-server.d.ts +86 -0
- package/dist/integrations/openclaw/client.d.ts +121 -0
- package/dist/integrations/openclaw/config.d.ts +95 -0
- package/dist/integrations/openclaw/hooks/xray-hooks.d.ts +123 -0
- package/dist/integrations/openclaw/index.d.ts +100 -0
- package/dist/integrations/openclaw/types.d.ts +425 -0
- package/dist/integrations/plugins/index.d.ts +9 -0
- package/dist/integrations/plugins/plugin-integration.d.ts +288 -0
- package/dist/integrations/plugins/plugin-registry.d.ts +223 -0
- package/dist/mcps/agent-resolver.d.ts +45 -0
- package/dist/mcps/architect-tools.server.d.ts +16 -0
- package/dist/mcps/auto-format.server.d.ts +18 -0
- package/dist/mcps/boot-orchestrator.server.d.ts +48 -0
- package/dist/mcps/config/config-loader.d.ts +56 -0
- package/dist/mcps/config/config-validator.d.ts +40 -0
- package/dist/mcps/config/index.d.ts +31 -0
- package/dist/mcps/config/plugin-server-registry.d.ts +126 -0
- package/dist/mcps/config/server-config-registry.d.ts +51 -0
- package/dist/mcps/connection/connection-manager.d.ts +39 -0
- package/dist/mcps/connection/connection-pool.d.ts +64 -0
- package/dist/mcps/connection/mcp-connection.d.ts +66 -0
- package/dist/mcps/connection/process-spawner.d.ts +24 -0
- package/dist/mcps/enforcer-tools.server.d.ts +26 -0
- package/dist/mcps/estimation.server.d.ts +19 -0
- package/dist/mcps/framework-compliance-audit.server.d.ts +20 -0
- package/dist/mcps/framework-help.server.d.ts +13 -0
- package/dist/mcps/governance.server.d.ts +35 -0
- package/dist/mcps/governance.server.js +14 -2
- package/dist/mcps/in-process-skill-registry.d.ts +20 -0
- package/dist/mcps/index.d.ts +17 -0
- package/dist/mcps/knowledge-skills/api-design.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts +31 -0
- package/dist/mcps/knowledge-skills/code-analyzer.server.d.ts +29 -0
- package/dist/mcps/knowledge-skills/code-review.server.d.ts +44 -0
- package/dist/mcps/knowledge-skills/content-creator.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/database-design.server.d.ts +41 -0
- package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +41 -0
- package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/growth-strategist.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/log-monitor.server.d.ts +22 -0
- package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +17 -0
- package/dist/mcps/knowledge-skills/multimodal-looker.server.d.ts +53 -0
- package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +69 -0
- package/dist/mcps/knowledge-skills/project-analysis.server.d.ts +35 -0
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +31 -0
- package/dist/mcps/knowledge-skills/security-audit.server.d.ts +46 -0
- package/dist/mcps/knowledge-skills/seo-consultant.server.d.ts +24 -0
- package/dist/mcps/knowledge-skills/session-management.server.d.ts +22 -0
- package/dist/mcps/knowledge-skills/skill-invocation.server.d.ts +32 -0
- package/dist/mcps/knowledge-skills/storyteller.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/strategist.server.d.ts +15 -0
- package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +45 -0
- package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +34 -0
- package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +45 -0
- package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +67 -0
- package/dist/mcps/lint.server.d.ts +15 -0
- package/dist/mcps/mcp-client.d.ts +157 -0
- package/dist/mcps/model-health-check.server.d.ts +14 -0
- package/dist/mcps/orchestrator/aside-context.d.ts +21 -0
- package/dist/mcps/orchestrator/config/agent-capabilities.d.ts +39 -0
- package/dist/mcps/orchestrator/config/memory-routing-bridge.d.ts +12 -0
- package/dist/mcps/orchestrator/execution/execution-planner.d.ts +62 -0
- package/dist/mcps/orchestrator/handlers/complexity-handler.d.ts +32 -0
- package/dist/mcps/orchestrator/handlers/status-handler.d.ts +71 -0
- package/dist/mcps/orchestrator/handlers/task-handler.d.ts +53 -0
- package/dist/mcps/orchestrator/index.d.ts +6 -0
- package/dist/mcps/orchestrator/server.d.ts +38 -0
- package/dist/mcps/orchestrator/types.d.ts +128 -0
- package/dist/mcps/orchestrator.server.d.ts +10 -0
- package/dist/mcps/performance-analysis.server.d.ts +25 -0
- package/dist/mcps/processor-pipeline.server.d.ts +29 -0
- package/dist/mcps/protocol/protocol-constants.d.ts +46 -0
- package/dist/mcps/researcher-confidence.d.ts +21 -0
- package/dist/mcps/researcher.server.d.ts +29 -0
- package/dist/mcps/security-scan.server.d.ts +19 -0
- package/dist/mcps/shared/knowledge-skill-base.d.ts +17 -0
- package/dist/mcps/shared/prompt-security-validator.d.ts +44 -0
- package/dist/mcps/shared/security-scanner.d.ts +119 -0
- package/dist/mcps/simulation/index.d.ts +12 -0
- package/dist/mcps/simulation/server-simulations.d.ts +39 -0
- package/dist/mcps/simulation/simulation-engine.d.ts +51 -0
- package/dist/mcps/state-manager.server.d.ts +27 -0
- package/dist/mcps/tools/index.d.ts +14 -0
- package/dist/mcps/tools/tool-cache.d.ts +53 -0
- package/dist/mcps/tools/tool-discovery.d.ts +27 -0
- package/dist/mcps/tools/tool-executor.d.ts +41 -0
- package/dist/mcps/tools/tool-registry.d.ts +42 -0
- package/dist/mcps/types/index.d.ts +13 -0
- package/dist/mcps/types/json-rpc.types.d.ts +35 -0
- package/dist/mcps/types/mcp.types.d.ts +105 -0
- package/dist/memory-routing/index.d.ts +6 -0
- package/dist/memory-routing/null-provider.d.ts +14 -0
- package/dist/memory-routing/provider-loader.d.ts +2 -0
- package/dist/memory-routing/provider-registry.d.ts +8 -0
- package/dist/memory-routing/types.d.ts +104 -0
- package/dist/memory-routing/validate-config.d.ts +7 -0
- package/dist/metrics/agent-metrics.d.ts +169 -0
- package/dist/metrics/index.d.ts +6 -0
- package/dist/monitoring/advanced-profiler.d.ts +51 -0
- package/dist/monitoring/memory-monitor.d.ts +113 -0
- package/dist/monitoring/nudge-watchdog.d.ts +87 -0
- package/dist/monitoring/test-auto-generation-monitor.d.ts +64 -0
- package/dist/nucleus/autonomy-kernel.d.ts +48 -0
- package/dist/nucleus/default-plugins.d.ts +17 -0
- package/dist/nucleus/govern-http.d.ts +59 -0
- package/dist/nucleus/index.d.ts +17 -0
- package/dist/nucleus/kernel.d.ts +51 -0
- package/dist/nucleus/plugin-registry.d.ts +132 -0
- package/dist/nucleus/thin-dispatch.d.ts +33 -0
- package/dist/orchestrator/agent-spawn-governor.d.ts +126 -0
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +156 -0
- package/dist/orchestrator/intelligent-commit-batcher.d.ts +114 -0
- package/dist/orchestrator/multi-agent-orchestration-coordinator.d.ts +126 -0
- package/dist/orchestrator/orchestrator.d.ts +141 -0
- package/dist/orchestrator/self-direction-activation.d.ts +108 -0
- package/dist/orchestrator/universal-librarian-consultation.d.ts +98 -0
- package/dist/orchestrator/universal-registry-bridge.d.ts +84 -0
- package/dist/performance/performance-budget-enforcer.d.ts +157 -0
- package/dist/performance/performance-regression-tester.d.ts +107 -0
- package/dist/plugin/plugin-codex-context.d.ts +18 -0
- package/dist/plugin/plugin-helpers.d.ts +23 -0
- package/dist/plugin/plugin-logger.d.ts +8 -0
- package/dist/plugin/plugin-modules.d.ts +11 -0
- package/dist/plugin/plugin-quality-gate.d.ts +11 -0
- package/dist/plugin/plugin-types.d.ts +93 -0
- package/dist/plugin/xray-codex-injection.d.ts +39 -0
- package/dist/postprocessor/PostProcessor.d.ts +107 -0
- package/dist/postprocessor/analysis/CodeChangeAnalyzer.d.ts +11 -0
- package/dist/postprocessor/analysis/FailureAnalysisEngine.d.ts +39 -0
- package/dist/postprocessor/autofix/AutoFixEngine.d.ts +48 -0
- package/dist/postprocessor/autofix/FixValidator.d.ts +23 -0
- package/dist/postprocessor/config/ProcessorConfigLoader.d.ts +44 -0
- package/dist/postprocessor/config.d.ts +6 -0
- package/dist/postprocessor/escalation/EscalationEngine.d.ts +154 -0
- package/dist/postprocessor/integration.d.ts +156 -0
- package/dist/postprocessor/metamorphosis/SelfProposalEngine.d.ts +87 -0
- package/dist/postprocessor/metamorphosis/index.d.ts +2 -0
- package/dist/postprocessor/monitoring/MonitoringEngine.d.ts +40 -0
- package/dist/postprocessor/redeploy/RedeployCoordinator.d.ts +91 -0
- package/dist/postprocessor/redeploy/RetryHandler.d.ts +49 -0
- package/dist/postprocessor/services/RegressionAnalysisService.d.ts +39 -0
- package/dist/postprocessor/success/SuccessHandler.d.ts +57 -0
- package/dist/postprocessor/triggers/APITrigger.d.ts +34 -0
- package/dist/postprocessor/triggers/GitHookTrigger.d.ts +38 -0
- package/dist/postprocessor/triggers/WebhookTrigger.d.ts +46 -0
- package/dist/postprocessor/types.d.ts +227 -0
- package/dist/processors/doc-write-guard.d.ts +6 -0
- package/dist/processors/implementations/agents-md-validation-processor.d.ts +62 -0
- package/dist/processors/implementations/async-pattern-processor.d.ts +47 -0
- package/dist/processors/implementations/codex-compliance-processor.d.ts +7 -0
- package/dist/processors/implementations/commit-batcher-processor.d.ts +13 -0
- package/dist/processors/implementations/console-log-guard-processor.d.ts +32 -0
- package/dist/processors/implementations/coverage-analysis-processor.d.ts +19 -0
- package/dist/processors/implementations/error-boundary-processor.d.ts +7 -0
- package/dist/processors/implementations/inference-improvement-processor.d.ts +36 -0
- package/dist/processors/implementations/log-protection-processor.d.ts +29 -0
- package/dist/processors/implementations/nudge-processor.d.ts +21 -0
- package/dist/processors/implementations/performance-budget-processor.d.ts +49 -0
- package/dist/processors/implementations/postprocessor-chain-validator.d.ts +45 -0
- package/dist/processors/implementations/pre-validate-processor.d.ts +7 -0
- package/dist/processors/implementations/publish-preflight-processor.d.ts +37 -0
- package/dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts +7 -0
- package/dist/processors/implementations/refactoring-logging-processor.d.ts +31 -0
- package/dist/processors/implementations/regression-testing-processor.d.ts +20 -0
- package/dist/processors/implementations/session-capture-processor.d.ts +14 -0
- package/dist/processors/implementations/session-summary-processor.d.ts +26 -0
- package/dist/processors/implementations/spawn-governance-processor.d.ts +57 -0
- package/dist/processors/implementations/state-validation-processor.d.ts +11 -0
- package/dist/processors/implementations/storytelling-trigger-processor.d.ts +40 -0
- package/dist/processors/implementations/test-auto-creation-processor.d.ts +16 -0
- package/dist/processors/implementations/test-execution-processor.d.ts +11 -0
- package/dist/processors/implementations/typescript-compilation-processor.d.ts +37 -0
- package/dist/processors/implementations/version-compliance-processor.d.ts +111 -0
- package/dist/processors/processor-interfaces.d.ts +126 -0
- package/dist/processors/processor-manager.d.ts +80 -0
- package/dist/processors/processor-types.d.ts +189 -0
- package/dist/public/XrayService.d.ts +17 -0
- package/dist/public/index.d.ts +4 -0
- package/dist/reporting/framework-reporting-system.d.ts +19 -0
- package/dist/reporting/log-parser.d.ts +10 -0
- package/dist/reporting/metrics.d.ts +15 -0
- package/dist/reporting/report-formatter.d.ts +5 -0
- package/dist/reporting/types.d.ts +102 -0
- package/dist/scripts/activate-kernel-pipeline.d.ts +7 -0
- package/dist/scripts/integration.d.ts +36 -0
- package/dist/security/comprehensive-security-audit.d.ts +157 -0
- package/dist/security/index.d.ts +13 -0
- package/dist/security/prompt-security-validator.d.ts +44 -0
- package/dist/security/security-agent-coordinator.d.ts +71 -0
- package/dist/security/security-auditor.d.ts +55 -0
- package/dist/security/security-hardener.d.ts +61 -0
- package/dist/security/security-hardening-system.d.ts +238 -0
- package/dist/security/security-headers.d.ts +63 -0
- package/dist/security/security-orchestration-layer.d.ts +118 -0
- package/dist/security/security-scanner.d.ts +119 -0
- package/dist/services/inference-tuner.d.ts +76 -0
- package/dist/session/index.d.ts +3 -0
- package/dist/session/session-cleanup-manager.d.ts +117 -0
- package/dist/session/session-monitor.d.ts +132 -0
- package/dist/session/session-state-manager.d.ts +144 -0
- package/dist/skills/xray-orchestrator/index.d.ts +12 -0
- package/dist/state/context-providers.d.ts +4 -0
- package/dist/state/index.d.ts +4 -0
- package/dist/state/state-manager.d.ts +41 -0
- package/dist/state/state-types.d.ts +5 -0
- package/dist/testing/memory-regression-suite.d.ts +105 -0
- package/dist/tools/assess-complexity-tool.d.ts +28 -0
- package/dist/tools/query-routing-tool.d.ts +17 -0
- package/dist/types/metamorphosis.d.ts +21 -0
- package/dist/utils/batch-operations.d.ts +25 -0
- package/dist/utils/codex-parser.d.ts +60 -0
- package/dist/utils/command-runner.d.ts +32 -0
- package/dist/utils/import-resolver.d.ts +54 -0
- package/dist/utils/language-detector.d.ts +43 -0
- package/dist/utils/path-resolver.d.ts +48 -0
- package/dist/utils/shutdown-handler.d.ts +26 -0
- package/dist/utils/task-graph.d.ts +29 -0
- package/dist/utils/test-template-generator.d.ts +25 -0
- package/dist/utils/token-manager.d.ts +48 -0
- package/dist/validation/agent-config-validator.d.ts +110 -0
- package/dist/validation/estimation-validator.d.ts +61 -0
- package/dist/validation/orchestration-flow-validator.d.ts +87 -0
- package/dist/validation/report-content-validator.d.ts +42 -0
- package/package.json +2 -2
- package/scripts/node/consumer-install-smoke.mjs +12 -1
- package/scripts/node/install-bridges.cjs +3 -2
- package/src/mcps/governance.server.ts +15 -2
- package/xray/features.json +13 -7
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Violation Fixer - Handle violation fixes via agent delegation
|
|
3
|
+
*
|
|
4
|
+
* This class maps rule violations to appropriate agents/skills and attempts
|
|
5
|
+
* automatic fixes. It serves as the central governance point for all
|
|
6
|
+
* violation remediation in the 0xRay framework.
|
|
7
|
+
*
|
|
8
|
+
* Phase 5 refactoring: Extracted from RuleEnforcer.
|
|
9
|
+
*
|
|
10
|
+
* @module enforcement/core
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const fixer = new ViolationFixer();
|
|
15
|
+
*
|
|
16
|
+
* // Register a custom fix strategy
|
|
17
|
+
* fixer.registerFixStrategy('my-rule', {
|
|
18
|
+
* agent: 'refactorer',
|
|
19
|
+
* skill: 'code-review',
|
|
20
|
+
* tool: 'analyze_code_quality',
|
|
21
|
+
* priority: 1
|
|
22
|
+
* });
|
|
23
|
+
*
|
|
24
|
+
* // Fix violations
|
|
25
|
+
* const fixes = await fixer.fixViolations(violations, context);
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
import { IViolationFixer, Violation, ViolationFix, FixStrategy, RuleValidationContext } from '../types.js';
|
|
29
|
+
/**
|
|
30
|
+
* ViolationFixer handles violation fixes by delegating to appropriate agents/skills.
|
|
31
|
+
*
|
|
32
|
+
* Key responsibilities:
|
|
33
|
+
* - Map violations to agents/skills
|
|
34
|
+
* - Attempt automatic fixes via MCP skill invocation
|
|
35
|
+
* - Track fix success/failure
|
|
36
|
+
* - Handle fix strategies
|
|
37
|
+
*
|
|
38
|
+
* This is the central governance point for all codex compliance actions.
|
|
39
|
+
*/
|
|
40
|
+
export declare class ViolationFixer implements IViolationFixer {
|
|
41
|
+
/** Map of rule IDs to their fix strategies */
|
|
42
|
+
private fixStrategies;
|
|
43
|
+
/** Default tool mapping for skills */
|
|
44
|
+
private toolMappings;
|
|
45
|
+
constructor();
|
|
46
|
+
/**
|
|
47
|
+
* Attempt to fix violations by delegating to appropriate agents/skills.
|
|
48
|
+
*
|
|
49
|
+
* For each violation:
|
|
50
|
+
* - Finds the appropriate agent/skill mapping
|
|
51
|
+
* - Invokes the skill via MCP
|
|
52
|
+
* - Tracks the result
|
|
53
|
+
*
|
|
54
|
+
* @param violations - Array of violations to fix
|
|
55
|
+
* @param context - Validation context with code and operation info
|
|
56
|
+
* @returns Array of fix attempts with results
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const violations = [{ rule: 'no-duplicate-code', message: 'Duplicate detected' }];
|
|
61
|
+
* const fixes = await fixer.fixViolations(violations, context);
|
|
62
|
+
* console.log(fixes[0].success); // true if fix succeeded
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
fixViolations(violations: Violation[], context: RuleValidationContext): Promise<ViolationFix[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Register a custom fix strategy for a rule.
|
|
68
|
+
*
|
|
69
|
+
* @param ruleId - The rule ID to register the strategy for
|
|
70
|
+
* @param strategy - The fix strategy configuration
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* fixer.registerFixStrategy('custom-rule', {
|
|
75
|
+
* agent: 'refactorer',
|
|
76
|
+
* skill: 'code-review',
|
|
77
|
+
* tool: 'analyze_code_quality',
|
|
78
|
+
* priority: 1
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
registerFixStrategy(ruleId: string, strategy: FixStrategy): void;
|
|
83
|
+
/**
|
|
84
|
+
* Get the fix strategy for a rule.
|
|
85
|
+
*
|
|
86
|
+
* @param ruleId - The rule ID to get the strategy for
|
|
87
|
+
* @returns The fix strategy or undefined if not found
|
|
88
|
+
*/
|
|
89
|
+
getFixStrategy(ruleId: string): FixStrategy | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* Get the appropriate tool name for a skill.
|
|
92
|
+
* Uses internal tool mappings or defaults to analyze_code_quality.
|
|
93
|
+
*
|
|
94
|
+
* @param skill - The skill name
|
|
95
|
+
* @returns The tool name to use
|
|
96
|
+
*/
|
|
97
|
+
private getToolForSkill;
|
|
98
|
+
/**
|
|
99
|
+
* Initialize default fix strategies for all known rules.
|
|
100
|
+
* This maps rule IDs to their corresponding agents/skills.
|
|
101
|
+
*
|
|
102
|
+
* Central governance mapping for all codex compliance actions.
|
|
103
|
+
*/
|
|
104
|
+
private initializeFixStrategies;
|
|
105
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enforcer Tools - Integration layer between enforcer agent and rule enforcement system
|
|
3
|
+
* Provides tools for codex compliance, rule validation, and contextual analysis enforcement
|
|
4
|
+
*/
|
|
5
|
+
import { RuleValidationContext, ValidationReport } from "./rule-enforcer.js";
|
|
6
|
+
export interface RoutingRecommendation {
|
|
7
|
+
suggestedAgent: string;
|
|
8
|
+
suggestedSkill: string;
|
|
9
|
+
confidence: number;
|
|
10
|
+
matchedKeyword?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function getTaskRoutingRecommendation(taskDescription: string): RoutingRecommendation;
|
|
13
|
+
/**
|
|
14
|
+
* Pre-process and validate that the routing is appropriate for the operation
|
|
15
|
+
* This is the integration point between TaskSkillRouter and RuleEnforcer
|
|
16
|
+
*/
|
|
17
|
+
export declare function preProcessAndRoute(operation: string, context: RuleValidationContext): Promise<{
|
|
18
|
+
enhancedContext: RuleValidationContext;
|
|
19
|
+
routing: RoutingRecommendation;
|
|
20
|
+
}>;
|
|
21
|
+
export interface EnforcementResult {
|
|
22
|
+
operation: string;
|
|
23
|
+
passed: boolean;
|
|
24
|
+
blocked: boolean;
|
|
25
|
+
errors: string[];
|
|
26
|
+
warnings: string[];
|
|
27
|
+
fixes: Array<{
|
|
28
|
+
type: "auto" | "manual";
|
|
29
|
+
description: string;
|
|
30
|
+
action?: () => Promise<void>;
|
|
31
|
+
}>;
|
|
32
|
+
report: ValidationReport;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Rule Validation Tool - Validates operations against rule hierarchy
|
|
36
|
+
* Now with intelligent task routing via TaskSkillRouter
|
|
37
|
+
* Automatically delegates to best agent when confidence is high
|
|
38
|
+
*/
|
|
39
|
+
export declare function ruleValidation(operation: string, context: RuleValidationContext): Promise<EnforcementResult>;
|
|
40
|
+
/**
|
|
41
|
+
* Context Analysis Validation Tool - Validates contextual analysis integration
|
|
42
|
+
*/
|
|
43
|
+
export declare function contextAnalysisValidation(files: string[], operation: string): Promise<EnforcementResult>;
|
|
44
|
+
/**
|
|
45
|
+
* Codex Enforcement Tool - Comprehensive codex compliance validation
|
|
46
|
+
*/
|
|
47
|
+
export declare function codexEnforcement(operation: string, files: string[], newCode?: string): Promise<EnforcementResult>;
|
|
48
|
+
/**
|
|
49
|
+
* Quality Gate Check Tool - Final validation before commit/execution
|
|
50
|
+
*/
|
|
51
|
+
export declare function qualityGateCheck(operation: string, context: {
|
|
52
|
+
files: string[];
|
|
53
|
+
newCode?: string;
|
|
54
|
+
tests?: string[];
|
|
55
|
+
dependencies?: string[];
|
|
56
|
+
}): Promise<EnforcementResult>;
|
|
57
|
+
/**
|
|
58
|
+
* Get comprehensive enforcement status
|
|
59
|
+
*/
|
|
60
|
+
export declare function getEnforcementStatus(): Promise<{
|
|
61
|
+
rules: number;
|
|
62
|
+
validations: number;
|
|
63
|
+
violations: number;
|
|
64
|
+
fixes: number;
|
|
65
|
+
success: boolean;
|
|
66
|
+
}>;
|
|
67
|
+
/**
|
|
68
|
+
* Run comprehensive pre-commit validation
|
|
69
|
+
*/
|
|
70
|
+
export declare function runPreCommitValidation(files: string[], operation?: string): Promise<EnforcementResult>;
|
|
71
|
+
export declare const enforcerTools: {
|
|
72
|
+
ruleValidation: typeof ruleValidation;
|
|
73
|
+
contextAnalysisValidation: typeof contextAnalysisValidation;
|
|
74
|
+
codexEnforcement: typeof codexEnforcement;
|
|
75
|
+
qualityGateCheck: typeof qualityGateCheck;
|
|
76
|
+
getEnforcementStatus: typeof getEnforcementStatus;
|
|
77
|
+
runPreCommitValidation: typeof runPreCommitValidation;
|
|
78
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rule Enforcement Module
|
|
3
|
+
*
|
|
4
|
+
* This module provides rule enforcement capabilities for the 0xRay framework.
|
|
5
|
+
* It validates code against development rules and codex compliance requirements.
|
|
6
|
+
*
|
|
7
|
+
* @module enforcement
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { RuleEnforcer, RuleDefinition, ValidationReport } from './enforcement/index.js';
|
|
12
|
+
*
|
|
13
|
+
* const enforcer = new RuleEnforcer();
|
|
14
|
+
* const report = await enforcer.validateOperation('write', context);
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export { RuleEnforcer } from "./rule-enforcer.js";
|
|
18
|
+
export { RuleRegistry, RuleHierarchy, RuleExecutor, ViolationFixer, } from "./core/index.js";
|
|
19
|
+
export { RuleDefinition, RuleValidationContext, RuleValidationResult, ValidationReport, Violation, ViolationFix, RuleFix, RuleCategory, RuleSeverity, RuleFixType, IRuleRegistry, IValidator, IValidatorRegistry, IRuleHierarchy, IRuleExecutor, IViolationFixer, ExecutionOptions, BatchExecutionOptions, FixStrategy, isRuleValidationResult, } from "./types.js";
|
|
20
|
+
export { BaseValidator, ValidatorRegistry, globalValidatorRegistry, NoDuplicateCodeValidator, ContextAnalysisIntegrationValidator, MemoryOptimizationValidator, DocumentationRequiredValidator, NoOverEngineeringValidator, CleanDebugLogsValidator, ConsoleLogUsageValidator, } from "./validators/index.js";
|
|
21
|
+
export { BaseLoader, CodexLoader, AgentTriageLoader, ProcessorLoader, AgentsMdValidationLoader, LoaderOrchestrator, type LoaderOrchestratorOptions, type LoaderOrchestratorResult, } from "./loaders/index.js";
|
|
22
|
+
export * as enforcerTools from "./enforcer-tools.js";
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Triage Rule Loader
|
|
3
|
+
*
|
|
4
|
+
* Loads agent triage rules from AGENTS.md file.
|
|
5
|
+
* Extracts triage guidelines and converts them to RuleDefinition objects.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted from RuleEnforcer.loadAgentTriageRules()
|
|
8
|
+
*
|
|
9
|
+
* @module loaders/agent-triage-loader
|
|
10
|
+
*/
|
|
11
|
+
import { BaseLoader } from "./base-loader.js";
|
|
12
|
+
import { RuleDefinition } from "../types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Loader for agent triage rules from AGENTS.md.
|
|
15
|
+
* Parses the markdown file to extract triage guidelines.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const loader = new AgentTriageLoader();
|
|
20
|
+
* if (await loader.isAvailable()) {
|
|
21
|
+
* const rules = await loader.load();
|
|
22
|
+
* console.log(`Loaded ${rules.length} triage rules`);
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class AgentTriageLoader extends BaseLoader {
|
|
27
|
+
readonly name = "agent-triage";
|
|
28
|
+
/**
|
|
29
|
+
* Path to the AGENTS.md file.
|
|
30
|
+
*/
|
|
31
|
+
private get agentsPath();
|
|
32
|
+
/**
|
|
33
|
+
* Check if AGENTS.md exists.
|
|
34
|
+
* @returns Promise resolving to true if AGENTS.md is available
|
|
35
|
+
*/
|
|
36
|
+
isAvailable(): Promise<boolean>;
|
|
37
|
+
/**
|
|
38
|
+
* Load agent triage rules from AGENTS.md.
|
|
39
|
+
* @returns Promise resolving to array of rule definitions
|
|
40
|
+
*/
|
|
41
|
+
load(): Promise<RuleDefinition[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Extract the triage section from AGENTS.md content.
|
|
44
|
+
* @param content - Full content of AGENTS.md
|
|
45
|
+
* @returns Triage section content or null if not found
|
|
46
|
+
*/
|
|
47
|
+
private extractTriageSection;
|
|
48
|
+
/**
|
|
49
|
+
* Extract additional rules from AGENTS.md content.
|
|
50
|
+
* @param content - Full content of AGENTS.md
|
|
51
|
+
* @returns Array of additional rule definitions
|
|
52
|
+
*/
|
|
53
|
+
private extractAdditionalRules;
|
|
54
|
+
/**
|
|
55
|
+
* Create the triage commit status reporting rule.
|
|
56
|
+
* @returns RuleDefinition for triage commit status
|
|
57
|
+
*/
|
|
58
|
+
private createTriageCommitStatusRule;
|
|
59
|
+
/**
|
|
60
|
+
* Create a reflection guideline rule.
|
|
61
|
+
* @returns RuleDefinition for reflection guidelines
|
|
62
|
+
*/
|
|
63
|
+
private createReflectionGuidelineRule;
|
|
64
|
+
/**
|
|
65
|
+
* Create a complexity routing rule.
|
|
66
|
+
* @returns RuleDefinition for complexity routing
|
|
67
|
+
*/
|
|
68
|
+
private createComplexityRoutingRule;
|
|
69
|
+
/**
|
|
70
|
+
* Create an agent invocation rule.
|
|
71
|
+
* @returns RuleDefinition for agent invocation
|
|
72
|
+
*/
|
|
73
|
+
private createAgentInvocationRule;
|
|
74
|
+
/**
|
|
75
|
+
* Validate triage reporting requirements.
|
|
76
|
+
* @param context - Validation context
|
|
77
|
+
* @returns Validation result
|
|
78
|
+
*/
|
|
79
|
+
private validateTriageReporting;
|
|
80
|
+
/**
|
|
81
|
+
* Validate reflection guidelines.
|
|
82
|
+
* @param context - Validation context
|
|
83
|
+
* @returns Validation result
|
|
84
|
+
*/
|
|
85
|
+
private validateReflectionGuidelines;
|
|
86
|
+
/**
|
|
87
|
+
* Validate complexity routing.
|
|
88
|
+
* @param context - Validation context
|
|
89
|
+
* @returns Validation result
|
|
90
|
+
*/
|
|
91
|
+
private validateComplexityRouting;
|
|
92
|
+
/**
|
|
93
|
+
* Validate agent invocation syntax.
|
|
94
|
+
* @param context - Validation context
|
|
95
|
+
* @returns Validation result
|
|
96
|
+
*/
|
|
97
|
+
private validateAgentInvocation;
|
|
98
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AGENTS.md Validation Rule Loader
|
|
3
|
+
*
|
|
4
|
+
* Loads validation rules for AGENTS.md file existence and currency.
|
|
5
|
+
* Ensures that AGENTS.md exists and is properly maintained.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted from RuleEnforcer.loadAgentsMdValidationRule()
|
|
8
|
+
*
|
|
9
|
+
* @module loaders/agents-md-validation-loader
|
|
10
|
+
*/
|
|
11
|
+
import { BaseLoader } from "./base-loader.js";
|
|
12
|
+
import { RuleDefinition } from "../types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Loader for AGENTS.md validation rules.
|
|
15
|
+
* Creates rules that validate AGENTS.md existence and currency.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const loader = new AgentsMdValidationLoader();
|
|
20
|
+
* if (await loader.isAvailable()) {
|
|
21
|
+
* const rules = await loader.load();
|
|
22
|
+
* console.log(`Loaded ${rules.length} AGENTS.md validation rules`);
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class AgentsMdValidationLoader extends BaseLoader {
|
|
27
|
+
readonly name = "agents-md-validation";
|
|
28
|
+
/**
|
|
29
|
+
* Path to the AGENTS.md file.
|
|
30
|
+
*/
|
|
31
|
+
private get agentsPath();
|
|
32
|
+
/**
|
|
33
|
+
* Check if AGENTS.md exists.
|
|
34
|
+
* @returns Promise resolving to true if AGENTS.md is available
|
|
35
|
+
*/
|
|
36
|
+
isAvailable(): Promise<boolean>;
|
|
37
|
+
/**
|
|
38
|
+
* Load AGENTS.md validation rules.
|
|
39
|
+
* @returns Promise resolving to array of rule definitions
|
|
40
|
+
*/
|
|
41
|
+
load(): Promise<RuleDefinition[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Create AGENTS.md existence rule.
|
|
44
|
+
* @returns RuleDefinition for AGENTS.md existence
|
|
45
|
+
*/
|
|
46
|
+
private createAgentsMdExistsRule;
|
|
47
|
+
/**
|
|
48
|
+
* Create AGENTS.md currency rule.
|
|
49
|
+
* @returns RuleDefinition for AGENTS.md currency
|
|
50
|
+
*/
|
|
51
|
+
private createAgentsMdCurrentRule;
|
|
52
|
+
/**
|
|
53
|
+
* Create AGENTS.md structure rule.
|
|
54
|
+
* @returns RuleDefinition for AGENTS.md structure
|
|
55
|
+
*/
|
|
56
|
+
private createAgentsMdStructureRule;
|
|
57
|
+
/**
|
|
58
|
+
* Validate that AGENTS.md exists.
|
|
59
|
+
* @param context - Validation context
|
|
60
|
+
* @returns Validation result
|
|
61
|
+
*/
|
|
62
|
+
private validateAgentsMdExists;
|
|
63
|
+
/**
|
|
64
|
+
* Validate that AGENTS.md is current (updated within 30 days).
|
|
65
|
+
* @param context - Validation context
|
|
66
|
+
* @returns Validation result
|
|
67
|
+
*/
|
|
68
|
+
private validateAgentsMdCurrent;
|
|
69
|
+
/**
|
|
70
|
+
* Validate AGENTS.md structure.
|
|
71
|
+
* @param context - Validation context
|
|
72
|
+
* @returns Validation result
|
|
73
|
+
*/
|
|
74
|
+
private validateAgentsMdStructure;
|
|
75
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Rule Loader
|
|
3
|
+
*
|
|
4
|
+
* Abstract base class for all rule loaders. Provides common functionality
|
|
5
|
+
* for loading rules from various sources such as files, APIs, or databases.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted from RuleEnforcer to separate loading logic
|
|
8
|
+
* from rule execution.
|
|
9
|
+
*
|
|
10
|
+
* @module loaders/base-loader
|
|
11
|
+
*/
|
|
12
|
+
import * as fs from "fs";
|
|
13
|
+
import { IRuleLoader, RuleDefinition } from "../types.js";
|
|
14
|
+
/**
|
|
15
|
+
* Abstract base class implementing IRuleLoader interface.
|
|
16
|
+
* Provides common file loading utilities and error handling.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* class MyLoader extends BaseLoader {
|
|
21
|
+
* readonly name = 'my-loader';
|
|
22
|
+
*
|
|
23
|
+
* async load(): Promise<RuleDefinition[]> {
|
|
24
|
+
* const data = await this.loadJsonFile('rules.json');
|
|
25
|
+
* return this.transformToRules(data);
|
|
26
|
+
* }
|
|
27
|
+
*
|
|
28
|
+
* async isAvailable(): Promise<boolean> {
|
|
29
|
+
* return this.fileExists('rules.json');
|
|
30
|
+
* }
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare abstract class BaseLoader implements IRuleLoader {
|
|
35
|
+
/** Unique name identifier for this loader */
|
|
36
|
+
abstract readonly name: string;
|
|
37
|
+
/**
|
|
38
|
+
* Load rules from the source.
|
|
39
|
+
* Must be implemented by concrete loader classes.
|
|
40
|
+
* @returns Promise resolving to array of rule definitions
|
|
41
|
+
*/
|
|
42
|
+
abstract load(): Promise<RuleDefinition[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Check if this loader's source is available.
|
|
45
|
+
* Must be implemented by concrete loader classes.
|
|
46
|
+
* @returns Promise resolving to true if source exists and is accessible
|
|
47
|
+
*/
|
|
48
|
+
abstract isAvailable(): Promise<boolean>;
|
|
49
|
+
/**
|
|
50
|
+
* Load and parse a JSON file.
|
|
51
|
+
* @param filePath - Path to the JSON file
|
|
52
|
+
* @returns Promise resolving to parsed JSON data
|
|
53
|
+
* @throws Error if file cannot be read or parsed
|
|
54
|
+
*/
|
|
55
|
+
protected loadJsonFile<T = unknown>(filePath: string): Promise<T>;
|
|
56
|
+
/**
|
|
57
|
+
* Check if a file exists.
|
|
58
|
+
* @param filePath - Path to check
|
|
59
|
+
* @returns Promise resolving to true if file exists
|
|
60
|
+
*/
|
|
61
|
+
protected fileExists(filePath: string): Promise<boolean>;
|
|
62
|
+
/**
|
|
63
|
+
* Read file content as string.
|
|
64
|
+
* @param filePath - Path to the file
|
|
65
|
+
* @returns Promise resolving to file content
|
|
66
|
+
* @throws Error if file cannot be read
|
|
67
|
+
*/
|
|
68
|
+
protected readFile(filePath: string): Promise<string>;
|
|
69
|
+
/**
|
|
70
|
+
* Resolve a path relative to the current working directory.
|
|
71
|
+
* @param relativePath - Path relative to process.cwd()
|
|
72
|
+
* @returns Absolute path
|
|
73
|
+
*/
|
|
74
|
+
protected resolvePath(relativePath: string): string;
|
|
75
|
+
/**
|
|
76
|
+
* Get file stats.
|
|
77
|
+
* @param filePath - Path to the file
|
|
78
|
+
* @returns Promise resolving to file stats
|
|
79
|
+
* @throws Error if file cannot be accessed
|
|
80
|
+
*/
|
|
81
|
+
protected getFileStats(filePath: string): Promise<fs.Stats>;
|
|
82
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Codex Rule Loader
|
|
3
|
+
*
|
|
4
|
+
* Loads codex terms from the resolved codex path and converts them
|
|
5
|
+
* to RuleDefinition objects for the rule enforcement system.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted from RuleEnforcer.loadCodexRules()
|
|
8
|
+
*
|
|
9
|
+
* @module loaders/codex-loader
|
|
10
|
+
*/
|
|
11
|
+
import { BaseLoader } from "./base-loader.js";
|
|
12
|
+
import { RuleDefinition } from "../types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Loader for codex terms from codex.json.
|
|
15
|
+
* Converts codex terms to RuleDefinition objects.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const loader = new CodexLoader();
|
|
20
|
+
* if (await loader.isAvailable()) {
|
|
21
|
+
* const rules = await loader.load();
|
|
22
|
+
* console.log(`Loaded ${rules.length} codex rules`);
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class CodexLoader extends BaseLoader {
|
|
27
|
+
readonly name = "codex";
|
|
28
|
+
/**
|
|
29
|
+
* Path to the codex.json file.
|
|
30
|
+
* Uses the standard config-paths resolver which checks .xray/, etc.
|
|
31
|
+
*/
|
|
32
|
+
private get codexPath();
|
|
33
|
+
/**
|
|
34
|
+
* Check if codex.json exists.
|
|
35
|
+
* @returns Promise resolving to true if codex.json is available
|
|
36
|
+
*/
|
|
37
|
+
isAvailable(): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Load codex terms and convert to RuleDefinition objects.
|
|
40
|
+
* @returns Promise resolving to array of rule definitions
|
|
41
|
+
*/
|
|
42
|
+
load(): Promise<RuleDefinition[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Type guard to check if an object is a valid CodexTerm.
|
|
45
|
+
* @param term - Object to validate
|
|
46
|
+
* @returns True if the object is a valid CodexTerm
|
|
47
|
+
*/
|
|
48
|
+
private isValidCodexTerm;
|
|
49
|
+
/**
|
|
50
|
+
* Convert a codex term to a RuleDefinition.
|
|
51
|
+
* @param key - Term key (number as string)
|
|
52
|
+
* @param term - Codex term data
|
|
53
|
+
* @returns RuleDefinition object
|
|
54
|
+
*/
|
|
55
|
+
private convertTermToRule;
|
|
56
|
+
/**
|
|
57
|
+
* Map codex category to RuleCategory.
|
|
58
|
+
* @param category - Codex category string
|
|
59
|
+
* @returns Mapped RuleCategory
|
|
60
|
+
*/
|
|
61
|
+
private mapCodexCategory;
|
|
62
|
+
/**
|
|
63
|
+
* Map codex severity to RuleSeverity.
|
|
64
|
+
* @param enforcementLevel - Codex enforcement level
|
|
65
|
+
* @param zeroTolerance - Whether term has zero tolerance
|
|
66
|
+
* @returns Mapped RuleSeverity
|
|
67
|
+
*/
|
|
68
|
+
private mapCodexSeverity;
|
|
69
|
+
/**
|
|
70
|
+
* Create a validator function for a codex term.
|
|
71
|
+
* Now actually validates code against the term requirements.
|
|
72
|
+
* @param term - Codex term data
|
|
73
|
+
* @returns Validator function that performs real validation
|
|
74
|
+
*/
|
|
75
|
+
private createCodexValidator;
|
|
76
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rule Loaders Module
|
|
3
|
+
*
|
|
4
|
+
* This module provides rule loading capabilities for the 0xRay framework.
|
|
5
|
+
* Loaders encapsulate the logic for loading rules from various sources.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted async rule loading from RuleEnforcer
|
|
8
|
+
*
|
|
9
|
+
* @module loaders
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* import {
|
|
14
|
+
* LoaderOrchestrator,
|
|
15
|
+
* CodexLoader,
|
|
16
|
+
* AgentTriageLoader,
|
|
17
|
+
* IRuleLoader
|
|
18
|
+
* } from './enforcement/loaders/index.js';
|
|
19
|
+
*
|
|
20
|
+
* // Use the orchestrator to load all rules
|
|
21
|
+
* const orchestrator = new LoaderOrchestrator();
|
|
22
|
+
* const result = await orchestrator.loadAllRules();
|
|
23
|
+
*
|
|
24
|
+
* // Or use individual loaders
|
|
25
|
+
* const codexLoader = new CodexLoader();
|
|
26
|
+
* if (await codexLoader.isAvailable()) {
|
|
27
|
+
* const codexRules = await codexLoader.load();
|
|
28
|
+
* }
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export { BaseLoader } from "./base-loader.js";
|
|
32
|
+
export { CodexLoader } from "./codex-loader.js";
|
|
33
|
+
export { AgentTriageLoader } from "./agent-triage-loader.js";
|
|
34
|
+
export { ProcessorLoader } from "./processor-loader.js";
|
|
35
|
+
export { AgentsMdValidationLoader } from "./agents-md-validation-loader.js";
|
|
36
|
+
export { LoaderOrchestrator, type LoaderOrchestratorOptions, type LoaderOrchestratorResult, } from "./loader-orchestrator.js";
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loader Orchestrator
|
|
3
|
+
*
|
|
4
|
+
* Coordinates multiple rule loaders to load rules from various sources.
|
|
5
|
+
* Manages loader execution, error handling, and rule aggregation.
|
|
6
|
+
*
|
|
7
|
+
* Phase 4 refactoring: Extracted loader orchestration from RuleEnforcer
|
|
8
|
+
*
|
|
9
|
+
* @module loaders/loader-orchestrator
|
|
10
|
+
*/
|
|
11
|
+
import { IRuleLoader, RuleDefinition } from "../types.js";
|
|
12
|
+
/**
|
|
13
|
+
* Options for LoaderOrchestrator configuration.
|
|
14
|
+
*/
|
|
15
|
+
export interface LoaderOrchestratorOptions {
|
|
16
|
+
/** Whether to continue loading if one loader fails */
|
|
17
|
+
continueOnError?: boolean;
|
|
18
|
+
/** Whether to log loader activity */
|
|
19
|
+
enableLogging?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Result from the orchestrator's load operation.
|
|
23
|
+
*/
|
|
24
|
+
export interface LoaderOrchestratorResult {
|
|
25
|
+
/** All loaded rules */
|
|
26
|
+
rules: RuleDefinition[];
|
|
27
|
+
/** Number of successful loaders */
|
|
28
|
+
successfulLoaders: number;
|
|
29
|
+
/** Number of failed loaders */
|
|
30
|
+
failedLoaders: number;
|
|
31
|
+
/** Loader-specific results */
|
|
32
|
+
loaderResults: Map<string, {
|
|
33
|
+
success: boolean;
|
|
34
|
+
ruleCount: number;
|
|
35
|
+
error?: string;
|
|
36
|
+
}>;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Orchestrates multiple rule loaders to load rules from various sources.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const orchestrator = new LoaderOrchestrator();
|
|
44
|
+
* const result = await orchestrator.loadAllRules();
|
|
45
|
+
* console.log(`Loaded ${result.rules.length} rules from ${result.successfulLoaders} loaders`);
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export declare class LoaderOrchestrator {
|
|
49
|
+
private loaders;
|
|
50
|
+
private options;
|
|
51
|
+
/**
|
|
52
|
+
* Create a new LoaderOrchestrator.
|
|
53
|
+
* @param options - Configuration options
|
|
54
|
+
*/
|
|
55
|
+
constructor(options?: LoaderOrchestratorOptions);
|
|
56
|
+
/**
|
|
57
|
+
* Register the default set of loaders.
|
|
58
|
+
*/
|
|
59
|
+
private registerDefaultLoaders;
|
|
60
|
+
/**
|
|
61
|
+
* Load all rules from all available loaders.
|
|
62
|
+
* @returns Promise resolving to orchestrator result
|
|
63
|
+
*/
|
|
64
|
+
loadAllRules(): Promise<LoaderOrchestratorResult>;
|
|
65
|
+
/**
|
|
66
|
+
* Register a custom loader.
|
|
67
|
+
* @param loader - Loader to register
|
|
68
|
+
*/
|
|
69
|
+
registerLoader(loader: IRuleLoader): void;
|
|
70
|
+
/**
|
|
71
|
+
* Get all registered loaders.
|
|
72
|
+
* @returns Array of registered loaders
|
|
73
|
+
*/
|
|
74
|
+
getLoaders(): IRuleLoader[];
|
|
75
|
+
/**
|
|
76
|
+
* Get loader by name.
|
|
77
|
+
* @param name - Loader name
|
|
78
|
+
* @returns Loader instance or undefined
|
|
79
|
+
*/
|
|
80
|
+
getLoader(name: string): IRuleLoader | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* Remove a loader by name.
|
|
83
|
+
* @param name - Loader name
|
|
84
|
+
* @returns True if loader was removed
|
|
85
|
+
*/
|
|
86
|
+
removeLoader(name: string): boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Clear all registered loaders.
|
|
89
|
+
*/
|
|
90
|
+
clearLoaders(): void;
|
|
91
|
+
/**
|
|
92
|
+
* Get count of registered loaders.
|
|
93
|
+
* @returns Number of loaders
|
|
94
|
+
*/
|
|
95
|
+
getLoaderCount(): number;
|
|
96
|
+
}
|