0xray 2.0.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/.opencode/agents/api-design.yml +31 -0
- package/.opencode/agents/architect.yml +15 -0
- package/.opencode/agents/architecture-patterns.yml +14 -0
- package/.opencode/agents/auto-format.yml +14 -0
- package/.opencode/agents/backend-engineer.yml +12 -0
- package/.opencode/agents/boot-orchestrator.yml +14 -0
- package/.opencode/agents/bug-triage-specialist.yml +15 -0
- package/.opencode/agents/code-analyzer.yml +12 -0
- package/.opencode/agents/code-reviewer.yml +14 -0
- package/.opencode/agents/content-creator.yml +12 -0
- package/.opencode/agents/database-engineer.yml +12 -0
- package/.opencode/agents/devops-engineer.yml +12 -0
- package/.opencode/agents/framework-compliance-audit.yml +14 -0
- package/.opencode/agents/frontend-engineer.yml +12 -0
- package/.opencode/agents/frontend-ui-ux-engineer.yml +12 -0
- package/.opencode/agents/git-workflow.yml +15 -0
- package/.opencode/agents/growth-strategist.yml +12 -0
- package/.opencode/agents/hermes-agent.yml +12 -0
- package/.opencode/agents/inference-improve.yml +12 -0
- package/.opencode/agents/lint.yml +14 -0
- package/.opencode/agents/log-monitor.yml +12 -0
- package/.opencode/agents/mobile-developer.yml +12 -0
- package/.opencode/agents/model-health-check.yml +12 -0
- package/.opencode/agents/multimodal-looker.yml +12 -0
- package/.opencode/agents/performance-analysis.yml +12 -0
- package/.opencode/agents/performance-engineer.yml +12 -0
- package/.opencode/agents/performance-optimization.yml +12 -0
- package/.opencode/agents/processor-pipeline.yml +14 -0
- package/.opencode/agents/project-analysis.yml +12 -0
- package/.opencode/agents/refactorer.yml +12 -0
- package/.opencode/agents/researcher.yml +12 -0
- package/.opencode/agents/security-auditor.yml +12 -0
- package/.opencode/agents/security-scan.yml +12 -0
- package/.opencode/agents/seo-consultant.yml +12 -0
- package/.opencode/agents/session-management.yml +12 -0
- package/.opencode/agents/state-manager.yml +12 -0
- package/.opencode/agents/storyteller.yml +12 -0
- package/.opencode/agents/strategist.yml +12 -0
- package/.opencode/agents/tech-writer.yml +12 -0
- package/.opencode/agents/testing-best-practices.yml +12 -0
- package/.opencode/agents/testing-lead.yml +12 -0
- package/.opencode/agents/ui-ux-design.yml +12 -0
- package/.opencode/codex.codex +8 -0
- package/.opencode/commands/auto-format.md +99 -0
- package/.opencode/commands/auto-summary-capture.md +90 -0
- package/.opencode/commands/dependency-audit.md +184 -0
- package/.opencode/commands/enforcer-daily-scan.md +137 -0
- package/.opencode/commands/framework-compliance-audit.md +205 -0
- package/.opencode/commands/interactive-validator.md +75 -0
- package/.opencode/commands/job-summary-logger.md +68 -0
- package/.opencode/commands/lint.md +11 -0
- package/.opencode/commands/mode-switch.md +95 -0
- package/.opencode/commands/model-health-check.md +186 -0
- package/.opencode/commands/performance-analysis.md +144 -0
- package/.opencode/commands/pre-commit-introspection.md +185 -0
- package/.opencode/commands/pre-commit-introspection.sh +133 -0
- package/.opencode/commands/security-scan.md +157 -0
- package/.opencode/commands/sisyphus-validation.md +128 -0
- package/.opencode/commands/summary-logger.md +83 -0
- package/.opencode/enforcer-config.json +285 -0
- package/.opencode/hooks/hook-metrics.json +380 -0
- package/.opencode/hooks/post-commit +114 -0
- package/.opencode/hooks/post-push +34 -0
- package/.opencode/init.sh +151 -0
- package/.opencode/skills/api-design/SKILL.md +37 -0
- package/.opencode/skills/architect-tools/SKILL.md +37 -0
- package/.opencode/skills/architecture-patterns/SKILL.md +37 -0
- package/.opencode/skills/auto-format/SKILL.md +37 -0
- package/.opencode/skills/backend-engineer/SKILL.md +49 -0
- package/.opencode/skills/boot-orchestrator/SKILL.md +37 -0
- package/.opencode/skills/bug-triage/SKILL.md +43 -0
- package/.opencode/skills/code-analyzer/SKILL.md +45 -0
- package/.opencode/skills/code-review/SKILL.md +52 -0
- package/.opencode/skills/content-creator/SKILL.md +38 -0
- package/.opencode/skills/database-engineer/SKILL.md +46 -0
- package/.opencode/skills/devops-engineer/SKILL.md +49 -0
- package/.opencode/skills/enforcer/SKILL.md +37 -0
- package/.opencode/skills/framework-compliance-audit/SKILL.md +37 -0
- package/.opencode/skills/frontend-engineer/SKILL.md +49 -0
- package/.opencode/skills/frontend-ui-ux-engineer/SKILL.md +41 -0
- package/.opencode/skills/git-workflow/SKILL.md +37 -0
- package/.opencode/skills/growth-strategist/SKILL.md +48 -0
- package/.opencode/skills/hermes-agent/SKILL.md +212 -0
- package/.opencode/skills/inference-improve/SKILL.md +97 -0
- package/.opencode/skills/lint/SKILL.md +37 -0
- package/.opencode/skills/log-monitor/SKILL.md +44 -0
- package/.opencode/skills/mobile-developer/SKILL.md +42 -0
- package/.opencode/skills/model-health-check/SKILL.md +37 -0
- package/.opencode/skills/multimodal-looker/SKILL.md +45 -0
- package/.opencode/skills/orchestrator/SKILL.md +37 -0
- package/.opencode/skills/performance-analysis/SKILL.md +37 -0
- package/.opencode/skills/performance-engineer/SKILL.md +41 -0
- package/.opencode/skills/performance-optimization/SKILL.md +37 -0
- package/.opencode/skills/processor-pipeline/SKILL.md +37 -0
- package/.opencode/skills/project-analysis/SKILL.md +42 -0
- package/.opencode/skills/refactoring-strategies/SKILL.md +37 -0
- package/.opencode/skills/registry.json +66 -0
- package/.opencode/skills/researcher/SKILL.md +37 -0
- package/.opencode/skills/security-audit/SKILL.md +47 -0
- package/.opencode/skills/security-scan/SKILL.md +37 -0
- package/.opencode/skills/seo-consultant/SKILL.md +43 -0
- package/.opencode/skills/session-management/SKILL.md +36 -0
- package/.opencode/skills/state-manager/SKILL.md +37 -0
- package/.opencode/skills/storyteller/SKILL.md +130 -0
- package/.opencode/skills/strategist/SKILL.md +32 -0
- package/.opencode/skills/tech-writer/SKILL.md +37 -0
- package/.opencode/skills/testing-best-practices/SKILL.md +37 -0
- package/.opencode/skills/testing-strategy/SKILL.md +43 -0
- package/.opencode/skills/ui-ux-design/SKILL.md +603 -0
- package/.opencode/workflows/post-deployment-audit.yml +123 -0
- package/AGENTS.md +110 -0
- package/LICENSE +21 -0
- package/README.md +131 -0
- package/dist/AGENTS.md +110 -0
- package/dist/CHANGELOG.md +2182 -0
- package/dist/LICENSE +21 -0
- package/dist/README.md +131 -0
- package/dist/agents/architect.js +56 -0
- package/dist/agents/backend-engineer.js +81 -0
- package/dist/agents/bug-triage-specialist.js +74 -0
- package/dist/agents/code-analyzer.js +150 -0
- package/dist/agents/code-reviewer.js +69 -0
- package/dist/agents/content-creator.js +72 -0
- package/dist/agents/database-engineer.js +76 -0
- package/dist/agents/devops-engineer.js +84 -0
- package/dist/agents/frontend-engineer.js +78 -0
- package/dist/agents/frontend-ui-ux-engineer.js +64 -0
- package/dist/agents/growth-strategist.js +111 -0
- package/dist/agents/index.js +45 -0
- package/dist/agents/librarian-agents-updater.js +333 -0
- package/dist/agents/log-monitor.js +109 -0
- package/dist/agents/mobile-developer.js +102 -0
- package/dist/agents/multimodal-looker.js +93 -0
- package/dist/agents/performance-engineer.js +86 -0
- package/dist/agents/refactorer.js +80 -0
- package/dist/agents/registry.js +340 -0
- package/dist/agents/researcher.js +83 -0
- package/dist/agents/security-auditor.js +158 -0
- package/dist/agents/seo-consultant.js +53 -0
- package/dist/agents/strategist.js +47 -0
- package/dist/agents/tech-writer.js +84 -0
- package/dist/agents/testing-lead.js +95 -0
- package/dist/agents/types.js +1 -0
- package/dist/analytics/consent-manager.js +258 -0
- package/dist/analytics/emerging-pattern-detector.js +260 -0
- package/dist/analytics/pattern-learning-engine.js +278 -0
- package/dist/analytics/pattern-performance-tracker.js +336 -0
- package/dist/analytics/predictive-analytics.js +248 -0
- package/dist/analytics/prompt-pattern-analyzer.js +371 -0
- package/dist/analytics/routing-performance-analyzer.js +356 -0
- package/dist/analytics/routing-refiner.js +380 -0
- package/dist/analytics/simple-pattern-analyzer.js +297 -0
- package/dist/architect/architect-tools.js +437 -0
- package/dist/architect/architectural-integrity.js +78 -0
- package/dist/benchmark/performance-benchmark.js +372 -0
- package/dist/cli/commands/analytics-disable.js +72 -0
- package/dist/cli/commands/analytics-enable-action.js +82 -0
- package/dist/cli/commands/analytics-preview.js +106 -0
- package/dist/cli/commands/analytics-status.js +68 -0
- package/dist/cli/commands/antigravity-status.js +106 -0
- package/dist/cli/commands/archive-logs.js +161 -0
- package/dist/cli/commands/credible-init.js +82 -0
- package/dist/cli/commands/grok-install.js +16 -0
- package/dist/cli/commands/hermes-install.js +66 -0
- package/dist/cli/commands/mcp-install.js +253 -0
- package/dist/cli/commands/openclaw-install.js +44 -0
- package/dist/cli/commands/opencode-install.js +99 -0
- package/dist/cli/commands/plugin-commands.js +246 -0
- package/dist/cli/commands/publish-agent.js +184 -0
- package/dist/cli/commands/security-audit.js +219 -0
- package/dist/cli/commands/skill-install.js +481 -0
- package/dist/cli/commands/status.js +196 -0
- package/dist/cli/commands/storyteller.js +230 -0
- package/dist/cli/index.js +986 -0
- package/dist/cli/server.js +147 -0
- package/dist/config/default-agents.js +16 -0
- package/dist/core/activity-logger.js +260 -0
- package/dist/core/adaptive-kernel.js +192 -0
- package/dist/core/agent-spawn-gate.js +120 -0
- package/dist/core/boot-orchestrator.js +812 -0
- package/dist/core/bridge.mjs +945 -0
- package/dist/core/codex-formatter.js +220 -0
- package/dist/core/codex-injector.js +424 -0
- package/dist/core/config-loader.js +148 -0
- package/dist/core/config-paths.js +162 -0
- package/dist/core/context-loader.js +269 -0
- package/dist/core/context-validator.js +212 -0
- package/dist/core/features-config.js +457 -0
- package/dist/core/framework-logger.js +275 -0
- package/dist/core/index.js +6 -0
- package/dist/core/kernel-patterns.js +302 -0
- package/dist/core/logging-config.js +43 -0
- package/dist/core/model-router.js +175 -0
- package/dist/core/orchestrator.js +408 -0
- package/dist/core/system-prompt-generator.js +265 -0
- package/dist/core/trace-context.js +33 -0
- package/dist/core/xray-activation.js +134 -0
- package/dist/delegation/agent-delegator.js +769 -0
- package/dist/delegation/agent-expertise.js +156 -0
- package/dist/delegation/analytics/index.js +12 -0
- package/dist/delegation/analytics/learning-engine.js +277 -0
- package/dist/delegation/analytics/outcome-tracker.js +279 -0
- package/dist/delegation/analytics/routing-analytics.js +193 -0
- package/dist/delegation/ast-code-parser.js +878 -0
- package/dist/delegation/codebase-context-analyzer.js +1040 -0
- package/dist/delegation/complexity-analyzer.js +282 -0
- package/dist/delegation/complexity-core.js +219 -0
- package/dist/delegation/config/types.js +6 -0
- package/dist/delegation/dependency-graph-builder.js +409 -0
- package/dist/delegation/index.js +20 -0
- package/dist/delegation/metrics-aggregator.js +335 -0
- package/dist/delegation/session-coordinator.js +352 -0
- package/dist/delegation/strategy-selector.js +108 -0
- package/dist/delegation/voting-coordinator.js +375 -0
- package/dist/delegation/voting-types.js +10 -0
- package/dist/delegation/weighted-voting-aggregator.js +194 -0
- package/dist/enforcement/core/index.js +19 -0
- package/dist/enforcement/core/rule-executor.js +365 -0
- package/dist/enforcement/core/rule-hierarchy.js +259 -0
- package/dist/enforcement/core/rule-registry.js +240 -0
- package/dist/enforcement/core/violation-fixer.js +651 -0
- package/dist/enforcement/enforcer-tools.js +909 -0
- package/dist/enforcement/index.js +41 -0
- package/dist/enforcement/loaders/agent-triage-loader.js +222 -0
- package/dist/enforcement/loaders/agents-md-validation-loader.js +252 -0
- package/dist/enforcement/loaders/base-loader.js +86 -0
- package/dist/enforcement/loaders/codex-loader.js +396 -0
- package/dist/enforcement/loaders/index.js +40 -0
- package/dist/enforcement/loaders/loader-orchestrator.js +168 -0
- package/dist/enforcement/loaders/processor-loader.js +113 -0
- package/dist/enforcement/rule-enforcer.js +298 -0
- package/dist/enforcement/test-auto-healing.js +325 -0
- package/dist/enforcement/types.js +30 -0
- package/dist/enforcement/validators/architecture-validators.js +600 -0
- package/dist/enforcement/validators/base-validator.js +108 -0
- package/dist/enforcement/validators/code-quality-validators.js +336 -0
- package/dist/enforcement/validators/index.js +21 -0
- package/dist/enforcement/validators/security-validators.js +220 -0
- package/dist/enforcement/validators/testing-validators.js +253 -0
- package/dist/enforcement/validators/validator-registry.js +150 -0
- package/dist/execution/opencode-cli-invoker.js +173 -0
- package/dist/execution/proposal-applier.js +254 -0
- package/dist/governance/codex-policy.service.js +167 -0
- package/dist/governance/governance-core.js +152 -0
- package/dist/governance/governance-service.js +274 -0
- package/dist/governance/governance-types.js +6 -0
- package/dist/index.js +24 -0
- package/dist/inference/deploy-verifier.js +161 -0
- package/dist/inference/index.js +5 -0
- package/dist/inference/inference-accumulator.js +126 -0
- package/dist/inference/inference-cycle.js +1168 -0
- package/dist/inference/semantic-patterns.js +310 -0
- package/dist/inference/session-capture.js +308 -0
- package/dist/integrations/base/ExampleIntegration.js +181 -0
- package/dist/integrations/base/Integration.js +395 -0
- package/dist/integrations/base/README.md +446 -0
- package/dist/integrations/base/index.js +16 -0
- package/dist/integrations/base/registry.js +606 -0
- package/dist/integrations/base/types.js +118 -0
- package/dist/integrations/governance/governance-client.js +316 -0
- package/dist/integrations/governance/index.js +373 -0
- package/dist/integrations/governance/types.js +97 -0
- package/dist/integrations/grok/grok-cli.js +83 -0
- package/dist/integrations/grok/hooks/pre-tool-use.js +134 -0
- package/dist/integrations/grok/plugin/0xray/.mcp.json +15 -0
- package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +30 -0
- package/dist/integrations/hermes-agent/__init__.py +718 -0
- package/dist/integrations/hermes-agent/after-install.md +71 -0
- package/dist/integrations/hermes-agent/bridge.mjs +861 -0
- package/dist/integrations/hermes-agent/conftest.py +14 -0
- package/dist/integrations/hermes-agent/plugin.yaml +12 -0
- package/dist/integrations/hermes-agent/schemas.py +100 -0
- package/dist/integrations/hermes-agent/test_plugin.py +1100 -0
- package/dist/integrations/hermes-agent/tools.py +253 -0
- package/dist/integrations/openclaw/README.md +134 -0
- package/dist/integrations/openclaw/api-server.js +389 -0
- package/dist/integrations/openclaw/client.js +492 -0
- package/dist/integrations/openclaw/config.js +374 -0
- package/dist/integrations/openclaw/hooks/strray-hooks.js +280 -0
- package/dist/integrations/openclaw/index.js +351 -0
- package/dist/integrations/openclaw/types.js +153 -0
- package/dist/integrations/plugins/index.js +10 -0
- package/dist/integrations/plugins/plugin-integration.js +606 -0
- package/dist/integrations/plugins/plugin-registry.js +580 -0
- package/dist/mcps/agent-resolver.js +106 -0
- package/dist/mcps/architect-tools.server.js +277 -0
- package/dist/mcps/auto-format.server.js +413 -0
- package/dist/mcps/boot-orchestrator.server.js +853 -0
- package/dist/mcps/config/config-loader.js +103 -0
- package/dist/mcps/config/config-validator.js +101 -0
- package/dist/mcps/config/index.js +30 -0
- package/dist/mcps/config/plugin-server-registry.js +223 -0
- package/dist/mcps/config/server-config-registry.js +348 -0
- package/dist/mcps/connection/connection-manager.js +79 -0
- package/dist/mcps/connection/connection-pool.js +164 -0
- package/dist/mcps/connection/mcp-connection.js +233 -0
- package/dist/mcps/connection/process-spawner.js +34 -0
- package/dist/mcps/enforcer-tools.server.js +778 -0
- package/dist/mcps/estimation.server.js +192 -0
- package/dist/mcps/framework-compliance-audit.server.js +500 -0
- package/dist/mcps/framework-help.server.js +400 -0
- package/dist/mcps/governance.server.js +464 -0
- package/dist/mcps/in-process-skill-registry.js +48 -0
- package/dist/mcps/knowledge-skills/api-design.server.js +123 -0
- package/dist/mcps/knowledge-skills/architecture-patterns.server.js +113 -0
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.js +474 -0
- package/dist/mcps/knowledge-skills/code-analyzer.server.js +605 -0
- package/dist/mcps/knowledge-skills/code-review.server.js +847 -0
- package/dist/mcps/knowledge-skills/content-creator.server.js +256 -0
- package/dist/mcps/knowledge-skills/database-design.server.js +822 -0
- package/dist/mcps/knowledge-skills/devops-deployment.server.js +1180 -0
- package/dist/mcps/knowledge-skills/git-workflow.server.js +115 -0
- package/dist/mcps/knowledge-skills/growth-strategist.server.js +361 -0
- package/dist/mcps/knowledge-skills/log-monitor.server.js +451 -0
- package/dist/mcps/knowledge-skills/mobile-development.server.js +525 -0
- package/dist/mcps/knowledge-skills/multimodal-looker.server.js +1063 -0
- package/dist/mcps/knowledge-skills/performance-optimization.server.js +1587 -0
- package/dist/mcps/knowledge-skills/project-analysis.server.js +811 -0
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +796 -0
- package/dist/mcps/knowledge-skills/security-audit.server.js +846 -0
- package/dist/mcps/knowledge-skills/seo-consultant.server.js +937 -0
- package/dist/mcps/knowledge-skills/session-management.server.js +470 -0
- package/dist/mcps/knowledge-skills/skill-invocation.server.js +729 -0
- package/dist/mcps/knowledge-skills/strategist.server.js +217 -0
- package/dist/mcps/knowledge-skills/tech-writer.server.js +1191 -0
- package/dist/mcps/knowledge-skills/testing-best-practices.server.js +866 -0
- package/dist/mcps/knowledge-skills/testing-strategy.server.js +827 -0
- package/dist/mcps/knowledge-skills/ui-ux-design.server.js +1538 -0
- package/dist/mcps/lint.server.js +381 -0
- package/dist/mcps/mcp-client.js +574 -0
- package/dist/mcps/model-health-check.server.js +228 -0
- package/dist/mcps/orchestrator/config/agent-capabilities.js +87 -0
- package/dist/mcps/orchestrator/execution/execution-planner.js +279 -0
- package/dist/mcps/orchestrator/handlers/complexity-handler.js +94 -0
- package/dist/mcps/orchestrator/handlers/status-handler.js +232 -0
- package/dist/mcps/orchestrator/handlers/task-handler.js +197 -0
- package/dist/mcps/orchestrator/server.js +305 -0
- package/dist/mcps/orchestrator/types.js +6 -0
- package/dist/mcps/orchestrator.server.js +19 -0
- package/dist/mcps/performance-analysis.server.js +519 -0
- package/dist/mcps/processor-pipeline.server.js +561 -0
- package/dist/mcps/protocol/protocol-constants.js +46 -0
- package/dist/mcps/registry.json +110 -0
- package/dist/mcps/researcher.server.js +504 -0
- package/dist/mcps/security-scan.server.js +531 -0
- package/dist/mcps/simulation/index.js +12 -0
- package/dist/mcps/simulation/server-simulations.js +219 -0
- package/dist/mcps/simulation/simulation-engine.js +96 -0
- package/dist/mcps/state-manager.server.js +637 -0
- package/dist/mcps/tools/index.js +14 -0
- package/dist/mcps/tools/tool-cache.js +112 -0
- package/dist/mcps/tools/tool-discovery.js +65 -0
- package/dist/mcps/tools/tool-executor.js +75 -0
- package/dist/mcps/tools/tool-registry.js +67 -0
- package/dist/mcps/types/index.js +15 -0
- package/dist/mcps/types/json-rpc.types.js +7 -0
- package/dist/mcps/types/mcp.types.js +7 -0
- package/dist/metrics/agent-metrics.js +574 -0
- package/dist/metrics/index.js +6 -0
- package/dist/monitoring/advanced-profiler.js +232 -0
- package/dist/monitoring/memory-monitor.js +315 -0
- package/dist/monitoring/nudge-watchdog.js +356 -0
- package/dist/monitoring/test-auto-generation-monitor.js +157 -0
- package/dist/orchestrator/agent-spawn-governor.js +559 -0
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +399 -0
- package/dist/orchestrator/intelligent-commit-batcher.js +353 -0
- package/dist/orchestrator/multi-agent-orchestration-coordinator.js +456 -0
- package/dist/orchestrator/orchestrator.js +657 -0
- package/dist/orchestrator/self-direction-activation.js +245 -0
- package/dist/orchestrator/universal-librarian-consultation.js +216 -0
- package/dist/orchestrator/universal-registry-bridge.js +247 -0
- package/dist/performance/performance-budget-enforcer.js +434 -0
- package/dist/performance/performance-regression-tester.js +342 -0
- package/dist/plugin/xray-codex-injection.js +857 -0
- package/dist/postprocessor/PostProcessor.js +1048 -0
- package/dist/postprocessor/analysis/FailureAnalysisEngine.js +245 -0
- package/dist/postprocessor/autofix/AutoFixEngine.js +254 -0
- package/dist/postprocessor/autofix/FixValidator.js +56 -0
- package/dist/postprocessor/config.js +65 -0
- package/dist/postprocessor/escalation/EscalationEngine.js +492 -0
- package/dist/postprocessor/monitoring/MonitoringEngine.js +125 -0
- package/dist/postprocessor/redeploy/RedeployCoordinator.js +342 -0
- package/dist/postprocessor/services/RegressionAnalysisService.js +131 -0
- package/dist/postprocessor/success/SuccessHandler.js +134 -0
- package/dist/postprocessor/triggers/APITrigger.js +115 -0
- package/dist/postprocessor/triggers/GitHookTrigger.js +551 -0
- package/dist/postprocessor/triggers/WebhookTrigger.js +211 -0
- package/dist/postprocessor/types.js +4 -0
- package/dist/processors/doc-write-guard.js +46 -0
- package/dist/processors/implementations/agents-md-validation-processor.js +286 -0
- package/dist/processors/implementations/async-pattern-processor.js +158 -0
- package/dist/processors/implementations/codex-compliance-processor.js +57 -0
- package/dist/processors/implementations/commit-batcher-processor.js +71 -0
- package/dist/processors/implementations/console-log-guard-processor.js +163 -0
- package/dist/processors/implementations/coverage-analysis-processor.js +138 -0
- package/dist/processors/implementations/error-boundary-processor.js +44 -0
- package/dist/processors/implementations/inference-improvement-processor.js +270 -0
- package/dist/processors/implementations/log-protection-processor.js +118 -0
- package/dist/processors/implementations/nudge-processor.js +130 -0
- package/dist/processors/implementations/performance-budget-processor.js +217 -0
- package/dist/processors/implementations/postprocessor-chain-validator.js +149 -0
- package/dist/processors/implementations/pre-validate-processor.js +18 -0
- package/dist/processors/implementations/publish-preflight-processor.js +249 -0
- package/dist/processors/implementations/refactoring-logging-processor-wrapper.js +33 -0
- package/dist/processors/implementations/refactoring-logging-processor.js +96 -0
- package/dist/processors/implementations/regression-testing-processor.js +59 -0
- package/dist/processors/implementations/session-capture-processor.js +37 -0
- package/dist/processors/implementations/session-summary-processor.js +130 -0
- package/dist/processors/implementations/spawn-governance-processor.js +219 -0
- package/dist/processors/implementations/state-validation-processor.js +15 -0
- package/dist/processors/implementations/storytelling-trigger-processor.js +589 -0
- package/dist/processors/implementations/test-auto-creation-processor.js +484 -0
- package/dist/processors/implementations/test-execution-processor.js +132 -0
- package/dist/processors/implementations/typescript-compilation-processor.js +87 -0
- package/dist/processors/implementations/version-compliance-processor.js +350 -0
- package/dist/processors/processor-interfaces.js +126 -0
- package/dist/processors/processor-manager.js +826 -0
- package/dist/processors/processor-types.js +12 -0
- package/dist/public/about.html +228 -0
- package/dist/public/enterprise.html +27 -0
- package/dist/public/features.html +102 -0
- package/dist/public/index.html +145 -0
- package/dist/reporting/framework-reporting-system.js +187 -0
- package/dist/reporting/log-parser.js +281 -0
- package/dist/reporting/metrics.js +202 -0
- package/dist/reporting/report-formatter.js +146 -0
- package/dist/reporting/types.js +1 -0
- package/dist/scripts/activate-kernel-pipeline.js +101 -0
- package/dist/scripts/integration.js +234 -0
- package/dist/scripts/pre-command +26 -0
- package/dist/scripts/pre-command.mjs +358 -0
- package/dist/security/comprehensive-security-audit.js +1005 -0
- package/dist/security/index.js +13 -0
- package/dist/security/prompt-security-validator.js +148 -0
- package/dist/security/security-agent-coordinator.js +204 -0
- package/dist/security/security-auditor.js +584 -0
- package/dist/security/security-hardener.js +170 -0
- package/dist/security/security-hardening-system.js +727 -0
- package/dist/security/security-headers.js +118 -0
- package/dist/security/security-orchestration-layer.js +496 -0
- package/dist/security/security-scanner.js +429 -0
- package/dist/services/inference-tuner.js +301 -0
- package/dist/session/index.js +3 -0
- package/dist/session/session-cleanup-manager.js +366 -0
- package/dist/session/session-monitor.js +503 -0
- package/dist/session/session-state-manager.js +522 -0
- package/dist/skills/api-design/SKILL.md +37 -0
- package/dist/skills/architect-tools/SKILL.md +37 -0
- package/dist/skills/architecture-patterns/SKILL.md +37 -0
- package/dist/skills/auto-format/SKILL.md +37 -0
- package/dist/skills/backend-engineer/SKILL.md +49 -0
- package/dist/skills/boot-orchestrator/SKILL.md +37 -0
- package/dist/skills/bug-triage/SKILL.md +43 -0
- package/dist/skills/code-analyzer/SKILL.md +45 -0
- package/dist/skills/code-review/SKILL.md +52 -0
- package/dist/skills/content-creator/SKILL.md +38 -0
- package/dist/skills/database-engineer/SKILL.md +46 -0
- package/dist/skills/devops-engineer/SKILL.md +49 -0
- package/dist/skills/enforcer/SKILL.md +37 -0
- package/dist/skills/framework-compliance-audit/SKILL.md +37 -0
- package/dist/skills/frontend-engineer/SKILL.md +49 -0
- package/dist/skills/frontend-ui-ux-engineer/SKILL.md +41 -0
- package/dist/skills/git-workflow/SKILL.md +37 -0
- package/dist/skills/growth-strategist/SKILL.md +48 -0
- package/dist/skills/hermes-agent/SKILL.md +212 -0
- package/dist/skills/inference-improve/SKILL.md +97 -0
- package/dist/skills/lint/SKILL.md +37 -0
- package/dist/skills/log-monitor/SKILL.md +44 -0
- package/dist/skills/mobile-developer/SKILL.md +42 -0
- package/dist/skills/model-health-check/SKILL.md +37 -0
- package/dist/skills/multimodal-looker/SKILL.md +45 -0
- package/dist/skills/orchestrator/SKILL.md +37 -0
- package/dist/skills/performance-analysis/SKILL.md +37 -0
- package/dist/skills/performance-engineer/SKILL.md +41 -0
- package/dist/skills/performance-optimization/SKILL.md +37 -0
- package/dist/skills/processor-pipeline/SKILL.md +37 -0
- package/dist/skills/project-analysis/SKILL.md +42 -0
- package/dist/skills/refactoring-strategies/SKILL.md +37 -0
- package/dist/skills/registry.json +66 -0
- package/dist/skills/researcher/SKILL.md +37 -0
- package/dist/skills/security-audit/SKILL.md +48 -0
- package/dist/skills/security-scan/SKILL.md +37 -0
- package/dist/skills/seo-consultant/SKILL.md +43 -0
- package/dist/skills/session-management/SKILL.md +36 -0
- package/dist/skills/state-manager/SKILL.md +37 -0
- package/dist/skills/storyteller/SKILL.md +130 -0
- package/dist/skills/strategist/SKILL.md +32 -0
- package/dist/skills/tech-writer/SKILL.md +37 -0
- package/dist/skills/testing-best-practices/SKILL.md +37 -0
- package/dist/skills/testing-strategy/SKILL.md +43 -0
- package/dist/skills/ui-ux-design/SKILL.md +603 -0
- package/dist/state/context-providers.js +1 -0
- package/dist/state/index.js +7 -0
- package/dist/state/state-manager.js +208 -0
- package/dist/state/state-types.js +1 -0
- package/dist/testing/memory-regression-suite.js +258 -0
- package/dist/utils/batch-operations.js +292 -0
- package/dist/utils/codex-parser.js +445 -0
- package/dist/utils/command-runner.js +96 -0
- package/dist/utils/import-resolver.js +189 -0
- package/dist/utils/language-detector.js +383 -0
- package/dist/utils/path-resolver.js +112 -0
- package/dist/utils/shutdown-handler.js +75 -0
- package/dist/utils/test-template-generator.js +178 -0
- package/dist/utils/token-manager.js +163 -0
- package/dist/validation/estimation-validator.js +241 -0
- package/dist/validation/report-content-validator.js +218 -0
- package/opencode.json +153 -0
- package/package.json +170 -0
- package/scripts/helpers/resolve-config-path.cjs +57 -0
- package/scripts/helpers/resolve-config-path.mjs +73 -0
- package/scripts/hooks/pre-command +26 -0
- package/scripts/hooks/pre-command.mjs +358 -0
- package/scripts/hooks/run-hook.js +570 -0
- package/scripts/mjs/test-consumer-readiness.mjs +273 -0
- package/scripts/mjs/test-mcp-functionality.mjs +507 -0
- package/scripts/mjs/validate-mcp-connectivity.cjs +75 -0
- package/scripts/mjs/validate-postinstall-config.mjs +308 -0
- package/scripts/node/auto-reflection-generator.mjs +496 -0
- package/scripts/node/basic-security-audit.cjs +338 -0
- package/scripts/node/ci-cd-auto-fix.cjs +263 -0
- package/scripts/node/ci-report-generator.mjs +227 -0
- package/scripts/node/enforce-agents-md.mjs +420 -0
- package/scripts/node/enforce-version-compliance.sh +22 -0
- package/scripts/node/enforce-version-compliance.ts +126 -0
- package/scripts/node/github-actions-monitor.cjs +23 -0
- package/scripts/node/govern-reflection.mjs +160 -0
- package/scripts/node/postinstall.cjs +78 -0
- package/scripts/node/pre-publish-guard.js +267 -0
- package/scripts/node/prepare-consumer.cjs +143 -0
- package/scripts/node/reflection-processor.cjs +213 -0
- package/scripts/node/reflection-validate.sh +194 -0
- package/scripts/node/release-tweet.mjs +39 -0
- package/scripts/node/release.js +159 -0
- package/scripts/node/release.mjs +213 -0
- package/scripts/node/setup-dev.cjs +83 -0
- package/scripts/node/setup.cjs +214 -0
- package/scripts/node/sync-versions.mjs +140 -0
- package/scripts/node/universal-version-manager.js +1025 -0
- package/scripts/node/validate-external-processes.js +265 -0
- package/scripts/node/validate-mcp-connectivity.js +258 -0
- package/scripts/node/version-manager.mjs +524 -0
- package/scripts/validate-stringray-comprehensive.js +636 -0
- package/src/integrations/grok/plugin/0xray/.mcp.json +15 -0
- package/src/integrations/grok/plugin/0xray/hooks/hooks.json +30 -0
- package/src/mcps/agent-resolver.ts +168 -0
- package/src/mcps/architect-tools.server.ts +343 -0
- package/src/mcps/auto-format.server.ts +529 -0
- package/src/mcps/boot-orchestrator.server.ts +1082 -0
- package/src/mcps/config/__tests__/config-loader.test.ts +338 -0
- package/src/mcps/config/__tests__/config-validator.test.ts +646 -0
- package/src/mcps/config/__tests__/server-config-registry.test.ts +257 -0
- package/src/mcps/config/config-loader.ts +127 -0
- package/src/mcps/config/config-validator.ts +127 -0
- package/src/mcps/config/index.ts +32 -0
- package/src/mcps/config/plugin-server-registry.ts +335 -0
- package/src/mcps/config/server-config-registry.ts +395 -0
- package/src/mcps/connection/connection-manager.ts +91 -0
- package/src/mcps/connection/connection-pool.ts +216 -0
- package/src/mcps/connection/mcp-connection.ts +327 -0
- package/src/mcps/connection/process-spawner.ts +47 -0
- package/src/mcps/enforcer-tools.server.ts +1106 -0
- package/src/mcps/estimation.server.ts +229 -0
- package/src/mcps/framework-compliance-audit.server.ts +635 -0
- package/src/mcps/framework-help.server.ts +467 -0
- package/src/mcps/governance.server.ts +551 -0
- package/src/mcps/in-process-skill-registry.ts +79 -0
- package/src/mcps/knowledge-skills/api-design.server.test.ts +41 -0
- package/src/mcps/knowledge-skills/api-design.server.ts +160 -0
- package/src/mcps/knowledge-skills/architecture-patterns.server.ts +152 -0
- package/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +624 -0
- package/src/mcps/knowledge-skills/code-analyzer.server.test.ts +129 -0
- package/src/mcps/knowledge-skills/code-analyzer.server.ts +591 -0
- package/src/mcps/knowledge-skills/code-review.server.ts +1132 -0
- package/src/mcps/knowledge-skills/content-creator.server.ts +300 -0
- package/src/mcps/knowledge-skills/database-design.server.ts +1200 -0
- package/src/mcps/knowledge-skills/devops-deployment.server.ts +1622 -0
- package/src/mcps/knowledge-skills/git-workflow.server.ts +152 -0
- package/src/mcps/knowledge-skills/growth-strategist.server.ts +413 -0
- package/src/mcps/knowledge-skills/log-monitor.server.ts +619 -0
- package/src/mcps/knowledge-skills/mobile-development.server.ts +672 -0
- package/src/mcps/knowledge-skills/multimodal-looker.server.ts +1500 -0
- package/src/mcps/knowledge-skills/performance-optimization.server.ts +2065 -0
- package/src/mcps/knowledge-skills/project-analysis.server.ts +1111 -0
- package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +1092 -0
- package/src/mcps/knowledge-skills/security-audit.server.test.ts +112 -0
- package/src/mcps/knowledge-skills/security-audit.server.ts +1193 -0
- package/src/mcps/knowledge-skills/seo-consultant.server.ts +1160 -0
- package/src/mcps/knowledge-skills/session-management.server.ts +576 -0
- package/src/mcps/knowledge-skills/skill-invocation.server.ts +941 -0
- package/src/mcps/knowledge-skills/strategist.server.ts +267 -0
- package/src/mcps/knowledge-skills/tech-writer.server.ts +1638 -0
- package/src/mcps/knowledge-skills/testing-best-practices.server.test.ts +136 -0
- package/src/mcps/knowledge-skills/testing-best-practices.server.ts +1232 -0
- package/src/mcps/knowledge-skills/testing-strategy.server.test.ts +100 -0
- package/src/mcps/knowledge-skills/testing-strategy.server.ts +1172 -0
- package/src/mcps/knowledge-skills/ui-ux-design.server.ts +2076 -0
- package/src/mcps/lint.server.ts +483 -0
- package/src/mcps/mcp-client.ts +706 -0
- package/src/mcps/model-health-check.server.ts +292 -0
- package/src/mcps/orchestrator/config/agent-capabilities.ts +108 -0
- package/src/mcps/orchestrator/execution/execution-planner.ts +353 -0
- package/src/mcps/orchestrator/handlers/complexity-handler.ts +125 -0
- package/src/mcps/orchestrator/handlers/status-handler.ts +295 -0
- package/src/mcps/orchestrator/handlers/task-handler.ts +268 -0
- package/src/mcps/orchestrator/server.ts +388 -0
- package/src/mcps/orchestrator/types.ts +81 -0
- package/src/mcps/orchestrator.server.ts +34 -0
- package/src/mcps/performance-analysis.server.ts +715 -0
- package/src/mcps/processor-pipeline.server.ts +778 -0
- package/src/mcps/protocol/protocol-constants.ts +51 -0
- package/src/mcps/registry.json +110 -0
- package/src/mcps/researcher.server.ts +595 -0
- package/src/mcps/security-scan.server.ts +651 -0
- package/src/mcps/simulation/__tests__/simulation-engine.test.ts +275 -0
- package/src/mcps/simulation/index.ts +23 -0
- package/src/mcps/simulation/server-simulations.ts +241 -0
- package/src/mcps/simulation/simulation-engine.ts +126 -0
- package/src/mcps/state-manager.server.ts +777 -0
- package/src/mcps/tools/__tests__/tool-cache.test.ts +205 -0
- package/src/mcps/tools/__tests__/tool-discovery.test.ts +189 -0
- package/src/mcps/tools/__tests__/tool-executor.test.ts +215 -0
- package/src/mcps/tools/__tests__/tool-registry.test.ts +230 -0
- package/src/mcps/tools/index.ts +15 -0
- package/src/mcps/tools/tool-cache.ts +145 -0
- package/src/mcps/tools/tool-discovery.ts +83 -0
- package/src/mcps/tools/tool-executor.ts +106 -0
- package/src/mcps/tools/tool-registry.ts +78 -0
- package/src/mcps/types/__tests__/types.test.ts +341 -0
- package/src/mcps/types/index.ts +17 -0
- package/src/mcps/types/json-rpc.types.ts +38 -0
- package/src/mcps/types/mcp.types.ts +115 -0
- package/src/opencode/agents/api-design.yml +31 -0
- package/src/opencode/agents/architect.yml +15 -0
- package/src/opencode/agents/architecture-patterns.yml +14 -0
- package/src/opencode/agents/auto-format.yml +14 -0
- package/src/opencode/agents/backend-engineer.yml +12 -0
- package/src/opencode/agents/boot-orchestrator.yml +14 -0
- package/src/opencode/agents/bug-triage-specialist.yml +15 -0
- package/src/opencode/agents/code-analyzer.yml +12 -0
- package/src/opencode/agents/code-reviewer.yml +14 -0
- package/src/opencode/agents/content-creator.yml +12 -0
- package/src/opencode/agents/database-engineer.yml +12 -0
- package/src/opencode/agents/devops-engineer.yml +12 -0
- package/src/opencode/agents/framework-compliance-audit.yml +14 -0
- package/src/opencode/agents/frontend-engineer.yml +12 -0
- package/src/opencode/agents/frontend-ui-ux-engineer.yml +12 -0
- package/src/opencode/agents/git-workflow.yml +15 -0
- package/src/opencode/agents/growth-strategist.yml +12 -0
- package/src/opencode/agents/hermes-agent.yml +12 -0
- package/src/opencode/agents/inference-improve.yml +12 -0
- package/src/opencode/agents/lint.yml +14 -0
- package/src/opencode/agents/log-monitor.yml +12 -0
- package/src/opencode/agents/mobile-developer.yml +12 -0
- package/src/opencode/agents/model-health-check.yml +12 -0
- package/src/opencode/agents/multimodal-looker.yml +12 -0
- package/src/opencode/agents/performance-analysis.yml +12 -0
- package/src/opencode/agents/performance-engineer.yml +12 -0
- package/src/opencode/agents/performance-optimization.yml +12 -0
- package/src/opencode/agents/processor-pipeline.yml +14 -0
- package/src/opencode/agents/project-analysis.yml +12 -0
- package/src/opencode/agents/refactorer.yml +12 -0
- package/src/opencode/agents/researcher.yml +12 -0
- package/src/opencode/agents/security-auditor.yml +12 -0
- package/src/opencode/agents/security-scan.yml +12 -0
- package/src/opencode/agents/seo-consultant.yml +12 -0
- package/src/opencode/agents/session-management.yml +12 -0
- package/src/opencode/agents/state-manager.yml +12 -0
- package/src/opencode/agents/storyteller.yml +12 -0
- package/src/opencode/agents/strategist.yml +12 -0
- package/src/opencode/agents/tech-writer.yml +12 -0
- package/src/opencode/agents/testing-best-practices.yml +12 -0
- package/src/opencode/agents/testing-lead.yml +12 -0
- package/src/opencode/agents/ui-ux-design.yml +12 -0
- package/src/opencode/codex.codex +8 -0
- package/src/opencode/commands/auto-format.md +99 -0
- package/src/opencode/commands/auto-summary-capture.md +90 -0
- package/src/opencode/commands/dependency-audit.md +184 -0
- package/src/opencode/commands/enforcer-daily-scan.md +137 -0
- package/src/opencode/commands/framework-compliance-audit.md +205 -0
- package/src/opencode/commands/interactive-validator.md +75 -0
- package/src/opencode/commands/job-summary-logger.md +68 -0
- package/src/opencode/commands/lint.md +11 -0
- package/src/opencode/commands/mode-switch.md +95 -0
- package/src/opencode/commands/model-health-check.md +186 -0
- package/src/opencode/commands/performance-analysis.md +144 -0
- package/src/opencode/commands/pre-commit-introspection.md +185 -0
- package/src/opencode/commands/pre-commit-introspection.sh +133 -0
- package/src/opencode/commands/security-scan.md +157 -0
- package/src/opencode/commands/sisyphus-validation.md +128 -0
- package/src/opencode/commands/summary-logger.md +83 -0
- package/src/opencode/enforcer-config.json +285 -0
- package/src/opencode/openclaw/config.json +25 -0
- package/src/opencode/workflows/post-deployment-audit.yml +123 -0
- package/src/skills/api-design/SKILL.md +37 -0
- package/src/skills/architect-tools/SKILL.md +37 -0
- package/src/skills/architecture-patterns/SKILL.md +37 -0
- package/src/skills/auto-format/SKILL.md +37 -0
- package/src/skills/backend-engineer/SKILL.md +49 -0
- package/src/skills/boot-orchestrator/SKILL.md +37 -0
- package/src/skills/bug-triage/SKILL.md +43 -0
- package/src/skills/code-analyzer/SKILL.md +45 -0
- package/src/skills/code-review/SKILL.md +52 -0
- package/src/skills/content-creator/SKILL.md +38 -0
- package/src/skills/database-engineer/SKILL.md +46 -0
- package/src/skills/devops-engineer/SKILL.md +49 -0
- package/src/skills/enforcer/SKILL.md +37 -0
- package/src/skills/framework-compliance-audit/SKILL.md +37 -0
- package/src/skills/frontend-engineer/SKILL.md +49 -0
- package/src/skills/frontend-ui-ux-engineer/SKILL.md +41 -0
- package/src/skills/git-workflow/SKILL.md +37 -0
- package/src/skills/growth-strategist/SKILL.md +48 -0
- package/src/skills/hermes-agent/SKILL.md +212 -0
- package/src/skills/inference-improve/SKILL.md +97 -0
- package/src/skills/lint/SKILL.md +37 -0
- package/src/skills/log-monitor/SKILL.md +44 -0
- package/src/skills/mobile-developer/SKILL.md +42 -0
- package/src/skills/model-health-check/SKILL.md +37 -0
- package/src/skills/multimodal-looker/SKILL.md +45 -0
- package/src/skills/orchestrator/SKILL.md +37 -0
- package/src/skills/performance-analysis/SKILL.md +37 -0
- package/src/skills/performance-engineer/SKILL.md +41 -0
- package/src/skills/performance-optimization/SKILL.md +37 -0
- package/src/skills/processor-pipeline/SKILL.md +37 -0
- package/src/skills/project-analysis/SKILL.md +42 -0
- package/src/skills/refactoring-strategies/SKILL.md +37 -0
- package/src/skills/registry.json +66 -0
- package/src/skills/researcher/SKILL.md +37 -0
- package/src/skills/security-audit/SKILL.md +48 -0
- package/src/skills/security-scan/SKILL.md +37 -0
- package/src/skills/seo-consultant/SKILL.md +43 -0
- package/src/skills/session-management/SKILL.md +36 -0
- package/src/skills/state-manager/SKILL.md +37 -0
- package/src/skills/storyteller/SKILL.md +130 -0
- package/src/skills/strategist/SKILL.md +32 -0
- package/src/skills/tech-writer/SKILL.md +37 -0
- package/src/skills/testing-best-practices/SKILL.md +37 -0
- package/src/skills/testing-strategy/SKILL.md +43 -0
- package/src/skills/ui-ux-design/SKILL.md +603 -0
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Architect Tools - Integration layer between architect agent and contextual analysis system
|
|
3
|
+
* Provides tools for codebase intelligence, architectural assessment, and design planning
|
|
4
|
+
*/
|
|
5
|
+
import { createCodebaseContextAnalyzer, } from "../delegation/codebase-context-analyzer.js";
|
|
6
|
+
import { ASTCodeParser } from "../delegation/ast-code-parser.js";
|
|
7
|
+
import { DependencyGraphBuilder, } from "../delegation/dependency-graph-builder.js";
|
|
8
|
+
import { frameworkLogger } from "../core/framework-logger.js";
|
|
9
|
+
/**
|
|
10
|
+
* Context Analysis Tool - Comprehensive codebase intelligence gathering
|
|
11
|
+
*/
|
|
12
|
+
export async function contextAnalysis(projectRoot, files, depth = "detailed") {
|
|
13
|
+
await frameworkLogger.log("architect-tools", "context-analysis-start", "info", {
|
|
14
|
+
projectRoot,
|
|
15
|
+
fileCount: files?.length || 0,
|
|
16
|
+
depth,
|
|
17
|
+
});
|
|
18
|
+
try {
|
|
19
|
+
// Initialize contextual analysis components
|
|
20
|
+
const contextAnalyzer = createCodebaseContextAnalyzer(projectRoot, {
|
|
21
|
+
maxFilesInMemory: depth === "comprehensive" ? 500 : 100,
|
|
22
|
+
maxFileSizeBytes: 1024 * 1024, // 1MB
|
|
23
|
+
enableStreaming: true,
|
|
24
|
+
batchSize: 20,
|
|
25
|
+
enableCaching: true,
|
|
26
|
+
});
|
|
27
|
+
const astParser = new ASTCodeParser();
|
|
28
|
+
const dependencyBuilder = new DependencyGraphBuilder(contextAnalyzer, astParser);
|
|
29
|
+
// Perform comprehensive analysis
|
|
30
|
+
const analysis = await contextAnalyzer.analyzeCodebase();
|
|
31
|
+
// Enhanced analysis based on depth
|
|
32
|
+
let architecturalPatterns = [];
|
|
33
|
+
let dependencyIssues = [];
|
|
34
|
+
let scalabilityAssessment;
|
|
35
|
+
let maintainabilityIndex;
|
|
36
|
+
let complexityAnalysis;
|
|
37
|
+
if (depth !== "overview") {
|
|
38
|
+
// Build dependency graph for deeper analysis
|
|
39
|
+
const dependencyAnalysis = await dependencyBuilder.buildDependencyGraph();
|
|
40
|
+
architecturalPatterns = identifyArchitecturalPatterns(analysis, dependencyAnalysis);
|
|
41
|
+
dependencyIssues = analyzeDependencyHealth(dependencyAnalysis);
|
|
42
|
+
scalabilityAssessment = assessScalability(analysis, dependencyAnalysis);
|
|
43
|
+
maintainabilityIndex = calculateMaintainabilityIndex(analysis, dependencyAnalysis);
|
|
44
|
+
complexityAnalysis = analyzeComplexityPatterns(analysis);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// Basic analysis for overview
|
|
48
|
+
architecturalPatterns = identifyBasicPatterns(analysis);
|
|
49
|
+
dependencyIssues = [];
|
|
50
|
+
scalabilityAssessment = {
|
|
51
|
+
score: 75,
|
|
52
|
+
recommendations: ["Detailed analysis recommended"],
|
|
53
|
+
};
|
|
54
|
+
maintainabilityIndex = 75;
|
|
55
|
+
complexityAnalysis = {
|
|
56
|
+
averageComplexity: 0,
|
|
57
|
+
highComplexityFiles: [],
|
|
58
|
+
complexityDistribution: "low",
|
|
59
|
+
recommendations: ["Detailed analysis recommended"],
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
const result = {
|
|
63
|
+
codebaseStructure: analysis.structure,
|
|
64
|
+
architecturalPatterns,
|
|
65
|
+
dependencyIssues,
|
|
66
|
+
scalabilityAssessment,
|
|
67
|
+
maintainabilityIndex,
|
|
68
|
+
complexityAnalysis,
|
|
69
|
+
};
|
|
70
|
+
await frameworkLogger.log("architect-tools", "context-analysis-complete", "success", {
|
|
71
|
+
projectRoot,
|
|
72
|
+
filesAnalyzed: analysis.structure.totalFiles,
|
|
73
|
+
patternsFound: architecturalPatterns.length,
|
|
74
|
+
issuesFound: dependencyIssues.length,
|
|
75
|
+
maintainabilityIndex,
|
|
76
|
+
});
|
|
77
|
+
return result;
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
await frameworkLogger.log("architect-tools", "context-analysis-failed", "error", {
|
|
81
|
+
projectRoot,
|
|
82
|
+
error: error instanceof Error ? error.message : String(error),
|
|
83
|
+
});
|
|
84
|
+
throw error;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Codebase Structure Tool - File organization and module analysis
|
|
89
|
+
*/
|
|
90
|
+
export async function codebaseStructure(projectRoot, includeMetrics = true) {
|
|
91
|
+
await frameworkLogger.log("architect-tools", "structure-analysis-start", "info", {
|
|
92
|
+
projectRoot,
|
|
93
|
+
includeMetrics,
|
|
94
|
+
});
|
|
95
|
+
const contextAnalyzer = createCodebaseContextAnalyzer(projectRoot);
|
|
96
|
+
const analysis = await contextAnalyzer.analyzeCodebase();
|
|
97
|
+
const structure = {
|
|
98
|
+
overview: {
|
|
99
|
+
totalFiles: analysis.structure.totalFiles,
|
|
100
|
+
totalLinesOfCode: analysis.structure.totalLinesOfCode,
|
|
101
|
+
languages: Array.from(analysis.structure.languages.entries()),
|
|
102
|
+
modules: analysis.structure.modules.size,
|
|
103
|
+
},
|
|
104
|
+
fileTypes: analysis.structure.fileGraph
|
|
105
|
+
? groupByFileType(analysis.structure.fileGraph)
|
|
106
|
+
: {},
|
|
107
|
+
moduleStructure: analysis.structure.modules
|
|
108
|
+
? Array.from(analysis.structure.modules.values())
|
|
109
|
+
: [],
|
|
110
|
+
...(includeMetrics && {
|
|
111
|
+
metrics: {
|
|
112
|
+
qualityScore: analysis.metrics.qualityScore,
|
|
113
|
+
complexity: analysis.metrics.complexity,
|
|
114
|
+
coupling: analysis.metrics.coupling,
|
|
115
|
+
cohesion: analysis.metrics.cohesion,
|
|
116
|
+
},
|
|
117
|
+
}),
|
|
118
|
+
};
|
|
119
|
+
await frameworkLogger.log("architect-tools", "structure-analysis-complete", "success", {
|
|
120
|
+
projectRoot,
|
|
121
|
+
filesAnalyzed: analysis.structure.totalFiles,
|
|
122
|
+
});
|
|
123
|
+
return structure;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Dependency Analysis Tool - Component relationship and coupling analysis
|
|
127
|
+
*/
|
|
128
|
+
export async function dependencyAnalysis(projectRoot, focusAreas) {
|
|
129
|
+
await frameworkLogger.log("architect-tools", "dependency-analysis-start", "info", {
|
|
130
|
+
projectRoot,
|
|
131
|
+
focusAreas: focusAreas?.length || 0,
|
|
132
|
+
});
|
|
133
|
+
const contextAnalyzer = createCodebaseContextAnalyzer(projectRoot);
|
|
134
|
+
const astParser = new ASTCodeParser();
|
|
135
|
+
const dependencyBuilder = new DependencyGraphBuilder(contextAnalyzer, astParser);
|
|
136
|
+
const analysis = await dependencyBuilder.buildDependencyGraph();
|
|
137
|
+
// Analyze dependency health
|
|
138
|
+
const circularDependencies = analysis.issues
|
|
139
|
+
.filter((issue) => issue.type === "circular-dependency")
|
|
140
|
+
.map((issue) => issue.description);
|
|
141
|
+
const tightlyCoupledModules = identifyTightlyCoupledModules(analysis.graph);
|
|
142
|
+
const orphanModules = identifyOrphanModules(analysis.graph);
|
|
143
|
+
const healthScore = calculateDependencyHealthScore(analysis);
|
|
144
|
+
const recommendations = generateDependencyRecommendations(circularDependencies, tightlyCoupledModules, orphanModules, healthScore);
|
|
145
|
+
const result = {
|
|
146
|
+
graph: analysis.graph,
|
|
147
|
+
circularDependencies,
|
|
148
|
+
tightlyCoupledModules,
|
|
149
|
+
orphanModules,
|
|
150
|
+
healthScore,
|
|
151
|
+
recommendations,
|
|
152
|
+
};
|
|
153
|
+
await frameworkLogger.log("architect-tools", "dependency-analysis-complete", "success", {
|
|
154
|
+
projectRoot,
|
|
155
|
+
circularDeps: circularDependencies.length,
|
|
156
|
+
tightlyCoupled: tightlyCoupledModules.length,
|
|
157
|
+
orphans: orphanModules.length,
|
|
158
|
+
healthScore,
|
|
159
|
+
});
|
|
160
|
+
return result;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Architecture Assessment Tool - Overall architectural health evaluation
|
|
164
|
+
*/
|
|
165
|
+
export async function architectureAssessment(projectRoot, assessmentType = "comprehensive") {
|
|
166
|
+
await frameworkLogger.log("architect-tools", "architecture-assessment-start", "info", {
|
|
167
|
+
projectRoot,
|
|
168
|
+
assessmentType,
|
|
169
|
+
});
|
|
170
|
+
// Gather all necessary data
|
|
171
|
+
const contextResult = await contextAnalysis(projectRoot, undefined, assessmentType === "comprehensive" ? "detailed" : "overview");
|
|
172
|
+
const dependencyResult = await dependencyAnalysis(projectRoot);
|
|
173
|
+
// Calculate architectural health scores
|
|
174
|
+
const scores = calculateArchitecturalScores(contextResult, dependencyResult);
|
|
175
|
+
const overallHealth = determineOverallHealth(scores);
|
|
176
|
+
const issues = identifyArchitecturalIssues(contextResult, dependencyResult, scores);
|
|
177
|
+
const recommendations = generateArchitecturalRecommendations(issues, scores);
|
|
178
|
+
const result = {
|
|
179
|
+
overallHealth,
|
|
180
|
+
scores,
|
|
181
|
+
issues,
|
|
182
|
+
recommendations,
|
|
183
|
+
};
|
|
184
|
+
await frameworkLogger.log("architect-tools", "architecture-assessment-complete", "success", {
|
|
185
|
+
projectRoot,
|
|
186
|
+
overallHealth,
|
|
187
|
+
issueCount: issues.length,
|
|
188
|
+
recommendationCount: recommendations.length,
|
|
189
|
+
});
|
|
190
|
+
return result;
|
|
191
|
+
}
|
|
192
|
+
// Helper functions
|
|
193
|
+
function identifyArchitecturalPatterns(codebaseAnalysis, dependencyAnalysis) {
|
|
194
|
+
const patterns = [];
|
|
195
|
+
// MVC Pattern detection
|
|
196
|
+
if (hasMVCPattern(codebaseAnalysis)) {
|
|
197
|
+
patterns.push("Model-View-Controller (MVC)");
|
|
198
|
+
}
|
|
199
|
+
// Repository Pattern
|
|
200
|
+
if (hasRepositoryPattern(codebaseAnalysis)) {
|
|
201
|
+
patterns.push("Repository Pattern");
|
|
202
|
+
}
|
|
203
|
+
// Observer Pattern
|
|
204
|
+
if (hasObserverPattern(codebaseAnalysis)) {
|
|
205
|
+
patterns.push("Observer Pattern");
|
|
206
|
+
}
|
|
207
|
+
// Factory Pattern
|
|
208
|
+
if (hasFactoryPattern(codebaseAnalysis)) {
|
|
209
|
+
patterns.push("Factory Pattern");
|
|
210
|
+
}
|
|
211
|
+
// Microservices indicators
|
|
212
|
+
if (hasMicroservicesIndicators(codebaseAnalysis)) {
|
|
213
|
+
patterns.push("Microservices Architecture");
|
|
214
|
+
}
|
|
215
|
+
// Layered Architecture
|
|
216
|
+
if (hasLayeredArchitecture(dependencyAnalysis)) {
|
|
217
|
+
patterns.push("Layered Architecture");
|
|
218
|
+
}
|
|
219
|
+
return patterns;
|
|
220
|
+
}
|
|
221
|
+
function identifyBasicPatterns(codebaseAnalysis) {
|
|
222
|
+
const patterns = [];
|
|
223
|
+
// Basic pattern detection based on file structure
|
|
224
|
+
const fileNames = Array.from(codebaseAnalysis.structure.fileGraph?.keys() || []);
|
|
225
|
+
if (fileNames.some((f) => typeof f === "string" && f.includes("controller")))
|
|
226
|
+
patterns.push("Controller Layer Detected");
|
|
227
|
+
if (fileNames.some((f) => typeof f === "string" && f.includes("service")))
|
|
228
|
+
patterns.push("Service Layer Detected");
|
|
229
|
+
if (fileNames.some((f) => typeof f === "string" && (f.includes("model") || f.includes("entity"))))
|
|
230
|
+
patterns.push("Data Models Detected");
|
|
231
|
+
return patterns;
|
|
232
|
+
}
|
|
233
|
+
function analyzeDependencyHealth(dependencyAnalysis) {
|
|
234
|
+
const issues = [];
|
|
235
|
+
if (dependencyAnalysis.metrics.circularDependencies > 0) {
|
|
236
|
+
issues.push(`${dependencyAnalysis.metrics.circularDependencies} circular dependencies detected`);
|
|
237
|
+
}
|
|
238
|
+
if (dependencyAnalysis.metrics.couplingIndex > 80) {
|
|
239
|
+
issues.push(`High coupling index: ${dependencyAnalysis.metrics.couplingIndex}`);
|
|
240
|
+
}
|
|
241
|
+
if (dependencyAnalysis.metrics.orphanFiles > 0) {
|
|
242
|
+
issues.push(`${dependencyAnalysis.metrics.orphanFiles} orphan files detected`);
|
|
243
|
+
}
|
|
244
|
+
return issues;
|
|
245
|
+
}
|
|
246
|
+
function assessScalability(codebaseAnalysis, dependencyAnalysis) {
|
|
247
|
+
let score = 100;
|
|
248
|
+
const recommendations = [];
|
|
249
|
+
// Coupling impact on scalability
|
|
250
|
+
if (dependencyAnalysis.metrics.couplingIndex > 70) {
|
|
251
|
+
score -= 20;
|
|
252
|
+
recommendations.push("Reduce coupling to improve scalability");
|
|
253
|
+
}
|
|
254
|
+
// Modularity impact
|
|
255
|
+
if (codebaseAnalysis.structure.modules.size < 5 &&
|
|
256
|
+
codebaseAnalysis.structure.totalFiles > 50) {
|
|
257
|
+
score -= 15;
|
|
258
|
+
recommendations.push("Increase modularity for better scalability");
|
|
259
|
+
}
|
|
260
|
+
// File size impact
|
|
261
|
+
const avgFileSize = codebaseAnalysis.structure.totalLinesOfCode /
|
|
262
|
+
codebaseAnalysis.structure.totalFiles;
|
|
263
|
+
if (avgFileSize > 500) {
|
|
264
|
+
score -= 10;
|
|
265
|
+
recommendations.push("Break down large files for better maintainability");
|
|
266
|
+
}
|
|
267
|
+
return { score: Math.max(0, score), recommendations };
|
|
268
|
+
}
|
|
269
|
+
function calculateMaintainabilityIndex(codebaseAnalysis, dependencyAnalysis) {
|
|
270
|
+
let index = 100;
|
|
271
|
+
// Complexity impact
|
|
272
|
+
if (codebaseAnalysis.metrics.complexity > 80)
|
|
273
|
+
index -= 25;
|
|
274
|
+
// Coupling impact
|
|
275
|
+
if (dependencyAnalysis.metrics.couplingIndex > 70)
|
|
276
|
+
index -= 20;
|
|
277
|
+
// Test coverage impact (estimated)
|
|
278
|
+
const estimatedTestCoverage = codebaseAnalysis.metrics.testCoverage || 50;
|
|
279
|
+
if (estimatedTestCoverage < 70)
|
|
280
|
+
index -= Math.floor((70 - estimatedTestCoverage) / 2);
|
|
281
|
+
return Math.max(0, index);
|
|
282
|
+
}
|
|
283
|
+
function analyzeComplexityPatterns(codebaseAnalysis) {
|
|
284
|
+
return {
|
|
285
|
+
averageComplexity: codebaseAnalysis.metrics.complexity || 0,
|
|
286
|
+
highComplexityFiles: [], // Would be populated with actual analysis
|
|
287
|
+
complexityDistribution: "low",
|
|
288
|
+
recommendations: generateComplexityRecommendations(codebaseAnalysis),
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
function hasMVCPattern(analysis) {
|
|
292
|
+
const files = Array.from(analysis.structure.fileGraph?.keys() || []);
|
|
293
|
+
const hasControllers = files.some((f) => typeof f === "string" && f.includes("controller"));
|
|
294
|
+
const hasModels = files.some((f) => typeof f === "string" && f.includes("model"));
|
|
295
|
+
const hasViews = files.some((f) => typeof f === "string" && (f.includes("view") || f.includes("component")));
|
|
296
|
+
return hasControllers && hasModels && hasViews;
|
|
297
|
+
}
|
|
298
|
+
function hasRepositoryPattern(analysis) {
|
|
299
|
+
const files = Array.from(analysis.structure.fileGraph?.keys() || []);
|
|
300
|
+
return files.some((f) => typeof f === "string" && f.includes("repository"));
|
|
301
|
+
}
|
|
302
|
+
function hasObserverPattern(analysis) {
|
|
303
|
+
return false;
|
|
304
|
+
}
|
|
305
|
+
function hasFactoryPattern(analysis) {
|
|
306
|
+
const files = Array.from(analysis.structure.fileGraph?.keys() || []);
|
|
307
|
+
return files.some((f) => typeof f === "string" && f.includes("factory"));
|
|
308
|
+
}
|
|
309
|
+
function hasMicroservicesIndicators(analysis) {
|
|
310
|
+
const files = Array.from(analysis.structure.fileGraph?.keys() || []);
|
|
311
|
+
return files.some((f) => typeof f === "string" &&
|
|
312
|
+
(f.includes("docker") || f.includes("kubernetes")));
|
|
313
|
+
}
|
|
314
|
+
function hasLayeredArchitecture(dependencyAnalysis) {
|
|
315
|
+
return false;
|
|
316
|
+
}
|
|
317
|
+
function groupByFileType(fileGraph) {
|
|
318
|
+
const types = {};
|
|
319
|
+
for (const fileInfo of fileGraph.values()) {
|
|
320
|
+
const type = fileInfo.language || "other";
|
|
321
|
+
types[type] = (types[type] || 0) + 1;
|
|
322
|
+
}
|
|
323
|
+
return types;
|
|
324
|
+
}
|
|
325
|
+
function identifyTightlyCoupledModules(graph) {
|
|
326
|
+
return [];
|
|
327
|
+
}
|
|
328
|
+
function identifyOrphanModules(graph) {
|
|
329
|
+
return [];
|
|
330
|
+
}
|
|
331
|
+
function calculateDependencyHealthScore(analysis) {
|
|
332
|
+
let score = 100;
|
|
333
|
+
if (analysis.metrics.circularDependencies > 0)
|
|
334
|
+
score -= analysis.metrics.circularDependencies * 10;
|
|
335
|
+
if (analysis.metrics.couplingIndex > 70)
|
|
336
|
+
score -= analysis.metrics.couplingIndex - 70;
|
|
337
|
+
if (analysis.metrics.orphanFiles > 0)
|
|
338
|
+
score -= analysis.metrics.orphanFiles * 5;
|
|
339
|
+
return Math.max(0, score);
|
|
340
|
+
}
|
|
341
|
+
function generateDependencyRecommendations(circularDeps, tightlyCoupled, orphans, healthScore) {
|
|
342
|
+
const recommendations = [];
|
|
343
|
+
if (circularDeps.length > 0) {
|
|
344
|
+
recommendations.push("Resolve circular dependencies by introducing interfaces or mediator patterns");
|
|
345
|
+
}
|
|
346
|
+
if (tightlyCoupled.length > 0) {
|
|
347
|
+
recommendations.push("Reduce coupling by applying dependency inversion principle");
|
|
348
|
+
}
|
|
349
|
+
if (orphans.length > 0) {
|
|
350
|
+
recommendations.push("Review orphan modules - they may indicate dead code or missing integration");
|
|
351
|
+
}
|
|
352
|
+
if (healthScore < 70) {
|
|
353
|
+
recommendations.push("Consider architectural refactoring to improve dependency health");
|
|
354
|
+
}
|
|
355
|
+
return recommendations;
|
|
356
|
+
}
|
|
357
|
+
function calculateArchitecturalScores(context, deps) {
|
|
358
|
+
return {
|
|
359
|
+
modularity: context.codebaseStructure.modules?.size > 5 ? 85 : 60,
|
|
360
|
+
coupling: Math.max(0, 100 - deps.healthScore),
|
|
361
|
+
cohesion: context.maintainabilityIndex,
|
|
362
|
+
testability: 75, // Placeholder
|
|
363
|
+
scalability: context.scalabilityAssessment.score,
|
|
364
|
+
};
|
|
365
|
+
}
|
|
366
|
+
function determineOverallHealth(scores) {
|
|
367
|
+
const avgScore = Object.values(scores).reduce((a, b) => a + b, 0) /
|
|
368
|
+
Object.values(scores).length;
|
|
369
|
+
if (avgScore >= 85)
|
|
370
|
+
return "excellent";
|
|
371
|
+
if (avgScore >= 70)
|
|
372
|
+
return "good";
|
|
373
|
+
if (avgScore >= 55)
|
|
374
|
+
return "fair";
|
|
375
|
+
if (avgScore >= 40)
|
|
376
|
+
return "poor";
|
|
377
|
+
return "critical";
|
|
378
|
+
}
|
|
379
|
+
function identifyArchitecturalIssues(context, deps, scores) {
|
|
380
|
+
const issues = [];
|
|
381
|
+
if (scores.coupling > 80) {
|
|
382
|
+
issues.push({
|
|
383
|
+
type: "critical",
|
|
384
|
+
description: "High coupling between components",
|
|
385
|
+
impact: "Makes changes difficult and increases bug risk",
|
|
386
|
+
recommendation: "Apply dependency inversion and interface segregation principles",
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
if (scores.modularity < 60) {
|
|
390
|
+
issues.push({
|
|
391
|
+
type: "major",
|
|
392
|
+
description: "Low modularity",
|
|
393
|
+
impact: "Code is monolithic and hard to maintain",
|
|
394
|
+
recommendation: "Break down into smaller, focused modules",
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (deps.circularDependencies.length > 0) {
|
|
398
|
+
issues.push({
|
|
399
|
+
type: "major",
|
|
400
|
+
description: `${deps.circularDependencies.length} circular dependencies detected`,
|
|
401
|
+
impact: "Creates tight coupling and makes testing difficult",
|
|
402
|
+
recommendation: "Refactor to break circular dependencies",
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
return issues;
|
|
406
|
+
}
|
|
407
|
+
function generateArchitecturalRecommendations(issues, scores) {
|
|
408
|
+
const recommendations = [];
|
|
409
|
+
if (issues.some((i) => i.type === "critical")) {
|
|
410
|
+
recommendations.push("Address critical architectural issues immediately");
|
|
411
|
+
}
|
|
412
|
+
if (scores.scalability < 70) {
|
|
413
|
+
recommendations.push("Improve scalability by reducing coupling and increasing modularity");
|
|
414
|
+
}
|
|
415
|
+
if (scores.testability < 70) {
|
|
416
|
+
recommendations.push("Enhance testability by improving separation of concerns");
|
|
417
|
+
}
|
|
418
|
+
recommendations.push("Regular architectural reviews to maintain code quality");
|
|
419
|
+
return recommendations;
|
|
420
|
+
}
|
|
421
|
+
function generateComplexityRecommendations(codebaseAnalysis) {
|
|
422
|
+
const recommendations = [];
|
|
423
|
+
if (codebaseAnalysis.metrics.complexity > 80) {
|
|
424
|
+
recommendations.push("Break down complex functions into smaller, focused units");
|
|
425
|
+
}
|
|
426
|
+
if (codebaseAnalysis.structure.totalLinesOfCode > 10000) {
|
|
427
|
+
recommendations.push("Consider splitting large codebases into separate modules");
|
|
428
|
+
}
|
|
429
|
+
return recommendations;
|
|
430
|
+
}
|
|
431
|
+
// Export tools for MCP integration
|
|
432
|
+
export const architectTools = {
|
|
433
|
+
contextAnalysis,
|
|
434
|
+
codebaseStructure,
|
|
435
|
+
dependencyAnalysis,
|
|
436
|
+
architectureAssessment,
|
|
437
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ARCHITECTURAL INTEGRITY ENFORCEMENT
|
|
3
|
+
*
|
|
4
|
+
* This module ensures that critical framework components are always active
|
|
5
|
+
* and integrated, preventing the staged initialization issues that broke
|
|
6
|
+
* the post-processor and rules engine enforcement.
|
|
7
|
+
*/
|
|
8
|
+
import { frameworkLogger } from "../core/framework-logger.js";
|
|
9
|
+
// Critical components that must always be active
|
|
10
|
+
const CRITICAL_COMPONENTS = [
|
|
11
|
+
"stateManager",
|
|
12
|
+
"postProcessor",
|
|
13
|
+
"rulesEngine",
|
|
14
|
+
"codexInjector",
|
|
15
|
+
];
|
|
16
|
+
/**
|
|
17
|
+
* Verify all critical components are active and integrated
|
|
18
|
+
*/
|
|
19
|
+
export async function verifyArchitecturalIntegrity() {
|
|
20
|
+
const issues = [];
|
|
21
|
+
const recommendations = [];
|
|
22
|
+
// Check state manager
|
|
23
|
+
const stateManager = globalThis.strRayStateManager;
|
|
24
|
+
if (!stateManager) {
|
|
25
|
+
issues.push("State manager not initialized");
|
|
26
|
+
recommendations.push("Ensure boot orchestrator runs before framework activation");
|
|
27
|
+
}
|
|
28
|
+
const postProcessor = globalThis.strRayPostProcessor;
|
|
29
|
+
if (!postProcessor) {
|
|
30
|
+
issues.push("Post-processor not activated");
|
|
31
|
+
recommendations.push("Add post-processor activation to xray-activation.ts");
|
|
32
|
+
}
|
|
33
|
+
const codexInjector = globalThis.strRayCodexInjector;
|
|
34
|
+
if (!codexInjector) {
|
|
35
|
+
issues.push("Codex injector not initialized");
|
|
36
|
+
recommendations.push("Ensure codex injection is active in plugin context");
|
|
37
|
+
}
|
|
38
|
+
// Check rules engine enforcement
|
|
39
|
+
if (stateManager && !stateManager.get("enforcement:active")) {
|
|
40
|
+
issues.push("Rules engine not actively enforcing codex");
|
|
41
|
+
recommendations.push("Ensure codex rules are enforced during tool execution");
|
|
42
|
+
}
|
|
43
|
+
const allActive = issues.length === 0;
|
|
44
|
+
if (!allActive) {
|
|
45
|
+
frameworkLogger.log("architectural-integrity", `Integrity check failed: ${issues.length} issues found`, "error", { issues, recommendations });
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
frameworkLogger.log("architectural-integrity", "All critical components active and integrated", "success");
|
|
49
|
+
}
|
|
50
|
+
return { allActive, issues, recommendations };
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Force activation of critical components if missing
|
|
54
|
+
* This prevents staged initialization from breaking the framework
|
|
55
|
+
*/
|
|
56
|
+
export async function ensureCriticalComponents() {
|
|
57
|
+
const integrity = await verifyArchitecturalIntegrity();
|
|
58
|
+
if (!integrity.allActive) {
|
|
59
|
+
frameworkLogger.log("architectural-integrity", "Activating missing critical components", "info");
|
|
60
|
+
// Force activation of missing components
|
|
61
|
+
for (const recommendation of integrity.recommendations) {
|
|
62
|
+
if (recommendation.includes("post-processor")) {
|
|
63
|
+
await forcePostProcessorActivation();
|
|
64
|
+
}
|
|
65
|
+
if (recommendation.includes("codex")) {
|
|
66
|
+
await forceCodexActivation();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async function forcePostProcessorActivation() {
|
|
72
|
+
// Implementation to force post-processor activation
|
|
73
|
+
// This ensures the post-processor is always available
|
|
74
|
+
}
|
|
75
|
+
async function forceCodexActivation() {
|
|
76
|
+
// Implementation to force codex activation
|
|
77
|
+
// This ensures rules are always enforced
|
|
78
|
+
}
|