0xray 3.4.1 → 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.
Files changed (436) hide show
  1. package/.xray/codex.json +598 -0
  2. package/.xray/config.json +25 -0
  3. package/.xray/features.json +152 -0
  4. package/.xray/features.schema.json +33 -0
  5. package/AGENTS-consumer.md +127 -10
  6. package/AGENTS.md +172 -56
  7. package/README.md +159 -82
  8. package/SKILLS.md +79 -53
  9. package/dist/AGENTS.md +172 -56
  10. package/dist/CHANGELOG.md +95 -52
  11. package/dist/README.md +159 -82
  12. package/dist/SKILLS.md +79 -53
  13. package/dist/agents/architect.d.ts +2 -0
  14. package/dist/agents/backend-engineer.d.ts +8 -0
  15. package/dist/agents/bug-triage-specialist.d.ts +2 -0
  16. package/dist/agents/code-analyzer.d.ts +7 -0
  17. package/dist/agents/code-reviewer.d.ts +2 -0
  18. package/dist/agents/content-creator.d.ts +9 -0
  19. package/dist/agents/database-engineer.d.ts +8 -0
  20. package/dist/agents/devops-engineer.d.ts +8 -0
  21. package/dist/agents/frontend-engineer.d.ts +8 -0
  22. package/dist/agents/frontend-ui-ux-engineer.d.ts +8 -0
  23. package/dist/agents/growth-strategist.d.ts +8 -0
  24. package/dist/agents/index.d.ts +25 -0
  25. package/dist/agents/known-names.d.ts +26 -0
  26. package/dist/agents/librarian-agents-updater.d.ts +30 -0
  27. package/dist/agents/log-monitor.d.ts +2 -0
  28. package/dist/agents/mobile-developer.d.ts +9 -0
  29. package/dist/agents/multimodal-looker.d.ts +9 -0
  30. package/dist/agents/performance-engineer.d.ts +8 -0
  31. package/dist/agents/refactorer.d.ts +2 -0
  32. package/dist/agents/registry.d.ts +37 -0
  33. package/dist/agents/researcher.d.ts +2 -0
  34. package/dist/agents/security-auditor.d.ts +2 -0
  35. package/dist/agents/seo-consultant.d.ts +8 -0
  36. package/dist/agents/strategist.d.ts +7 -0
  37. package/dist/agents/tech-writer.d.ts +8 -0
  38. package/dist/agents/testing-lead.d.ts +2 -0
  39. package/dist/agents/types.d.ts +45 -0
  40. package/dist/analytics/consent-manager.d.ts +92 -0
  41. package/dist/analytics/emerging-pattern-detector.d.ts +66 -0
  42. package/dist/analytics/pattern-learning-engine.d.ts +79 -0
  43. package/dist/analytics/pattern-performance-tracker.d.ts +96 -0
  44. package/dist/analytics/predictive-analytics.d.ts +40 -0
  45. package/dist/analytics/prompt-pattern-analyzer.d.ts +98 -0
  46. package/dist/analytics/routing-performance-analyzer.d.ts +100 -0
  47. package/dist/analytics/routing-refiner.d.ts +102 -0
  48. package/dist/analytics/simple-pattern-analyzer.d.ts +79 -0
  49. package/dist/architect/architect-tools.d.ts +70 -0
  50. package/dist/architect/architectural-integrity.d.ts +20 -0
  51. package/dist/benchmark/performance-benchmark.d.ts +103 -0
  52. package/dist/cli/commands/analytics-disable.d.ts +9 -0
  53. package/dist/cli/commands/analytics-enable-action.d.ts +8 -0
  54. package/dist/cli/commands/analytics-preview.d.ts +9 -0
  55. package/dist/cli/commands/analytics-status.d.ts +9 -0
  56. package/dist/cli/commands/antigravity-status.d.ts +9 -0
  57. package/dist/cli/commands/archive-logs.d.ts +23 -0
  58. package/dist/cli/commands/credible-init.d.ts +11 -0
  59. package/dist/cli/commands/enforce.d.ts +12 -0
  60. package/dist/cli/commands/govern.d.ts +29 -0
  61. package/dist/cli/commands/grok-install.d.ts +7 -0
  62. package/dist/cli/commands/hermes-install.d.ts +2 -0
  63. package/dist/cli/commands/mcp-install.d.ts +4 -0
  64. package/dist/cli/commands/openclaw-install.d.ts +2 -0
  65. package/dist/cli/commands/opencode-install.d.ts +2 -0
  66. package/dist/cli/commands/plugin-commands.d.ts +18 -0
  67. package/dist/cli/commands/publish-agent.d.ts +15 -0
  68. package/dist/cli/commands/security-audit.d.ts +23 -0
  69. package/dist/cli/commands/skill-install.d.ts +6 -0
  70. package/dist/cli/commands/status.d.ts +41 -0
  71. package/dist/cli/commands/storyteller.d.ts +19 -0
  72. package/dist/cli/index.d.ts +7 -0
  73. package/dist/cli/server.d.ts +1 -0
  74. package/dist/config/default-agents.d.ts +12 -0
  75. package/dist/config/routing-mappings.d.ts +26 -0
  76. package/dist/core/activity-logger.d.ts +71 -0
  77. package/dist/core/adaptive-kernel.d.ts +108 -0
  78. package/dist/core/agent-spawn-gate.d.ts +56 -0
  79. package/dist/core/boot-orchestrator.d.ts +99 -0
  80. package/dist/core/codex-formatter.d.ts +95 -0
  81. package/dist/core/codex-injector.d.ts +73 -0
  82. package/dist/core/config-loader.d.ts +59 -0
  83. package/dist/core/config-paths.d.ts +66 -0
  84. package/dist/core/context-loader.d.ts +120 -0
  85. package/dist/core/context-validator.d.ts +52 -0
  86. package/dist/core/features-config.d.ts +485 -0
  87. package/dist/core/features-config.js +5 -0
  88. package/dist/core/framework-logger.d.ts +76 -0
  89. package/dist/core/index.d.ts +5 -0
  90. package/dist/core/kernel-patterns.d.ts +129 -0
  91. package/dist/core/logging-config.d.ts +10 -0
  92. package/dist/core/model-router.d.ts +56 -0
  93. package/dist/core/orchestrator.d.ts +71 -0
  94. package/dist/core/system-prompt-generator.d.ts +34 -0
  95. package/dist/core/trace-context.d.ts +12 -0
  96. package/dist/core/xray-activation.d.ts +14 -0
  97. package/dist/delegation/agent-delegator.d.ts +185 -0
  98. package/dist/delegation/agent-expertise.d.ts +15 -0
  99. package/dist/delegation/analytics/index.d.ts +11 -0
  100. package/dist/delegation/analytics/learning-engine.d.ts +84 -0
  101. package/dist/delegation/analytics/outcome-tracker.d.ts +117 -0
  102. package/dist/delegation/analytics/routing-analytics.d.ts +60 -0
  103. package/dist/delegation/ast-code-parser.d.ts +173 -0
  104. package/dist/delegation/codebase-context-analyzer.d.ts +164 -0
  105. package/dist/delegation/complexity-analyzer.d.ts +110 -0
  106. package/dist/delegation/complexity-core.d.ts +119 -0
  107. package/dist/delegation/config/types.d.ts +247 -0
  108. package/dist/delegation/dependency-graph-builder.d.ts +94 -0
  109. package/dist/delegation/index.d.ts +25 -0
  110. package/dist/delegation/metrics-aggregator.d.ts +91 -0
  111. package/dist/delegation/session-coordinator.d.ts +132 -0
  112. package/dist/delegation/strategy-selector.d.ts +27 -0
  113. package/dist/delegation/voting-coordinator.d.ts +48 -0
  114. package/dist/delegation/voting-types.d.ts +154 -0
  115. package/dist/delegation/weighted-voting-aggregator.d.ts +36 -0
  116. package/dist/enforcement/core/index.d.ts +14 -0
  117. package/dist/enforcement/core/rule-executor.d.ts +157 -0
  118. package/dist/enforcement/core/rule-hierarchy.d.ts +145 -0
  119. package/dist/enforcement/core/rule-registry.d.ts +196 -0
  120. package/dist/enforcement/core/violation-fixer.d.ts +105 -0
  121. package/dist/enforcement/enforcer-tools.d.ts +78 -0
  122. package/dist/enforcement/index.d.ts +22 -0
  123. package/dist/enforcement/loaders/agent-triage-loader.d.ts +98 -0
  124. package/dist/enforcement/loaders/agents-md-validation-loader.d.ts +75 -0
  125. package/dist/enforcement/loaders/base-loader.d.ts +82 -0
  126. package/dist/enforcement/loaders/codex-loader.d.ts +76 -0
  127. package/dist/enforcement/loaders/index.d.ts +36 -0
  128. package/dist/enforcement/loaders/loader-orchestrator.d.ts +96 -0
  129. package/dist/enforcement/loaders/processor-loader.d.ts +59 -0
  130. package/dist/enforcement/rule-enforcer.d.ts +142 -0
  131. package/dist/enforcement/test-auto-healing.d.ts +83 -0
  132. package/dist/enforcement/types.d.ts +500 -0
  133. package/dist/enforcement/validators/architecture-validators.d.ts +154 -0
  134. package/dist/enforcement/validators/base-validator.d.ts +87 -0
  135. package/dist/enforcement/validators/code-quality-validators.d.ts +88 -0
  136. package/dist/enforcement/validators/index.d.ts +14 -0
  137. package/dist/enforcement/validators/security-validators.d.ts +52 -0
  138. package/dist/enforcement/validators/testing-validators.d.ts +80 -0
  139. package/dist/enforcement/validators/validator-registry.d.ts +91 -0
  140. package/dist/execution/opencode-cli-invoker.d.ts +8 -0
  141. package/dist/execution/proposal-applier.d.ts +24 -0
  142. package/dist/governance/codex-policy.service.d.ts +56 -0
  143. package/dist/governance/governance-core.d.ts +53 -0
  144. package/dist/governance/governance-service.d.ts +38 -0
  145. package/dist/governance/governance-types.d.ts +90 -0
  146. package/dist/governance/llm-governance-provider.d.ts +13 -0
  147. package/dist/index.d.ts +28 -0
  148. package/dist/inference/deploy-verifier.d.ts +26 -0
  149. package/dist/inference/index.d.ts +10 -0
  150. package/dist/inference/inference-accumulator.d.ts +29 -0
  151. package/dist/inference/inference-agent-invoker.d.ts +3 -0
  152. package/dist/inference/inference-applier.d.ts +4 -0
  153. package/dist/inference/inference-cycle.d.ts +70 -0
  154. package/dist/inference/inference-proposal-generator.d.ts +3 -0
  155. package/dist/inference/semantic-patterns.d.ts +7 -0
  156. package/dist/inference/session-capture.d.ts +32 -0
  157. package/dist/infrastructure/iac-validator.d.ts +150 -0
  158. package/dist/infrastructure/schemas/cloud-schemas.d.ts +482 -0
  159. package/dist/integrations/base/ExampleIntegration.d.ts +46 -0
  160. package/dist/integrations/base/Integration.d.ts +266 -0
  161. package/dist/integrations/base/index.d.ts +11 -0
  162. package/dist/integrations/base/registry.d.ts +272 -0
  163. package/dist/integrations/base/types.d.ts +167 -0
  164. package/dist/integrations/enforcement-gate.d.ts +44 -0
  165. package/dist/integrations/governance/governance-client.d.ts +75 -0
  166. package/dist/integrations/governance/index.d.ts +98 -0
  167. package/dist/integrations/governance/types.d.ts +238 -0
  168. package/dist/integrations/grok/grok-cli.d.ts +25 -0
  169. package/dist/integrations/grok/hooks/grok-hook-activity.js +53 -0
  170. package/dist/integrations/grok/hooks/grok-hook-utils.js +261 -0
  171. package/dist/integrations/grok/hooks/pre-tool-use.js +85 -115
  172. package/dist/integrations/grok/hooks/session-start.js +52 -0
  173. package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +20 -3
  174. package/dist/integrations/openclaw/api-server.d.ts +86 -0
  175. package/dist/integrations/openclaw/client.d.ts +121 -0
  176. package/dist/integrations/openclaw/config.d.ts +95 -0
  177. package/dist/integrations/openclaw/hooks/xray-hooks.d.ts +123 -0
  178. package/dist/integrations/openclaw/index.d.ts +100 -0
  179. package/dist/integrations/openclaw/types.d.ts +425 -0
  180. package/dist/integrations/plugins/index.d.ts +9 -0
  181. package/dist/integrations/plugins/plugin-integration.d.ts +288 -0
  182. package/dist/integrations/plugins/plugin-registry.d.ts +223 -0
  183. package/dist/mcps/agent-resolver.d.ts +45 -0
  184. package/dist/mcps/architect-tools.server.d.ts +16 -0
  185. package/dist/mcps/auto-format.server.d.ts +18 -0
  186. package/dist/mcps/boot-orchestrator.server.d.ts +48 -0
  187. package/dist/mcps/config/config-loader.d.ts +56 -0
  188. package/dist/mcps/config/config-validator.d.ts +40 -0
  189. package/dist/mcps/config/index.d.ts +31 -0
  190. package/dist/mcps/config/plugin-server-registry.d.ts +126 -0
  191. package/dist/mcps/config/server-config-registry.d.ts +51 -0
  192. package/dist/mcps/config/server-config-registry.js +4 -3
  193. package/dist/mcps/connection/connection-manager.d.ts +39 -0
  194. package/dist/mcps/connection/connection-pool.d.ts +64 -0
  195. package/dist/mcps/connection/mcp-connection.d.ts +66 -0
  196. package/dist/mcps/connection/process-spawner.d.ts +24 -0
  197. package/dist/mcps/enforcer-tools.server.d.ts +26 -0
  198. package/dist/mcps/estimation.server.d.ts +19 -0
  199. package/dist/mcps/framework-compliance-audit.server.d.ts +20 -0
  200. package/dist/mcps/framework-help.server.d.ts +13 -0
  201. package/dist/mcps/governance.server.d.ts +35 -0
  202. package/dist/mcps/governance.server.js +14 -2
  203. package/dist/mcps/in-process-skill-registry.d.ts +20 -0
  204. package/dist/mcps/index.d.ts +17 -0
  205. package/dist/mcps/knowledge-skills/api-design.server.d.ts +13 -0
  206. package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +13 -0
  207. package/dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts +31 -0
  208. package/dist/mcps/knowledge-skills/code-analyzer.server.d.ts +29 -0
  209. package/dist/mcps/knowledge-skills/code-review.server.d.ts +44 -0
  210. package/dist/mcps/knowledge-skills/content-creator.server.d.ts +11 -0
  211. package/dist/mcps/knowledge-skills/database-design.server.d.ts +41 -0
  212. package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +41 -0
  213. package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +13 -0
  214. package/dist/mcps/knowledge-skills/growth-strategist.server.d.ts +11 -0
  215. package/dist/mcps/knowledge-skills/log-monitor.server.d.ts +22 -0
  216. package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +17 -0
  217. package/dist/mcps/knowledge-skills/multimodal-looker.server.d.ts +53 -0
  218. package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +69 -0
  219. package/dist/mcps/knowledge-skills/project-analysis.server.d.ts +35 -0
  220. package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +31 -0
  221. package/dist/mcps/knowledge-skills/security-audit.server.d.ts +46 -0
  222. package/dist/mcps/knowledge-skills/seo-consultant.server.d.ts +24 -0
  223. package/dist/mcps/knowledge-skills/session-management.server.d.ts +22 -0
  224. package/dist/mcps/knowledge-skills/skill-invocation.server.d.ts +32 -0
  225. package/dist/mcps/knowledge-skills/storyteller.server.d.ts +11 -0
  226. package/dist/mcps/knowledge-skills/strategist.server.d.ts +15 -0
  227. package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +45 -0
  228. package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +34 -0
  229. package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +45 -0
  230. package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +67 -0
  231. package/dist/mcps/lint.server.d.ts +15 -0
  232. package/dist/mcps/mcp-client.d.ts +157 -0
  233. package/dist/mcps/model-health-check.server.d.ts +14 -0
  234. package/dist/mcps/orchestrator/aside-context.d.ts +21 -0
  235. package/dist/mcps/orchestrator/config/agent-capabilities.d.ts +39 -0
  236. package/dist/mcps/orchestrator/config/memory-routing-bridge.d.ts +12 -0
  237. package/dist/mcps/orchestrator/execution/execution-planner.d.ts +62 -0
  238. package/dist/mcps/orchestrator/handlers/complexity-handler.d.ts +32 -0
  239. package/dist/mcps/orchestrator/handlers/complexity-handler.js +33 -3
  240. package/dist/mcps/orchestrator/handlers/status-handler.d.ts +71 -0
  241. package/dist/mcps/orchestrator/handlers/task-handler.d.ts +53 -0
  242. package/dist/mcps/orchestrator/index.d.ts +6 -0
  243. package/dist/mcps/orchestrator/server.d.ts +38 -0
  244. package/dist/mcps/orchestrator/server.js +1 -1
  245. package/dist/mcps/orchestrator/types.d.ts +128 -0
  246. package/dist/mcps/orchestrator.server.d.ts +10 -0
  247. package/dist/mcps/performance-analysis.server.d.ts +25 -0
  248. package/dist/mcps/processor-pipeline.server.d.ts +29 -0
  249. package/dist/mcps/protocol/protocol-constants.d.ts +46 -0
  250. package/dist/mcps/researcher-confidence.d.ts +21 -0
  251. package/dist/mcps/researcher.server.d.ts +29 -0
  252. package/dist/mcps/researcher.server.js +3 -0
  253. package/dist/mcps/security-scan.server.d.ts +19 -0
  254. package/dist/mcps/shared/knowledge-skill-base.d.ts +17 -0
  255. package/dist/mcps/shared/prompt-security-validator.d.ts +44 -0
  256. package/dist/mcps/shared/security-scanner.d.ts +119 -0
  257. package/dist/mcps/simulation/index.d.ts +12 -0
  258. package/dist/mcps/simulation/server-simulations.d.ts +39 -0
  259. package/dist/mcps/simulation/simulation-engine.d.ts +51 -0
  260. package/dist/mcps/state-manager.server.d.ts +27 -0
  261. package/dist/mcps/tools/index.d.ts +14 -0
  262. package/dist/mcps/tools/tool-cache.d.ts +53 -0
  263. package/dist/mcps/tools/tool-discovery.d.ts +27 -0
  264. package/dist/mcps/tools/tool-executor.d.ts +41 -0
  265. package/dist/mcps/tools/tool-registry.d.ts +42 -0
  266. package/dist/mcps/types/index.d.ts +13 -0
  267. package/dist/mcps/types/json-rpc.types.d.ts +35 -0
  268. package/dist/mcps/types/mcp.types.d.ts +105 -0
  269. package/dist/memory-routing/index.d.ts +6 -0
  270. package/dist/memory-routing/null-provider.d.ts +14 -0
  271. package/dist/memory-routing/provider-loader.d.ts +2 -0
  272. package/dist/memory-routing/provider-registry.d.ts +8 -0
  273. package/dist/memory-routing/types.d.ts +104 -0
  274. package/dist/memory-routing/validate-config.d.ts +7 -0
  275. package/dist/metrics/agent-metrics.d.ts +169 -0
  276. package/dist/metrics/index.d.ts +6 -0
  277. package/dist/monitoring/advanced-profiler.d.ts +51 -0
  278. package/dist/monitoring/memory-monitor.d.ts +113 -0
  279. package/dist/monitoring/nudge-watchdog.d.ts +87 -0
  280. package/dist/monitoring/test-auto-generation-monitor.d.ts +64 -0
  281. package/dist/nucleus/autonomy-kernel.d.ts +48 -0
  282. package/dist/nucleus/autonomy-kernel.js +176 -0
  283. package/dist/nucleus/default-plugins.d.ts +17 -0
  284. package/dist/nucleus/govern-http.d.ts +59 -0
  285. package/dist/nucleus/index.d.ts +17 -0
  286. package/dist/nucleus/index.js +1 -0
  287. package/dist/nucleus/kernel.d.ts +51 -0
  288. package/dist/nucleus/plugin-registry.d.ts +132 -0
  289. package/dist/nucleus/thin-dispatch.d.ts +33 -0
  290. package/dist/orchestrator/agent-spawn-governor.d.ts +126 -0
  291. package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +156 -0
  292. package/dist/orchestrator/intelligent-commit-batcher.d.ts +114 -0
  293. package/dist/orchestrator/multi-agent-orchestration-coordinator.d.ts +126 -0
  294. package/dist/orchestrator/orchestrator.d.ts +141 -0
  295. package/dist/orchestrator/self-direction-activation.d.ts +108 -0
  296. package/dist/orchestrator/universal-librarian-consultation.d.ts +98 -0
  297. package/dist/orchestrator/universal-registry-bridge.d.ts +84 -0
  298. package/dist/performance/performance-budget-enforcer.d.ts +157 -0
  299. package/dist/performance/performance-regression-tester.d.ts +107 -0
  300. package/dist/plugin/plugin-codex-context.d.ts +18 -0
  301. package/dist/plugin/plugin-helpers.d.ts +23 -0
  302. package/dist/plugin/plugin-logger.d.ts +8 -0
  303. package/dist/plugin/plugin-modules.d.ts +11 -0
  304. package/dist/plugin/plugin-quality-gate.d.ts +11 -0
  305. package/dist/plugin/plugin-types.d.ts +93 -0
  306. package/dist/plugin/xray-codex-injection.d.ts +39 -0
  307. package/dist/postprocessor/PostProcessor.d.ts +107 -0
  308. package/dist/postprocessor/analysis/CodeChangeAnalyzer.d.ts +11 -0
  309. package/dist/postprocessor/analysis/FailureAnalysisEngine.d.ts +39 -0
  310. package/dist/postprocessor/autofix/AutoFixEngine.d.ts +48 -0
  311. package/dist/postprocessor/autofix/FixValidator.d.ts +23 -0
  312. package/dist/postprocessor/config/ProcessorConfigLoader.d.ts +44 -0
  313. package/dist/postprocessor/config.d.ts +6 -0
  314. package/dist/postprocessor/escalation/EscalationEngine.d.ts +154 -0
  315. package/dist/postprocessor/integration.d.ts +156 -0
  316. package/dist/postprocessor/metamorphosis/SelfProposalEngine.d.ts +87 -0
  317. package/dist/postprocessor/metamorphosis/index.d.ts +2 -0
  318. package/dist/postprocessor/monitoring/MonitoringEngine.d.ts +40 -0
  319. package/dist/postprocessor/redeploy/RedeployCoordinator.d.ts +91 -0
  320. package/dist/postprocessor/redeploy/RetryHandler.d.ts +49 -0
  321. package/dist/postprocessor/services/RegressionAnalysisService.d.ts +39 -0
  322. package/dist/postprocessor/success/SuccessHandler.d.ts +57 -0
  323. package/dist/postprocessor/triggers/APITrigger.d.ts +34 -0
  324. package/dist/postprocessor/triggers/GitHookTrigger.d.ts +38 -0
  325. package/dist/postprocessor/triggers/WebhookTrigger.d.ts +46 -0
  326. package/dist/postprocessor/types.d.ts +227 -0
  327. package/dist/processors/doc-write-guard.d.ts +6 -0
  328. package/dist/processors/implementations/agents-md-validation-processor.d.ts +62 -0
  329. package/dist/processors/implementations/async-pattern-processor.d.ts +47 -0
  330. package/dist/processors/implementations/codex-compliance-processor.d.ts +7 -0
  331. package/dist/processors/implementations/commit-batcher-processor.d.ts +13 -0
  332. package/dist/processors/implementations/console-log-guard-processor.d.ts +32 -0
  333. package/dist/processors/implementations/coverage-analysis-processor.d.ts +19 -0
  334. package/dist/processors/implementations/error-boundary-processor.d.ts +7 -0
  335. package/dist/processors/implementations/inference-improvement-processor.d.ts +36 -0
  336. package/dist/processors/implementations/log-protection-processor.d.ts +29 -0
  337. package/dist/processors/implementations/nudge-processor.d.ts +21 -0
  338. package/dist/processors/implementations/performance-budget-processor.d.ts +49 -0
  339. package/dist/processors/implementations/postprocessor-chain-validator.d.ts +45 -0
  340. package/dist/processors/implementations/pre-validate-processor.d.ts +7 -0
  341. package/dist/processors/implementations/publish-preflight-processor.d.ts +37 -0
  342. package/dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts +7 -0
  343. package/dist/processors/implementations/refactoring-logging-processor.d.ts +31 -0
  344. package/dist/processors/implementations/regression-testing-processor.d.ts +20 -0
  345. package/dist/processors/implementations/session-capture-processor.d.ts +14 -0
  346. package/dist/processors/implementations/session-summary-processor.d.ts +26 -0
  347. package/dist/processors/implementations/spawn-governance-processor.d.ts +57 -0
  348. package/dist/processors/implementations/state-validation-processor.d.ts +11 -0
  349. package/dist/processors/implementations/storytelling-trigger-processor.d.ts +40 -0
  350. package/dist/processors/implementations/test-auto-creation-processor.d.ts +16 -0
  351. package/dist/processors/implementations/test-execution-processor.d.ts +11 -0
  352. package/dist/processors/implementations/typescript-compilation-processor.d.ts +37 -0
  353. package/dist/processors/implementations/version-compliance-processor.d.ts +111 -0
  354. package/dist/processors/processor-interfaces.d.ts +126 -0
  355. package/dist/processors/processor-manager.d.ts +80 -0
  356. package/dist/processors/processor-types.d.ts +189 -0
  357. package/dist/public/XrayService.d.ts +17 -0
  358. package/dist/public/index.d.ts +4 -0
  359. package/dist/reporting/framework-reporting-system.d.ts +19 -0
  360. package/dist/reporting/log-parser.d.ts +10 -0
  361. package/dist/reporting/metrics.d.ts +15 -0
  362. package/dist/reporting/report-formatter.d.ts +5 -0
  363. package/dist/reporting/types.d.ts +102 -0
  364. package/dist/scripts/activate-kernel-pipeline.d.ts +7 -0
  365. package/dist/scripts/integration.d.ts +36 -0
  366. package/dist/security/comprehensive-security-audit.d.ts +157 -0
  367. package/dist/security/index.d.ts +13 -0
  368. package/dist/security/prompt-security-validator.d.ts +44 -0
  369. package/dist/security/security-agent-coordinator.d.ts +71 -0
  370. package/dist/security/security-auditor.d.ts +55 -0
  371. package/dist/security/security-hardener.d.ts +61 -0
  372. package/dist/security/security-hardening-system.d.ts +238 -0
  373. package/dist/security/security-headers.d.ts +63 -0
  374. package/dist/security/security-orchestration-layer.d.ts +118 -0
  375. package/dist/security/security-scanner.d.ts +119 -0
  376. package/dist/services/inference-tuner.d.ts +76 -0
  377. package/dist/session/index.d.ts +3 -0
  378. package/dist/session/session-cleanup-manager.d.ts +117 -0
  379. package/dist/session/session-monitor.d.ts +132 -0
  380. package/dist/session/session-state-manager.d.ts +144 -0
  381. package/dist/skills/boot-orchestrator/SKILL.md +1 -5
  382. package/dist/skills/orchestrator/SKILL.md +35 -12
  383. package/dist/skills/researcher/SKILL.md +17 -4
  384. package/dist/skills/strategist/SKILL.md +12 -0
  385. package/dist/skills/testing-strategy/SKILL.md +13 -2
  386. package/dist/skills/xray-orchestrator/index.d.ts +12 -0
  387. package/dist/state/context-providers.d.ts +4 -0
  388. package/dist/state/index.d.ts +4 -0
  389. package/dist/state/state-manager.d.ts +41 -0
  390. package/dist/state/state-types.d.ts +5 -0
  391. package/dist/testing/memory-regression-suite.d.ts +105 -0
  392. package/dist/tools/assess-complexity-tool.d.ts +28 -0
  393. package/dist/tools/query-routing-tool.d.ts +17 -0
  394. package/dist/types/metamorphosis.d.ts +21 -0
  395. package/dist/utils/batch-operations.d.ts +25 -0
  396. package/dist/utils/codex-parser.d.ts +60 -0
  397. package/dist/utils/command-runner.d.ts +32 -0
  398. package/dist/utils/import-resolver.d.ts +54 -0
  399. package/dist/utils/language-detector.d.ts +43 -0
  400. package/dist/utils/path-resolver.d.ts +48 -0
  401. package/dist/utils/shutdown-handler.d.ts +26 -0
  402. package/dist/utils/task-graph.d.ts +29 -0
  403. package/dist/utils/test-template-generator.d.ts +25 -0
  404. package/dist/utils/token-manager.d.ts +48 -0
  405. package/dist/validation/agent-config-validator.d.ts +110 -0
  406. package/dist/validation/estimation-validator.d.ts +61 -0
  407. package/dist/validation/orchestration-flow-validator.d.ts +87 -0
  408. package/dist/validation/report-content-validator.d.ts +42 -0
  409. package/package.json +23 -8
  410. package/scripts/node/consumer-install-smoke.mjs +174 -0
  411. package/scripts/node/install-bridges.cjs +20 -6
  412. package/scripts/node/pre-publish-guard.js +107 -168
  413. package/scripts/node/reconcile-version.mjs +147 -0
  414. package/scripts/node/release-gate.mjs +66 -0
  415. package/scripts/node/release.js +5 -147
  416. package/scripts/node/release.mjs +106 -181
  417. package/scripts/node/setup.cjs +12 -22
  418. package/scripts/node/sync-versions.mjs +12 -134
  419. package/scripts/node/universal-version-manager.js +4 -0
  420. package/scripts/node/validate-release-docs.mjs +299 -0
  421. package/scripts/node/version-manager.mjs +225 -49
  422. package/src/integrations/grok/plugin/0xray/hooks/hooks.json +20 -3
  423. package/src/mcps/config/__tests__/server-config-registry.test.ts +9 -0
  424. package/src/mcps/config/server-config-registry.ts +5 -3
  425. package/src/mcps/governance.server.ts +15 -2
  426. package/src/mcps/orchestrator/handlers/complexity-handler.ts +54 -3
  427. package/src/mcps/orchestrator/server.ts +1 -1
  428. package/src/mcps/researcher.server.ts +4 -0
  429. package/src/skills/boot-orchestrator/SKILL.md +1 -5
  430. package/src/skills/orchestrator/SKILL.md +35 -12
  431. package/src/skills/researcher/SKILL.md +17 -4
  432. package/src/skills/strategist/SKILL.md +12 -0
  433. package/src/skills/testing-strategy/SKILL.md +13 -2
  434. package/xray/config.json +25 -0
  435. package/xray/features.json +152 -0
  436. package/xray/features.schema.json +33 -0
@@ -0,0 +1,48 @@
1
+ export interface TokenLimits {
2
+ maxPromptTokens: number;
3
+ warningThreshold: number;
4
+ modelLimits: Record<string, number>;
5
+ }
6
+ export interface ContextPruningConfig {
7
+ enabled: boolean;
8
+ aggressivePruning: boolean;
9
+ preserveCriticalContext: boolean;
10
+ }
11
+ export declare class TokenManager {
12
+ private config;
13
+ constructor(configPath?: string);
14
+ private loadConfig;
15
+ /**
16
+ * Estimate token count for text (rough approximation)
17
+ * Uses 4 characters per token as a conservative estimate
18
+ */
19
+ estimateTokens(text: string): number;
20
+ /**
21
+ * Check if prompt exceeds limits
22
+ */
23
+ checkLimits(prompt: string, modelName?: string): {
24
+ withinLimit: boolean;
25
+ currentTokens: number;
26
+ maxTokens: number;
27
+ needsPruning: boolean;
28
+ warning: boolean;
29
+ };
30
+ /**
31
+ * Prune context to fit within token limits
32
+ */
33
+ pruneContext(context: string, targetTokens?: number): string;
34
+ private extractCriticalSections;
35
+ private extractSection;
36
+ private extractNonCriticalContent;
37
+ private pruneNonCriticalContent;
38
+ /**
39
+ * Generate warning message for token limits
40
+ */
41
+ generateWarning(limitCheck: ReturnType<TokenManager["checkLimits"]>): string;
42
+ /**
43
+ * Get current configuration
44
+ */
45
+ getConfig(): TokenLimits & {
46
+ contextPruning: ContextPruningConfig;
47
+ };
48
+ }
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Agent Configuration Validator
3
+ *
4
+ * Validates agent configuration files for correctness and completeness
5
+ * ensuring all required fields are present and properly formatted.
6
+ *
7
+ * @since 2026-01-23
8
+ */
9
+ export interface AgentConfig {
10
+ name: string;
11
+ description: string;
12
+ version: string;
13
+ model: string;
14
+ mode: "primary" | "subagent";
15
+ logging?: {
16
+ level: string;
17
+ format: string;
18
+ destinations: string[];
19
+ retention_days?: number;
20
+ sensitive_data_filtering?: boolean;
21
+ audit_trail?: boolean;
22
+ };
23
+ processor_pipeline?: Array<{
24
+ name: string;
25
+ type: string;
26
+ priority: "low" | "medium" | "high" | "critical";
27
+ timeout_ms?: number;
28
+ retry_attempts?: number;
29
+ }>;
30
+ capabilities?: string[];
31
+ error_handling?: {
32
+ retry_attempts?: number;
33
+ circuit_breaker?: {
34
+ enabled?: boolean;
35
+ failure_threshold?: number;
36
+ recovery_timeout_ms?: number;
37
+ };
38
+ fallback_strategy?: string;
39
+ alert_on_failure?: boolean;
40
+ };
41
+ performance?: {
42
+ timeout_ms?: number;
43
+ concurrency_limit?: number;
44
+ memory_limit_mb?: number;
45
+ cpu_limit_percent?: number;
46
+ };
47
+ security?: {
48
+ sandboxed_execution?: boolean;
49
+ permission_level?: string;
50
+ data_classification?: string;
51
+ encryption_required?: boolean;
52
+ };
53
+ }
54
+ export interface ValidationResult {
55
+ valid: boolean;
56
+ errors: string[];
57
+ warnings: string[];
58
+ config: AgentConfig | null;
59
+ }
60
+ export declare class AgentConfigValidator {
61
+ private readonly requiredFields;
62
+ private readonly validModes;
63
+ private readonly validLogLevels;
64
+ private readonly validLogFormats;
65
+ private readonly validPriorities;
66
+ private readonly validProcessorTypes;
67
+ /**
68
+ * Validate agent configuration from file
69
+ */
70
+ validateConfigFile(filePath: string): Promise<ValidationResult>;
71
+ /**
72
+ * Validate agent configuration object
73
+ */
74
+ validateConfig(config: AgentConfig): ValidationResult;
75
+ /**
76
+ * Validate logging configuration
77
+ */
78
+ private validateLoggingConfig;
79
+ /**
80
+ * Validate processor pipeline configuration
81
+ */
82
+ private validateProcessorPipeline;
83
+ /**
84
+ * Validate performance configuration
85
+ */
86
+ private validatePerformanceConfig;
87
+ /**
88
+ * Validate security configuration
89
+ */
90
+ private validateSecurityConfig;
91
+ /**
92
+ * Validate error handling configuration
93
+ */
94
+ private validateErrorHandlingConfig;
95
+ /**
96
+ * Validate all agent configurations in a directory
97
+ */
98
+ validateAllAgentConfigs(agentConfigDir?: string): Promise<{
99
+ results: Array<{
100
+ file: string;
101
+ result: ValidationResult;
102
+ }>;
103
+ summary: {
104
+ total: number;
105
+ valid: number;
106
+ invalid: number;
107
+ };
108
+ }>;
109
+ }
110
+ export declare const agentConfigValidator: AgentConfigValidator;
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Estimation Validator
3
+ *
4
+ * Tracks estimates vs. actuals and provides calibrated estimates
5
+ * Prevents the "always estimate high" syndrome by learning from history
6
+ */
7
+ /**
8
+ * Estimation Validator
9
+ * Tracks estimates and learns from actuals to improve future predictions
10
+ */
11
+ export declare class EstimationValidator {
12
+ private estimations;
13
+ private calibrations;
14
+ private readonly STORAGE_KEY;
15
+ constructor();
16
+ /**
17
+ * Start tracking an estimate
18
+ */
19
+ startEstimate(taskId: string, description: string, category: string, estimatedMinutes: number, confidence?: 'high' | 'medium' | 'low'): void;
20
+ /**
21
+ * Complete tracking and record actual time
22
+ */
23
+ completeEstimate(taskId: string): void;
24
+ /**
25
+ * Get calibrated estimate based on historical data
26
+ */
27
+ getCalibratedEstimate(category: string, baseEstimate: number, confidence?: 'high' | 'medium' | 'low'): {
28
+ calibratedEstimate: number;
29
+ calibrationFactor: number;
30
+ confidence: number;
31
+ };
32
+ /**
33
+ * Check if an estimate needs adjustment
34
+ */
35
+ validateEstimate(category: string, estimate: number): {
36
+ isReasonable: boolean;
37
+ suggestedEstimate: number;
38
+ warning?: string;
39
+ };
40
+ /**
41
+ * Get estimation accuracy report
42
+ */
43
+ getAccuracyReport(): {
44
+ overallAccuracy: number;
45
+ categoryBreakdown: Array<{
46
+ category: string;
47
+ sampleSize: number;
48
+ avgRatio: number;
49
+ trend: 'over' | 'under' | 'accurate';
50
+ }>;
51
+ recommendations: string[];
52
+ };
53
+ private updateCalibration;
54
+ private loadFromStorage;
55
+ private saveToStorage;
56
+ }
57
+ export declare function getEstimationValidator(): EstimationValidator;
58
+ /**
59
+ * Decorator for async functions to track estimates
60
+ */
61
+ export declare function trackEstimate(taskId: string, description: string, category: string, estimatedMinutes: number): (_target: unknown, _propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
@@ -0,0 +1,87 @@
1
+ /**
2
+ * COMPREHENSIVE ORCHESTRATION FLOW VALIDATION SUITE
3
+ * Validates the complete end-to-end orchestration pipeline
4
+ */
5
+ interface TestResult {
6
+ testName: string;
7
+ success: boolean;
8
+ duration: number;
9
+ error?: string;
10
+ metrics: {
11
+ agentsSpawned: number;
12
+ agentsCompleted: number;
13
+ agentsFailed: number;
14
+ dependenciesResolved: number;
15
+ monitoringUpdates: number;
16
+ };
17
+ validationSteps: ValidationStep[];
18
+ }
19
+ interface ValidationStep {
20
+ step: string;
21
+ success: boolean;
22
+ timestamp: number;
23
+ details?: unknown;
24
+ }
25
+ declare class OrchestrationFlowValidator {
26
+ private orchestrator;
27
+ private stateManager;
28
+ private agentDelegator;
29
+ private testResults;
30
+ constructor();
31
+ /**
32
+ * SIMULATION 1: Basic Orchestration Flow
33
+ * Tests the fundamental orchestration pipeline
34
+ */
35
+ testBasicOrchestrationFlow(): Promise<TestResult>;
36
+ /**
37
+ * SIMULATION 2: Dependency Management Flow
38
+ * Tests complex task dependencies and sequencing
39
+ */
40
+ testDependencyManagementFlow(): Promise<TestResult>;
41
+ /**
42
+ * SIMULATION 3: Error Handling & Recovery Flow
43
+ * Tests system resilience and fallback mechanisms
44
+ */
45
+ testErrorHandlingFlow(): Promise<TestResult>;
46
+ /**
47
+ * SIMULATION 4: Performance & Scalability Flow
48
+ * Tests system performance under load
49
+ */
50
+ testPerformanceFlow(): Promise<TestResult>;
51
+ /**
52
+ * SIMULATION 5: Monitoring & Cleanup Flow
53
+ * Tests the complete monitoring and cleanup lifecycle
54
+ */
55
+ testMonitoringCleanupFlow(): Promise<TestResult>;
56
+ /**
57
+ * Run all orchestration flow validations
58
+ */
59
+ runCompleteValidationSuite(): Promise<ValidationSuiteResults>;
60
+ /**
61
+ * Generate comprehensive validation report
62
+ */
63
+ private generateValidationReport;
64
+ /**
65
+ * Generate recommendations based on test results
66
+ */
67
+ private generateRecommendations;
68
+ }
69
+ interface ValidationSuiteResults {
70
+ summary: {
71
+ totalTests: number;
72
+ passedTests: number;
73
+ failedTests: number;
74
+ successRate: number;
75
+ totalDuration: number;
76
+ avgDuration: number;
77
+ };
78
+ metrics: {
79
+ totalAgentsSpawned: number;
80
+ totalAgentsCompleted: number;
81
+ totalDependenciesResolved: number;
82
+ totalMonitoringUpdates: number;
83
+ };
84
+ testResults: TestResult[];
85
+ recommendations: string[];
86
+ }
87
+ export { OrchestrationFlowValidator };
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Report Content Validator
3
+ * Reads and analyzes full report content to detect hidden errors and inconsistencies
4
+ */
5
+ export declare class ReportContentValidator {
6
+ private reportPatterns;
7
+ /**
8
+ * Validate full report content for hidden errors
9
+ */
10
+ validateReportContent(reportPath: string, reportType: "session" | "framework" | "validation" | "simulation"): Promise<{
11
+ valid: boolean;
12
+ issues: string[];
13
+ summary: {
14
+ errorCount: number;
15
+ warningCount: number;
16
+ falsePositiveCount: number;
17
+ inconsistencyCount: number;
18
+ riskLevel: "low" | "medium" | "high" | "critical";
19
+ };
20
+ details: {
21
+ criticalErrors: string[];
22
+ warnings: string[];
23
+ falsePositives: string[];
24
+ inconsistencies: string[];
25
+ };
26
+ }>;
27
+ private validateReportTypeSpecific;
28
+ private createValidationResult;
29
+ /**
30
+ * Get validation patterns for debugging
31
+ */
32
+ getValidationPatterns(): {
33
+ criticalErrors: RegExp[];
34
+ warnings: RegExp[];
35
+ falsePositives: RegExp[];
36
+ inconsistencies: RegExp[];
37
+ };
38
+ /**
39
+ * Add custom validation pattern
40
+ */
41
+ addValidationPattern(category: keyof typeof this.reportPatterns, pattern: RegExp): void;
42
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0xray",
3
- "version": "3.4.1",
3
+ "version": "3.4.3",
4
4
  "description": "Multi-agent orchestration and Codex governance for OpenCode, Hermes, Grok Build, and OpenClaw",
5
5
  "readme": "README.md",
6
6
  "license": "MIT",
@@ -55,12 +55,16 @@
55
55
  "plugin": "./dist/plugin/xray-codex-injection.js",
56
56
  "mcps": "./dist/mcps/"
57
57
  },
58
+ "xray": {
59
+ "dist": "dist",
60
+ "mcpServersPath": "dist/mcps"
61
+ },
58
62
  "scripts": {
59
- "prepublishOnly": "npm run prepare-consumer && npm run build:all && find dist -name '*.d.ts' -o -name '*.d.ts.map' -o -name '*.js.map' | xargs rm -f",
63
+ "prepublishOnly": "node scripts/node/reconcile-version.mjs --check && npm run prepare-consumer && npm run build:all && find dist -name '*.js.map' -o -name '*.d.ts.map' | xargs rm -f 2>/dev/null || true",
60
64
  "version:bump": "node scripts/node/version-manager.mjs",
61
65
  "version": "node scripts/node/version-manager.mjs",
62
66
  "prebuild": "rm -rf dist tsconfig.tsbuildinfo tsconfig.*.tsbuildinfo",
63
- "build": "tsc && mkdir -p dist/public dist/scripts && cp -r public/* dist/public/ && cp scripts/hooks/pre-command dist/scripts/ && cp scripts/hooks/pre-command.mjs dist/scripts/ && cp README.md AGENTS.md SKILLS.md CHANGELOG.md LICENSE .gitignore.default dist/ && find src -name '*.mjs' ! -path '*/__tests__/*' | while read f; do tgt=\"dist/${f#src/}\"; mkdir -p \"$(dirname $tgt)\"; cp \"$f\" \"$tgt\"; done && for dir in skills integrations mcps; do find src/$dir -type f ! -name '*.ts' ! -path '*/.pytest_cache/*' | while read f; do tgt=\"dist/${f#src/}\"; mkdir -p \"$(dirname $tgt)\"; cp \"$f\" \"$tgt\"; done; done && mkdir -p dist/plugin && (find dist/plugin -name '*codex-injection*.js' -exec cp {} dist/plugin/xray-codex-injection.js \\; 2>/dev/null || true) && cp -r src/opencode/ .opencode/ && mkdir -p .xray && cp xray/codex.json .xray/codex.json 2>/dev/null || true",
67
+ "build": "tsc && mkdir -p dist/public dist/scripts && cp -r public/* dist/public/ && cp scripts/hooks/pre-command dist/scripts/ && cp scripts/hooks/pre-command.mjs dist/scripts/ && cp README.md AGENTS.md SKILLS.md CHANGELOG.md LICENSE .gitignore.default dist/ && find src -name '*.mjs' ! -path '*/__tests__/*' | while read f; do tgt=\"dist/${f#src/}\"; mkdir -p \"$(dirname $tgt)\"; cp \"$f\" \"$tgt\"; done && for dir in skills integrations mcps; do find src/$dir -type f ! -name '*.ts' ! -path '*/.pytest_cache/*' | while read f; do tgt=\"dist/${f#src/}\"; mkdir -p \"$(dirname $tgt)\"; cp \"$f\" \"$tgt\"; done; done && mkdir -p dist/plugin && (find dist/plugin -name '*codex-injection*.js' -exec cp {} dist/plugin/xray-codex-injection.js \\; 2>/dev/null || true) && cp -r src/opencode/ .opencode/ && mkdir -p .xray && for f in codex.json features.json features.schema.json config.json; do cp xray/$f .xray/$f 2>/dev/null || true; done",
64
68
  "build:all": "npm run build",
65
69
  "ci-install": "npm ci",
66
70
  "clean": "rm -rf dist tsconfig.tsbuildinfo tsconfig.*.tsbuildinfo",
@@ -94,6 +98,7 @@
94
98
  "test:dependency-scan": "npm run security-audit",
95
99
  "test:integration": "node scripts/mjs/test-consumer-readiness.mjs && node scripts/mjs/test-mcp-functionality.mjs",
96
100
  "test:e2e": "node scripts/node/validate-mcp-connectivity.js && node scripts/node/validate-external-processes.js",
101
+ "live-feedback-session": "npx --yes tsx scripts/live-taskhandler-feedback-session.ts",
97
102
  "validate": "echo \"[xray] Use 'npm test' or 'npm run test:comprehensive'.\"",
98
103
  "validate:quick": "npm run validate",
99
104
  "debug:inference:force": "XRAY_FORCE_MCP_GOVERNANCE=true XRAY_DEV_PATH=dist node dist/cli/index.js inference:run --force",
@@ -108,15 +113,18 @@
108
113
  "build:clean": "node scripts/build/utils.js clean",
109
114
  "build:verify": "node scripts/build/utils.js verify",
110
115
  "enforce:versions": "bash scripts/node/enforce-version-compliance.sh",
111
- "version:sync": "node scripts/node/universal-version-manager.js",
112
- "preversion": "npm run version:sync",
113
- "release": "node scripts/node/release.js",
116
+ "version:sync": "node scripts/node/version-manager.mjs --artifacts-only",
117
+ "release": "node scripts/node/release.mjs patch",
114
118
  "release:minor": "node scripts/node/release.mjs minor",
115
119
  "release:major": "node scripts/node/release.mjs major",
116
- "release:dry": "node scripts/node/release.js --dry-run",
120
+ "release:dry": "node scripts/node/release.mjs patch --dry-run",
121
+ "version:reconcile": "node scripts/node/reconcile-version.mjs",
122
+ "consumer:smoke": "node scripts/node/consumer-install-smoke.mjs",
123
+ "release:gate": "node scripts/node/release-gate.mjs",
124
+ "release:docs-check": "node scripts/node/validate-release-docs.mjs",
117
125
  "pre-publish-guard": "node scripts/node/pre-publish-guard.js",
118
126
  "safe-publish": "npm run prepare-consumer && npm run build",
119
- "publish": "npm run pre-publish-guard && npm run safe-publish",
127
+ "publish": "npm run release:gate && npm run safe-publish && npm publish --access public",
120
128
  "release:patch": "node scripts/node/release.mjs patch"
121
129
  },
122
130
  "files": [
@@ -155,6 +163,13 @@
155
163
  "SKILLS.md",
156
164
  "xray/agents_template.md",
157
165
  "xray/codex.json",
166
+ "xray/features.json",
167
+ "xray/features.schema.json",
168
+ "xray/config.json",
169
+ ".xray/codex.json",
170
+ ".xray/features.json",
171
+ ".xray/features.schema.json",
172
+ ".xray/config.json",
158
173
  ".gitignore.default",
159
174
  "LICENSE"
160
175
  ],
@@ -0,0 +1,174 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * consumer-install-smoke.mjs — Clean-room pack + install verification.
4
+ *
5
+ * Simulates what consumers receive from npm without publishing.
6
+ *
7
+ * Usage:
8
+ * node scripts/node/consumer-install-smoke.mjs
9
+ */
10
+
11
+ import { execSync } from "child_process";
12
+ import fs from "fs";
13
+ import os from "os";
14
+ import path from "path";
15
+ import { fileURLToPath } from "url";
16
+ import { createRequire } from "module";
17
+
18
+ const require = createRequire(import.meta.url);
19
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
20
+ const rootDir = path.resolve(__dirname, "../..");
21
+
22
+ const XRAY_MCP_NAMES = [
23
+ "xray-governance",
24
+ "xray-skills",
25
+ "xray-orchestrator",
26
+ "xray-enforcer",
27
+ "xray-researcher",
28
+ "xray-code-review",
29
+ "xray-architect-tools",
30
+ ];
31
+
32
+ function run(cmd, cwd, { inherit = false } = {}) {
33
+ const result = execSync(cmd, {
34
+ cwd,
35
+ encoding: inherit ? undefined : "utf-8",
36
+ stdio: inherit ? "inherit" : "pipe",
37
+ });
38
+ return inherit ? "" : String(result).trim();
39
+ }
40
+
41
+ function main() {
42
+ console.log("\n=== Consumer Install Smoke ===\n");
43
+
44
+ const pkg = JSON.parse(fs.readFileSync(path.join(rootDir, "package.json"), "utf-8"));
45
+ const version = pkg.version;
46
+ const tmpRoot = fs.mkdtempSync(path.join(os.tmpdir(), "0xray-smoke-"));
47
+ let tarball = null;
48
+
49
+ try {
50
+ console.log("📦 npm pack...");
51
+ const packOut = run("npm pack --silent", rootDir);
52
+ tarball = packOut.split("\n").filter(Boolean).pop();
53
+ const tarballPath = path.join(rootDir, tarball);
54
+ if (!fs.existsSync(tarballPath)) {
55
+ throw new Error(`Tarball not found: ${tarballPath}`);
56
+ }
57
+
58
+ const consumerPkg = {
59
+ name: "0xray-smoke-consumer",
60
+ private: true,
61
+ version: "1.0.0",
62
+ dependencies: {
63
+ "0xray": `file:${tarballPath}`,
64
+ },
65
+ };
66
+ fs.writeFileSync(
67
+ path.join(tmpRoot, "package.json"),
68
+ JSON.stringify(consumerPkg, null, 2) + "\n",
69
+ );
70
+
71
+ console.log("📥 npm install (runs postinstall)...");
72
+ run("npm install", tmpRoot, { inherit: true });
73
+
74
+ const nmRoot = path.join(tmpRoot, "node_modules", "0xray");
75
+ const requiredFiles = [
76
+ "scripts/node/install-bridges.cjs",
77
+ "scripts/node/postinstall.cjs",
78
+ "package.json",
79
+ "xray/features.json",
80
+ "xray/features.schema.json",
81
+ ];
82
+
83
+ for (const rel of requiredFiles) {
84
+ const full = path.join(nmRoot, rel);
85
+ if (!fs.existsSync(full)) {
86
+ throw new Error(`Missing in tarball install: ${rel}`);
87
+ }
88
+ console.log(` ✅ ${rel}`);
89
+ }
90
+
91
+ const installedPkg = JSON.parse(fs.readFileSync(path.join(nmRoot, "package.json"), "utf-8"));
92
+ if (installedPkg.version !== version) {
93
+ throw new Error(`Installed version ${installedPkg.version} != packed ${version}`);
94
+ }
95
+
96
+ const bridges = require(path.join(nmRoot, "scripts/node/install-bridges.cjs"));
97
+ for (const exp of ["installAllBridges", "resolveConsumerTargetDir", "isConsumerInstall"]) {
98
+ if (typeof bridges[exp] !== "function") {
99
+ throw new Error(`install-bridges missing export: ${exp}`);
100
+ }
101
+ }
102
+ console.log(" ✅ install-bridges exports");
103
+
104
+ if (!bridges.isConsumerInstall(nmRoot, tmpRoot)) {
105
+ throw new Error("isConsumerInstall should be true for node_modules/0xray → project root");
106
+ }
107
+ console.log(" ✅ consumer target resolution");
108
+
109
+ // Postinstall should have run; verify .mcp.json merge
110
+ const mcpPath = path.join(tmpRoot, ".mcp.json");
111
+ if (!fs.existsSync(mcpPath)) {
112
+ throw new Error(".mcp.json not created by postinstall");
113
+ }
114
+ const mcp = JSON.parse(fs.readFileSync(mcpPath, "utf-8"));
115
+ const servers = Object.keys(mcp.mcpServers || {});
116
+ for (const name of XRAY_MCP_NAMES) {
117
+ if (!servers.includes(name)) {
118
+ throw new Error(`Missing MCP server in .mcp.json: ${name}`);
119
+ }
120
+ const entry = mcp.mcpServers[name];
121
+ if (entry.command !== "npx") {
122
+ throw new Error(`${name} should use npx, got ${entry.command}`);
123
+ }
124
+ }
125
+ console.log(` ✅ .mcp.json has ${XRAY_MCP_NAMES.length} npx MCP servers`);
126
+
127
+ const consumerFeaturesPath = path.join(tmpRoot, ".xray", "features.json");
128
+ if (!fs.existsSync(consumerFeaturesPath)) {
129
+ throw new Error(".xray/features.json not deployed to consumer project by postinstall");
130
+ }
131
+ const features = JSON.parse(fs.readFileSync(consumerFeaturesPath, "utf-8"));
132
+ if (!features.memory_routing) {
133
+ throw new Error("Deployed features.json missing memory_routing block");
134
+ }
135
+ if (features.memory_routing.enabled !== false) {
136
+ throw new Error(
137
+ `Shipped template must default memory_routing.enabled=false (got ${features.memory_routing.enabled})`,
138
+ );
139
+ }
140
+ if (!features.inference_governance) {
141
+ throw new Error("Deployed features.json missing inference_governance block");
142
+ }
143
+ if (features.inference_governance.enabled !== false) {
144
+ throw new Error("Shipped template must default inference_governance.enabled=false");
145
+ }
146
+ console.log(" ✅ .xray/features.json deployed (memory_routing + inference_governance opt-in defaults)");
147
+
148
+ const schemaInPackage = path.join(nmRoot, "xray", "features.schema.json");
149
+ if (!fs.existsSync(schemaInPackage)) {
150
+ throw new Error("xray/features.schema.json missing from installed package");
151
+ }
152
+ console.log(" ✅ xray/features.schema.json in package");
153
+
154
+ console.log("\n✅ Consumer install smoke passed\n");
155
+ } catch (err) {
156
+ console.error(`\n❌ Consumer smoke failed: ${err.message}\n`);
157
+ process.exit(1);
158
+ } finally {
159
+ if (tarball) {
160
+ try {
161
+ fs.unlinkSync(path.join(rootDir, tarball));
162
+ } catch {
163
+ /* best-effort */
164
+ }
165
+ }
166
+ try {
167
+ fs.rmSync(tmpRoot, { recursive: true, force: true });
168
+ } catch {
169
+ /* best-effort */
170
+ }
171
+ }
172
+ }
173
+
174
+ main();
@@ -397,18 +397,28 @@ function installOpenclawBridge(targetDir, packageRoot, log) {
397
397
  if (copied > 0) log("openclaw-bridge", `skills synced (${copied})`, "info", { path: "~/.openclaw/skills/" });
398
398
  }
399
399
 
400
+ const XRAY_CONFIG_FILES = ["codex.json", "features.json", "features.schema.json", "config.json"];
401
+
402
+ function resolveXrayConfigSource(packageRoot, file) {
403
+ // Shipped SSOT: xray/ template wins over dev .xray/ runtime copy (P0.2)
404
+ const xrayDir = path.join(packageRoot, "xray", file);
405
+ if (fs.existsSync(xrayDir)) return xrayDir;
406
+ const dotXray = path.join(packageRoot, ".xray", file);
407
+ if (fs.existsSync(dotXray)) return dotXray;
408
+ return null;
409
+ }
410
+
400
411
  function deployXrayConfig(targetDir, packageRoot, log) {
401
- const xraySourceDir = path.join(packageRoot, ".xray");
402
412
  const xrayTargetDir = path.join(targetDir, ".xray");
403
- const configFiles = ["codex.json", "features.json", "config.json"];
404
- if (!fs.existsSync(xraySourceDir)) return;
413
+ const hasAnySource = XRAY_CONFIG_FILES.some((file) => resolveXrayConfigSource(packageRoot, file));
414
+ if (!hasAnySource) return;
405
415
 
406
416
  if (!fs.existsSync(xrayTargetDir)) fs.mkdirSync(xrayTargetDir, { recursive: true });
407
417
  let copied = 0;
408
- for (const file of configFiles) {
409
- const src = path.join(xraySourceDir, file);
418
+ for (const file of XRAY_CONFIG_FILES) {
419
+ const src = resolveXrayConfigSource(packageRoot, file);
410
420
  const dst = path.join(xrayTargetDir, file);
411
- if (!fs.existsSync(src)) continue;
421
+ if (!src) continue;
412
422
  const shouldCopy = !fs.existsSync(dst) || fs.statSync(src).mtime > fs.statSync(dst).mtime;
413
423
  if (shouldCopy) {
414
424
  fs.copyFileSync(src, dst);
@@ -416,6 +426,7 @@ function deployXrayConfig(targetDir, packageRoot, log) {
416
426
  }
417
427
  }
418
428
  if (copied > 0) log("xray-config", `${copied} files deployed`, "info", { path: ".xray/" });
429
+ return copied;
419
430
  }
420
431
 
421
432
  function installGitHooks(packageRoot, log) {
@@ -463,4 +474,7 @@ module.exports = {
463
474
  resolveConsumerTargetDir,
464
475
  syncBuiltinSkills,
465
476
  isConsumerInstall,
477
+ deployXrayConfig,
478
+ resolveXrayConfigSource,
479
+ XRAY_CONFIG_FILES,
466
480
  };