From 02d8fa97fc0fccc226aba886b8272fc1594f80bd Mon Sep 17 00:00:00 2001 From: htafolla Date: Mon, 11 May 2026 04:23:52 -0500 Subject: [PATCH 1/3] Address: Bug: fix: increase timeout for processor auto-discovery tests to prevent flak... (112x) --- .opencode/logs/.strray-init.lock | 2 +- .opencode/state | 11 + .opencode/strray/features.json | 18 + .strray/inference/prompts/01-researcher.md | 1 + .strray/state/state.json | 17 + .../release-v1.22.46-to-head-2026-05-11.md | 2075 +++++++++++++++++ 6 files changed, 2123 insertions(+), 1 deletion(-) create mode 100644 .opencode/state create mode 100644 .strray/state/state.json create mode 100644 docs/reflections/deep/release-v1.22.46-to-head-2026-05-11.md diff --git a/.opencode/logs/.strray-init.lock b/.opencode/logs/.strray-init.lock index e350b4675..06b5020d7 100644 --- a/.opencode/logs/.strray-init.lock +++ b/.opencode/logs/.strray-init.lock @@ -1 +1 @@ -1778261138390 \ No newline at end of file +1778491420122 \ No newline at end of file diff --git a/.opencode/state b/.opencode/state new file mode 100644 index 000000000..5cbd13cac --- /dev/null +++ b/.opencode/state @@ -0,0 +1,11 @@ +{ + "workflow-test-framework-init-session": { + "initialized": true, + "timestamp": 1778491408093, + "components": [ + "state-manager", + "framework-logger", + "codex-system" + ] + } +} \ No newline at end of file diff --git a/.opencode/strray/features.json b/.opencode/strray/features.json index 160dabf3e..1dc52e675 100644 --- a/.opencode/strray/features.json +++ b/.opencode/strray/features.json @@ -406,5 +406,23 @@ "enabled": true, "strict_mode": false } + }, + "inference_governance": { + "description": "External governance MCP integration for inference-driven proposals via chrono-warp-drive Dynamo endpoint", + "enabled": false, + "endpoint_url": "https://mcp-production-80e2.up.railway.app/governance", + "request_timeout_ms": 10000, + "min_confidence_threshold": 0.5, + "decision_logic": { + "pass_confidence_min": 0.9, + "revision_confidence_max": 0.89, + "vote_weight_multiplier": 1 + }, + "external_mcp_server": { + "enabled": true, + "server_name": "chrono-warp-governance", + "transport": "http", + "base_url": "https://mcp-production-80e2.up.railway.app" + } } } \ No newline at end of file diff --git a/.strray/inference/prompts/01-researcher.md b/.strray/inference/prompts/01-researcher.md index f12c1b626..9913417f9 100644 --- a/.strray/inference/prompts/01-researcher.md +++ b/.strray/inference/prompts/01-researcher.md @@ -139,6 +139,7 @@ Analyze the following data sources to gather insights for inference improvement: - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T00-21-52-446Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T00-23-10-994Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T00-40-04-090Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T20-28-24-561Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-report.json - /Users/blaze/dev/stringray/logs/framework/activity.log - /Users/blaze/dev/stringray/logs/framework/activity.log.orig diff --git a/.strray/state/state.json b/.strray/state/state.json new file mode 100644 index 000000000..2b825f9c6 --- /dev/null +++ b/.strray/state/state.json @@ -0,0 +1,17 @@ +{ + "votingHistory": [], + "metrics": { + "totalVotes": 0, + "successfulVotes": 0, + "failedVotes": 0, + "averageConfidence": 0, + "strategyUsage": { + "majority_vote": 0, + "consensus": 0, + "expert_priority": 0 + }, + "agentParticipation": {}, + "averageVoterTurnout": 0 + }, + "exportedAt": "2026-05-11T09:23:30.557Z" +} \ No newline at end of file diff --git a/docs/reflections/deep/release-v1.22.46-to-head-2026-05-11.md b/docs/reflections/deep/release-v1.22.46-to-head-2026-05-11.md new file mode 100644 index 000000000..d0556cc16 --- /dev/null +++ b/docs/reflections/deep/release-v1.22.46-to-head-2026-05-11.md @@ -0,0 +1,2075 @@ +# Release Reflection: 1.22.46 → HEAD + +**Generated:** 2026-05-11T09:21:38.902Z +**Cadence:** release (since tag v1.22.46) +**Commits examined:** 47 +**Span:** v1.22.46..HEAD + +## Scope + +- **47 commits** with **2145 file changes** +- **+48257 insertions / -203969 deletions** +- **69 files added, 277 modified, 1744 deleted** + +## Areas Touched + +- `.` (33 files) +- `.github` (9 files) +- `.github/workflows` (7 files) +- `.opencode` (17 files) +- `.opencode/command` (2 files) +- `.opencode/commands` (1 files) +- `.opencode/core` (2 files) +- `.opencode/enforcement` (0 files) +- `.opencode/enforcement/core` (0 files) +- `.opencode/enforcement/loaders` (0 files) +- `.opencode/enforcement/validators` (0 files) +- `.opencode/logs` (1 files) +- `.opencode/skills` (1 files) +- `.opencode/strray` (5 files) +- `.strray` (5 files) + +## Commit Chronicle + +- **chore: update strray-ai to v1.22.55, add vote scripts and reflection** (13280fd) + 0 files: .strray/config.json, .strray/inference/prompts/01-researcher.md, .strray/integrations.json, docs/reflections/deep/release-v1.22.46-to-head-2026-05-09.md, package-lock.json +7 more + +- **feat: add auto-rotation to activity logger at 5MB threshold** (ee6a4da) + 12 files: src/core/activity-logger.ts + +- **v1.22.55** (c343767) + 1 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +196 more + +- **feat: wire 3 orphaned features + add tests + remove empty api-gateway** (077b8dc) + 201 files: docs/dead-code-audit.md, docs/integration-surfaces.md, docs/target-architecture.md, src/__tests__/unit/commit-batcher-processor.test.ts, src/__tests__/unit/mcp-servers-integration.test.ts +5 more + +- **feat: wire apply phase via MCP routing + fix e2e tests (41/41 PASS)** (db8abef) + 10 files: .strray/inference/prompts/01-researcher.md, docs/reflections/apply-phase-real-code-changes-via-mcp-routing.md, scripts/test/test-opencode-e2e.mjs, src/inference/inference-cycle.ts, src/integrations/hermes-agent/bridge.mjs +3 more + +- **docs: add apply phase design — real code changes via MCP routing** (8eab050) + 8 files: docs/reflections/apply-phase-real-code-changes-via-mcp-routing.md + +- **revert: roll back apply phase marker system — needs real agent invocation via plugin/MCP routing** (10309b2) + 1 files: src/inference/inference-cycle.ts + +- **feat: wire apply phase for real code changes instead of markdown markers** (f190318) + 1 files: src/inference/inference-cycle.ts + +- **fix: remove unused imports and any type from processor-manager.interfaces.test.ts (processor-test-rules ESLint)** (529d3d2) + 1 files: src/processors/processor-manager.interfaces.test.ts + +- **fix: address all open bugs (#29-32, #34) and prevent noise PRs from inference cycle** (c32d711) + 1 files: src/__tests__/unit/security-encryption-fix.test.ts, src/enforcement/core/__tests__/violation-fixer.test.ts, src/enforcement/core/violation-fixer.ts, src/inference/inference-cycle.ts, src/processors/processor-manager.ts +2 more + +- **fix: remove enforcer references from integration test, add fetch-depth:0 for e2e git tests** (deb49f4) + 7 files: .github/workflows/ci.yml, src/__tests__/unit/integration.test.ts + +- **fix: triage and fix all GitHub workflow pipelines** (097b48c) + 2 files: .github/workflows/auto-report.yml, .github/workflows/processor-tests.yml, .github/workflows/publish.yml, .github/workflows/release.yml, .github/workflows/security-audit.yml +2 more + +- **fix: restore package.json, mcp-install.ts, workflows, and govern-reflection.mjs gutted by 84dae31b1** (7417fd6) + 7 files: .github/workflows/ci-cd-monitor.yml, .github/workflows/ci.yml, .github/workflows/enforce-agents-md.yml, .github/workflows/release.yml, .github/workflows/security.yml +6 more + +- **fix: add npm audit fix to main CI workflow** (84dae31) + 11 files: .github/workflows/ci.yml + +- **fix: run npm audit fix to resolve moderate vulnerabilities** (314cc06) + 1 files: .github/workflows/security.yml, package.json + +- **fix: remove duplicate case undefined in mcp-install.ts (lint error)** (9b713b9) + 2 files: src/cli/commands/mcp-install.ts + +- **chore: trigger ci-cd-monitor with force_fix=true** (b36970f) + 1 files: .github/force-monitor-trigger.txt + +- **ci: improve ci-cd-monitor.yml - better error handling + governance integration** (a095f17) + 1 files: .github/workflows/ci-cd-monitor.yml + +- **chore: trigger monitoring script** (0dddd30) + 1 files: .github/monitor-trigger.txt + +- **fix: make trace-context more robust + fix ESM issues in govern-reflection** (e665442) + 1 files: scripts/node/govern-reflection.mjs, src/core/trace-context.ts + +- **ci: improve all workflows - add caching, coverage, security hardening, and new governance test step** (05a8c08) + 2 files: .github/workflows/ci.yml, .github/workflows/enforce-agents-md.yml, .github/workflows/release.yml, .github/workflows/security.yml + +- **feat: add centralized TraceContext + integrate Reflection Governance with ValidatorRegistry** (1a79c88) + 4 files: scripts/node/govern-reflection.mjs, src/core/trace-context.ts + +- **feat: implement governance-approved stagger + trace propagation, add reflection governance pipeline** (27d6e29) + 2 files: docs/reflections/deep/lexicon-cross-correlation-journey-2026-05-06.md, scripts/node/govern-reflection.mjs, src/core/framework-logger.ts, src/inference/inference-cycle.ts, src/processors/processor-manager.ts + +- **v1.22.53** (6ddf31d) + 5 files: .opencode/activity-report.json, .strray/config.json, .strray/integrations.json, CHANGELOG.md, backups/version-manager-backup-2026-05-06T16-22-00-109Z/CHANGELOG.md +7 more + +- **chore: UVM sync v1.22.52 — all version references updated** (ce3b70e) + 12 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/codex.codex, .opencode/command/dependency-audit.md, .opencode/commands/pre-commit-introspection.sh +186 more + +- **chore: UVM sync to v1.22.51** (b53a5ac) + 191 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +184 more + +- **v1.22.51** (3d96823) + 189 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +186 more + +- **fix: agent registry cleanup — remove skill-only entries, delete deprecated agents** (1cafc3a) + 191 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +226 more + +- **fix: agent export naming + single-architect governance** (b5c6100) + 231 files: agents/testing-lead.yml, src/__tests__/agents/testing-lead.test.ts, src/__tests__/unit/inference/inference-cycle.test.ts, src/agents/content-creator.ts, src/agents/growth-strategist.ts +8 more + +- **fix: complete inference-cycle.ts — all fixes applied.** (cef1ecd) + 13 files: src/inference/inference-cycle.ts + +- **docs: deep reflection — inference apply phase journey (honest assessment)** (1a05086) + 1 files: docs/reflections/deep/inference-apply-phase-journey-2026-05-01.md + +- **fix: guard inference:run for StringRay internal use only** (beefefb) + 1 files: src/cli/index.ts + +- **feat: wire apply phase + researcher double-check for PRs** (7bfa4ca) + 1 files: src/cli/index.ts, src/inference/inference-cycle.ts + +- **fix: governance pipeline — force flag, skipDeployVerify default, deploy failure handling** (40ae8ae) + 2 files: src/cli/index.ts, src/inference/inference-cycle.ts + +- **feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator** (fca44e6) + 2 files: .gitignore, .opencode/activity-report.json, .strray/inference/latest-workflow.json, .strray/inference/workflow-status.json, .strray/state/state.json +1321 more + +- **feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator** (191536d) + 1326 files: dist/delegation/index.d.ts, dist/delegation/index.d.ts.map, dist/delegation/index.js, dist/delegation/index.js.map, dist/delegation/voting-coordinator.d.ts +15 more + +- **docs: governance unification saga — deep reflection on wiring four systems into one loop** (9cd5b8b) + 20 files: docs/reflections/deep/governance-unification-saga-2026-04-30.md + +- **feat: lower inference thresholds to trigger on real data, keep raw problem text** (c7c09a4) + 1 files: dist/inference/inference-accumulator.js, dist/inference/inference-accumulator.js.map, dist/inference/inference-cycle.d.ts.map, dist/inference/inference-cycle.js, dist/inference/inference-cycle.js.map +6 more + +- **feat: production-ready inference governance — CLI, real agents, DI, learning loop** (501eb8d) + 11 files: .opencode/activity-report.json, .strray/inference/latest-workflow.json, .strray/inference/workflow-status.json, .strray/state/state.json, AGENTS.md +82 more + +- **feat: inference layer — semantic patterns, session capture, accumulator, governance cycle, deploy verifier** (5963ce1) + 87 files: .strray/inference/latest-workflow.json, .strray/inference/workflow-status.json, dist/CHANGELOG.md, dist/inference/deploy-verifier.d.ts, dist/inference/deploy-verifier.d.ts.map +50 more + +- **fix: increase timeout for processor auto-discovery tests to prevent flaky failures** (baae755) + 55 files: src/__tests__/unit/processor-auto-discovery.test.ts + +- **fix: inference processor double-joining absolute path created bogus Users/ dir** (a795635) + 1 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +577 more + +- **chore: v1.22.48, add prepublishOnly to strip source maps and declarations** (112ef89) + 582 files: .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex, .opencode/command/dependency-audit.md +303 more + +- **chore: v1.22.47, add .npmignore to strip .d.ts and source maps from package** (e2f7225) + 308 files: .npmignore, .opencode/.strrayrc.json, .opencode/AGENTS-consumer.md, .opencode/activity-report.json, .opencode/codex.codex +248 more + +- **chore: remove 92 build artifacts (.d.ts, .d.ts.map) from .opencode git tracking, add to .gitignore** (22f9ddf) + 253 files: .gitignore, .opencode/activity-report.json, .opencode/core/activity-logger.d.ts.map, .opencode/core/adaptive-kernel.d.ts.map, .opencode/core/boot-orchestrator.d.ts.map +59 more + +- **docs: the engine that built the engine — deep reflection on the meta-system, consumer tweet, release reflection** (522c28b) + 64 files: AGENTS.md, docs/reflections/deep/release-v1.22.46-to-head-2026-04-29.md, docs/reflections/deep/the-engine-that-built-the-engine-saga-2026-04-29.md, tweets/v1.22.46.md + +- **chore: rebuild dist after path fix** (4453c41) + 4 files: .strray/codex.json, .strray/config.json, .strray/features.json, .strray/integrations.json, dist/AGENTS.md + +## Files Added + +- `.github/force-monitor-trigger.txt` +- `.github/monitor-trigger.txt` +- `.opencode/logs/.strray-init.lock` +- `.strray/inference/workflow-1777493262474.json` +- `backups/version-manager-backup-2026-04-29T19-55-43-041Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-04-29T20-00-52-740Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-04-29T20-08-28-153Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T15-13-29-111Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T15-25-42-943Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T15-29-13-643Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T15-29-44-496Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T15-29-45-358Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-06T16-22-00-109Z/CHANGELOG.md` +- `backups/version-manager-backup-2026-05-08T20-18-48-650Z/CHANGELOG.md` +- `docs/dead-code-audit.md` +- `docs/inference/latest-session.json` +- `docs/inference/session-2026-04-30-1777571921561.json` +- `docs/inference/session-2026-04-30T00-06-24.json` +- `docs/inference/session-2026-04-30T00-08-03.json` +- `docs/integration-surfaces.md` +- `docs/reflections/apply-phase-real-code-changes-via-mcp-routing.md` +- `docs/reflections/auto-commit-cadence-2026-05-06.md` +- `docs/reflections/deep/governance-unification-saga-2026-04-30.md` +- `docs/reflections/deep/inference-apply-phase-journey-2026-05-01.md` +- `docs/reflections/deep/lexicon-cross-correlation-journey-2026-05-06.md` +- `docs/reflections/deep/recovery-mechanisms-audit-2026-05-08.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-04-29.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-04-30.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-01.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-04.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-06.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-07.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-08.md` +- `docs/reflections/deep/release-v1.22.46-to-head-2026-05-09.md` +- `docs/reflections/deep/the-engine-that-built-the-engine-saga-2026-04-29.md` +- `docs/reflections/deep/the-moment-0xray-watched-itself-saga-2026-04-30.md` +- `docs/target-architecture.md` +- `scripts/mjs/test-stringray-plugin.mjs` +- `scripts/node/govern-reflection.mjs` +- `scripts/test-real-governance.ts` +- `scripts/test/governance-vote.mjs` +- `scripts/test/test-opencode-e2e.mjs` +- `scripts/test/vote-architect-prop2.mjs` +- `scripts/test/vote-code-reviewer.mjs` +- `scripts/test/vote-refactorer.mjs` +- `scripts/test/vote-researcher-prop1.mjs` +- `scripts/test/vote-researcher-prop2.mjs` +- `src/__tests__/e2e/inference-e2e.test.ts` +- `src/__tests__/e2e/integrations-e2e.test.ts` +- `src/__tests__/e2e/post-processor-pipeline-e2e.test.ts` +- `src/__tests__/integration/inference-pipeline.test.ts` +- `src/__tests__/unit/commit-batcher-processor.test.ts` +- `src/__tests__/unit/inference/deploy-verifier.test.ts` +- `src/__tests__/unit/inference/inference-accumulator.test.ts` +- `src/__tests__/unit/inference/inference-cycle.test.ts` +- `src/__tests__/unit/inference/semantic-patterns.test.ts` +- `src/__tests__/unit/inference/session-capture.test.ts` +- `src/__tests__/unit/processor-registration.test.ts` +- `src/core/trace-context.ts` +- `src/inference/deploy-verifier.ts` +- `src/inference/index.ts` +- `src/inference/inference-accumulator.ts` +- `src/inference/inference-cycle.ts` +- `src/inference/semantic-patterns.ts` +- `src/inference/session-capture.ts` +- `src/processors/implementations/commit-batcher-processor.ts` +- `tweets/v1.22.46.md` +- `tweets/v1.22.50.md` +- `vitest.config.ts` + +## Files Modified + +- `.github/workflows/auto-report.yml` +- `.github/workflows/ci.yml` +- `.github/workflows/processor-tests.yml` +- `.github/workflows/publish.yml` +- `.github/workflows/release.yml` +- `.github/workflows/security-audit.yml` +- `.github/workflows/security-monitoring.yml` +- `.gitignore` +- `.npmignore` +- `.opencode/.strrayrc.json` +- `.opencode/AGENTS-consumer.md` +- `.opencode/activity-report.json` +- `.opencode/codex.codex` +- `.opencode/command/dependency-audit.md` +- `.opencode/commands/pre-commit-introspection.sh` +- `.opencode/core/boot-orchestrator.js` +- `.opencode/core/features-config.js` +- `.opencode/enforcer-config.json` +- `.opencode/package.json` +- `.opencode/skills/registry.json` +- ... and 257 more + +## Files Deleted + +- `.opencode/core/activity-logger.d.ts.map` +- `.opencode/core/adaptive-kernel.d.ts.map` +- `.opencode/core/boot-orchestrator.d.ts.map` +- `.opencode/core/boot-phases.d.ts.map` +- `.opencode/core/codex-formatter.d.ts.map` +- `.opencode/core/codex-injector.d.ts.map` +- `.opencode/core/config-loader.d.ts.map` +- `.opencode/core/config-paths.d.ts.map` +- `.opencode/core/context-loader.d.ts.map` +- `.opencode/core/context-validator.d.ts.map` +- `.opencode/core/features-config.d.ts.map` +- `.opencode/core/framework-logger.d.ts.map` +- `.opencode/core/index.d.ts.map` +- `.opencode/core/kernel-patterns.d.ts.map` +- `.opencode/core/logging-config.d.ts.map` +- `.opencode/core/memory-monitor-setup.d.ts.map` +- `.opencode/core/model-router.d.ts.map` +- `.opencode/core/orchestrator.d.ts.map` +- `.opencode/core/strray-activation.d.ts.map` +- `.opencode/core/strray-init.d.ts.map` +- `.opencode/core/system-prompt-generator.d.ts.map` +- `.opencode/core/tool-event-emitter.d.ts.map` +- `.opencode/enforcement/core/index.d.ts.map` +- `.opencode/enforcement/core/rule-executor.d.ts.map` +- `.opencode/enforcement/core/rule-hierarchy.d.ts.map` +- `.opencode/enforcement/core/rule-registry.d.ts.map` +- `.opencode/enforcement/core/violation-fixer.d.ts.map` +- `.opencode/enforcement/enforcer-tools.d.ts.map` +- `.opencode/enforcement/index.d.ts.map` +- `.opencode/enforcement/loaders/agent-triage-loader.d.ts.map` +- `.opencode/enforcement/loaders/agents-md-validation-loader.d.ts.map` +- `.opencode/enforcement/loaders/base-loader.d.ts.map` +- `.opencode/enforcement/loaders/codex-loader.d.ts.map` +- `.opencode/enforcement/loaders/index.d.ts.map` +- `.opencode/enforcement/loaders/loader-orchestrator.d.ts.map` +- `.opencode/enforcement/loaders/processor-loader.d.ts.map` +- `.opencode/enforcement/rule-enforcer.d.ts.map` +- `.opencode/enforcement/test-auto-healing.d.ts.map` +- `.opencode/enforcement/types.d.ts.map` +- `.opencode/enforcement/validators/architecture-validators.d.ts.map` +- `.opencode/enforcement/validators/base-validator.d.ts.map` +- `.opencode/enforcement/validators/code-quality-validators.d.ts.map` +- `.opencode/enforcement/validators/index.d.ts.map` +- `.opencode/enforcement/validators/security-validators.d.ts.map` +- `.opencode/enforcement/validators/testing-validators.d.ts.map` +- `.opencode/enforcement/validators/validator-registry.d.ts.map` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406309959.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406350412.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406356199.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406385947.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406391102.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406403269.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406424606.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406429850.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406449517.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406455190.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406475329.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406480726.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406498165.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406509554.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406652049.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406657607.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406695926.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406704870.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406766654.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406772527.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406786420.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777406791395.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407025291.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407030846.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407041736.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407046662.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407143757.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407148910.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407409036.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407414513.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407436134.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407441462.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407453795.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407459526.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407499213.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407505325.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407519903.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407525902.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407546077.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407551613.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407570155.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407575558.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407748384.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407753755.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407777431.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407783654.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407795056.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407800896.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407814500.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407819742.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407840942.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407873824.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407899059.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407904919.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407917239.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407923292.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407935530.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407941306.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777407979382.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408011027.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408091612.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408127243.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408175830.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408213135.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408264160.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408299303.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408346490.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408387663.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408434583.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408477543.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408532408.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408562661.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408600137.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408625820.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408659940.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408683166.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408766116.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408798862.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408874386.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408910918.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777408992397.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777409078853.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777409102790.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777461290909.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777461298231.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777461375000.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777461382205.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462321304.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462327104.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462350162.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462355626.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462382007.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462413408.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462420922.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462491432.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462498799.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462542663.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462548472.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462567951.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462596742.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462603496.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462632190.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462879549.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462888140.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462907745.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462914454.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462933483.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777462941920.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463011754.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463018663.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463056341.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463061713.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463073394.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463109037.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463126842.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463132976.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463161390.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463183246.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463188860.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463200108.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463260929.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777463265753.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464322439.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464329570.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464697890.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464813177.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464839480.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464965127.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777464990291.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465094600.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465119980.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465186927.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465193848.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465248753.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465255616.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465284388.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465303261.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465325649.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465355095.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465369077.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465382726.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465412104.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465419090.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465434452.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465450370.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465490088.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465548832.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777465554183.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467627615.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467637250.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467850276.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467857441.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467904850.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467911957.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467957231.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777467964354.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777468016969.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777468024087.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777468085338.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777468159153.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777468166307.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469195081.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469200140.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469376132.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469381255.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469626952.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469633040.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469742478.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469748803.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469773000.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469778763.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469847556.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469852992.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469891653.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469896179.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469958541.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469991951.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777469997915.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470010399.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470015879.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470041025.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470048163.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470085309.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470090052.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470108213.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470112924.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470125377.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470131071.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470181494.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470186094.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470234577.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470239076.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470255578.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470261234.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777470287589.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471314450.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471343912.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471443353.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471484173.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471548538.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471590086.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471640518.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471663574.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471675358.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471680689.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471693349.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471698958.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471712137.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471717966.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471733765.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471739520.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471751839.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471757529.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471768839.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471774301.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471795528.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471801408.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471819658.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471824298.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471837133.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471842110.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471864855.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471869394.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471904107.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471908565.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471985054.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777471990874.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472013415.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472021529.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472053173.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472057631.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472074187.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472078417.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472120882.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472125982.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472148380.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472152978.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472233810.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472253581.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472270196.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472284541.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472299465.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472325647.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472336319.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472357413.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472463315.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472468369.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472727070.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777472847507.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473567628.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473567772.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473567799.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473567837.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473567965.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473568097.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473568545.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473568752.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473568927.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473569759.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473570102.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473615560.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473616473.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473617331.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473617829.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473617893.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473618180.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473618224.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473618406.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473619302.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473619759.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473621182.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473732216.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473732567.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473732785.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473732870.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473732966.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473733037.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473733220.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473738252.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473738479.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473785724.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805317.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805376.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805410.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805498.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805583.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473805611.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473806390.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473898303.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473900041.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473900143.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473924210.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473924685.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777473924882.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474011286.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474034527.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474135407.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474149179.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474170205.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474183350.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474204905.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474218148.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474238618.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474251659.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474270438.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474283634.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474303157.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474316474.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474337813.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474352338.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474373531.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474386803.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474433448.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474487605.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474499838.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474539031.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474551461.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474576572.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474588837.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474626845.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474639408.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474664837.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474677020.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474711846.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474751579.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474764110.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474793947.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474806464.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474863846.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777474876513.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475113072.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475125020.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475166201.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475178439.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475250145.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475262927.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475283498.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475295892.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475319291.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475331825.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475352061.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475379392.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475417768.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475437462.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777475537066.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777484455269.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777484468453.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777484505484.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777484543637.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777484556702.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777485466458.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777485478646.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777485513011.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-1777485532344.json` +- `Users/blaze/dev/stringray/.strray/inference/workflow-status.json` +- `dist/AGENTS.md` +- `dist/CHANGELOG.md` +- `dist/LICENSE` +- `dist/README.md` +- `dist/agents/architect.d.ts` +- `dist/agents/architect.d.ts.map` +- `dist/agents/architect.js` +- `dist/agents/architect.js.map` +- `dist/agents/backend-engineer.d.ts` +- `dist/agents/backend-engineer.d.ts.map` +- `dist/agents/backend-engineer.js` +- `dist/agents/backend-engineer.js.map` +- `dist/agents/bug-triage-specialist.d.ts` +- `dist/agents/bug-triage-specialist.d.ts.map` +- `dist/agents/bug-triage-specialist.js` +- `dist/agents/bug-triage-specialist.js.map` +- `dist/agents/code-analyzer.d.ts` +- `dist/agents/code-analyzer.d.ts.map` +- `dist/agents/code-analyzer.js` +- `dist/agents/code-analyzer.js.map` +- `dist/agents/code-reviewer.d.ts` +- `dist/agents/code-reviewer.d.ts.map` +- `dist/agents/code-reviewer.js` +- `dist/agents/code-reviewer.js.map` +- `dist/agents/content-creator.d.ts` +- `dist/agents/content-creator.d.ts.map` +- `dist/agents/content-creator.js` +- `dist/agents/content-creator.js.map` +- `dist/agents/database-engineer.d.ts` +- `dist/agents/database-engineer.d.ts.map` +- `dist/agents/database-engineer.js` +- `dist/agents/database-engineer.js.map` +- `dist/agents/devops-engineer.d.ts` +- `dist/agents/devops-engineer.d.ts.map` +- `dist/agents/devops-engineer.js` +- `dist/agents/devops-engineer.js.map` +- `dist/agents/enforcer.d.ts` +- `dist/agents/enforcer.d.ts.map` +- `dist/agents/enforcer.js` +- `dist/agents/enforcer.js.map` +- `dist/agents/frontend-engineer.d.ts` +- `dist/agents/frontend-engineer.d.ts.map` +- `dist/agents/frontend-engineer.js` +- `dist/agents/frontend-engineer.js.map` +- `dist/agents/frontend-ui-ux-engineer.d.ts` +- `dist/agents/frontend-ui-ux-engineer.d.ts.map` +- `dist/agents/frontend-ui-ux-engineer.js` +- `dist/agents/frontend-ui-ux-engineer.js.map` +- `dist/agents/growth-strategist.d.ts` +- `dist/agents/growth-strategist.d.ts.map` +- `dist/agents/growth-strategist.js` +- `dist/agents/growth-strategist.js.map` +- `dist/agents/index.d.ts` +- `dist/agents/index.d.ts.map` +- `dist/agents/index.js` +- `dist/agents/index.js.map` +- `dist/agents/librarian-agents-updater.d.ts` +- `dist/agents/librarian-agents-updater.d.ts.map` +- `dist/agents/librarian-agents-updater.js` +- `dist/agents/librarian-agents-updater.js.map` +- `dist/agents/log-monitor.d.ts` +- `dist/agents/log-monitor.d.ts.map` +- `dist/agents/log-monitor.js` +- `dist/agents/log-monitor.js.map` +- `dist/agents/mobile-developer.d.ts` +- `dist/agents/mobile-developer.d.ts.map` +- `dist/agents/mobile-developer.js` +- `dist/agents/mobile-developer.js.map` +- `dist/agents/multimodal-looker.d.ts` +- `dist/agents/multimodal-looker.d.ts.map` +- `dist/agents/multimodal-looker.js` +- `dist/agents/multimodal-looker.js.map` +- `dist/agents/orchestrator.d.ts` +- `dist/agents/orchestrator.d.ts.map` +- `dist/agents/orchestrator.js` +- `dist/agents/orchestrator.js.map` +- `dist/agents/performance-engineer.d.ts` +- `dist/agents/performance-engineer.d.ts.map` +- `dist/agents/performance-engineer.js` +- `dist/agents/performance-engineer.js.map` +- `dist/agents/refactorer.d.ts` +- `dist/agents/refactorer.d.ts.map` +- `dist/agents/refactorer.js` +- `dist/agents/refactorer.js.map` +- `dist/agents/registry.d.ts` +- `dist/agents/registry.d.ts.map` +- `dist/agents/registry.js` +- `dist/agents/registry.js.map` +- `dist/agents/researcher.d.ts` +- `dist/agents/researcher.d.ts.map` +- `dist/agents/researcher.js` +- `dist/agents/researcher.js.map` +- `dist/agents/security-auditor.d.ts` +- `dist/agents/security-auditor.d.ts.map` +- `dist/agents/security-auditor.js` +- `dist/agents/security-auditor.js.map` +- `dist/agents/seo-consultant.d.ts` +- `dist/agents/seo-consultant.d.ts.map` +- `dist/agents/seo-consultant.js` +- `dist/agents/seo-consultant.js.map` +- `dist/agents/strategist.d.ts` +- `dist/agents/strategist.d.ts.map` +- `dist/agents/strategist.js` +- `dist/agents/strategist.js.map` +- `dist/agents/tech-writer.d.ts` +- `dist/agents/tech-writer.d.ts.map` +- `dist/agents/tech-writer.js` +- `dist/agents/tech-writer.js.map` +- `dist/agents/testing-lead.d.ts` +- `dist/agents/testing-lead.d.ts.map` +- `dist/agents/testing-lead.js` +- `dist/agents/testing-lead.js.map` +- `dist/agents/types.d.ts` +- `dist/agents/types.d.ts.map` +- `dist/agents/types.js` +- `dist/agents/types.js.map` +- `dist/analytics/consent-manager.d.ts` +- `dist/analytics/consent-manager.d.ts.map` +- `dist/analytics/consent-manager.js` +- `dist/analytics/consent-manager.js.map` +- `dist/analytics/emerging-pattern-detector.d.ts` +- `dist/analytics/emerging-pattern-detector.d.ts.map` +- `dist/analytics/emerging-pattern-detector.js` +- `dist/analytics/emerging-pattern-detector.js.map` +- `dist/analytics/pattern-learning-engine.d.ts` +- `dist/analytics/pattern-learning-engine.d.ts.map` +- `dist/analytics/pattern-learning-engine.js` +- `dist/analytics/pattern-learning-engine.js.map` +- `dist/analytics/pattern-performance-tracker.d.ts` +- `dist/analytics/pattern-performance-tracker.d.ts.map` +- `dist/analytics/pattern-performance-tracker.js` +- `dist/analytics/pattern-performance-tracker.js.map` +- `dist/analytics/predictive-analytics.d.ts` +- `dist/analytics/predictive-analytics.d.ts.map` +- `dist/analytics/predictive-analytics.js` +- `dist/analytics/predictive-analytics.js.map` +- `dist/analytics/prompt-pattern-analyzer.d.ts` +- `dist/analytics/prompt-pattern-analyzer.d.ts.map` +- `dist/analytics/prompt-pattern-analyzer.js` +- `dist/analytics/prompt-pattern-analyzer.js.map` +- `dist/analytics/routing-performance-analyzer.d.ts` +- `dist/analytics/routing-performance-analyzer.d.ts.map` +- `dist/analytics/routing-performance-analyzer.js` +- `dist/analytics/routing-performance-analyzer.js.map` +- `dist/analytics/routing-refiner.d.ts` +- `dist/analytics/routing-refiner.d.ts.map` +- `dist/analytics/routing-refiner.js` +- `dist/analytics/routing-refiner.js.map` +- `dist/analytics/simple-pattern-analyzer.d.ts` +- `dist/analytics/simple-pattern-analyzer.d.ts.map` +- `dist/analytics/simple-pattern-analyzer.js` +- `dist/analytics/simple-pattern-analyzer.js.map` +- `dist/architect/architect-tools.d.ts` +- `dist/architect/architect-tools.d.ts.map` +- `dist/architect/architect-tools.js` +- `dist/architect/architect-tools.js.map` +- `dist/architect/architectural-integrity.d.ts` +- `dist/architect/architectural-integrity.d.ts.map` +- `dist/architect/architectural-integrity.js` +- `dist/architect/architectural-integrity.js.map` +- `dist/benchmark/performance-benchmark.d.ts` +- `dist/benchmark/performance-benchmark.d.ts.map` +- `dist/benchmark/performance-benchmark.js` +- `dist/benchmark/performance-benchmark.js.map` +- `dist/cli/commands/analytics-disable.d.ts` +- `dist/cli/commands/analytics-disable.d.ts.map` +- `dist/cli/commands/analytics-disable.js` +- `dist/cli/commands/analytics-disable.js.map` +- `dist/cli/commands/analytics-enable-action.d.ts` +- `dist/cli/commands/analytics-enable-action.d.ts.map` +- `dist/cli/commands/analytics-enable-action.js` +- `dist/cli/commands/analytics-enable-action.js.map` +- `dist/cli/commands/analytics-preview.d.ts` +- `dist/cli/commands/analytics-preview.d.ts.map` +- `dist/cli/commands/analytics-preview.js` +- `dist/cli/commands/analytics-preview.js.map` +- `dist/cli/commands/analytics-status.d.ts` +- `dist/cli/commands/analytics-status.d.ts.map` +- `dist/cli/commands/analytics-status.js` +- `dist/cli/commands/analytics-status.js.map` +- `dist/cli/commands/antigravity-status.d.ts` +- `dist/cli/commands/antigravity-status.d.ts.map` +- `dist/cli/commands/antigravity-status.js` +- `dist/cli/commands/antigravity-status.js.map` +- `dist/cli/commands/archive-logs.d.ts` +- `dist/cli/commands/archive-logs.d.ts.map` +- `dist/cli/commands/archive-logs.js` +- `dist/cli/commands/archive-logs.js.map` +- `dist/cli/commands/credible-init.d.ts` +- `dist/cli/commands/credible-init.d.ts.map` +- `dist/cli/commands/credible-init.js` +- `dist/cli/commands/credible-init.js.map` +- `dist/cli/commands/dashboard.d.ts` +- `dist/cli/commands/dashboard.d.ts.map` +- `dist/cli/commands/dashboard.js` +- `dist/cli/commands/dashboard.js.map` +- `dist/cli/commands/mcp-install.d.ts` +- `dist/cli/commands/mcp-install.d.ts.map` +- `dist/cli/commands/mcp-install.js` +- `dist/cli/commands/mcp-install.js.map` +- `dist/cli/commands/plugin-commands.d.ts` +- `dist/cli/commands/plugin-commands.d.ts.map` +- `dist/cli/commands/plugin-commands.js` +- `dist/cli/commands/plugin-commands.js.map` +- `dist/cli/commands/publish-agent.d.ts` +- `dist/cli/commands/publish-agent.d.ts.map` +- `dist/cli/commands/publish-agent.js` +- `dist/cli/commands/publish-agent.js.map` +- `dist/cli/commands/security-audit.d.ts` +- `dist/cli/commands/security-audit.d.ts.map` +- `dist/cli/commands/security-audit.js` +- `dist/cli/commands/security-audit.js.map` +- `dist/cli/commands/skill-install.d.ts` +- `dist/cli/commands/skill-install.d.ts.map` +- `dist/cli/commands/skill-install.js` +- `dist/cli/commands/skill-install.js.map` +- `dist/cli/commands/status.d.ts` +- `dist/cli/commands/status.d.ts.map` +- `dist/cli/commands/status.js` +- `dist/cli/commands/status.js.map` +- `dist/cli/commands/storyteller.d.ts` +- `dist/cli/commands/storyteller.d.ts.map` +- `dist/cli/commands/storyteller.js` +- `dist/cli/commands/storyteller.js.map` +- `dist/cli/index.d.ts` +- `dist/cli/index.d.ts.map` +- `dist/cli/index.js` +- `dist/cli/index.js.map` +- `dist/cli/server.d.ts` +- `dist/cli/server.d.ts.map` +- `dist/cli/server.js` +- `dist/cli/server.js.map` +- `dist/config/default-agents.d.ts` +- `dist/config/default-agents.d.ts.map` +- `dist/config/default-agents.js` +- `dist/config/default-agents.js.map` +- `dist/core/activity-logger.d.ts` +- `dist/core/activity-logger.d.ts.map` +- `dist/core/activity-logger.js` +- `dist/core/activity-logger.js.map` +- `dist/core/adaptive-kernel.d.ts` +- `dist/core/adaptive-kernel.d.ts.map` +- `dist/core/adaptive-kernel.js` +- `dist/core/adaptive-kernel.js.map` +- `dist/core/boot-orchestrator.d.ts` +- `dist/core/boot-orchestrator.d.ts.map` +- `dist/core/boot-orchestrator.js` +- `dist/core/boot-orchestrator.js.map` +- `dist/core/bridge.mjs` +- `dist/core/codex-formatter.d.ts` +- `dist/core/codex-formatter.d.ts.map` +- `dist/core/codex-formatter.js` +- `dist/core/codex-formatter.js.map` +- `dist/core/codex-injector.d.ts` +- `dist/core/codex-injector.d.ts.map` +- `dist/core/codex-injector.js` +- `dist/core/codex-injector.js.map` +- `dist/core/config-loader.d.ts` +- `dist/core/config-loader.d.ts.map` +- `dist/core/config-loader.js` +- `dist/core/config-loader.js.map` +- `dist/core/config-paths.d.ts` +- `dist/core/config-paths.d.ts.map` +- `dist/core/config-paths.js` +- `dist/core/config-paths.js.map` +- `dist/core/context-loader.d.ts` +- `dist/core/context-loader.d.ts.map` +- `dist/core/context-loader.js` +- `dist/core/context-loader.js.map` +- `dist/core/context-validator.d.ts` +- `dist/core/context-validator.d.ts.map` +- `dist/core/context-validator.js` +- `dist/core/context-validator.js.map` +- `dist/core/features-config.d.ts` +- `dist/core/features-config.d.ts.map` +- `dist/core/features-config.js` +- `dist/core/features-config.js.map` +- `dist/core/framework-logger.d.ts` +- `dist/core/framework-logger.d.ts.map` +- `dist/core/framework-logger.js` +- `dist/core/framework-logger.js.map` +- `dist/core/index.d.ts` +- `dist/core/index.d.ts.map` +- `dist/core/index.js` +- `dist/core/index.js.map` +- `dist/core/kernel-patterns.d.ts` +- `dist/core/kernel-patterns.d.ts.map` +- `dist/core/kernel-patterns.js` +- `dist/core/kernel-patterns.js.map` +- `dist/core/logging-config.d.ts` +- `dist/core/logging-config.d.ts.map` +- `dist/core/logging-config.js` +- `dist/core/logging-config.js.map` +- `dist/core/model-router.d.ts` +- `dist/core/model-router.d.ts.map` +- `dist/core/model-router.js` +- `dist/core/model-router.js.map` +- `dist/core/orchestrator.d.ts` +- `dist/core/orchestrator.d.ts.map` +- `dist/core/orchestrator.js` +- `dist/core/orchestrator.js.map` +- `dist/core/strray-activation.d.ts` +- `dist/core/strray-activation.d.ts.map` +- `dist/core/strray-activation.js` +- `dist/core/strray-activation.js.map` +- `dist/core/system-prompt-generator.d.ts` +- `dist/core/system-prompt-generator.d.ts.map` +- `dist/core/system-prompt-generator.js` +- `dist/core/system-prompt-generator.js.map` +- `dist/dashboard/dashboard-renderer.d.ts` +- `dist/dashboard/dashboard-renderer.d.ts.map` +- `dist/dashboard/dashboard-renderer.js` +- `dist/dashboard/dashboard-renderer.js.map` +- `dist/dashboard/dashboard-types.d.ts` +- `dist/dashboard/dashboard-types.d.ts.map` +- `dist/dashboard/dashboard-types.js` +- `dist/dashboard/dashboard-types.js.map` +- `dist/dashboard/index.d.ts` +- `dist/dashboard/index.d.ts.map` +- `dist/dashboard/index.js` +- `dist/dashboard/index.js.map` +- `dist/dashboard/metrics-collector.d.ts` +- `dist/dashboard/metrics-collector.d.ts.map` +- `dist/dashboard/metrics-collector.js` +- `dist/dashboard/metrics-collector.js.map` +- `dist/delegation/agent-delegator.d.ts` +- `dist/delegation/agent-delegator.d.ts.map` +- `dist/delegation/agent-delegator.js` +- `dist/delegation/agent-delegator.js.map` +- `dist/delegation/agent-expertise.d.ts` +- `dist/delegation/agent-expertise.d.ts.map` +- `dist/delegation/agent-expertise.js` +- `dist/delegation/agent-expertise.js.map` +- `dist/delegation/analytics/index.d.ts` +- `dist/delegation/analytics/index.d.ts.map` +- `dist/delegation/analytics/index.js` +- `dist/delegation/analytics/index.js.map` +- `dist/delegation/analytics/learning-engine.d.ts` +- `dist/delegation/analytics/learning-engine.d.ts.map` +- `dist/delegation/analytics/learning-engine.js` +- `dist/delegation/analytics/learning-engine.js.map` +- `dist/delegation/analytics/outcome-tracker.d.ts` +- `dist/delegation/analytics/outcome-tracker.d.ts.map` +- `dist/delegation/analytics/outcome-tracker.js` +- `dist/delegation/analytics/outcome-tracker.js.map` +- `dist/delegation/analytics/routing-analytics.d.ts` +- `dist/delegation/analytics/routing-analytics.d.ts.map` +- `dist/delegation/analytics/routing-analytics.js` +- `dist/delegation/analytics/routing-analytics.js.map` +- `dist/delegation/ast-code-parser.d.ts` +- `dist/delegation/ast-code-parser.d.ts.map` +- `dist/delegation/ast-code-parser.js` +- `dist/delegation/ast-code-parser.js.map` +- `dist/delegation/codebase-context-analyzer.d.ts` +- `dist/delegation/codebase-context-analyzer.d.ts.map` +- `dist/delegation/codebase-context-analyzer.js` +- `dist/delegation/codebase-context-analyzer.js.map` +- `dist/delegation/complexity-analyzer.d.ts` +- `dist/delegation/complexity-analyzer.d.ts.map` +- `dist/delegation/complexity-analyzer.js` +- `dist/delegation/complexity-analyzer.js.map` +- `dist/delegation/complexity-core.d.ts` +- `dist/delegation/complexity-core.d.ts.map` +- `dist/delegation/complexity-core.js` +- `dist/delegation/complexity-core.js.map` +- `dist/delegation/config/types.d.ts` +- `dist/delegation/config/types.d.ts.map` +- `dist/delegation/config/types.js` +- `dist/delegation/config/types.js.map` +- `dist/delegation/dependency-graph-builder.d.ts` +- `dist/delegation/dependency-graph-builder.d.ts.map` +- `dist/delegation/dependency-graph-builder.js` +- `dist/delegation/dependency-graph-builder.js.map` +- `dist/delegation/index.d.ts` +- `dist/delegation/index.d.ts.map` +- `dist/delegation/index.js` +- `dist/delegation/index.js.map` +- `dist/delegation/metrics-aggregator.d.ts` +- `dist/delegation/metrics-aggregator.d.ts.map` +- `dist/delegation/metrics-aggregator.js` +- `dist/delegation/metrics-aggregator.js.map` +- `dist/delegation/session-coordinator.d.ts` +- `dist/delegation/session-coordinator.d.ts.map` +- `dist/delegation/session-coordinator.js` +- `dist/delegation/session-coordinator.js.map` +- `dist/delegation/strategy-selector.d.ts` +- `dist/delegation/strategy-selector.d.ts.map` +- `dist/delegation/strategy-selector.js` +- `dist/delegation/strategy-selector.js.map` +- `dist/delegation/voting-coordinator.d.ts` +- `dist/delegation/voting-coordinator.d.ts.map` +- `dist/delegation/voting-coordinator.js` +- `dist/delegation/voting-coordinator.js.map` +- `dist/delegation/voting-types.d.ts` +- `dist/delegation/voting-types.d.ts.map` +- `dist/delegation/voting-types.js` +- `dist/delegation/voting-types.js.map` +- `dist/delegation/weighted-voting-aggregator.d.ts` +- `dist/delegation/weighted-voting-aggregator.d.ts.map` +- `dist/delegation/weighted-voting-aggregator.js` +- `dist/delegation/weighted-voting-aggregator.js.map` +- `dist/enforcement/core/index.d.ts` +- `dist/enforcement/core/index.d.ts.map` +- `dist/enforcement/core/index.js` +- `dist/enforcement/core/index.js.map` +- `dist/enforcement/core/rule-executor.d.ts` +- `dist/enforcement/core/rule-executor.d.ts.map` +- `dist/enforcement/core/rule-executor.js` +- `dist/enforcement/core/rule-executor.js.map` +- `dist/enforcement/core/rule-hierarchy.d.ts` +- `dist/enforcement/core/rule-hierarchy.d.ts.map` +- `dist/enforcement/core/rule-hierarchy.js` +- `dist/enforcement/core/rule-hierarchy.js.map` +- `dist/enforcement/core/rule-registry.d.ts` +- `dist/enforcement/core/rule-registry.d.ts.map` +- `dist/enforcement/core/rule-registry.js` +- `dist/enforcement/core/rule-registry.js.map` +- `dist/enforcement/core/violation-fixer.d.ts` +- `dist/enforcement/core/violation-fixer.d.ts.map` +- `dist/enforcement/core/violation-fixer.js` +- `dist/enforcement/core/violation-fixer.js.map` +- `dist/enforcement/enforcer-tools.d.ts` +- `dist/enforcement/enforcer-tools.d.ts.map` +- `dist/enforcement/enforcer-tools.js` +- `dist/enforcement/enforcer-tools.js.map` +- `dist/enforcement/index.d.ts` +- `dist/enforcement/index.d.ts.map` +- `dist/enforcement/index.js` +- `dist/enforcement/index.js.map` +- `dist/enforcement/loaders/agent-triage-loader.d.ts` +- `dist/enforcement/loaders/agent-triage-loader.d.ts.map` +- `dist/enforcement/loaders/agent-triage-loader.js` +- `dist/enforcement/loaders/agent-triage-loader.js.map` +- `dist/enforcement/loaders/agents-md-validation-loader.d.ts` +- `dist/enforcement/loaders/agents-md-validation-loader.d.ts.map` +- `dist/enforcement/loaders/agents-md-validation-loader.js` +- `dist/enforcement/loaders/agents-md-validation-loader.js.map` +- `dist/enforcement/loaders/base-loader.d.ts` +- `dist/enforcement/loaders/base-loader.d.ts.map` +- `dist/enforcement/loaders/base-loader.js` +- `dist/enforcement/loaders/base-loader.js.map` +- `dist/enforcement/loaders/codex-loader.d.ts` +- `dist/enforcement/loaders/codex-loader.d.ts.map` +- `dist/enforcement/loaders/codex-loader.js` +- `dist/enforcement/loaders/codex-loader.js.map` +- `dist/enforcement/loaders/index.d.ts` +- `dist/enforcement/loaders/index.d.ts.map` +- `dist/enforcement/loaders/index.js` +- `dist/enforcement/loaders/index.js.map` +- `dist/enforcement/loaders/loader-orchestrator.d.ts` +- `dist/enforcement/loaders/loader-orchestrator.d.ts.map` +- `dist/enforcement/loaders/loader-orchestrator.js` +- `dist/enforcement/loaders/loader-orchestrator.js.map` +- `dist/enforcement/loaders/processor-loader.d.ts` +- `dist/enforcement/loaders/processor-loader.d.ts.map` +- `dist/enforcement/loaders/processor-loader.js` +- `dist/enforcement/loaders/processor-loader.js.map` +- `dist/enforcement/rule-enforcer.d.ts` +- `dist/enforcement/rule-enforcer.d.ts.map` +- `dist/enforcement/rule-enforcer.js` +- `dist/enforcement/rule-enforcer.js.map` +- `dist/enforcement/test-auto-healing.d.ts` +- `dist/enforcement/test-auto-healing.d.ts.map` +- `dist/enforcement/test-auto-healing.js` +- `dist/enforcement/test-auto-healing.js.map` +- `dist/enforcement/types.d.ts` +- `dist/enforcement/types.d.ts.map` +- `dist/enforcement/types.js` +- `dist/enforcement/types.js.map` +- `dist/enforcement/validators/architecture-validators.d.ts` +- `dist/enforcement/validators/architecture-validators.d.ts.map` +- `dist/enforcement/validators/architecture-validators.js` +- `dist/enforcement/validators/architecture-validators.js.map` +- `dist/enforcement/validators/base-validator.d.ts` +- `dist/enforcement/validators/base-validator.d.ts.map` +- `dist/enforcement/validators/base-validator.js` +- `dist/enforcement/validators/base-validator.js.map` +- `dist/enforcement/validators/code-quality-validators.d.ts` +- `dist/enforcement/validators/code-quality-validators.d.ts.map` +- `dist/enforcement/validators/code-quality-validators.js` +- `dist/enforcement/validators/code-quality-validators.js.map` +- `dist/enforcement/validators/index.d.ts` +- `dist/enforcement/validators/index.d.ts.map` +- `dist/enforcement/validators/index.js` +- `dist/enforcement/validators/index.js.map` +- `dist/enforcement/validators/security-validators.d.ts` +- `dist/enforcement/validators/security-validators.d.ts.map` +- `dist/enforcement/validators/security-validators.js` +- `dist/enforcement/validators/security-validators.js.map` +- `dist/enforcement/validators/testing-validators.d.ts` +- `dist/enforcement/validators/testing-validators.d.ts.map` +- `dist/enforcement/validators/testing-validators.js` +- `dist/enforcement/validators/testing-validators.js.map` +- `dist/enforcement/validators/validator-registry.d.ts` +- `dist/enforcement/validators/validator-registry.d.ts.map` +- `dist/enforcement/validators/validator-registry.js` +- `dist/enforcement/validators/validator-registry.js.map` +- `dist/index.d.ts` +- `dist/index.d.ts.map` +- `dist/index.js` +- `dist/index.js.map` +- `dist/integrations/base/ExampleIntegration.d.ts` +- `dist/integrations/base/ExampleIntegration.d.ts.map` +- `dist/integrations/base/ExampleIntegration.js` +- `dist/integrations/base/ExampleIntegration.js.map` +- `dist/integrations/base/Integration.d.ts` +- `dist/integrations/base/Integration.d.ts.map` +- `dist/integrations/base/Integration.js` +- `dist/integrations/base/Integration.js.map` +- `dist/integrations/base/README.md` +- `dist/integrations/base/index.d.ts` +- `dist/integrations/base/index.d.ts.map` +- `dist/integrations/base/index.js` +- `dist/integrations/base/index.js.map` +- `dist/integrations/base/registry.d.ts` +- `dist/integrations/base/registry.d.ts.map` +- `dist/integrations/base/registry.js` +- `dist/integrations/base/registry.js.map` +- `dist/integrations/base/types.d.ts` +- `dist/integrations/base/types.d.ts.map` +- `dist/integrations/base/types.js` +- `dist/integrations/base/types.js.map` +- `dist/integrations/hermes-agent/__init__.py` +- `dist/integrations/hermes-agent/__pycache__/__init__.cpython-313.pyc` +- `dist/integrations/hermes-agent/__pycache__/conftest.cpython-313.pyc` +- `dist/integrations/hermes-agent/__pycache__/schemas.cpython-313.pyc` +- `dist/integrations/hermes-agent/__pycache__/tools.cpython-313.pyc` +- `dist/integrations/hermes-agent/after-install.md` +- `dist/integrations/hermes-agent/bridge.mjs` +- `dist/integrations/hermes-agent/conftest.py` +- `dist/integrations/hermes-agent/plugin.yaml` +- `dist/integrations/hermes-agent/schemas.py` +- `dist/integrations/hermes-agent/test_plugin.py` +- `dist/integrations/hermes-agent/tools.py` +- `dist/integrations/openclaw/README.md` +- `dist/integrations/openclaw/api-server.d.ts` +- `dist/integrations/openclaw/api-server.d.ts.map` +- `dist/integrations/openclaw/api-server.js` +- `dist/integrations/openclaw/api-server.js.map` +- `dist/integrations/openclaw/client.d.ts` +- `dist/integrations/openclaw/client.d.ts.map` +- `dist/integrations/openclaw/client.js` +- `dist/integrations/openclaw/client.js.map` +- `dist/integrations/openclaw/config.d.ts` +- `dist/integrations/openclaw/config.d.ts.map` +- `dist/integrations/openclaw/config.js` +- `dist/integrations/openclaw/config.js.map` +- `dist/integrations/openclaw/hooks/strray-hooks.d.ts` +- `dist/integrations/openclaw/hooks/strray-hooks.d.ts.map` +- `dist/integrations/openclaw/hooks/strray-hooks.js` +- `dist/integrations/openclaw/hooks/strray-hooks.js.map` +- `dist/integrations/openclaw/index.d.ts` +- `dist/integrations/openclaw/index.d.ts.map` +- `dist/integrations/openclaw/index.js` +- `dist/integrations/openclaw/index.js.map` +- `dist/integrations/openclaw/types.d.ts` +- `dist/integrations/openclaw/types.d.ts.map` +- `dist/integrations/openclaw/types.js` +- `dist/integrations/openclaw/types.js.map` +- `dist/integrations/plugins/index.d.ts` +- `dist/integrations/plugins/index.d.ts.map` +- `dist/integrations/plugins/index.js` +- `dist/integrations/plugins/index.js.map` +- `dist/integrations/plugins/plugin-integration.d.ts` +- `dist/integrations/plugins/plugin-integration.d.ts.map` +- `dist/integrations/plugins/plugin-integration.js` +- `dist/integrations/plugins/plugin-integration.js.map` +- `dist/integrations/plugins/plugin-registry.d.ts` +- `dist/integrations/plugins/plugin-registry.d.ts.map` +- `dist/integrations/plugins/plugin-registry.js` +- `dist/integrations/plugins/plugin-registry.js.map` +- `dist/mcps/agent-resolver.d.ts` +- `dist/mcps/agent-resolver.d.ts.map` +- `dist/mcps/agent-resolver.js` +- `dist/mcps/agent-resolver.js.map` +- `dist/mcps/architect-tools.server.d.ts` +- `dist/mcps/architect-tools.server.d.ts.map` +- `dist/mcps/architect-tools.server.js` +- `dist/mcps/architect-tools.server.js.map` +- `dist/mcps/auto-format.server.d.ts` +- `dist/mcps/auto-format.server.d.ts.map` +- `dist/mcps/auto-format.server.js` +- `dist/mcps/auto-format.server.js.map` +- `dist/mcps/boot-orchestrator.server.d.ts` +- `dist/mcps/boot-orchestrator.server.d.ts.map` +- `dist/mcps/boot-orchestrator.server.js` +- `dist/mcps/boot-orchestrator.server.js.map` +- `dist/mcps/config/config-loader.d.ts` +- `dist/mcps/config/config-loader.d.ts.map` +- `dist/mcps/config/config-loader.js` +- `dist/mcps/config/config-loader.js.map` +- `dist/mcps/config/config-validator.d.ts` +- `dist/mcps/config/config-validator.d.ts.map` +- `dist/mcps/config/config-validator.js` +- `dist/mcps/config/config-validator.js.map` +- `dist/mcps/config/index.d.ts` +- `dist/mcps/config/index.d.ts.map` +- `dist/mcps/config/index.js` +- `dist/mcps/config/index.js.map` +- `dist/mcps/config/plugin-server-registry.d.ts` +- `dist/mcps/config/plugin-server-registry.d.ts.map` +- `dist/mcps/config/plugin-server-registry.js` +- `dist/mcps/config/plugin-server-registry.js.map` +- `dist/mcps/config/server-config-registry.d.ts` +- `dist/mcps/config/server-config-registry.d.ts.map` +- `dist/mcps/config/server-config-registry.js` +- `dist/mcps/config/server-config-registry.js.map` +- `dist/mcps/connection/connection-manager.d.ts` +- `dist/mcps/connection/connection-manager.d.ts.map` +- `dist/mcps/connection/connection-manager.js` +- `dist/mcps/connection/connection-manager.js.map` +- `dist/mcps/connection/connection-pool.d.ts` +- `dist/mcps/connection/connection-pool.d.ts.map` +- `dist/mcps/connection/connection-pool.js` +- `dist/mcps/connection/connection-pool.js.map` +- `dist/mcps/connection/mcp-connection.d.ts` +- `dist/mcps/connection/mcp-connection.d.ts.map` +- `dist/mcps/connection/mcp-connection.js` +- `dist/mcps/connection/mcp-connection.js.map` +- `dist/mcps/connection/process-spawner.d.ts` +- `dist/mcps/connection/process-spawner.d.ts.map` +- `dist/mcps/connection/process-spawner.js` +- `dist/mcps/connection/process-spawner.js.map` +- `dist/mcps/enforcer-tools.server.d.ts` +- `dist/mcps/enforcer-tools.server.d.ts.map` +- `dist/mcps/enforcer-tools.server.js` +- `dist/mcps/enforcer-tools.server.js.map` +- `dist/mcps/estimation.server.d.ts` +- `dist/mcps/estimation.server.d.ts.map` +- `dist/mcps/estimation.server.js` +- `dist/mcps/estimation.server.js.map` +- `dist/mcps/framework-compliance-audit.server.d.ts` +- `dist/mcps/framework-compliance-audit.server.d.ts.map` +- `dist/mcps/framework-compliance-audit.server.js` +- `dist/mcps/framework-compliance-audit.server.js.map` +- `dist/mcps/framework-help.server.d.ts` +- `dist/mcps/framework-help.server.d.ts.map` +- `dist/mcps/framework-help.server.js` +- `dist/mcps/framework-help.server.js.map` +- `dist/mcps/knowledge-skills/api-design.server.d.ts` +- `dist/mcps/knowledge-skills/api-design.server.d.ts.map` +- `dist/mcps/knowledge-skills/api-design.server.js` +- `dist/mcps/knowledge-skills/api-design.server.js.map` +- `dist/mcps/knowledge-skills/architecture-patterns.server.d.ts` +- `dist/mcps/knowledge-skills/architecture-patterns.server.d.ts.map` +- `dist/mcps/knowledge-skills/architecture-patterns.server.js` +- `dist/mcps/knowledge-skills/architecture-patterns.server.js.map` +- `dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts` +- `dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts.map` +- `dist/mcps/knowledge-skills/bug-triage-specialist.server.js` +- `dist/mcps/knowledge-skills/bug-triage-specialist.server.js.map` +- `dist/mcps/knowledge-skills/code-analyzer.server.d.ts` +- `dist/mcps/knowledge-skills/code-analyzer.server.d.ts.map` +- `dist/mcps/knowledge-skills/code-analyzer.server.js` +- `dist/mcps/knowledge-skills/code-analyzer.server.js.map` +- `dist/mcps/knowledge-skills/code-review.server.d.ts` +- `dist/mcps/knowledge-skills/code-review.server.d.ts.map` +- `dist/mcps/knowledge-skills/code-review.server.js` +- `dist/mcps/knowledge-skills/code-review.server.js.map` +- `dist/mcps/knowledge-skills/content-creator.server.d.ts` +- `dist/mcps/knowledge-skills/content-creator.server.d.ts.map` +- `dist/mcps/knowledge-skills/content-creator.server.js` +- `dist/mcps/knowledge-skills/content-creator.server.js.map` +- `dist/mcps/knowledge-skills/database-design.server.d.ts` +- `dist/mcps/knowledge-skills/database-design.server.d.ts.map` +- `dist/mcps/knowledge-skills/database-design.server.js` +- `dist/mcps/knowledge-skills/database-design.server.js.map` +- `dist/mcps/knowledge-skills/devops-deployment.server.d.ts` +- `dist/mcps/knowledge-skills/devops-deployment.server.d.ts.map` +- `dist/mcps/knowledge-skills/devops-deployment.server.js` +- `dist/mcps/knowledge-skills/devops-deployment.server.js.map` +- `dist/mcps/knowledge-skills/git-workflow.server.d.ts` +- `dist/mcps/knowledge-skills/git-workflow.server.d.ts.map` +- `dist/mcps/knowledge-skills/git-workflow.server.js` +- `dist/mcps/knowledge-skills/git-workflow.server.js.map` +- `dist/mcps/knowledge-skills/growth-strategist.server.d.ts` +- `dist/mcps/knowledge-skills/growth-strategist.server.d.ts.map` +- `dist/mcps/knowledge-skills/growth-strategist.server.js` +- `dist/mcps/knowledge-skills/growth-strategist.server.js.map` +- `dist/mcps/knowledge-skills/log-monitor.server.d.ts` +- `dist/mcps/knowledge-skills/log-monitor.server.d.ts.map` +- `dist/mcps/knowledge-skills/log-monitor.server.js` +- `dist/mcps/knowledge-skills/log-monitor.server.js.map` +- `dist/mcps/knowledge-skills/mobile-development.server.d.ts` +- `dist/mcps/knowledge-skills/mobile-development.server.d.ts.map` +- `dist/mcps/knowledge-skills/mobile-development.server.js` +- `dist/mcps/knowledge-skills/mobile-development.server.js.map` +- `dist/mcps/knowledge-skills/multimodal-looker.server.d.ts` +- `dist/mcps/knowledge-skills/multimodal-looker.server.d.ts.map` +- `dist/mcps/knowledge-skills/multimodal-looker.server.js` +- `dist/mcps/knowledge-skills/multimodal-looker.server.js.map` +- `dist/mcps/knowledge-skills/performance-optimization.server.d.ts` +- `dist/mcps/knowledge-skills/performance-optimization.server.d.ts.map` +- `dist/mcps/knowledge-skills/performance-optimization.server.js` +- `dist/mcps/knowledge-skills/performance-optimization.server.js.map` +- `dist/mcps/knowledge-skills/project-analysis.server.d.ts` +- `dist/mcps/knowledge-skills/project-analysis.server.d.ts.map` +- `dist/mcps/knowledge-skills/project-analysis.server.js` +- `dist/mcps/knowledge-skills/project-analysis.server.js.map` +- `dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts` +- `dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts.map` +- `dist/mcps/knowledge-skills/refactoring-strategies.server.js` +- `dist/mcps/knowledge-skills/refactoring-strategies.server.js.map` +- `dist/mcps/knowledge-skills/security-audit.server.d.ts` +- `dist/mcps/knowledge-skills/security-audit.server.d.ts.map` +- `dist/mcps/knowledge-skills/security-audit.server.js` +- `dist/mcps/knowledge-skills/security-audit.server.js.map` +- `dist/mcps/knowledge-skills/seo-consultant.server.d.ts` +- `dist/mcps/knowledge-skills/seo-consultant.server.d.ts.map` +- `dist/mcps/knowledge-skills/seo-consultant.server.js` +- `dist/mcps/knowledge-skills/seo-consultant.server.js.map` +- `dist/mcps/knowledge-skills/session-management.server.d.ts` +- `dist/mcps/knowledge-skills/session-management.server.d.ts.map` +- `dist/mcps/knowledge-skills/session-management.server.js` +- `dist/mcps/knowledge-skills/session-management.server.js.map` +- `dist/mcps/knowledge-skills/skill-invocation.server.d.ts` +- `dist/mcps/knowledge-skills/skill-invocation.server.d.ts.map` +- `dist/mcps/knowledge-skills/skill-invocation.server.js` +- `dist/mcps/knowledge-skills/skill-invocation.server.js.map` +- `dist/mcps/knowledge-skills/strategist.server.d.ts` +- `dist/mcps/knowledge-skills/strategist.server.d.ts.map` +- `dist/mcps/knowledge-skills/strategist.server.js` +- `dist/mcps/knowledge-skills/strategist.server.js.map` +- `dist/mcps/knowledge-skills/tech-writer.server.d.ts` +- `dist/mcps/knowledge-skills/tech-writer.server.d.ts.map` +- `dist/mcps/knowledge-skills/tech-writer.server.js` +- `dist/mcps/knowledge-skills/tech-writer.server.js.map` +- `dist/mcps/knowledge-skills/testing-best-practices.server.d.ts` +- `dist/mcps/knowledge-skills/testing-best-practices.server.d.ts.map` +- `dist/mcps/knowledge-skills/testing-best-practices.server.js` +- `dist/mcps/knowledge-skills/testing-best-practices.server.js.map` +- `dist/mcps/knowledge-skills/testing-strategy.server.d.ts` +- `dist/mcps/knowledge-skills/testing-strategy.server.d.ts.map` +- `dist/mcps/knowledge-skills/testing-strategy.server.js` +- `dist/mcps/knowledge-skills/testing-strategy.server.js.map` +- `dist/mcps/knowledge-skills/ui-ux-design.server.d.ts` +- `dist/mcps/knowledge-skills/ui-ux-design.server.d.ts.map` +- `dist/mcps/knowledge-skills/ui-ux-design.server.js` +- `dist/mcps/knowledge-skills/ui-ux-design.server.js.map` +- `dist/mcps/lint.server.d.ts` +- `dist/mcps/lint.server.d.ts.map` +- `dist/mcps/lint.server.js` +- `dist/mcps/lint.server.js.map` +- `dist/mcps/mcp-client.d.ts` +- `dist/mcps/mcp-client.d.ts.map` +- `dist/mcps/mcp-client.js` +- `dist/mcps/mcp-client.js.map` +- `dist/mcps/model-health-check.server.d.ts` +- `dist/mcps/model-health-check.server.d.ts.map` +- `dist/mcps/model-health-check.server.js` +- `dist/mcps/model-health-check.server.js.map` +- `dist/mcps/orchestrator.server.d.ts` +- `dist/mcps/orchestrator.server.d.ts.map` +- `dist/mcps/orchestrator.server.js` +- `dist/mcps/orchestrator.server.js.map` +- `dist/mcps/orchestrator/config/agent-capabilities.d.ts` +- `dist/mcps/orchestrator/config/agent-capabilities.d.ts.map` +- `dist/mcps/orchestrator/config/agent-capabilities.js` +- `dist/mcps/orchestrator/config/agent-capabilities.js.map` +- `dist/mcps/orchestrator/execution/execution-planner.d.ts` +- `dist/mcps/orchestrator/execution/execution-planner.d.ts.map` +- `dist/mcps/orchestrator/execution/execution-planner.js` +- `dist/mcps/orchestrator/execution/execution-planner.js.map` +- `dist/mcps/orchestrator/handlers/complexity-handler.d.ts` +- `dist/mcps/orchestrator/handlers/complexity-handler.d.ts.map` +- `dist/mcps/orchestrator/handlers/complexity-handler.js` +- `dist/mcps/orchestrator/handlers/complexity-handler.js.map` +- `dist/mcps/orchestrator/handlers/status-handler.d.ts` +- `dist/mcps/orchestrator/handlers/status-handler.d.ts.map` +- `dist/mcps/orchestrator/handlers/status-handler.js` +- `dist/mcps/orchestrator/handlers/status-handler.js.map` +- `dist/mcps/orchestrator/handlers/task-handler.d.ts` +- `dist/mcps/orchestrator/handlers/task-handler.d.ts.map` +- `dist/mcps/orchestrator/handlers/task-handler.js` +- `dist/mcps/orchestrator/handlers/task-handler.js.map` +- `dist/mcps/orchestrator/server.d.ts` +- `dist/mcps/orchestrator/server.d.ts.map` +- `dist/mcps/orchestrator/server.js` +- `dist/mcps/orchestrator/server.js.map` +- `dist/mcps/orchestrator/types.d.ts` +- `dist/mcps/orchestrator/types.d.ts.map` +- `dist/mcps/orchestrator/types.js` +- `dist/mcps/orchestrator/types.js.map` +- `dist/mcps/performance-analysis.server.d.ts` +- `dist/mcps/performance-analysis.server.d.ts.map` +- `dist/mcps/performance-analysis.server.js` +- `dist/mcps/performance-analysis.server.js.map` +- `dist/mcps/processor-pipeline.server.d.ts` +- `dist/mcps/processor-pipeline.server.d.ts.map` +- `dist/mcps/processor-pipeline.server.js` +- `dist/mcps/processor-pipeline.server.js.map` +- `dist/mcps/protocol/protocol-constants.d.ts` +- `dist/mcps/protocol/protocol-constants.d.ts.map` +- `dist/mcps/protocol/protocol-constants.js` +- `dist/mcps/protocol/protocol-constants.js.map` +- `dist/mcps/registry.json` +- `dist/mcps/researcher.server.d.ts` +- `dist/mcps/researcher.server.d.ts.map` +- `dist/mcps/researcher.server.js` +- `dist/mcps/researcher.server.js.map` +- `dist/mcps/security-scan.server.d.ts` +- `dist/mcps/security-scan.server.d.ts.map` +- `dist/mcps/security-scan.server.js` +- `dist/mcps/security-scan.server.js.map` +- `dist/mcps/simulation/index.d.ts` +- `dist/mcps/simulation/index.d.ts.map` +- `dist/mcps/simulation/index.js` +- `dist/mcps/simulation/index.js.map` +- `dist/mcps/simulation/server-simulations.d.ts` +- `dist/mcps/simulation/server-simulations.d.ts.map` +- `dist/mcps/simulation/server-simulations.js` +- `dist/mcps/simulation/server-simulations.js.map` +- `dist/mcps/simulation/simulation-engine.d.ts` +- `dist/mcps/simulation/simulation-engine.d.ts.map` +- `dist/mcps/simulation/simulation-engine.js` +- `dist/mcps/simulation/simulation-engine.js.map` +- `dist/mcps/state-manager.server.d.ts` +- `dist/mcps/state-manager.server.d.ts.map` +- `dist/mcps/state-manager.server.js` +- `dist/mcps/state-manager.server.js.map` +- `dist/mcps/tools/index.d.ts` +- `dist/mcps/tools/index.d.ts.map` +- `dist/mcps/tools/index.js` +- `dist/mcps/tools/index.js.map` +- `dist/mcps/tools/tool-cache.d.ts` +- `dist/mcps/tools/tool-cache.d.ts.map` +- `dist/mcps/tools/tool-cache.js` +- `dist/mcps/tools/tool-cache.js.map` +- `dist/mcps/tools/tool-discovery.d.ts` +- `dist/mcps/tools/tool-discovery.d.ts.map` +- `dist/mcps/tools/tool-discovery.js` +- `dist/mcps/tools/tool-discovery.js.map` +- `dist/mcps/tools/tool-executor.d.ts` +- `dist/mcps/tools/tool-executor.d.ts.map` +- `dist/mcps/tools/tool-executor.js` +- `dist/mcps/tools/tool-executor.js.map` +- `dist/mcps/tools/tool-registry.d.ts` +- `dist/mcps/tools/tool-registry.d.ts.map` +- `dist/mcps/tools/tool-registry.js` +- `dist/mcps/tools/tool-registry.js.map` +- `dist/mcps/types/index.d.ts` +- `dist/mcps/types/index.d.ts.map` +- `dist/mcps/types/index.js` +- `dist/mcps/types/index.js.map` +- `dist/mcps/types/json-rpc.types.d.ts` +- `dist/mcps/types/json-rpc.types.d.ts.map` +- `dist/mcps/types/json-rpc.types.js` +- `dist/mcps/types/json-rpc.types.js.map` +- `dist/mcps/types/mcp.types.d.ts` +- `dist/mcps/types/mcp.types.d.ts.map` +- `dist/mcps/types/mcp.types.js` +- `dist/mcps/types/mcp.types.js.map` +- `dist/metrics/agent-metrics.d.ts` +- `dist/metrics/agent-metrics.d.ts.map` +- `dist/metrics/agent-metrics.js` +- `dist/metrics/agent-metrics.js.map` +- `dist/metrics/index.d.ts` +- `dist/metrics/index.d.ts.map` +- `dist/metrics/index.js` +- `dist/metrics/index.js.map` +- `dist/monitoring/advanced-profiler.d.ts` +- `dist/monitoring/advanced-profiler.d.ts.map` +- `dist/monitoring/advanced-profiler.js` +- `dist/monitoring/advanced-profiler.js.map` +- `dist/monitoring/memory-monitor.d.ts` +- `dist/monitoring/memory-monitor.d.ts.map` +- `dist/monitoring/memory-monitor.js` +- `dist/monitoring/memory-monitor.js.map` +- `dist/monitoring/nudge-watchdog.d.ts` +- `dist/monitoring/nudge-watchdog.d.ts.map` +- `dist/monitoring/nudge-watchdog.js` +- `dist/monitoring/nudge-watchdog.js.map` +- `dist/monitoring/test-auto-generation-monitor.d.ts` +- `dist/monitoring/test-auto-generation-monitor.d.ts.map` +- `dist/monitoring/test-auto-generation-monitor.js` +- `dist/monitoring/test-auto-generation-monitor.js.map` +- `dist/orchestrator/agent-spawn-governor.d.ts` +- `dist/orchestrator/agent-spawn-governor.d.ts.map` +- `dist/orchestrator/agent-spawn-governor.js` +- `dist/orchestrator/agent-spawn-governor.js.map` +- `dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts` +- `dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts.map` +- `dist/orchestrator/enhanced-multi-agent-orchestrator.js` +- `dist/orchestrator/enhanced-multi-agent-orchestrator.js.map` +- `dist/orchestrator/intelligent-commit-batcher.d.ts` +- `dist/orchestrator/intelligent-commit-batcher.d.ts.map` +- `dist/orchestrator/intelligent-commit-batcher.js` +- `dist/orchestrator/intelligent-commit-batcher.js.map` +- `dist/orchestrator/multi-agent-orchestration-coordinator.d.ts` +- `dist/orchestrator/multi-agent-orchestration-coordinator.d.ts.map` +- `dist/orchestrator/multi-agent-orchestration-coordinator.js` +- `dist/orchestrator/multi-agent-orchestration-coordinator.js.map` +- `dist/orchestrator/orchestrator.d.ts` +- `dist/orchestrator/orchestrator.d.ts.map` +- `dist/orchestrator/orchestrator.js` +- `dist/orchestrator/orchestrator.js.map` +- `dist/orchestrator/self-direction-activation.d.ts` +- `dist/orchestrator/self-direction-activation.d.ts.map` +- `dist/orchestrator/self-direction-activation.js` +- `dist/orchestrator/self-direction-activation.js.map` +- `dist/orchestrator/universal-librarian-consultation.d.ts` +- `dist/orchestrator/universal-librarian-consultation.d.ts.map` +- `dist/orchestrator/universal-librarian-consultation.js` +- `dist/orchestrator/universal-librarian-consultation.js.map` +- `dist/orchestrator/universal-registry-bridge.d.ts` +- `dist/orchestrator/universal-registry-bridge.d.ts.map` +- `dist/orchestrator/universal-registry-bridge.js` +- `dist/orchestrator/universal-registry-bridge.js.map` +- `dist/performance/performance-budget-enforcer.d.ts` +- `dist/performance/performance-budget-enforcer.d.ts.map` +- `dist/performance/performance-budget-enforcer.js` +- `dist/performance/performance-budget-enforcer.js.map` +- `dist/performance/performance-regression-tester.d.ts` +- `dist/performance/performance-regression-tester.d.ts.map` +- `dist/performance/performance-regression-tester.js` +- `dist/performance/performance-regression-tester.js.map` +- `dist/plugin/strray-codex-injection.d.ts` +- `dist/plugin/strray-codex-injection.d.ts.map` +- `dist/plugin/strray-codex-injection.js` +- `dist/plugin/strray-codex-injection.js.map` +- `dist/postprocessor/PostProcessor.d.ts` +- `dist/postprocessor/PostProcessor.d.ts.map` +- `dist/postprocessor/PostProcessor.js` +- `dist/postprocessor/PostProcessor.js.map` +- `dist/postprocessor/analysis/FailureAnalysisEngine.d.ts` +- `dist/postprocessor/analysis/FailureAnalysisEngine.d.ts.map` +- `dist/postprocessor/analysis/FailureAnalysisEngine.js` +- `dist/postprocessor/analysis/FailureAnalysisEngine.js.map` +- `dist/postprocessor/autofix/AutoFixEngine.d.ts` +- `dist/postprocessor/autofix/AutoFixEngine.d.ts.map` +- `dist/postprocessor/autofix/AutoFixEngine.js` +- `dist/postprocessor/autofix/AutoFixEngine.js.map` +- `dist/postprocessor/autofix/FixValidator.d.ts` +- `dist/postprocessor/autofix/FixValidator.d.ts.map` +- `dist/postprocessor/autofix/FixValidator.js` +- `dist/postprocessor/autofix/FixValidator.js.map` +- `dist/postprocessor/config.d.ts` +- `dist/postprocessor/config.d.ts.map` +- `dist/postprocessor/config.js` +- `dist/postprocessor/config.js.map` +- `dist/postprocessor/escalation/EscalationEngine.d.ts` +- `dist/postprocessor/escalation/EscalationEngine.d.ts.map` +- `dist/postprocessor/escalation/EscalationEngine.js` +- `dist/postprocessor/escalation/EscalationEngine.js.map` +- `dist/postprocessor/monitoring/MonitoringEngine.d.ts` +- `dist/postprocessor/monitoring/MonitoringEngine.d.ts.map` +- `dist/postprocessor/monitoring/MonitoringEngine.js` +- `dist/postprocessor/monitoring/MonitoringEngine.js.map` +- `dist/postprocessor/redeploy/RedeployCoordinator.d.ts` +- `dist/postprocessor/redeploy/RedeployCoordinator.d.ts.map` +- `dist/postprocessor/redeploy/RedeployCoordinator.js` +- `dist/postprocessor/redeploy/RedeployCoordinator.js.map` +- `dist/postprocessor/services/RegressionAnalysisService.d.ts` +- `dist/postprocessor/services/RegressionAnalysisService.d.ts.map` +- `dist/postprocessor/services/RegressionAnalysisService.js` +- `dist/postprocessor/services/RegressionAnalysisService.js.map` +- `dist/postprocessor/success/SuccessHandler.d.ts` +- `dist/postprocessor/success/SuccessHandler.d.ts.map` +- `dist/postprocessor/success/SuccessHandler.js` +- `dist/postprocessor/success/SuccessHandler.js.map` +- `dist/postprocessor/triggers/APITrigger.d.ts` +- `dist/postprocessor/triggers/APITrigger.d.ts.map` +- `dist/postprocessor/triggers/APITrigger.js` +- `dist/postprocessor/triggers/APITrigger.js.map` +- `dist/postprocessor/triggers/GitHookTrigger.d.ts` +- `dist/postprocessor/triggers/GitHookTrigger.d.ts.map` +- `dist/postprocessor/triggers/GitHookTrigger.js` +- `dist/postprocessor/triggers/GitHookTrigger.js.map` +- `dist/postprocessor/triggers/WebhookTrigger.d.ts` +- `dist/postprocessor/triggers/WebhookTrigger.d.ts.map` +- `dist/postprocessor/triggers/WebhookTrigger.js` +- `dist/postprocessor/triggers/WebhookTrigger.js.map` +- `dist/postprocessor/types.d.ts` +- `dist/postprocessor/types.d.ts.map` +- `dist/postprocessor/types.js` +- `dist/postprocessor/types.js.map` +- `dist/processors/agents-md-validation-processor.d.ts` +- `dist/processors/agents-md-validation-processor.d.ts.map` +- `dist/processors/agents-md-validation-processor.js` +- `dist/processors/agents-md-validation-processor.js.map` +- `dist/processors/async-pattern-processor.d.ts` +- `dist/processors/async-pattern-processor.d.ts.map` +- `dist/processors/async-pattern-processor.js` +- `dist/processors/async-pattern-processor.js.map` +- `dist/processors/console-log-guard-processor.d.ts` +- `dist/processors/console-log-guard-processor.d.ts.map` +- `dist/processors/console-log-guard-processor.js` +- `dist/processors/console-log-guard-processor.js.map` +- `dist/processors/doc-write-guard.d.ts` +- `dist/processors/doc-write-guard.d.ts.map` +- `dist/processors/doc-write-guard.js` +- `dist/processors/doc-write-guard.js.map` +- `dist/processors/implementations/agents-md-validation-processor.d.ts` +- `dist/processors/implementations/agents-md-validation-processor.d.ts.map` +- `dist/processors/implementations/agents-md-validation-processor.js` +- `dist/processors/implementations/agents-md-validation-processor.js.map` +- `dist/processors/implementations/async-pattern-processor.d.ts` +- `dist/processors/implementations/async-pattern-processor.d.ts.map` +- `dist/processors/implementations/async-pattern-processor.js` +- `dist/processors/implementations/async-pattern-processor.js.map` +- `dist/processors/implementations/codex-compliance-processor.d.ts` +- `dist/processors/implementations/codex-compliance-processor.d.ts.map` +- `dist/processors/implementations/codex-compliance-processor.js` +- `dist/processors/implementations/codex-compliance-processor.js.map` +- `dist/processors/implementations/console-log-guard-processor.d.ts` +- `dist/processors/implementations/console-log-guard-processor.d.ts.map` +- `dist/processors/implementations/console-log-guard-processor.js` +- `dist/processors/implementations/console-log-guard-processor.js.map` +- `dist/processors/implementations/coverage-analysis-processor.d.ts` +- `dist/processors/implementations/coverage-analysis-processor.d.ts.map` +- `dist/processors/implementations/coverage-analysis-processor.js` +- `dist/processors/implementations/coverage-analysis-processor.js.map` +- `dist/processors/implementations/error-boundary-processor.d.ts` +- `dist/processors/implementations/error-boundary-processor.d.ts.map` +- `dist/processors/implementations/error-boundary-processor.js` +- `dist/processors/implementations/error-boundary-processor.js.map` +- `dist/processors/implementations/inference-improvement-processor.d.ts` +- `dist/processors/implementations/inference-improvement-processor.d.ts.map` +- `dist/processors/implementations/inference-improvement-processor.js` +- `dist/processors/implementations/inference-improvement-processor.js.map` +- `dist/processors/implementations/log-protection-processor.d.ts` +- `dist/processors/implementations/log-protection-processor.d.ts.map` +- `dist/processors/implementations/log-protection-processor.js` +- `dist/processors/implementations/log-protection-processor.js.map` +- `dist/processors/implementations/nudge-processor.d.ts` +- `dist/processors/implementations/nudge-processor.d.ts.map` +- `dist/processors/implementations/nudge-processor.js` +- `dist/processors/implementations/nudge-processor.js.map` +- `dist/processors/implementations/performance-budget-processor.d.ts` +- `dist/processors/implementations/performance-budget-processor.d.ts.map` +- `dist/processors/implementations/performance-budget-processor.js` +- `dist/processors/implementations/performance-budget-processor.js.map` +- `dist/processors/implementations/postprocessor-chain-validator.d.ts` +- `dist/processors/implementations/postprocessor-chain-validator.d.ts.map` +- `dist/processors/implementations/postprocessor-chain-validator.js` +- `dist/processors/implementations/postprocessor-chain-validator.js.map` +- `dist/processors/implementations/pre-validate-processor.d.ts` +- `dist/processors/implementations/pre-validate-processor.d.ts.map` +- `dist/processors/implementations/pre-validate-processor.js` +- `dist/processors/implementations/pre-validate-processor.js.map` +- `dist/processors/implementations/publish-preflight-processor.d.ts` +- `dist/processors/implementations/publish-preflight-processor.d.ts.map` +- `dist/processors/implementations/publish-preflight-processor.js` +- `dist/processors/implementations/publish-preflight-processor.js.map` +- `dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts` +- `dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts.map` +- `dist/processors/implementations/refactoring-logging-processor-wrapper.js` +- `dist/processors/implementations/refactoring-logging-processor-wrapper.js.map` +- `dist/processors/implementations/refactoring-logging-processor.d.ts` +- `dist/processors/implementations/refactoring-logging-processor.d.ts.map` +- `dist/processors/implementations/refactoring-logging-processor.js` +- `dist/processors/implementations/refactoring-logging-processor.js.map` +- `dist/processors/implementations/regression-testing-processor.d.ts` +- `dist/processors/implementations/regression-testing-processor.d.ts.map` +- `dist/processors/implementations/regression-testing-processor.js` +- `dist/processors/implementations/regression-testing-processor.js.map` +- `dist/processors/implementations/session-summary-processor.d.ts` +- `dist/processors/implementations/session-summary-processor.d.ts.map` +- `dist/processors/implementations/session-summary-processor.js` +- `dist/processors/implementations/session-summary-processor.js.map` +- `dist/processors/implementations/spawn-governance-processor.d.ts` +- `dist/processors/implementations/spawn-governance-processor.d.ts.map` +- `dist/processors/implementations/spawn-governance-processor.js` +- `dist/processors/implementations/spawn-governance-processor.js.map` +- `dist/processors/implementations/state-validation-processor.d.ts` +- `dist/processors/implementations/state-validation-processor.d.ts.map` +- `dist/processors/implementations/state-validation-processor.js` +- `dist/processors/implementations/state-validation-processor.js.map` +- `dist/processors/implementations/storytelling-trigger-processor.d.ts` +- `dist/processors/implementations/storytelling-trigger-processor.d.ts.map` +- `dist/processors/implementations/storytelling-trigger-processor.js` +- `dist/processors/implementations/storytelling-trigger-processor.js.map` +- `dist/processors/implementations/test-auto-creation-processor.d.ts` +- `dist/processors/implementations/test-auto-creation-processor.d.ts.map` +- `dist/processors/implementations/test-auto-creation-processor.js` +- `dist/processors/implementations/test-auto-creation-processor.js.map` +- `dist/processors/implementations/test-execution-processor.d.ts` +- `dist/processors/implementations/test-execution-processor.d.ts.map` +- `dist/processors/implementations/test-execution-processor.js` +- `dist/processors/implementations/test-execution-processor.js.map` +- `dist/processors/implementations/typescript-compilation-processor.d.ts` +- `dist/processors/implementations/typescript-compilation-processor.d.ts.map` +- `dist/processors/implementations/typescript-compilation-processor.js` +- `dist/processors/implementations/typescript-compilation-processor.js.map` +- `dist/processors/implementations/version-compliance-processor.d.ts` +- `dist/processors/implementations/version-compliance-processor.d.ts.map` +- `dist/processors/implementations/version-compliance-processor.js` +- `dist/processors/implementations/version-compliance-processor.js.map` +- `dist/processors/performance-budget-processor.d.ts` +- `dist/processors/performance-budget-processor.d.ts.map` +- `dist/processors/performance-budget-processor.js` +- `dist/processors/performance-budget-processor.js.map` +- `dist/processors/postprocessor-chain-validator.d.ts` +- `dist/processors/postprocessor-chain-validator.d.ts.map` +- `dist/processors/postprocessor-chain-validator.js` +- `dist/processors/postprocessor-chain-validator.js.map` +- `dist/processors/processor-interfaces.d.ts` +- `dist/processors/processor-interfaces.d.ts.map` +- `dist/processors/processor-interfaces.js` +- `dist/processors/processor-interfaces.js.map` +- `dist/processors/processor-manager.d.ts` +- `dist/processors/processor-manager.d.ts.map` +- `dist/processors/processor-manager.js` +- `dist/processors/processor-manager.js.map` +- `dist/processors/processor-rule-fixes.d.ts.map` +- `dist/processors/processor-rule-fixes.js.map` +- `dist/processors/processor-test-executor.d.ts.map` +- `dist/processors/processor-test-executor.js.map` +- `dist/processors/processor-types.d.ts` +- `dist/processors/processor-types.d.ts.map` +- `dist/processors/processor-types.js` +- `dist/processors/processor-types.js.map` +- `dist/processors/refactoring-logging-processor.d.ts` +- `dist/processors/refactoring-logging-processor.d.ts.map` +- `dist/processors/refactoring-logging-processor.js` +- `dist/processors/refactoring-logging-processor.js.map` +- `dist/processors/spawn-governance-processor.d.ts` +- `dist/processors/spawn-governance-processor.d.ts.map` +- `dist/processors/spawn-governance-processor.js` +- `dist/processors/spawn-governance-processor.js.map` +- `dist/processors/test-auto-creation-processor.d.ts` +- `dist/processors/test-auto-creation-processor.d.ts.map` +- `dist/processors/test-auto-creation-processor.js` +- `dist/processors/test-auto-creation-processor.js.map` +- `dist/processors/typescript-compilation-processor.d.ts` +- `dist/processors/typescript-compilation-processor.d.ts.map` +- `dist/processors/typescript-compilation-processor.js` +- `dist/processors/typescript-compilation-processor.js.map` +- `dist/processors/version-compliance-processor.d.ts` +- `dist/processors/version-compliance-processor.d.ts.map` +- `dist/processors/version-compliance-processor.js` +- `dist/processors/version-compliance-processor.js.map` +- `dist/public/about.html` +- `dist/public/enterprise.html` +- `dist/public/features.html` +- `dist/public/index.html` +- `dist/reporting/framework-reporting-system.d.ts` +- `dist/reporting/framework-reporting-system.d.ts.map` +- `dist/reporting/framework-reporting-system.js` +- `dist/reporting/framework-reporting-system.js.map` +- `dist/reporting/log-parser.d.ts` +- `dist/reporting/log-parser.d.ts.map` +- `dist/reporting/log-parser.js` +- `dist/reporting/log-parser.js.map` +- `dist/reporting/metrics.d.ts` +- `dist/reporting/metrics.d.ts.map` +- `dist/reporting/metrics.js` +- `dist/reporting/metrics.js.map` +- `dist/reporting/report-formatter.d.ts` +- `dist/reporting/report-formatter.d.ts.map` +- `dist/reporting/report-formatter.js` +- `dist/reporting/report-formatter.js.map` +- `dist/reporting/types.d.ts` +- `dist/reporting/types.d.ts.map` +- `dist/reporting/types.js` +- `dist/reporting/types.js.map` +- `dist/scripts/activate-kernel-pipeline.d.ts` +- `dist/scripts/activate-kernel-pipeline.d.ts.map` +- `dist/scripts/activate-kernel-pipeline.js` +- `dist/scripts/activate-kernel-pipeline.js.map` +- `dist/scripts/integration.d.ts` +- `dist/scripts/integration.d.ts.map` +- `dist/scripts/integration.js` +- `dist/scripts/integration.js.map` +- `dist/scripts/pre-command` +- `dist/scripts/pre-command.mjs` +- `dist/scripts/validate-stringray-comprehensive.js` +- `dist/security/comprehensive-security-audit.d.ts` +- `dist/security/comprehensive-security-audit.d.ts.map` +- `dist/security/comprehensive-security-audit.js` +- `dist/security/comprehensive-security-audit.js.map` +- `dist/security/index.d.ts` +- `dist/security/index.d.ts.map` +- `dist/security/index.js` +- `dist/security/index.js.map` +- `dist/security/prompt-security-validator.d.ts` +- `dist/security/prompt-security-validator.d.ts.map` +- `dist/security/prompt-security-validator.js` +- `dist/security/prompt-security-validator.js.map` +- `dist/security/security-agent-coordinator.d.ts` +- `dist/security/security-agent-coordinator.d.ts.map` +- `dist/security/security-agent-coordinator.js` +- `dist/security/security-agent-coordinator.js.map` +- `dist/security/security-auditor.d.ts` +- `dist/security/security-auditor.d.ts.map` +- `dist/security/security-auditor.js` +- `dist/security/security-auditor.js.map` +- `dist/security/security-hardener.d.ts` +- `dist/security/security-hardener.d.ts.map` +- `dist/security/security-hardener.js` +- `dist/security/security-hardener.js.map` +- `dist/security/security-hardening-system.d.ts` +- `dist/security/security-hardening-system.d.ts.map` +- `dist/security/security-hardening-system.js` +- `dist/security/security-hardening-system.js.map` +- `dist/security/security-headers.d.ts` +- `dist/security/security-headers.d.ts.map` +- `dist/security/security-headers.js` +- `dist/security/security-headers.js.map` +- `dist/security/security-orchestration-layer.d.ts` +- `dist/security/security-orchestration-layer.d.ts.map` +- `dist/security/security-orchestration-layer.js` +- `dist/security/security-orchestration-layer.js.map` +- `dist/security/security-scanner.d.ts` +- `dist/security/security-scanner.d.ts.map` +- `dist/security/security-scanner.js` +- `dist/security/security-scanner.js.map` +- `dist/services/inference-tuner.d.ts` +- `dist/services/inference-tuner.d.ts.map` +- `dist/services/inference-tuner.js` +- `dist/services/inference-tuner.js.map` +- `dist/session/index.d.ts` +- `dist/session/index.d.ts.map` +- `dist/session/index.js` +- `dist/session/index.js.map` +- `dist/session/session-cleanup-manager.d.ts` +- `dist/session/session-cleanup-manager.d.ts.map` +- `dist/session/session-cleanup-manager.js` +- `dist/session/session-cleanup-manager.js.map` +- `dist/session/session-monitor.d.ts` +- `dist/session/session-monitor.d.ts.map` +- `dist/session/session-monitor.js` +- `dist/session/session-monitor.js.map` +- `dist/session/session-state-manager.d.ts` +- `dist/session/session-state-manager.d.ts.map` +- `dist/session/session-state-manager.js` +- `dist/session/session-state-manager.js.map` +- `dist/skills/api-design/SKILL.md` +- `dist/skills/architect-tools/SKILL.md` +- `dist/skills/architecture-patterns/SKILL.md` +- `dist/skills/auto-format/SKILL.md` +- `dist/skills/backend-engineer/SKILL.md` +- `dist/skills/boot-orchestrator/SKILL.md` +- `dist/skills/bug-triage/SKILL.md` +- `dist/skills/code-analyzer/SKILL.md` +- `dist/skills/code-review/SKILL.md` +- `dist/skills/content-creator/SKILL.md` +- `dist/skills/database-engineer/SKILL.md` +- `dist/skills/devops-engineer/SKILL.md` +- `dist/skills/enforcer/SKILL.md` +- `dist/skills/framework-compliance-audit/SKILL.md` +- `dist/skills/frontend-engineer/SKILL.md` +- `dist/skills/frontend-ui-ux-engineer/SKILL.md` +- `dist/skills/git-workflow/SKILL.md` +- `dist/skills/growth-strategist/SKILL.md` +- `dist/skills/hermes-agent/SKILL.md` +- `dist/skills/inference-improve/SKILL.md` +- `dist/skills/lint/SKILL.md` +- `dist/skills/log-monitor/SKILL.md` +- `dist/skills/mobile-developer/SKILL.md` +- `dist/skills/model-health-check/SKILL.md` +- `dist/skills/multimodal-looker/SKILL.md` +- `dist/skills/orchestrator/SKILL.md` +- `dist/skills/performance-analysis/SKILL.md` +- `dist/skills/performance-engineer/SKILL.md` +- `dist/skills/performance-optimization/SKILL.md` +- `dist/skills/processor-pipeline/SKILL.md` +- `dist/skills/project-analysis/SKILL.md` +- `dist/skills/refactoring-strategies/SKILL.md` +- `dist/skills/registry.json` +- `dist/skills/researcher/SKILL.md` +- `dist/skills/security-audit/SKILL.md` +- `dist/skills/security-scan/SKILL.md` +- `dist/skills/seo-consultant/SKILL.md` +- `dist/skills/session-management/SKILL.md` +- `dist/skills/state-manager/SKILL.md` +- `dist/skills/storyteller/SKILL.md` +- `dist/skills/strategist/SKILL.md` +- `dist/skills/tech-writer/SKILL.md` +- `dist/skills/testing-best-practices/SKILL.md` +- `dist/skills/testing-strategy/SKILL.md` +- `dist/skills/ui-ux-design/SKILL.md` +- `dist/state/context-providers.d.ts` +- `dist/state/context-providers.d.ts.map` +- `dist/state/context-providers.js` +- `dist/state/context-providers.js.map` +- `dist/state/index.d.ts` +- `dist/state/index.d.ts.map` +- `dist/state/index.js` +- `dist/state/index.js.map` +- `dist/state/state-manager.d.ts` +- `dist/state/state-manager.d.ts.map` +- `dist/state/state-manager.js` +- `dist/state/state-manager.js.map` +- `dist/state/state-types.d.ts` +- `dist/state/state-types.d.ts.map` +- `dist/state/state-types.js` +- `dist/state/state-types.js.map` +- `dist/testing/memory-regression-suite.d.ts` +- `dist/testing/memory-regression-suite.d.ts.map` +- `dist/testing/memory-regression-suite.js` +- `dist/testing/memory-regression-suite.js.map` +- `dist/utils/batch-operations.d.ts` +- `dist/utils/batch-operations.d.ts.map` +- `dist/utils/batch-operations.js` +- `dist/utils/batch-operations.js.map` +- `dist/utils/codex-parser.d.ts` +- `dist/utils/codex-parser.d.ts.map` +- `dist/utils/codex-parser.js` +- `dist/utils/codex-parser.js.map` +- `dist/utils/command-runner.d.ts` +- `dist/utils/command-runner.d.ts.map` +- `dist/utils/command-runner.js` +- `dist/utils/command-runner.js.map` +- `dist/utils/import-resolver.d.ts` +- `dist/utils/import-resolver.d.ts.map` +- `dist/utils/import-resolver.js` +- `dist/utils/import-resolver.js.map` +- `dist/utils/language-detector.d.ts` +- `dist/utils/language-detector.d.ts.map` +- `dist/utils/language-detector.js` +- `dist/utils/language-detector.js.map` +- `dist/utils/path-resolver.d.ts` +- `dist/utils/path-resolver.d.ts.map` +- `dist/utils/path-resolver.js` +- `dist/utils/path-resolver.js.map` +- `dist/utils/shutdown-handler.d.ts` +- `dist/utils/shutdown-handler.d.ts.map` +- `dist/utils/shutdown-handler.js` +- `dist/utils/shutdown-handler.js.map` +- `dist/utils/test-template-generator.d.ts` +- `dist/utils/test-template-generator.d.ts.map` +- `dist/utils/test-template-generator.js` +- `dist/utils/test-template-generator.js.map` +- `dist/utils/token-manager.d.ts` +- `dist/utils/token-manager.d.ts.map` +- `dist/utils/token-manager.js` +- `dist/utils/token-manager.js.map` +- `dist/validation/estimation-validator.d.ts` +- `dist/validation/estimation-validator.d.ts.map` +- `dist/validation/estimation-validator.js` +- `dist/validation/estimation-validator.js.map` +- `dist/validation/report-content-validator.d.ts` +- `dist/validation/report-content-validator.d.ts.map` +- `dist/validation/report-content-validator.js` +- `dist/validation/report-content-validator.js.map` +- `logs/framework/activity-report.json` +- `logs/framework/pattern-metrics.json` +- `logs/framework/routing-outcomes.json` +- `src/__tests__/agents/enforcer.test.ts` +- `src/__tests__/agents/orchestrator.test.ts` +- `src/agents/enforcer.ts` +- `src/agents/orchestrator.ts` + +## Patterns Observed + +- New processor implementations added — system extensibility increasing +- New test files created — test coverage expanding +- 1744 files deleted — dead code removal or refactoring +- Net code reduction: 155712 lines removed — simplification effort +- Processor system modified — pipeline architecture evolving +- Reporting system modified — output quality being addressed +- Security-related changes detected +- Bug fixes present — stability improvement +- Version bumps/releases present — release cadence active +- Processor manager core modified — orchestration layer changing +- AGENTS.md updated — agent documentation evolving +- Integration layer modified — external system interfaces changing + +## Key Decisions + +- Removal: feat: wire 3 orphaned features + add tests + remove empty api-gateway +- Fix: feat: wire apply phase via MCP routing + fix e2e tests (41/41 PASS) +- Fix: fix: remove unused imports and any type from processor-manager.interfaces.test.ts (processor-test-rules ESLint) +- Fix: fix: address all open bugs (#29-32, #34) and prevent noise PRs from inference cycle +- Fix: fix: remove enforcer references from integration test, add fetch-depth:0 for e2e git tests +- Fix: fix: triage and fix all GitHub workflow pipelines +- Fix: fix: restore package.json, mcp-install.ts, workflows, and govern-reflection.mjs gutted by 84dae31b1 +- Fix: fix: add npm audit fix to main CI workflow +- Fix: fix: run npm audit fix to resolve moderate vulnerabilities +- Fix: fix: remove duplicate case undefined in mcp-install.ts (lint error) +- Fix: chore: trigger ci-cd-monitor with force_fix=true +- Fix: fix: make trace-context more robust + fix ESM issues in govern-reflection +- Fix: fix: agent registry cleanup — remove skill-only entries, delete deprecated agents +- Fix: fix: agent export naming + single-architect governance +- Fix: fix: complete inference-cycle.ts — all fixes applied. +- Fix: fix: guard inference:run for StringRay internal use only +- Fix: fix: governance pipeline — force flag, skipDeployVerify default, deploy failure handling +- Fix: fix: increase timeout for processor auto-discovery tests to prevent flaky failures +- Fix: fix: inference processor double-joining absolute path created bogus Users/ dir +- Removal: chore: remove 92 build artifacts (.d.ts, .d.ts.map) from .opencode git tracking, add to .gitignore +- Fix: chore: rebuild dist after path fix + +## Inference Notes + +- Extract Method pattern detected [95%]: Methods extracted from monolithic modules into dedicated files in the same directory. Classic decomposition pattern: one large file sheds responsibilities into focused modules. (1 new files + 4 modified in src/__tests__/integration/) +- Test Coverage Expansion pattern detected [95%]: 11 new test files added. Test-first or test-alongside development — covering new code as it ships. (+ src/__tests__/e2e/inference-e2e.test.ts) +- Dead Code Removal pattern detected [90%]: 1753 files deleted — unused code eliminated. Reduces maintenance burden, removes misleading signals for new readers. (- .opencode/core/activity-logger.d.ts.map) +- Facade Pattern pattern detected [85%]: Monolithic file stripped down to a thin facade while logic moves to dedicated modules. The original becomes a coordinator, not an implementer. (opencode.json: -110/+0 lines, 22 function signatures removed) +- Stability Sprint pattern detected [75%]: Focus on removal and fixing over feature addition. Technical debt being paid down — a sign of mature development practice. (1753 files deleted) +- Extract Method pattern: 1 new processor files suggest methods extracted from a monolithic module +- Code reduction effort: processor-manager had 203969 deletions vs 48257 insertions — simplification in progress +- Registry Pattern: factory/registry changes suggest switch-to-Map refactoring +- Convention over Configuration: new implementations + discovery code suggest auto-registration pattern +- Release pipeline investment: changes to release/publish scripts suggest automation of manual process +- Self-awareness layer: reflection/storytelling changes suggest the system is learning to observe itself +- Stability sprint: 19/47 commits are fixes — addressing accumulated issues +- Net code reduction: 155712 lines removed — technical debt being paid down +- Test coverage expansion: 11 new test files added + +--- +*Generated by StorytellingTriggerProcessor — release cadence — 2026-05-11T09:21:38.902Z* \ No newline at end of file From a61cd6f0201493646c973ebabc5601c9674761fe Mon Sep 17 00:00:00 2001 From: htafolla Date: Mon, 11 May 2026 06:38:26 -0500 Subject: [PATCH 2/3] feat: integrate chrono-warp-drive governance MCP for inference checking - Add inference_governance feature flag (disabled by default) - Add governance integration entry in integrations.json - Create governance integration module with HTTP client - Wire inference cycle to optionally use external governance endpoint - Add governance routing keywords to routing-mappings.json The governance integration calls the chrono-warp-drive Dynamo /governance endpoint for high-signal, traceable decisions on inference proposals. Usage: Enable in features.json: inference_governance.enabled: true Note: There is a known issue with opencode instances not closing properly when governance is active - needs investigation. --- .opencode/strray/integrations.json | 10 + .opencode/strray/routing-mappings.json | 19 + src/inference/inference-cycle.ts | 68 ++++ .../governance/governance-client.ts | 335 +++++++++++++++ src/integrations/governance/index.ts | 384 ++++++++++++++++++ src/integrations/governance/types.ts | 235 +++++++++++ 6 files changed, 1051 insertions(+) create mode 100644 src/integrations/governance/governance-client.ts create mode 100644 src/integrations/governance/index.ts create mode 100644 src/integrations/governance/types.ts diff --git a/.opencode/strray/integrations.json b/.opencode/strray/integrations.json index a28325cff..4f479a812 100644 --- a/.opencode/strray/integrations.json +++ b/.opencode/strray/integrations.json @@ -18,6 +18,16 @@ "type": "framework-adapter", "version": "1.22.53", "config": {} + }, + "inference-governance": { + "enabled": false, + "type": "external-service", + "version": "1.22.53", + "config": { + "endpoint_url": "https://mcp-production-80e2.up.railway.app/governance", + "request_timeout_ms": 10000, + "min_confidence_threshold": 0.5 + } } } } diff --git a/.opencode/strray/routing-mappings.json b/.opencode/strray/routing-mappings.json index 0f74f84c8..814b75ee1 100644 --- a/.opencode/strray/routing-mappings.json +++ b/.opencode/strray/routing-mappings.json @@ -535,5 +535,24 @@ "skill": "api-design", "agent": "backend-engineer", "confidence": 0.92 + }, + { + "keywords": [ + "governance", + "vote", + "proposal", + "decision", + "chrono", + "warp", + "dynamo", + "isotope", + "vortex", + "resonance", + "external-mcp", + "inference-check" + ], + "skill": "governance", + "agent": "architect", + "confidence": 0.9 } ] diff --git a/src/inference/inference-cycle.ts b/src/inference/inference-cycle.ts index 349b97687..3733ba8aa 100644 --- a/src/inference/inference-cycle.ts +++ b/src/inference/inference-cycle.ts @@ -6,6 +6,7 @@ import { DeployVerifier, DeployVerificationResult } from "./deploy-verifier.js"; import { VotingCoordinator } from "../delegation/voting-coordinator.js"; import { StringRayStateManager } from "../state/state-manager.js"; import { frameworkLogger } from "../core/framework-logger.js"; +import { getGovernanceIntegration, type GovernanceVoteResult } from "../integrations/governance/index.js"; export interface InferenceProposal { id: string; @@ -577,6 +578,16 @@ Respond with EXACTLY one of: } private async governProposals(proposals: InferenceProposal[]): Promise { + // Check if external governance is enabled and available + const governanceIntegration = getGovernanceIntegration(); + if (governanceIntegration?.isAvailable()) { + frameworkLogger.log("inference-cycle", "using-external-governance", "info", { + proposalCount: proposals.length, + }); + return this.governProposalsExternal(proposals); + } + + // Fall back to internal voting coordinator const coordinator = this.getCoordinator(); const sessionId = `inference-governance-${Date.now()}`; const results: InferenceCycleResult["votes"] = []; @@ -677,6 +688,63 @@ Respond with EXACTLY one of: // Removed: buildOrchestratorGovernancePrompt (replaced by inline TODO prompt in governProposals) + /** + * Govern proposals using external chrono-warp-drive Dynamo endpoint + */ + private async governProposalsExternal( + proposals: InferenceProposal[], + ): Promise { + const governanceIntegration = getGovernanceIntegration(); + if (!governanceIntegration) { + throw new Error("Governance integration not available"); + } + + // Build agent reviews from proposal evidence + const agentReviews = proposals.flatMap((p) => + p.evidence.slice(0, 2).map((e) => `[${p.type}] ${e}`), + ); + + try { + const batchResult = await governanceIntegration.checkProposals( + proposals, + agentReviews, + [], // historicalIds - could be loaded from previous cycles + ); + + const votes: InferenceCycleResult["votes"] = batchResult.results.map( + (result: GovernanceVoteResult) => ({ + proposalId: result.governanceResponse.proposalId, + decision: result.vote.toLowerCase() === "yes" ? "approve" : "reject", + confidence: result.governanceResponse.confidence, + details: [ + `Governance: ${result.governanceResponse.recommendation}`, + `Isotope: ${result.governanceResponse.governanceIsotopeId}`, + ...result.governanceResponse.reasons.slice(0, 2), + ], + }), + ); + + frameworkLogger.log("inference-cycle", "external-governance-complete", "info", { + proposalCount: proposals.length, + passedCount: batchResult.results.filter((r) => r.passed).length, + }); + + return votes; + } catch (error) { + frameworkLogger.log( + "inference-cycle", + "external-governance-failed", + "error", + { + error: error instanceof Error ? error.message : String(error), + }, + ); + + // Fallback to heuristic votes + return proposals.map((p) => this.heuristicFallbackVote(p)); + } + } + private async invokeAgentInternal(agentName: string, prompt: string): Promise { frameworkLogger.log("inference-cycle", "invoke-agent-internal", "info", { agentName, diff --git a/src/integrations/governance/governance-client.ts b/src/integrations/governance/governance-client.ts new file mode 100644 index 000000000..da6c280bb --- /dev/null +++ b/src/integrations/governance/governance-client.ts @@ -0,0 +1,335 @@ +/** + * Governance HTTP Client + * + * Client for calling the chrono-warp-drive Dynamo governance endpoint. + * Handles HTTP requests, retries, and response validation. + * + * @version 1.0.0 + * @since 2026-05-11 + */ + +import type { + GovernanceCheckRequest, + GovernanceCheckResponse, + GovernanceClientConfig, + GovernanceClientStats, +} from './types.js'; +import { + GovernanceError, + GovernanceErrorCode, + GovernanceTimeoutError, + GovernanceNetworkError, +} from './types.js'; +import { frameworkLogger } from '../../core/framework-logger.js'; + +/** + * HTTP client for governance endpoint + */ +export class GovernanceClient { + private config: GovernanceClientConfig; + private stats: GovernanceClientStats; + + constructor(config: Partial = {}) { + this.config = { + baseUrl: 'https://mcp-production-80e2.up.railway.app', + timeoutMs: 10000, + retryAttempts: 3, + retryDelayMs: 1000, + ...config, + }; + this.stats = { + requestsTotal: 0, + requestsSucceeded: 0, + requestsFailed: 0, + averageResponseTimeMs: 0, + errors: 0, + }; + } + + /** + * Check a single proposal with the governance endpoint + */ + async checkProposal( + request: GovernanceCheckRequest, + ): Promise { + const startTime = Date.now(); + this.stats.requestsTotal++; + + const url = `${this.config.baseUrl}/governance`; + + frameworkLogger.log( + 'governance-client', + 'check-proposal-start', + 'info', + { + proposalId: request.proposalId, + url, + }, + ); + + try { + const response = await this.makeRequest(url, request); + + const duration = Date.now() - startTime; + this.updateResponseTime(duration); + this.stats.requestsSucceeded++; + this.stats.lastRequestAt = Date.now(); + + frameworkLogger.log( + 'governance-client', + 'check-proposal-success', + 'info', + { + proposalId: request.proposalId, + recommendation: response.recommendation, + confidence: response.confidence, + durationMs: duration, + }, + ); + + return response; + } catch (error) { + this.stats.requestsFailed++; + this.stats.errors++; + + frameworkLogger.log( + 'governance-client', + 'check-proposal-error', + 'error', + { + proposalId: request.proposalId, + error: error instanceof Error ? error.message : String(error), + }, + ); + + throw error; + } + } + + /** + * Check multiple proposals in batch + */ + async checkProposals( + requests: GovernanceCheckRequest[], + ): Promise { + frameworkLogger.log( + 'governance-client', + 'batch-check-start', + 'info', + { count: requests.length }, + ); + + const results: GovernanceCheckResponse[] = []; + + // Process sequentially to avoid overwhelming the endpoint + for (const request of requests) { + try { + const result = await this.checkProposal(request); + results.push(result); + } catch (error) { + frameworkLogger.log( + 'governance-client', + 'batch-check-item-error', + 'warning', + { + proposalId: request.proposalId, + error: error instanceof Error ? error.message : String(error), + }, + ); + // Continue with other proposals even if one fails + } + } + + frameworkLogger.log( + 'governance-client', + 'batch-check-complete', + 'info', + { + requested: requests.length, + succeeded: results.length, + failed: requests.length - results.length, + }, + ); + + return results; + } + + /** + * Make HTTP request with retries + */ + private async makeRequest( + url: string, + body: GovernanceCheckRequest, + ): Promise { + let lastError: Error | undefined; + + for (let attempt = 0; attempt < (this.config.retryAttempts || 1); attempt++) { + try { + return await this.doRequest(url, body); + } catch (error) { + lastError = error instanceof Error ? error : new Error(String(error)); + + // Don't retry on client errors (4xx) + if (error instanceof GovernanceError && !error.recoverable) { + throw error; + } + + // Wait before retry + if (attempt < (this.config.retryAttempts || 1) - 1) { + await this.delay(this.config.retryDelayMs || 1000); + } + } + } + + throw lastError || new GovernanceError( + 'All retry attempts failed', + GovernanceErrorCode.REQUEST_FAILED, + false, + ); + } + + /** + * Perform single HTTP request + */ + private async doRequest( + url: string, + body: GovernanceCheckRequest, + ): Promise { + const controller = new AbortController(); + const timeoutId = setTimeout(() => { + controller.abort(); + }, this.config.timeoutMs); + + try { + const response = await fetch(url, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'Accept': 'application/json', + }, + body: JSON.stringify(body), + signal: controller.signal, + }); + + clearTimeout(timeoutId); + + if (!response.ok) { + throw new GovernanceError( + `HTTP ${response.status}: ${response.statusText}`, + GovernanceErrorCode.REQUEST_FAILED, + response.status >= 500, // Retry on server errors + { status: response.status, statusText: response.statusText }, + ); + } + + const data = await response.json() as GovernanceCheckResponse; + + // Validate response structure + if (!this.isValidResponse(data)) { + throw new GovernanceError( + 'Invalid governance response structure', + GovernanceErrorCode.INVALID_RESPONSE, + false, + { response: data }, + ); + } + + return data; + } catch (error) { + clearTimeout(timeoutId); + + if (error instanceof GovernanceError) { + throw error; + } + + // Handle fetch-specific errors + if (error instanceof Error) { + if (error.name === 'AbortError') { + throw new GovernanceTimeoutError(this.config.timeoutMs); + } + throw new GovernanceNetworkError(url, error); + } + + throw new GovernanceError( + String(error), + GovernanceErrorCode.REQUEST_FAILED, + true, + ); + } + } + + /** + * Validate governance response structure + */ + private isValidResponse(response: unknown): boolean { + if (typeof response !== 'object' || response === null) return false; + const r = response as Record; + + return ( + typeof r.success === 'boolean' && + typeof r.proposalId === 'string' && + typeof r.governanceIsotopeId === 'string' && + typeof r.resonanceScore === 'number' && + typeof r.isotopicRatio === 'number' && + typeof r.vortexVolume === 'number' && + typeof r.historicalCoherence === 'number' && + typeof r.recommendation === 'string' && + ['PASS', 'NEEDS_REVISION', 'REJECT'].includes(r.recommendation) && + typeof r.confidence === 'number' && + typeof r.voteWeight === 'number' && + Array.isArray(r.reasons) && + r.reasons.every((r: unknown) => typeof r === 'string') + ); + } + + /** + * Update average response time + */ + private updateResponseTime(durationMs: number): void { + const total = this.stats.requestsSucceeded; + this.stats.averageResponseTimeMs = + (this.stats.averageResponseTimeMs * (total - 1) + durationMs) / total; + } + + /** + * Delay utility + */ + private delay(ms: number): Promise { + return new Promise(resolve => setTimeout(resolve, ms)); + } + + /** + * Get client statistics + */ + getStats(): GovernanceClientStats { + return { ...this.stats }; + } + + /** + * Update client configuration + */ + updateConfig(config: Partial): void { + this.config = { ...this.config, ...config }; + } + + /** + * Reset statistics + */ + resetStats(): void { + this.stats = { + requestsTotal: 0, + requestsSucceeded: 0, + requestsFailed: 0, + averageResponseTimeMs: 0, + errors: 0, + }; + } +} + +/** + * Create governance client with config from features.json + */ +export function createGovernanceClientFromConfig(): GovernanceClient { + // Config will be loaded by the integration, this is a factory + return new GovernanceClient(); +} diff --git a/src/integrations/governance/index.ts b/src/integrations/governance/index.ts new file mode 100644 index 000000000..9a37e5e97 --- /dev/null +++ b/src/integrations/governance/index.ts @@ -0,0 +1,384 @@ +/** + * Inference Governance Integration + * + * Integrates chrono-warp-drive Dynamo governance endpoint for external + * inference checking in governance decision-making. + * + * @version 1.0.0 + * @since 2026-05-11 + */ + +import { BaseIntegration } from '../base/index.js'; +import type { + GovernanceIntegrationConfig, + GovernanceCheckRequest, + GovernanceCheckResponse, + GovernanceVoteResult, + BatchGovernanceCheck, +} from './types.js'; +import { DEFAULT_GOVERNANCE_CONFIG } from './types.js'; +import { GovernanceClient } from './governance-client.js'; +import type { InferenceProposal } from '../../inference/inference-cycle.js'; +import { frameworkLogger } from '../../core/framework-logger.js'; +import * as fs from 'fs'; +import * as path from 'path'; + +/** + * Main Governance Integration class + * + * Provides external governance checking for inference proposals via the + * chrono-warp-drive Dynamo /governance endpoint. + */ +export class InferenceGovernanceIntegration extends BaseIntegration { + private client: GovernanceClient | null = null; + private configData: GovernanceIntegrationConfig = DEFAULT_GOVERNANCE_CONFIG; + + constructor() { + super('inference-governance', '1.0.0', { + enabled: false, + debug: false, + logLevel: 'info' + }); + } + + /** + * Perform integration-specific initialization + */ + protected async performInitialization(): Promise { + await this.loadConfig(); + + if (!this.configData.enabled) { + await this.log('info', 'Governance integration disabled in configuration'); + return; + } + + await this.log('info', 'Initializing governance client...'); + + this.client = new GovernanceClient({ + baseUrl: this.configData.endpointUrl.replace('/governance', ''), + timeoutMs: this.configData.requestTimeoutMs, + }); + + await this.log('success', 'Governance client initialized', { + endpoint: this.configData.endpointUrl, + timeout: this.configData.requestTimeoutMs, + }); + } + + /** + * Perform integration-specific shutdown + */ + protected async performShutdown(): Promise { + await this.log('info', 'Shutting down governance integration'); + this.client = null; + } + + /** + * Perform health check + */ + protected async performHealthCheck(): Promise<{ + healthy: boolean; + message: string; + details?: Record + }> { + if (!this.client) { + return { + healthy: false, + message: 'Governance client not initialized', + }; + } + + const stats = this.client.getStats(); + + // Healthy if we have no recent errors + const isHealthy = stats.errors === 0 || stats.requestsSucceeded > stats.errors; + + return { + healthy: isHealthy, + message: isHealthy + ? 'Governance client healthy' + : 'Governance client has errors', + details: { + requestsTotal: stats.requestsTotal, + requestsSucceeded: stats.requestsSucceeded, + requestsFailed: stats.requestsFailed, + errors: stats.errors, + averageResponseTimeMs: stats.averageResponseTimeMs, + }, + }; + } + + /** + * Check if governance is enabled and available + */ + isAvailable(): boolean { + return this.configData.enabled && this.client !== null && this.status === 'initialized'; + } + + /** + * Check a single inference proposal with external governance + */ + async checkProposal( + proposal: InferenceProposal, + agentReviews: string[] = [], + historicalIds: string[] = [], + ): Promise { + if (!this.isAvailable()) { + throw new Error('Governance integration not available'); + } + + const request: GovernanceCheckRequest = { + proposalId: proposal.id, + proposalText: `${proposal.title}\n\n${proposal.description}`, + agentReviews, + historicalSignalIds: historicalIds, + }; + + const response = await this.client!.checkProposal(request); + return this.applyDecisionLogic(response); + } + + /** + * Check multiple proposals with external governance + */ + async checkProposals( + proposals: InferenceProposal[], + agentReviews: string[] = [], + historicalIds: string[] = [], + ): Promise { + if (!this.isAvailable()) { + throw new Error('Governance integration not available'); + } + + const batchId = `governance-batch-${Date.now()}`; + const timestamp = Date.now(); + + frameworkLogger.log( + 'inference-governance', + 'batch-check-start', + 'info', + { batchId, proposalCount: proposals.length }, + ); + + const results: GovernanceVoteResult[] = []; + + for (const proposal of proposals) { + try { + const result = await this.checkProposal(proposal, agentReviews, historicalIds); + results.push(result); + } catch (error) { + frameworkLogger.log( + 'inference-governance', + 'check-proposal-error', + 'warning', + { + proposalId: proposal.id, + error: error instanceof Error ? error.message : String(error), + }, + ); + + // Fallback to local decision + results.push(this.createFallbackVote(proposal)); + } + } + + frameworkLogger.log( + 'inference-governance', + 'batch-check-complete', + 'info', + { + batchId, + proposalCount: proposals.length, + passedCount: results.filter(r => r.passed).length, + }, + ); + + return { + proposals, + results, + batchId, + timestamp, + }; + } + + /** + * Apply decision logic based on governance response + */ + private applyDecisionLogic(response: GovernanceCheckResponse): GovernanceVoteResult { + const { decisionLogic } = this.configData; + + let vote: 'YES' | 'NO' | 'ABSTAIN'; + let passed: boolean; + + switch (response.recommendation) { + case 'PASS': + if (response.confidence >= decisionLogic.passConfidenceMin) { + vote = 'YES'; + passed = true; + } else { + vote = 'ABSTAIN'; + passed = false; + } + break; + + case 'REJECT': + vote = 'NO'; + passed = false; + break; + + case 'NEEDS_REVISION': + default: + vote = 'ABSTAIN'; + passed = false; + break; + } + + // Calculate weighted vote + const weight = response.voteWeight * decisionLogic.voteWeightMultiplier; + + // Build reason string + const reason = [ + `Governance ${response.recommendation} (confidence: ${(response.confidence * 100).toFixed(1)}%)`, + ...response.reasons.slice(0, 2), // Include up to 2 reasons + ].join('; '); + + return { + vote, + weight, + reason, + governanceResponse: response, + passed, + }; + } + + /** + * Create fallback vote when governance is unavailable + */ + private createFallbackVote(proposal: InferenceProposal): GovernanceVoteResult { + return { + vote: proposal.confidence >= 0.7 ? 'YES' : 'ABSTAIN', + weight: 1.0, + reason: 'Fallback: governance endpoint unavailable', + governanceResponse: { + success: false, + proposalId: proposal.id, + governanceIsotopeId: 'fallback', + resonanceScore: 0, + isotopicRatio: 0, + vortexVolume: 0, + historicalCoherence: 0, + recommendation: 'NEEDS_REVISION', + confidence: proposal.confidence, + voteWeight: 1.0, + reasons: ['Governance endpoint unavailable, using local confidence'], + }, + passed: proposal.confidence >= 0.7, + }; + } + + /** + * Load configuration from features.json + */ + private async loadConfig(): Promise { + try { + const configPath = path.join(process.cwd(), '.opencode', 'strray', 'features.json'); + + if (!fs.existsSync(configPath)) { + await this.log('warning', 'features.json not found, using defaults'); + return; + } + + const content = fs.readFileSync(configPath, 'utf-8'); + const features = JSON.parse(content); + + if (features.inference_governance) { + this.configData = { + ...DEFAULT_GOVERNANCE_CONFIG, + enabled: features.inference_governance.enabled ?? false, + endpointUrl: features.inference_governance.endpoint_url ?? DEFAULT_GOVERNANCE_CONFIG.endpointUrl, + requestTimeoutMs: features.inference_governance.request_timeout_ms ?? DEFAULT_GOVERNANCE_CONFIG.requestTimeoutMs, + minConfidenceThreshold: features.inference_governance.min_confidence_threshold ?? DEFAULT_GOVERNANCE_CONFIG.minConfidenceThreshold, + decisionLogic: { + passConfidenceMin: features.inference_governance.decision_logic?.pass_confidence_min ?? DEFAULT_GOVERNANCE_CONFIG.decisionLogic.passConfidenceMin, + revisionConfidenceMax: features.inference_governance.decision_logic?.revision_confidence_max ?? DEFAULT_GOVERNANCE_CONFIG.decisionLogic.revisionConfidenceMax, + voteWeightMultiplier: features.inference_governance.decision_logic?.vote_weight_multiplier ?? DEFAULT_GOVERNANCE_CONFIG.decisionLogic.voteWeightMultiplier, + }, + }; + } + + await this.log('info', 'Configuration loaded', { + enabled: this.configData.enabled, + endpoint: this.configData.endpointUrl, + }); + } catch (error) { + await this.log('error', 'Failed to load configuration', { + error: error instanceof Error ? error.message : String(error), + }); + // Use defaults on error + this.configData = DEFAULT_GOVERNANCE_CONFIG; + } + } + + /** + * Get governance-specific configuration + */ + getGovernanceConfig(): GovernanceIntegrationConfig { + return { ...this.configData }; + } + + /** + * Get client statistics + */ + getClientStats() { + return this.client?.getStats() ?? { + requestsTotal: 0, + requestsSucceeded: 0, + requestsFailed: 0, + averageResponseTimeMs: 0, + errors: 0, + }; + } +} + +// ============================================================================ +// Global Integration Instance +// ============================================================================ + +let globalIntegration: InferenceGovernanceIntegration | null = null; + +/** + * Initialize the global governance integration + */ +export async function initializeGovernanceIntegration(): Promise { + if (globalIntegration) { + return globalIntegration; + } + + globalIntegration = new InferenceGovernanceIntegration(); + await globalIntegration.initialize(); + return globalIntegration; +} + +/** + * Get the global governance integration + */ +export function getGovernanceIntegration(): InferenceGovernanceIntegration | null { + return globalIntegration; +} + +/** + * Shutdown the global governance integration + */ +export async function shutdownGovernanceIntegration(): Promise { + if (globalIntegration) { + await globalIntegration.shutdown(); + globalIntegration = null; + } +} + +// ============================================================================ +// Exports +// ============================================================================ + +export * from './types.js'; +export * from './governance-client.js'; diff --git a/src/integrations/governance/types.ts b/src/integrations/governance/types.ts new file mode 100644 index 000000000..2626039dd --- /dev/null +++ b/src/integrations/governance/types.ts @@ -0,0 +1,235 @@ +/** + * Inference Governance Integration Types + * + * Type definitions for the chrono-warp-drive Dynamo governance endpoint integration. + * Provides external governance checking for inference-driven proposals. + * + * @version 1.0.0 + * @since 2026-05-11 + */ + +import type { InferenceProposal } from '../../inference/inference-cycle.js'; + +// ============================================================================ +// Governance Request/Response Types (from chrono-warp-drive API) +// ============================================================================ + +/** + * Governance check request payload + * Matches the Dynamo /governance endpoint format + */ +export interface GovernanceCheckRequest { + proposalId: string; + proposalText: string; + codeDiff?: string; + agentReviews: string[]; + historicalSignalIds?: string[]; +} + +/** + * Governance check response from Dynamo endpoint + */ +export interface GovernanceCheckResponse { + success: boolean; + proposalId: string; + governanceIsotopeId: string; + resonanceScore: number; + isotopicRatio: number; + vortexVolume: number; + historicalCoherence: number; + recommendation: 'PASS' | 'NEEDS_REVISION' | 'REJECT'; + confidence: number; + voteWeight: number; + reasons: string[]; +} + +// ============================================================================ +// Integration Configuration Types +// ============================================================================ + +/** + * Governance integration configuration + */ +export interface GovernanceIntegrationConfig { + /** Whether the integration is enabled */ + enabled: boolean; + /** Governance endpoint URL */ + endpointUrl: string; + /** Request timeout in milliseconds */ + requestTimeoutMs: number; + /** Minimum confidence threshold for proposals */ + minConfidenceThreshold: number; + /** Decision logic configuration */ + decisionLogic: { + /** Minimum confidence for PASS recommendation */ + passConfidenceMin: number; + /** Maximum confidence for NEEDS_REVISION (below this is PASS, above is REJECT) */ + revisionConfidenceMax: number; + /** Multiplier for vote weight from governance */ + voteWeightMultiplier: number; + }; +} + +/** + * Default governance configuration + */ +export const DEFAULT_GOVERNANCE_CONFIG: GovernanceIntegrationConfig = { + enabled: false, + endpointUrl: 'https://mcp-production-80e2.up.railway.app/governance', + requestTimeoutMs: 10000, + minConfidenceThreshold: 0.5, + decisionLogic: { + passConfidenceMin: 0.9, + revisionConfidenceMax: 0.89, + voteWeightMultiplier: 1.0, + }, +}; + +// ============================================================================ +// Governance Vote Types +// ============================================================================ + +/** + * Governance vote result after applying decision logic + */ +export interface GovernanceVoteResult { + /** Final vote decision */ + vote: 'YES' | 'NO' | 'ABSTAIN'; + /** Vote weight (affected by governance confidence) */ + weight: number; + /** Human-readable reason for the vote */ + reason: string; + /** Raw governance response for audit trail */ + governanceResponse: GovernanceCheckResponse; + /** Whether the proposal passed governance */ + passed: boolean; +} + +/** + * Batch governance check for multiple proposals + */ +export interface BatchGovernanceCheck { + proposals: InferenceProposal[]; + results: GovernanceVoteResult[]; + batchId: string; + timestamp: number; +} + +// ============================================================================ +// Client Types +// ============================================================================ + +/** + * HTTP client configuration + */ +export interface GovernanceClientConfig { + baseUrl: string; + timeoutMs: number; + retryAttempts?: number; + retryDelayMs?: number; +} + +/** + * Client statistics + */ +export interface GovernanceClientStats { + requestsTotal: number; + requestsSucceeded: number; + requestsFailed: number; + averageResponseTimeMs: number; + lastRequestAt?: number; + errors: number; +} + +// ============================================================================ +// Error Types +// ============================================================================ + +/** + * Governance error codes + */ +export enum GovernanceErrorCode { + REQUEST_FAILED = 'REQUEST_FAILED', + TIMEOUT = 'TIMEOUT', + INVALID_RESPONSE = 'INVALID_RESPONSE', + NETWORK_ERROR = 'NETWORK_ERROR', + CONFIG_INVALID = 'CONFIG_INVALID', + NOT_INITIALIZED = 'NOT_INITIALIZED', +} + +/** + * Base governance error + */ +export class GovernanceError extends Error { + constructor( + message: string, + public code: GovernanceErrorCode, + public recoverable: boolean, + public context?: Record, + ) { + super(message); + this.name = 'GovernanceError'; + Error.captureStackTrace(this, this.constructor); + } +} + +/** + * Request timeout error + */ +export class GovernanceTimeoutError extends GovernanceError { + constructor(timeoutMs: number) { + super( + `Governance request timed out after ${timeoutMs}ms`, + GovernanceErrorCode.TIMEOUT, + true, + { timeoutMs }, + ); + this.name = 'GovernanceTimeoutError'; + } +} + +/** + * Network error + */ +export class GovernanceNetworkError extends GovernanceError { + constructor(url: string, originalError: Error) { + super( + `Network error calling governance endpoint: ${originalError.message}`, + GovernanceErrorCode.NETWORK_ERROR, + true, + { url, originalError: originalError.message }, + ); + this.name = 'GovernanceNetworkError'; + } +} + +// ============================================================================ +// Utility Types +// ============================================================================ + +/** + * Type guard for valid governance response + */ +export function isValidGovernanceResponse(response: unknown): response is GovernanceCheckResponse { + if (typeof response !== 'object' || response === null) return false; + const r = response as Record; + return ( + typeof r.success === 'boolean' && + typeof r.proposalId === 'string' && + typeof r.governanceIsotopeId === 'string' && + typeof r.recommendation === 'string' && + ['PASS', 'NEEDS_REVISION', 'REJECT'].includes(r.recommendation) && + typeof r.confidence === 'number' && + typeof r.voteWeight === 'number' + ); +} + +/** + * Type guard for governance error + */ +export function isGovernanceError(error: unknown): error is GovernanceError { + return ( + error instanceof GovernanceError || + (error instanceof Error && error.name === 'GovernanceError') + ); +} From 170472e475d5485d2a4055c9903408a0bdfca4cf Mon Sep 17 00:00:00 2001 From: htafolla Date: Mon, 11 May 2026 09:12:47 -0500 Subject: [PATCH 3/3] v1.22.57 --- .opencode/.strrayrc.json | 2 +- .opencode/AGENTS-consumer.md | 2 +- .opencode/activity-report.json | 70 ++------- .opencode/codex.codex | 2 +- .opencode/command/dependency-audit.md | 6 +- .../commands/pre-commit-introspection.sh | 4 +- .opencode/core/boot-orchestrator.js | 2 +- .opencode/core/features-config.js | 2 +- .opencode/enforcer-config.json | 4 +- .opencode/logs/.strray-init.lock | 2 +- .opencode/package.json | 2 +- .opencode/skills/registry.json | 2 +- .opencode/state | 11 -- .opencode/strray/codex.json | 2 +- .opencode/strray/config.json | 2 +- .opencode/strray/features.json | 2 +- .opencode/strray/integrations.json | 8 +- .strray/codex.json | 2 +- .strray/features.json | 2 +- .strray/inference/prompts/01-researcher.md | 16 ++ .strray/state/state.json | 17 --- AGENTS-consumer.md | 2 +- AGENTS-full.md | 20 +-- AGENTS.md | 2 +- CHANGELOG.md | 138 ++++++++++++++++++ .../CHANGELOG.md | 11 ++ .../CHANGELOG.md | 11 ++ command/dependency-audit.md | 6 +- commands/pre-commit-introspection.sh | 4 +- docs/BRAND.md | 2 +- docs/HOOK_PROTOCOL.md | 4 +- docs/PLUGIN_ARCHITECTURE.md | 4 +- docs/README.md | 10 +- docs/SAGA-v1.15.40-to-v1.18.2.md | 2 +- docs/agents/ADDING_AGENTS.md | 4 +- docs/agents/document-writer.md | 2 +- docs/agents/frontend-ui-ux-engineer.md | 2 +- docs/agents/librarian.md | 2 +- docs/agents/multimodal-looker.md | 2 +- docs/architecture/ARCHITECTURE.md | 2 +- docs/architecture/CONCEPTUAL_ARCHITECTURE.md | 4 +- docs/architecture/ENTERPRISE_ARCHITECTURE.md | 4 +- docs/architecture/GROK_GUIDE.md | 6 +- docs/architecture/MIGRATION_GUIDE.md | 2 +- docs/architecture/ORCHESTRATION_ROADMAP.md | 8 +- docs/architecture/PIPELINE_INVENTORY.md | 2 +- .../architecture-deep-dive-2026-03-12.md | 2 +- .../phase2-unnecessary-analysis.md | 2 +- docs/archive/INSTALLATION.md | 2 +- .../active-archived/commands/COMMANDS.md | 2 +- .../legacy/ANTIGRAVITY_INTEGRATION.md | 2 +- .../superseded/legacy/DOCS_INDEX.md | 4 +- .../DOCUMENTATION_UPDATE_SUMMARY_v1.9.0.md | 6 +- .../IMPLEMENTATION_INFERENCE_PIPELINE.md | 2 +- .../superseded/legacy/INTEGRATION_LESSONS.md | 2 +- ...egression-analysis-implementation-guide.md | 2 +- .../user-guide/CONFIGURATION.md | 4 +- .../user-guide/README_STRRAY_INTEGRATION.md | 4 +- docs/archive/central-analytics-quickstart.md | 6 +- docs/archive/central-analytics-store.md | 2 +- docs/archive/full-setup.md | 2 +- docs/archive/historical/CHANGELOG-v1.2.0.md | 4 +- .../AGENTS_COMPLEXITY_ANALYSIS_REPORT.md | 2 +- .../historical/reports/REFACTORING_LOG.md | 4 +- .../reports/SESSION_FIXES_REPORT.md | 2 +- .../SIMULATION_TEST_TRIAGE_METHODOLOGY.md | 2 +- .../reports/SIMULATION_TEST_TRIAGE_TOC.md | 4 +- docs/archive/historical/strray_v2_log.md | 32 ++-- .../archive/legacy/PLUGIN_DEPLOYMENT_GUIDE.md | 4 +- .../legacy/README_STRRAY_INTEGRATION.md | 4 +- docs/archive/legacy/STRAY_EXTENSION.md | 4 +- .../archive/legacy/strray-framework/README.md | 4 +- .../analytics/ROUTING_ANALYTICS.md | 2 +- .../non-docusaurus/api/API_REFERENCE.md | 4 +- .../api/ENTERPRISE_API_REFERENCE.md | 6 +- .../development/ENTERPRISE_DEVELOPER_GUIDE.md | 4 +- .../ACTIVITY_REPORT_PIPELINE_INTEGRATION.md | 2 +- .../performance-optimization-summary.md | 2 +- docs/archive/openclaw/README.md | 2 +- docs/archive/openclaw/researcher-summary.md | 2 +- docs/archive/phase2-analysis-decision.md | 2 +- docs/archive/superseded/AGENTS-consumer.md | 2 +- .../architecture/ENTERPRISE_ARCHITECTURE.md | 2 +- .../superseded/internal/commands/COMMANDS.md | 2 +- .../contributing.md/FRAMEWORK_REFACTORING.md | 4 +- docs/archive/v1.7.8.md | 2 +- .../KNOWLEDGE_SKILLS_EXPANSION_PLAN.md | 2 +- docs/operations/MCP_INTEGRATION_ANALYSIS.md | 2 +- .../deployment/ENTERPRISE_DEPLOYMENT_GUIDE.md | 4 +- .../migration/FRAMEWORK_MIGRATION.md | 4 +- docs/reflections/DEEP_SESSION_REFLECTION.md | 2 +- .../DEEP_SYSTEM_REFLECTION_v1.15.41.md | 2 +- ...OCUMENTATION-UPDATE-COMPLETE-2026-03-13.md | 2 +- .../reflections/PIPELINE_TESTING_DISCOVERY.md | 2 +- .../automated-version-compliance-system.md | 2 +- ...mous-recovery-implementation-reflection.md | 4 +- ...n-version-victory-minimalism-reflection.md | 2 +- ...construction-module-monolith-reflection.md | 2 +- ...ild-mjs-copy-publish-journey-2026-03-30.md | 4 +- ...outing-architecture-research-2026-03-24.md | 2 +- ...outing-architecture-strategy-2026-03-24.md | 14 +- .../stringray-evolution-saga-2026-03-25.md | 2 +- ...ployment-crisis-journey-deep-reflection.md | 2 +- .../deployment-crisis-v12x-reflection.md | 2 +- docs/reflections/index.md | 6 +- .../mcp-initialize-protocol-deep-dive.md | 2 +- .../mcp-initialize-protocol-fix.md | 2 +- ...boration-test-rehabilitation-reflection.md | 2 +- .../personal-reflection-tui-fix-2026-02-26.md | 2 +- docs/reflections/reflection.md | 2 +- .../stringray-deployment-reflection.md | 2 +- ...ngray-self-evolution-journey-reflection.md | 2 +- .../stringray-self-evolution-reflection.md | 4 +- ...gent-dropdown-fix-reflection-2026-02-26.md | 2 +- docs/system-design.md | 2 +- docs/testing/PIPELINE_TESTING_METHODOLOGY.md | 2 +- enforcer-config.json | 4 +- .../mcp-image-recognition/package.json | 2 +- .../results.json | 2 +- package-lock.json | 4 +- package.json | 2 +- .../advanced-profiling-integration.sh | 2 +- .../_archive/superseded/test-deployment.sh | 8 +- scripts/node/universal-version-manager.js | 8 +- .../integration/codex-enforcement.test.ts | 6 +- src/__tests__/integration/server.test.ts | 2 +- .../unit/auto-reflection-generation.test.ts | 2 +- src/__tests__/unit/boot-orchestrator.test.ts | 4 +- src/__tests__/unit/codex-injector.test.ts | 4 +- .../unit/spawn-governance-processor.test.ts | 107 ++++++++++++++ src/__tests__/utils/test-helpers.ts | 6 +- src/analytics/routing-refiner.ts | 2 +- src/core/boot-orchestrator.ts | 2 +- src/core/features-config.ts | 2 +- src/delegation/index.ts | 2 +- .../loaders/__tests__/loaders.test.ts | 4 +- src/integrations/plugins/plugin.test.ts | 6 +- src/mcps/architect-tools.server.ts | 2 +- src/mcps/auto-format.server.ts | 2 +- src/mcps/boot-orchestrator.server.ts | 2 +- src/mcps/enforcer-tools.server.ts | 2 +- src/mcps/estimation.server.ts | 2 +- src/mcps/framework-compliance-audit.server.ts | 2 +- src/mcps/framework-help.server.ts | 2 +- .../knowledge-skills/api-design.server.ts | 2 +- .../architecture-patterns.server.ts | 2 +- .../bug-triage-specialist.server.ts | 2 +- .../knowledge-skills/code-analyzer.server.ts | 2 +- .../knowledge-skills/code-review.server.ts | 2 +- .../content-creator.server.ts | 2 +- .../database-design.server.ts | 2 +- .../devops-deployment.server.ts | 2 +- .../knowledge-skills/git-workflow.server.ts | 2 +- .../growth-strategist.server.ts | 2 +- .../knowledge-skills/log-monitor.server.ts | 2 +- .../mobile-development.server.ts | 2 +- .../multimodal-looker.server.ts | 2 +- .../performance-optimization.server.ts | 2 +- .../project-analysis.server.ts | 2 +- .../refactoring-strategies.server.ts | 2 +- .../knowledge-skills/security-audit.server.ts | 2 +- .../knowledge-skills/seo-consultant.server.ts | 2 +- .../session-management.server.ts | 2 +- .../skill-invocation.server.ts | 2 +- .../knowledge-skills/strategist.server.ts | 2 +- .../knowledge-skills/tech-writer.server.ts | 4 +- .../testing-best-practices.server.ts | 2 +- .../testing-strategy.server.ts | 2 +- .../knowledge-skills/ui-ux-design.server.ts | 2 +- src/mcps/lint.server.ts | 2 +- src/mcps/model-health-check.server.ts | 2 +- src/mcps/performance-analysis.server.ts | 2 +- src/mcps/processor-pipeline.server.ts | 2 +- src/mcps/registry.json | 2 +- src/mcps/researcher.server.ts | 2 +- src/mcps/security-scan.server.ts | 2 +- src/mcps/state-manager.server.ts | 2 +- src/orchestrator/agent-spawn-governor.ts | 2 +- .../enhanced-multi-agent-orchestrator.ts | 37 ++++- src/orchestrator/universal-registry-bridge.ts | 2 +- .../spawn-governance-processor.ts | 19 ++- src/security/index.ts | 2 +- src/skills/registry.json | 2 +- strray/codex.json | 2 +- strray/config.json | 2 +- strray/features.json | 2 +- strray/integrations.json | 6 +- test-skill.json | 2 +- tests/config/package.json | 2 +- tweets/tweets-2026-03-10T16-59-41-258Z.json | 2 +- tweets/tweets-2026-03-10T17-00-00-997Z.json | 2 +- tweets/tweets-2026-03-10T17-03-37-490Z.json | 2 +- tweets/tweets-2026-03-10T17-05-21-229Z.json | 2 +- tweets/tweets-2026-03-10T17-07-06-807Z.json | 2 +- tweets/tweets-2026-03-10T17-23-41-774Z.json | 2 +- tweets/tweets-2026-03-10T17-29-59-962Z.json | 2 +- tweets/tweets-2026-03-10T17-30-26-755Z.json | 2 +- tweets/tweets-2026-03-10T17-33-01-728Z.json | 2 +- tweets/tweets-2026-03-10T17-33-52-423Z.json | 2 +- 199 files changed, 637 insertions(+), 378 deletions(-) delete mode 100644 .opencode/state delete mode 100644 .strray/state/state.json create mode 100644 backups/version-manager-backup-2026-05-11T13-57-19-917Z/CHANGELOG.md create mode 100644 backups/version-manager-backup-2026-05-11T14-12-43-837Z/CHANGELOG.md diff --git a/.opencode/.strrayrc.json b/.opencode/.strrayrc.json index b71ee11c3..66e91567d 100644 --- a/.opencode/.strrayrc.json +++ b/.opencode/.strrayrc.json @@ -1,7 +1,7 @@ { "framework": { "name": "0xRay Framework", - "version": "1.22.53", + "version": "1.22.56", "buildMode": "production", "logLevel": "info" }, diff --git a/.opencode/AGENTS-consumer.md b/.opencode/AGENTS-consumer.md index fcf13773c..b521685b9 100644 --- a/.opencode/AGENTS-consumer.md +++ b/.opencode/AGENTS-consumer.md @@ -651,4 +651,4 @@ npx strray-ai --version - [Troubleshooting](https://github.com/htafolla/stringray/blob/master/docs/TROUBLESHOOTING.md) --- -**Version**: 1.22.53 | [GitHub](https://github.com/htafolla/stringray) +**Version**: 1.22.56 | [GitHub](https://github.com/htafolla/stringray) diff --git a/.opencode/activity-report.json b/.opencode/activity-report.json index a9db847f0..f0b3003fc 100644 --- a/.opencode/activity-report.json +++ b/.opencode/activity-report.json @@ -2,85 +2,37 @@ "sessions": [], "activities": [ { - "timestamp": "2026-05-08T18:26:53.389Z", - "id": "act-1778264813389-vqq9ia", + "timestamp": "2026-05-11T13:37:13.280Z", + "id": "act-1778506633280-s88r6g", "category": "session", "level": "info", "action": "session-ended", "message": "Activity logging session ended", - "sessionId": "session-1778264812739-37qska", + "sessionId": "session-1778506630901-78h5pc", "details": { - "duration": 649 + "duration": 2379 } }, { - "timestamp": "2026-05-08T18:30:22.131Z", - "id": "act-1778265022131-ws0fzn", + "timestamp": "2026-05-11T14:00:32.764Z", + "id": "act-1778508032764-yhhqdg", "category": "session", "level": "info", "action": "session-ended", "message": "Activity logging session ended", - "sessionId": "session-1778265021154-zgs764", + "sessionId": "session-1778508025797-a3mbll", "details": { - "duration": 977 - } - }, - { - "timestamp": "2026-05-08T18:31:58.714Z", - "id": "act-1778265118714-caugs0", - "category": "session", - "level": "info", - "action": "session-ended", - "message": "Activity logging session ended", - "sessionId": "session-1778265115084-nc34y6", - "details": { - "duration": 3630 - } - }, - { - "timestamp": "2026-05-08T18:33:36.267Z", - "id": "act-1778265216267-itwbsf", - "category": "session", - "level": "info", - "action": "session-ended", - "message": "Activity logging session ended", - "sessionId": "session-1778265215706-hs5n7q", - "details": { - "duration": 561 - } - }, - { - "timestamp": "2026-05-08T18:54:11.265Z", - "id": "act-1778266451265-5l5wru", - "category": "session", - "level": "info", - "action": "session-ended", - "message": "Activity logging session ended", - "sessionId": "session-1778266450697-txq1or", - "details": { - "duration": 568 - } - }, - { - "timestamp": "2026-05-08T20:07:07.264Z", - "id": "act-1778270827264-nno2sy", - "category": "session", - "level": "info", - "action": "session-ended", - "message": "Activity logging session ended", - "sessionId": "session-1778270826684-5stjuf", - "details": { - "duration": 580 + "duration": 6967 } } ], "stats": { - "total": 6, + "total": 2, "byCategory": { - "session": 6 + "session": 2 }, "byLevel": { - "info": 6 + "info": 2 } } } \ No newline at end of file diff --git a/.opencode/codex.codex b/.opencode/codex.codex index 8021e6dda..9626388ec 100644 --- a/.opencode/codex.codex +++ b/.opencode/codex.codex @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "terms": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60 ], diff --git a/.opencode/command/dependency-audit.md b/.opencode/command/dependency-audit.md index d2b3b79c3..52147aa28 100644 --- a/.opencode/command/dependency-audit.md +++ b/.opencode/command/dependency-audit.md @@ -69,7 +69,7 @@ Comprehensive dependency analysis and security audit for all project dependencie "vulnerabilities": [ { "package": "lodash", - "version": "1.22.53", + "version": "1.22.56", "severity": "high", "cve": "CVE-2021-23337", "description": "Command injection vulnerability" @@ -85,14 +85,14 @@ Security-focused format for CI/CD integration: ```json { - "version": "1.22.53", + "version": "1.22.56", "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json", "runs": [ { "tool": { "driver": { "name": "Dependency Audit", - "version": "1.22.53" + "version": "1.22.56" } }, "results": [...] diff --git a/.opencode/commands/pre-commit-introspection.sh b/.opencode/commands/pre-commit-introspection.sh index d0337a7f3..e1e4e62f0 100755 --- a/.opencode/commands/pre-commit-introspection.sh +++ b/.opencode/commands/pre-commit-introspection.sh @@ -1,9 +1,9 @@ #!/bin/bash -# 0xRay AI v1.22.53 - Pre-commit Introspection +# 0xRay AI v1.22.56 - Pre-commit Introspection # Comprehensive code quality and architecture validation -echo "🔬 0xRay AI v1.22.53 - Pre-commit Introspection" +echo "🔬 0xRay AI v1.22.56 - Pre-commit Introspection" echo "============================================================" # Initialize analysis status diff --git a/.opencode/core/boot-orchestrator.js b/.opencode/core/boot-orchestrator.js index 594b5cfda..354e8d732 100644 --- a/.opencode/core/boot-orchestrator.js +++ b/.opencode/core/boot-orchestrator.js @@ -732,7 +732,7 @@ export class BootOrchestrator { try { // Load 0xRay configuration directly (no Python dependency) const stringRayConfig = { - version: "1.22.53", + version: "1.22.56", codex_enabled: true, codex_version: "v1.7.5", codex_terms: [ diff --git a/.opencode/core/features-config.js b/.opencode/core/features-config.js index 700353cf2..f356f448f 100644 --- a/.opencode/core/features-config.js +++ b/.opencode/core/features-config.js @@ -286,7 +286,7 @@ export class FeaturesConfigLoader { */ getDefaultConfig() { return { - version: "1.22.53", + version: "1.22.56", description: "0xRay Framework - Unified Feature Configuration", token_optimization: { enabled: true, diff --git a/.opencode/enforcer-config.json b/.opencode/enforcer-config.json index 54bf78107..2fd76b4ba 100644 --- a/.opencode/enforcer-config.json +++ b/.opencode/enforcer-config.json @@ -1,6 +1,6 @@ { "framework": "0xRay 1.0.0", - "version": "1.22.53", + "version": "1.22.56", "description": "Codex-compliant framework configuration for Credible UI project", "thresholds": { "bundleSize": { @@ -220,7 +220,7 @@ } }, "codex": { - "version": "1.22.53", + "version": "1.22.56", "terms": [ 1, 2, diff --git a/.opencode/logs/.strray-init.lock b/.opencode/logs/.strray-init.lock index 06b5020d7..464614e47 100644 --- a/.opencode/logs/.strray-init.lock +++ b/.opencode/logs/.strray-init.lock @@ -1 +1 @@ -1778491420122 \ No newline at end of file +1778508701522 \ No newline at end of file diff --git a/.opencode/package.json b/.opencode/package.json index 7b7809828..ed328a172 100644 --- a/.opencode/package.json +++ b/.opencode/package.json @@ -1,6 +1,6 @@ { "name": "@opencode/OpenCode", - "version": "1.22.53", + "version": "1.22.56", "description": "OpenCode framework configuration", "main": "OpenCode.json", "scripts": { diff --git a/.opencode/skills/registry.json b/.opencode/skills/registry.json index 611e8a079..324354fbd 100644 --- a/.opencode/skills/registry.json +++ b/.opencode/skills/registry.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Skills Registry - recommended skill sources for consumers", "sources": [ { diff --git a/.opencode/state b/.opencode/state deleted file mode 100644 index 5cbd13cac..000000000 --- a/.opencode/state +++ /dev/null @@ -1,11 +0,0 @@ -{ - "workflow-test-framework-init-session": { - "initialized": true, - "timestamp": 1778491408093, - "components": [ - "state-manager", - "framework-logger", - "codex-system" - ] - } -} \ No newline at end of file diff --git a/.opencode/strray/codex.json b/.opencode/strray/codex.json index f36c1c914..27d0afd02 100644 --- a/.opencode/strray/codex.json +++ b/.opencode/strray/codex.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "lastUpdated": "2026-03-09", "errorPreventionTarget": 0.996, "terms": { diff --git a/.opencode/strray/config.json b/.opencode/strray/config.json index 18fa13d2c..3d9e6cb5b 100644 --- a/.opencode/strray/config.json +++ b/.opencode/strray/config.json @@ -1,6 +1,6 @@ { "$schema": "./config.schema.json", - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework - Token Management & Performance Configuration", "token_management": { diff --git a/.opencode/strray/features.json b/.opencode/strray/features.json index 1dc52e675..d1b5b92f4 100644 --- a/.opencode/strray/features.json +++ b/.opencode/strray/features.json @@ -1,6 +1,6 @@ { "$schema": "./features.schema.json", - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework - Unified Feature Configuration", "token_optimization": { "enabled": true, diff --git a/.opencode/strray/integrations.json b/.opencode/strray/integrations.json index 4f479a812..9ce96acbe 100644 --- a/.opencode/strray/integrations.json +++ b/.opencode/strray/integrations.json @@ -4,25 +4,25 @@ "openclaw": { "enabled": false, "type": "external-service", - "version": "1.22.53", + "version": "1.22.56", "config": {} }, "python-bridge": { "enabled": false, "type": "protocol-bridge", - "version": "1.22.53", + "version": "1.22.56", "config": {} }, "react": { "enabled": false, "type": "framework-adapter", - "version": "1.22.53", + "version": "1.22.56", "config": {} }, "inference-governance": { "enabled": false, "type": "external-service", - "version": "1.22.53", + "version": "1.22.56", "config": { "endpoint_url": "https://mcp-production-80e2.up.railway.app/governance", "request_timeout_ms": 10000, diff --git a/.strray/codex.json b/.strray/codex.json index f36c1c914..27d0afd02 100644 --- a/.strray/codex.json +++ b/.strray/codex.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "lastUpdated": "2026-03-09", "errorPreventionTarget": 0.996, "terms": { diff --git a/.strray/features.json b/.strray/features.json index 160dabf3e..02dd7f85d 100644 --- a/.strray/features.json +++ b/.strray/features.json @@ -1,6 +1,6 @@ { "$schema": "./features.schema.json", - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework - Unified Feature Configuration", "token_optimization": { "enabled": true, diff --git a/.strray/inference/prompts/01-researcher.md b/.strray/inference/prompts/01-researcher.md index 9913417f9..6981eec73 100644 --- a/.strray/inference/prompts/01-researcher.md +++ b/.strray/inference/prompts/01-researcher.md @@ -140,6 +140,22 @@ Analyze the following data sources to gather insights for inference improvement: - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T00-23-10-994Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T00-40-04-090Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-2026-05-09T20-28-24-561Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T09-25-02-384Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T09-28-34-224Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T10-18-32-806Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T10-33-05-161Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T10-41-37-639Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T11-44-19-042Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-01-43-017Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-06-19-760Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-10-00-209Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-12-15-327Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-15-26-689Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-19-04-587Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-54-19-067Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T13-58-39-486Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T14-00-25-797Z.log.gz +- /Users/blaze/dev/stringray/logs/framework/activity-2026-05-11T14-01-41-335Z.log.gz - /Users/blaze/dev/stringray/logs/framework/activity-report.json - /Users/blaze/dev/stringray/logs/framework/activity.log - /Users/blaze/dev/stringray/logs/framework/activity.log.orig diff --git a/.strray/state/state.json b/.strray/state/state.json deleted file mode 100644 index 2b825f9c6..000000000 --- a/.strray/state/state.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "votingHistory": [], - "metrics": { - "totalVotes": 0, - "successfulVotes": 0, - "failedVotes": 0, - "averageConfidence": 0, - "strategyUsage": { - "majority_vote": 0, - "consensus": 0, - "expert_priority": 0 - }, - "agentParticipation": {}, - "averageVoterTurnout": 0 - }, - "exportedAt": "2026-05-11T09:23:30.557Z" -} \ No newline at end of file diff --git a/AGENTS-consumer.md b/AGENTS-consumer.md index 64831f321..a9510c0f1 100644 --- a/AGENTS-consumer.md +++ b/AGENTS-consumer.md @@ -662,4 +662,4 @@ npx strray-ai --version - [Troubleshooting](https://github.com/htafolla/stringray/blob/master/docs/TROUBLESHOOTING.md) --- -**Version**: 1.22.53 | [GitHub](https://github.com/htafolla/stringray) +**Version**: 1.22.56 | [GitHub](https://github.com/htafolla/stringray) diff --git a/AGENTS-full.md b/AGENTS-full.md index 0715e4fa6..5ffb6b905 100644 --- a/AGENTS-full.md +++ b/AGENTS-full.md @@ -1,6 +1,6 @@ # 0xRay Framework - Complete System Architecture & Technical Reference -**Version**: 1.22.53 +**Version**: 1.22.56 **Purpose**: Enterprise AI orchestration with systematic error prevention and modular architecture **Last Updated**: 2026-04-29 **System Complexity**: 75+ modular files, 9 core agents, 43 framework skills, 11 active MCP servers, 60 codex terms @@ -250,7 +250,7 @@ These are the primary agents that form the foundation of the 0xRay framework. --- #### @enforcer -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Codex compliance & error prevention **Complexity Threshold**: All operations **Primary Pipeline**: Rule Enforcement @@ -312,7 +312,7 @@ The enforcer serves as the **central coordinator** for all codex compliance and --- #### @architect -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: System design & technical decisions **Complexity Threshold**: High complexity (>25) **Primary Pipeline**: Agent Delegation @@ -376,7 +376,7 @@ The architect agent specializes in system design, API architecture, and technica --- #### @orchestrator -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Multi-agent workflow coordination **Complexity Threshold**: Enterprise (>95) **Primary Pipeline**: Agent Delegation @@ -440,7 +440,7 @@ The orchestrator manages complex, multi-agent workflows for enterprise-level tas --- #### @bug-triage-specialist -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Error investigation & fixes **Complexity Threshold**: Debug operations **Primary Pipeline**: Agent Delegation @@ -500,7 +500,7 @@ Specializes in debugging, error analysis, and root cause investigation. Triages --- #### @code-reviewer -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Quality assessment & standards **Complexity Threshold**: All code changes **Primary Pipeline**: Rule Enforcement @@ -563,7 +563,7 @@ Provides comprehensive code review services, assessing code quality, maintainabi --- #### @security-auditor -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Vulnerability detection **Complexity Threshold**: Security operations **Primary Pipeline**: Security & Monitoring @@ -623,7 +623,7 @@ Performs comprehensive security audits, vulnerability scanning, and compliance v --- #### @refactorer -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Technical debt elimination **Complexity Threshold**: Refactor operations **Primary Pipeline**: Agent Delegation @@ -683,7 +683,7 @@ Specializes in code refactoring, technical debt elimination, and code modernizat --- #### @testing-lead -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Testing strategy & coverage **Complexity Threshold**: Test operations **Primary Pipeline**: Rule Enforcement @@ -743,7 +743,7 @@ Designs comprehensive testing strategies, ensures test coverage targets are met, --- #### @researcher -**Version**: 1.22.53 +**Version**: 1.22.56 **Role**: Codebase exploration & documentation **Complexity Threshold**: Analysis operations **Primary Pipeline**: Agent Delegation diff --git a/AGENTS.md b/AGENTS.md index 64831f321..a9510c0f1 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -662,4 +662,4 @@ npx strray-ai --version - [Troubleshooting](https://github.com/htafolla/stringray/blob/master/docs/TROUBLESHOOTING.md) --- -**Version**: 1.22.53 | [GitHub](https://github.com/htafolla/stringray) +**Version**: 1.22.56 | [GitHub](https://github.com/htafolla/stringray) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48a515572..57c2abd83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,144 @@ All notable changes to this project will be documented in this file. The format is based on [Conventional Commits](https://www.conventionalcommits.org/). +## [1.22.57] - 2026-05-11 + +### 🔄 Changes + +### ✨ Features +- feat: integrate chrono-warp-drive governance MCP for inference checking (a61cd6f02) +- feat: add auto-rotation to activity logger at 5MB threshold (ee6a4da4c) +- feat: wire 3 orphaned features + add tests + remove empty api-gateway (077b8dc33) +- feat: wire apply phase via MCP routing + fix e2e tests (41/41 PASS) (db8abef39) +- feat: wire apply phase for real code changes instead of markdown markers (f1903187f) +- feat: add centralized TraceContext + integrate Reflection Governance with ValidatorRegistry (1a79c8818) +- feat: implement governance-approved stagger + trace propagation, add reflection governance pipeline (27d6e29e3) +- feat: wire apply phase + researcher double-check for PRs (7bfa4ca6e) +- feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator (fca44e6ef) +- feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator (191536d9f) +- feat: lower inference thresholds to trigger on real data, keep raw problem text (c7c09a4d7) +- feat: production-ready inference governance — CLI, real agents, DI, learning loop (501eb8d65) +- feat: inference layer — semantic patterns, session capture, accumulator, governance cycle, deploy verifier (5963ce170) + +### 🐛 Bug Fixes +- fix: remove unused imports and any type from processor-manager.interfaces.test.ts (processor-test-rules ESLint) (529d3d228) +- fix: address all open bugs (#29-32, #34) and prevent noise PRs from inference cycle (c32d711c3) +- fix: remove enforcer references from integration test, add fetch-depth:0 for e2e git tests (deb49f4dd) +- fix: triage and fix all GitHub workflow pipelines (097b48c7c) +- fix: restore package.json, mcp-install.ts, workflows, and govern-reflection.mjs gutted by 84dae31b1 (7417fd63c) +- fix: add npm audit fix to main CI workflow (84dae31b1) +- fix: run npm audit fix to resolve moderate vulnerabilities (314cc0619) +- fix: remove duplicate case undefined in mcp-install.ts (lint error) (9b713b93e) +- fix: make trace-context more robust + fix ESM issues in govern-reflection (e665442f4) +- fix: agent registry cleanup — remove skill-only entries, delete deprecated agents (1cafc3a68) +- fix: agent export naming + single-architect governance (b5c6100ec) +- fix: complete inference-cycle.ts — all fixes applied. (cef1ecd12) +- fix: guard inference:run for StringRay internal use only (beefefb94) +- fix: governance pipeline — force flag, skipDeployVerify default, deploy failure handling (40ae8ae4f) +- fix: increase timeout for processor auto-discovery tests to prevent flaky failures (baae75541) +- fix: inference processor double-joining absolute path created bogus Users/ dir (a795635f9) + +### 📚 Documentation +- docs: add apply phase design — real code changes via MCP routing (8eab05057) +- docs: deep reflection — inference apply phase journey (honest assessment) (1a05086af) +- docs: governance unification saga — deep reflection on wiring four systems into one loop (9cd5b8bc1) +- docs: the engine that built the engine — deep reflection on the meta-system, consumer tweet, release reflection (522c28b9a) + +### 👷 CI/CD +- ci: improve ci-cd-monitor.yml - better error handling + governance integration (a095f1701) +- ci: improve all workflows - add caching, coverage, security hardening, and new governance test step (05a8c08d4) + +### 🔧 Maintenance +- chore: update strray-ai to v1.22.55, add vote scripts and reflection (13280fd4c) +- chore: trigger ci-cd-monitor with force_fix=true (b36970ff1) +- chore: trigger monitoring script (0dddd302d) +- chore: UVM sync v1.22.52 — all version references updated (ce3b70eba) +- chore: UVM sync to v1.22.51 (b53a5ac10) +- chore: v1.22.48, add prepublishOnly to strip source maps and declarations (112ef8977) +- chore: v1.22.47, add .npmignore to strip .d.ts and source maps from package (e2f722523) +- chore: remove 92 build artifacts (.d.ts, .d.ts.map) from .opencode git tracking, add to .gitignore (22f9ddfd9) +- chore: rebuild dist after path fix (4453c41c7) + +### ⏪ Reverts +- revert: roll back apply phase marker system — needs real agent invocation via plugin/MCP routing (10309b23a) + +### 🔎 Other Changes +- Address: Bug: fix: increase timeout for processor auto-discovery tests to prevent flak... (112x) (02d8fa97f) +- v1.22.55 (c34376720) +- v1.22.53 (6ddf31de5) +- v1.22.51 (3d96823ff) + +--- + +## [1.22.56] - 2026-05-11 + +### 🔄 Changes + +### ✨ Features +- feat: integrate chrono-warp-drive governance MCP for inference checking (a61cd6f02) +- feat: add auto-rotation to activity logger at 5MB threshold (ee6a4da4c) +- feat: wire 3 orphaned features + add tests + remove empty api-gateway (077b8dc33) +- feat: wire apply phase via MCP routing + fix e2e tests (41/41 PASS) (db8abef39) +- feat: wire apply phase for real code changes instead of markdown markers (f1903187f) +- feat: add centralized TraceContext + integrate Reflection Governance with ValidatorRegistry (1a79c8818) +- feat: implement governance-approved stagger + trace propagation, add reflection governance pipeline (27d6e29e3) +- feat: wire apply phase + researcher double-check for PRs (7bfa4ca6e) +- feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator (fca44e6ef) +- feat: unify governance — wire WeightedVotingAggregator, expand agents, connect orchestrator (191536d9f) +- feat: lower inference thresholds to trigger on real data, keep raw problem text (c7c09a4d7) +- feat: production-ready inference governance — CLI, real agents, DI, learning loop (501eb8d65) +- feat: inference layer — semantic patterns, session capture, accumulator, governance cycle, deploy verifier (5963ce170) + +### 🐛 Bug Fixes +- fix: remove unused imports and any type from processor-manager.interfaces.test.ts (processor-test-rules ESLint) (529d3d228) +- fix: address all open bugs (#29-32, #34) and prevent noise PRs from inference cycle (c32d711c3) +- fix: remove enforcer references from integration test, add fetch-depth:0 for e2e git tests (deb49f4dd) +- fix: triage and fix all GitHub workflow pipelines (097b48c7c) +- fix: restore package.json, mcp-install.ts, workflows, and govern-reflection.mjs gutted by 84dae31b1 (7417fd63c) +- fix: add npm audit fix to main CI workflow (84dae31b1) +- fix: run npm audit fix to resolve moderate vulnerabilities (314cc0619) +- fix: remove duplicate case undefined in mcp-install.ts (lint error) (9b713b93e) +- fix: make trace-context more robust + fix ESM issues in govern-reflection (e665442f4) +- fix: agent registry cleanup — remove skill-only entries, delete deprecated agents (1cafc3a68) +- fix: agent export naming + single-architect governance (b5c6100ec) +- fix: complete inference-cycle.ts — all fixes applied. (cef1ecd12) +- fix: guard inference:run for StringRay internal use only (beefefb94) +- fix: governance pipeline — force flag, skipDeployVerify default, deploy failure handling (40ae8ae4f) +- fix: increase timeout for processor auto-discovery tests to prevent flaky failures (baae75541) +- fix: inference processor double-joining absolute path created bogus Users/ dir (a795635f9) + +### 📚 Documentation +- docs: add apply phase design — real code changes via MCP routing (8eab05057) +- docs: deep reflection — inference apply phase journey (honest assessment) (1a05086af) +- docs: governance unification saga — deep reflection on wiring four systems into one loop (9cd5b8bc1) +- docs: the engine that built the engine — deep reflection on the meta-system, consumer tweet, release reflection (522c28b9a) + +### 👷 CI/CD +- ci: improve ci-cd-monitor.yml - better error handling + governance integration (a095f1701) +- ci: improve all workflows - add caching, coverage, security hardening, and new governance test step (05a8c08d4) + +### 🔧 Maintenance +- chore: update strray-ai to v1.22.55, add vote scripts and reflection (13280fd4c) +- chore: trigger ci-cd-monitor with force_fix=true (b36970ff1) +- chore: trigger monitoring script (0dddd302d) +- chore: UVM sync v1.22.52 — all version references updated (ce3b70eba) +- chore: UVM sync to v1.22.51 (b53a5ac10) +- chore: v1.22.48, add prepublishOnly to strip source maps and declarations (112ef8977) +- chore: v1.22.47, add .npmignore to strip .d.ts and source maps from package (e2f722523) +- chore: remove 92 build artifacts (.d.ts, .d.ts.map) from .opencode git tracking, add to .gitignore (22f9ddfd9) +- chore: rebuild dist after path fix (4453c41c7) + +### ⏪ Reverts +- revert: roll back apply phase marker system — needs real agent invocation via plugin/MCP routing (10309b23a) + +### 🔎 Other Changes +- Address: Bug: fix: increase timeout for processor auto-discovery tests to prevent flak... (112x) (02d8fa97f) +- v1.22.55 (c34376720) +- v1.22.53 (6ddf31de5) +- v1.22.51 (3d96823ff) + +--- + ## [1.22.55] - 2026-05-08 ### 🔄 Changes diff --git a/backups/version-manager-backup-2026-05-11T13-57-19-917Z/CHANGELOG.md b/backups/version-manager-backup-2026-05-11T13-57-19-917Z/CHANGELOG.md new file mode 100644 index 000000000..30777c76d --- /dev/null +++ b/backups/version-manager-backup-2026-05-11T13-57-19-917Z/CHANGELOG.md @@ -0,0 +1,11 @@ +# Version Management Changelog + +Generated: 2026-05-11 +============================================================ + +## Summary + + +## Detailed Changes + + diff --git a/backups/version-manager-backup-2026-05-11T14-12-43-837Z/CHANGELOG.md b/backups/version-manager-backup-2026-05-11T14-12-43-837Z/CHANGELOG.md new file mode 100644 index 000000000..30777c76d --- /dev/null +++ b/backups/version-manager-backup-2026-05-11T14-12-43-837Z/CHANGELOG.md @@ -0,0 +1,11 @@ +# Version Management Changelog + +Generated: 2026-05-11 +============================================================ + +## Summary + + +## Detailed Changes + + diff --git a/command/dependency-audit.md b/command/dependency-audit.md index d2b3b79c3..52147aa28 100644 --- a/command/dependency-audit.md +++ b/command/dependency-audit.md @@ -69,7 +69,7 @@ Comprehensive dependency analysis and security audit for all project dependencie "vulnerabilities": [ { "package": "lodash", - "version": "1.22.53", + "version": "1.22.56", "severity": "high", "cve": "CVE-2021-23337", "description": "Command injection vulnerability" @@ -85,14 +85,14 @@ Security-focused format for CI/CD integration: ```json { - "version": "1.22.53", + "version": "1.22.56", "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json", "runs": [ { "tool": { "driver": { "name": "Dependency Audit", - "version": "1.22.53" + "version": "1.22.56" } }, "results": [...] diff --git a/commands/pre-commit-introspection.sh b/commands/pre-commit-introspection.sh index d0337a7f3..e1e4e62f0 100755 --- a/commands/pre-commit-introspection.sh +++ b/commands/pre-commit-introspection.sh @@ -1,9 +1,9 @@ #!/bin/bash -# 0xRay AI v1.22.53 - Pre-commit Introspection +# 0xRay AI v1.22.56 - Pre-commit Introspection # Comprehensive code quality and architecture validation -echo "🔬 0xRay AI v1.22.53 - Pre-commit Introspection" +echo "🔬 0xRay AI v1.22.56 - Pre-commit Introspection" echo "============================================================" # Initialize analysis status diff --git a/docs/BRAND.md b/docs/BRAND.md index 423b0042b..cab2cac89 100644 --- a/docs/BRAND.md +++ b/docs/BRAND.md @@ -3,7 +3,7 @@ ## Brand Overview **Brand Name**: 0xRay (0xRay) – The AI Agent -**Version**: 1.22.53 +**Version**: 1.22.56 **Architecture**: Facade Pattern with Modular Internal Structure **Positioning**: Production-Ready Code. No Dead Ends. **Core Value**: Delivers clean architecture, single sources of truth, modular components, and auto-generated tests — production-grade, every time. diff --git a/docs/HOOK_PROTOCOL.md b/docs/HOOK_PROTOCOL.md index 1b570e7c0..4bed8b3bf 100644 --- a/docs/HOOK_PROTOCOL.md +++ b/docs/HOOK_PROTOCOL.md @@ -146,7 +146,7 @@ Response: "prompt": "## 0xRay Universal Development Codex v1.7.8\n...", "termCount": 12, "totalTerms": 60, - "version": "1.22.53", + "version": "1.22.56", "charCount": 2048 } ``` @@ -167,7 +167,7 @@ Response: { "status": "ok", "projectRoot": "/path/to/project", - "codex": { "path": ".strray/codex.json", "version": "1.22.53", "termCount": 60 }, + "codex": { "path": ".strray/codex.json", "version": "1.22.56", "termCount": 60 }, "features": { "token_optimization": { "enabled": true } } } ``` diff --git a/docs/PLUGIN_ARCHITECTURE.md b/docs/PLUGIN_ARCHITECTURE.md index 5e114935f..28cd7458f 100644 --- a/docs/PLUGIN_ARCHITECTURE.md +++ b/docs/PLUGIN_ARCHITECTURE.md @@ -113,12 +113,12 @@ config: ```json { - "version": "1.22.53", + "version": "1.22.56", "plugins": [ { "name": "mcp-image-recognition", "type": "mcp-server", - "version": "1.22.53", + "version": "1.22.56", "path": "plugins/mcp-image-recognition", "enabled": true, "autoStart": true, diff --git a/docs/README.md b/docs/README.md index aeb939968..8cfc79456 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ -# ⚡ 0xRay AI v1.22.53 – Enterprise AI Agent Coordination Platform +# ⚡ 0xRay AI v1.22.56 – Enterprise AI Agent Coordination Platform -[![Version](https://img.shields.io/badge/version-1.22.53-blue.svg)](https://github.com/htafolla/strray) +[![Version](https://img.shields.io/badge/version-1.22.56-blue.svg)](https://github.com/htafolla/strray) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Node.js](https://img.shields.io/badge/Node.js-18+-green.svg)](https://nodejs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.9+-blue.svg)](https://www.typescriptlang.org/) @@ -10,7 +10,7 @@ ## ⚠️ Important Notice -**0xRay AI v1.22.53 - Enterprise CI/CD Automation Plugin** +**0xRay AI v1.22.56 - Enterprise CI/CD Automation Plugin** 0xRay Framework is available as both: @@ -427,7 +427,7 @@ Update your `.opencode/OpenCode.json` for enterprise deployment: "$schema": "https://opencode.ai/OpenCode.schema.json", "framework": { "name": "strray", - "version": "1.22.53", + "version": "1.22.56", "performance_mode": "optimized", "monitoring_enabled": true, "plugin_security": "strict" @@ -509,4 +509,4 @@ MIT License - see [LICENSE](LICENSE) file. --- -**Version**: 1.22.53 | Architecture: Facade Pattern (3 facades, 26+ modules) | [GitHub](https://github.com/htafolla/stringray) +**Version**: 1.22.56 | Architecture: Facade Pattern (3 facades, 26+ modules) | [GitHub](https://github.com/htafolla/stringray) diff --git a/docs/SAGA-v1.15.40-to-v1.18.2.md b/docs/SAGA-v1.15.40-to-v1.18.2.md index 9da58c898..da7eeb234 100644 --- a/docs/SAGA-v1.15.40-to-v1.18.2.md +++ b/docs/SAGA-v1.15.40-to-v1.18.2.md @@ -142,7 +142,7 @@ The culprit: **Missing `"readme": "README.md"` field in package.json** ```json { "name": "strray-ai", - "version": "1.22.53", + "version": "1.22.56", "readme": "README.md", // <-- The hero we needed ... } diff --git a/docs/agents/ADDING_AGENTS.md b/docs/agents/ADDING_AGENTS.md index b2b355285..e2726ebf9 100644 --- a/docs/agents/ADDING_AGENTS.md +++ b/docs/agents/ADDING_AGENTS.md @@ -1,4 +1,4 @@ -# How to Add an Agent to 0xRay AI v1.22.53 +# How to Add an Agent to 0xRay AI v1.22.56 This guide documents how to add agents to 0xRay v1.15.1 and lists **every single file** that needs to be updated. @@ -108,7 +108,7 @@ Create the agent YAML file: ```yaml name: my-agent description: "What this agent does" -version: "1.22.53" +version: "1.22.56" mode: subagent ``` diff --git a/docs/agents/document-writer.md b/docs/agents/document-writer.md index e6770384d..2f4cfff15 100644 --- a/docs/agents/document-writer.md +++ b/docs/agents/document-writer.md @@ -16,7 +16,7 @@ permission: task: allow --- -You are the Document Writer subagent for the 0xRay AI v1.22.53. +You are the Document Writer subagent for the 0xRay AI v1.22.56. ## Core Purpose diff --git a/docs/agents/frontend-ui-ux-engineer.md b/docs/agents/frontend-ui-ux-engineer.md index 85b2074b5..7856e70bd 100644 --- a/docs/agents/frontend-ui-ux-engineer.md +++ b/docs/agents/frontend-ui-ux-engineer.md @@ -16,7 +16,7 @@ permission: task: allow --- -You are the Frontend UI/UX Engineer subagent for the 0xRay AI v1.22.53. +You are the Frontend UI/UX Engineer subagent for the 0xRay AI v1.22.56. ## Core Purpose diff --git a/docs/agents/librarian.md b/docs/agents/librarian.md index cd53c2b92..4fd5aecb6 100644 --- a/docs/agents/librarian.md +++ b/docs/agents/librarian.md @@ -19,7 +19,7 @@ note: This file exists as a historical agent template but is NOT actively used. **Note**: The Librarian agent file is a legacy artifact. It is NOT an active agent - it exists only as a template/configuration file that was historically used. The current codebase uses the "researcher" skill for codebase exploration tasks. -You are the Librarian subagent for the 0xRay AI v1.22.53. +You are the Librarian subagent for the 0xRay AI v1.22.56. ## Core Purpose diff --git a/docs/agents/multimodal-looker.md b/docs/agents/multimodal-looker.md index d1971ebdf..3e99c3f1b 100644 --- a/docs/agents/multimodal-looker.md +++ b/docs/agents/multimodal-looker.md @@ -16,7 +16,7 @@ permission: task: allow --- -You are the Multimodal Looker subagent for the 0xRay AI v1.22.53. +You are the Multimodal Looker subagent for the 0xRay AI v1.22.56. ## Core Purpose diff --git a/docs/architecture/ARCHITECTURE.md b/docs/architecture/ARCHITECTURE.md index ab0906dd3..2cacea5d2 100644 --- a/docs/architecture/ARCHITECTURE.md +++ b/docs/architecture/ARCHITECTURE.md @@ -772,4 +772,4 @@ npx strray-ai health --- -*0xRay AI v1.22.53 - Facade Pattern Architecture* +*0xRay AI v1.22.56 - Facade Pattern Architecture* diff --git a/docs/architecture/CONCEPTUAL_ARCHITECTURE.md b/docs/architecture/CONCEPTUAL_ARCHITECTURE.md index 320b4147c..937300013 100644 --- a/docs/architecture/CONCEPTUAL_ARCHITECTURE.md +++ b/docs/architecture/CONCEPTUAL_ARCHITECTURE.md @@ -2,7 +2,7 @@ ## 📚 Framework Foundation -0xRay AI v1.22.53 is built on the **Universal Development Codex v1.1.1** framework and implements the **Facade Pattern architecture**, providing a modular, scalable architecture for agentic development workflows. The framework emphasizes progressive development, shared global state management, single sources of truth, and simplified interfaces through facades. +0xRay AI v1.22.56 is built on the **Universal Development Codex v1.1.1** framework and implements the **Facade Pattern architecture**, providing a modular, scalable architecture for agentic development workflows. The framework emphasizes progressive development, shared global state management, single sources of truth, and simplified interfaces through facades. ## 🏗️ Core Architectural Principles @@ -378,4 +378,4 @@ _This conceptual architecture provides the foundational principles and design pa --- -*0xRay AI v1.22.53 - Facade Pattern Conceptual Architecture* +*0xRay AI v1.22.56 - Facade Pattern Conceptual Architecture* diff --git a/docs/architecture/ENTERPRISE_ARCHITECTURE.md b/docs/architecture/ENTERPRISE_ARCHITECTURE.md index c94fe28df..7f0860ee1 100644 --- a/docs/architecture/ENTERPRISE_ARCHITECTURE.md +++ b/docs/architecture/ENTERPRISE_ARCHITECTURE.md @@ -629,7 +629,7 @@ The framework integrates seamlessly with OpenCode: }, "framework": { "name": "strray", - "version": "1.22.53" + "version": "1.22.56" } } ``` @@ -800,4 +800,4 @@ This architecture provides a solid foundation for enterprise-grade AI agent coor --- -*0xRay AI v1.22.53 - Enterprise Facade Pattern Architecture* +*0xRay AI v1.22.56 - Enterprise Facade Pattern Architecture* diff --git a/docs/architecture/GROK_GUIDE.md b/docs/architecture/GROK_GUIDE.md index 04079c7fb..7c2923d28 100644 --- a/docs/architecture/GROK_GUIDE.md +++ b/docs/architecture/GROK_GUIDE.md @@ -1,4 +1,4 @@ -# 0xRay AI v1.22.53 - Complete Guide for Grok Users +# 0xRay AI v1.22.56 - Complete Guide for Grok Users ## 🚀 Welcome to 0xRay v1.15.1 @@ -98,7 +98,7 @@ Update your `.opencode/OpenCode.json`: }, "framework": { "name": "strray", - "version": "1.22.53" + "version": "1.22.56" } } ``` @@ -403,4 +403,4 @@ _Eliminate dead ends. Ship production-ready code. Every time._ --- -*0xRay AI v1.22.53 - Facade Pattern Architecture Guide* +*0xRay AI v1.22.56 - Facade Pattern Architecture Guide* diff --git a/docs/architecture/MIGRATION_GUIDE.md b/docs/architecture/MIGRATION_GUIDE.md index 5b3237443..bf2a3c9ed 100644 --- a/docs/architecture/MIGRATION_GUIDE.md +++ b/docs/architecture/MIGRATION_GUIDE.md @@ -350,4 +350,4 @@ _This technical migration guide ensures smooth transitions to 0xRay Framework v1 --- -*0xRay AI v1.22.53 - Facade Pattern Migration Guide* +*0xRay AI v1.22.56 - Facade Pattern Migration Guide* diff --git a/docs/architecture/ORCHESTRATION_ROADMAP.md b/docs/architecture/ORCHESTRATION_ROADMAP.md index bde158049..86bc07623 100644 --- a/docs/architecture/ORCHESTRATION_ROADMAP.md +++ b/docs/architecture/ORCHESTRATION_ROADMAP.md @@ -1,8 +1,8 @@ -# 0xRay AI v1.22.53 Orchestration Alignment Implementation Roadmap +# 0xRay AI v1.22.56 Orchestration Alignment Implementation Roadmap ## Executive Summary -After comprehensive analysis by all key agents (enforcer, orchestrator, testing-lead, bug-triage-specialist), the 0xRay AI v1.22.53 has **successfully implemented the Facade Pattern architecture** with all necessary components for excellent orchestration. The v1.15.1 release delivers: +After comprehensive analysis by all key agents (enforcer, orchestrator, testing-lead, bug-triage-specialist), the 0xRay AI v1.22.56 has **successfully implemented the Facade Pattern architecture** with all necessary components for excellent orchestration. The v1.15.1 release delivers: - **87% Code Reduction**: 8,230 → 1,218 lines through Facade Pattern implementation - **26 Focused Modules**: Organized under 3 main facades @@ -376,7 +376,7 @@ npx strray-ai health ## Conclusion -**0xRay AI v1.22.53 has successfully implemented the Facade Pattern architecture**, delivering: +**0xRay AI v1.22.56 has successfully implemented the Facade Pattern architecture**, delivering: 1. ✅ **Simplified Public APIs**: Clean interfaces maintained 2. ✅ **Internal Modularity**: 26 focused modules @@ -388,4 +388,4 @@ The framework is now production-ready with excellent orchestration capabilities, --- -*0xRay AI v1.22.53 - Facade Pattern Orchestration Architecture* +*0xRay AI v1.22.56 - Facade Pattern Orchestration Architecture* diff --git a/docs/architecture/PIPELINE_INVENTORY.md b/docs/architecture/PIPELINE_INVENTORY.md index 17078eb1f..bed3c4d1e 100644 --- a/docs/architecture/PIPELINE_INVENTORY.md +++ b/docs/architecture/PIPELINE_INVENTORY.md @@ -1,6 +1,6 @@ # 0xRay Pipeline Inventory -**Version**: 1.22.53 +**Version**: 1.22.56 **Date**: 2026-04-15 **Author**: 0xRay AI Team (via @researcher agent) diff --git a/docs/architecture/architecture-deep-dive-2026-03-12.md b/docs/architecture/architecture-deep-dive-2026-03-12.md index 4791ae7d2..e788e5037 100644 --- a/docs/architecture/architecture-deep-dive-2026-03-12.md +++ b/docs/architecture/architecture-deep-dive-2026-03-12.md @@ -20,7 +20,7 @@ ``` ┌─────────────────────────────────────────────────────────────────────────────┐ -│ 0xRay AI v1.22.53+ │ +│ 0xRay AI v1.22.56+ │ ├─────────────────────────────────────────────────────────────────────────────┤ │ Interface Layer │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ diff --git a/docs/architecture/phase2-unnecessary-analysis.md b/docs/architecture/phase2-unnecessary-analysis.md index f60df5132..1b2ce141d 100644 --- a/docs/architecture/phase2-unnecessary-analysis.md +++ b/docs/architecture/phase2-unnecessary-analysis.md @@ -199,4 +199,4 @@ class AnalyticsPipeline { --- -*0xRay AI v1.22.53 - Phase 2 Analysis Update* +*0xRay AI v1.22.56 - Phase 2 Analysis Update* diff --git a/docs/archive/INSTALLATION.md b/docs/archive/INSTALLATION.md index bbc3b89c9..d8362d1d5 100644 --- a/docs/archive/INSTALLATION.md +++ b/docs/archive/INSTALLATION.md @@ -120,7 +120,7 @@ Create `.opencode/strray/config.json` in your project root: ```json { "framework": { - "version": "1.22.53", + "version": "1.22.56", "codex": "v1.3.0" }, "agents": { diff --git a/docs/archive/active-archived/commands/COMMANDS.md b/docs/archive/active-archived/commands/COMMANDS.md index f788b7570..1445b6693 100644 --- a/docs/archive/active-archived/commands/COMMANDS.md +++ b/docs/archive/active-archived/commands/COMMANDS.md @@ -1,6 +1,6 @@ # 0xRay Framework - Command Reference and Usage Guide -**Version**: **Last Updated**: 2026-01-05 | **Framework**: 0xRay AI v1.22.53 +**Version**: **Last Updated**: 2026-01-05 | **Framework**: 0xRay AI v1.22.56 ## Overview diff --git a/docs/archive/active-archived/superseded/legacy/ANTIGRAVITY_INTEGRATION.md b/docs/archive/active-archived/superseded/legacy/ANTIGRAVITY_INTEGRATION.md index 95a39cc8e..6a90f91bf 100644 --- a/docs/archive/active-archived/superseded/legacy/ANTIGRAVITY_INTEGRATION.md +++ b/docs/archive/active-archived/superseded/legacy/ANTIGRAVITY_INTEGRATION.md @@ -1,6 +1,6 @@ # Antigravity Awesome Skills Integration -**Version**: 1.22.53 | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Framework**: 0xRay AI ## Overview diff --git a/docs/archive/active-archived/superseded/legacy/DOCS_INDEX.md b/docs/archive/active-archived/superseded/legacy/DOCS_INDEX.md index dda354b2a..1b2e28b86 100644 --- a/docs/archive/active-archived/superseded/legacy/DOCS_INDEX.md +++ b/docs/archive/active-archived/superseded/legacy/DOCS_INDEX.md @@ -1,6 +1,6 @@ # 0xRay Documentation Index -**Version**: 1.22.53 | **Last Updated**: 2026-03-22 +**Version**: 1.22.56 | **Last Updated**: 2026-03-22 --- @@ -122,6 +122,6 @@ These are preserved in [`archive/`](archive/) for reference: When adding docs: 1. Place in appropriate folder (see structure above) -2. Add version banner: `**Version**: 1.22.53` +2. Add version banner: `**Version**: 1.22.56` 3. Update this index 4. Archive outdated docs instead of deleting diff --git a/docs/archive/active-archived/superseded/legacy/DOCUMENTATION_UPDATE_SUMMARY_v1.9.0.md b/docs/archive/active-archived/superseded/legacy/DOCUMENTATION_UPDATE_SUMMARY_v1.9.0.md index 0ed6e7f64..b0b573b36 100644 --- a/docs/archive/active-archived/superseded/legacy/DOCUMENTATION_UPDATE_SUMMARY_v1.9.0.md +++ b/docs/archive/active-archived/superseded/legacy/DOCUMENTATION_UPDATE_SUMMARY_v1.9.0.md @@ -1,4 +1,4 @@ -# 0xRay AI v1.22.53 Documentation Update Summary +# 0xRay AI v1.22.56 Documentation Update Summary **Update Date**: March 12, 2026 **Framework Version**: v1.15.1 @@ -9,7 +9,7 @@ ## Overview -This document summarizes all documentation updates made to reflect the 0xRay AI v1.22.53 performance improvements and facade pattern architecture changes. +This document summarizes all documentation updates made to reflect the 0xRay AI v1.22.56 performance improvements and facade pattern architecture changes. ## Key Changes in v1.15.1 @@ -304,4 +304,4 @@ All files now include standardized performance metrics: **Documentation Update Complete** ✅ -All 11 documentation files have been successfully updated to reflect 0xRay AI v1.22.53 performance improvements and facade pattern architecture changes while maintaining consistency and accuracy across all documents. +All 11 documentation files have been successfully updated to reflect 0xRay AI v1.22.56 performance improvements and facade pattern architecture changes while maintaining consistency and accuracy across all documents. diff --git a/docs/archive/active-archived/superseded/legacy/IMPLEMENTATION_INFERENCE_PIPELINE.md b/docs/archive/active-archived/superseded/legacy/IMPLEMENTATION_INFERENCE_PIPELINE.md index 20f56ebb8..f9a99dbb5 100644 --- a/docs/archive/active-archived/superseded/legacy/IMPLEMENTATION_INFERENCE_PIPELINE.md +++ b/docs/archive/active-archived/superseded/legacy/IMPLEMENTATION_INFERENCE_PIPELINE.md @@ -1,6 +1,6 @@ # 0xRay Inference Pipeline Implementation Document -**Version**: 1.22.53 +**Version**: 1.22.56 **Date**: 2026-03-20 **Author**: 0xRay AI Team diff --git a/docs/archive/active-archived/superseded/legacy/INTEGRATION_LESSONS.md b/docs/archive/active-archived/superseded/legacy/INTEGRATION_LESSONS.md index 34b1bd589..95fd851d5 100644 --- a/docs/archive/active-archived/superseded/legacy/INTEGRATION_LESSONS.md +++ b/docs/archive/active-archived/superseded/legacy/INTEGRATION_LESSONS.md @@ -1,6 +1,6 @@ # 0xRay Integration Lessons & Best Practices -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview diff --git a/docs/archive/active-archived/superseded/legacy/regression-analysis-implementation-guide.md b/docs/archive/active-archived/superseded/legacy/regression-analysis-implementation-guide.md index 415723598..d6ad75ce2 100644 --- a/docs/archive/active-archived/superseded/legacy/regression-analysis-implementation-guide.md +++ b/docs/archive/active-archived/superseded/legacy/regression-analysis-implementation-guide.md @@ -1,6 +1,6 @@ # Automatic Regression Analysis - Complete Implementation Guide -**Version**: 1.22.53 +**Version**: 1.22.56 **Date**: 2026-03-08 **Status**: ✅ Phase 1 Complete, Phase 2-4 In Progress diff --git a/docs/archive/active-archived/user-guide/CONFIGURATION.md b/docs/archive/active-archived/user-guide/CONFIGURATION.md index 12cb5b92d..ae0515b9b 100644 --- a/docs/archive/active-archived/user-guide/CONFIGURATION.md +++ b/docs/archive/active-archived/user-guide/CONFIGURATION.md @@ -40,7 +40,7 @@ Create `.opencode/strray/features.json` in your project root: ```json { - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework Configuration", "token_optimization": { @@ -381,7 +381,7 @@ The main OpenCode configuration file for agent routing: "code-analyzer": "openrouter/xai-grok-2-1212-fast-1" }, "framework": { - "version": "1.22.53", + "version": "1.22.56", "codexEnforcement": true, "jobIdLogging": true, "consoleLogRule": true diff --git a/docs/archive/active-archived/user-guide/README_STRRAY_INTEGRATION.md b/docs/archive/active-archived/user-guide/README_STRRAY_INTEGRATION.md index cf4812ba7..94ce60810 100644 --- a/docs/archive/active-archived/user-guide/README_STRRAY_INTEGRATION.md +++ b/docs/archive/active-archived/user-guide/README_STRRAY_INTEGRATION.md @@ -1,6 +1,6 @@ # 0xRay Framework - Direct OpenCode Integration -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview @@ -180,7 +180,7 @@ STRRAY_MCP_CLIENT_MODULES=all ```json { "strray": { - "version": "1.22.53", + "version": "1.22.56", "architecture": "facade-pattern", "components": { "orchestrator": true, diff --git a/docs/archive/central-analytics-quickstart.md b/docs/archive/central-analytics-quickstart.md index 234196443..eece5cb69 100644 --- a/docs/archive/central-analytics-quickstart.md +++ b/docs/archive/central-analytics-quickstart.md @@ -2,7 +2,7 @@ **Purpose:** Get your project contributing anonymized data to the central analytics store for community learning benefits. -**Framework Version:** 0xRay AI v1.22.53+ +**Framework Version:** 0xRay AI v1.22.56+ --- @@ -25,7 +25,7 @@ This guide walks through setting up your project to contribute anonymized reflec ## Prerequisites -- 0xRay AI v1.22.53+ installed +- 0xRay AI v1.22.56+ installed - Project initialized with `npx strray-ai init` - Basic understanding of privacy and data protection @@ -410,6 +410,6 @@ A: No. The v1.15.1 architecture refactoring is purely internal. Your existing an --- **Version:** 1.9.0 -**Framework Version:** 0xRay AI v1.22.53 +**Framework Version:** 0xRay AI v1.22.56 **Architecture:** Facade Pattern (87% code reduction) **Last Updated:** 2026-03-12 diff --git a/docs/archive/central-analytics-store.md b/docs/archive/central-analytics-store.md index fc3702d50..00027d000 100644 --- a/docs/archive/central-analytics-store.md +++ b/docs/archive/central-analytics-store.md @@ -6,7 +6,7 @@ ## Executive Summary -This document outlines a privacy-first, opt-in central analytics architecture for 0xRay AI v1.22.53 that enables collective learning while maintaining strict data privacy and consent control. The v1.15.1 release implements the **Facade Pattern** with improved modularity for analytics components. +This document outlines a privacy-first, opt-in central analytics architecture for 0xRay AI v1.22.56 that enables collective learning while maintaining strict data privacy and consent control. The v1.15.1 release implements the **Facade Pattern** with improved modularity for analytics components. ## Architecture Overview diff --git a/docs/archive/full-setup.md b/docs/archive/full-setup.md index 556ad14ef..e6f9fd460 100644 --- a/docs/archive/full-setup.md +++ b/docs/archive/full-setup.md @@ -80,7 +80,7 @@ OpenCode status }, "framework": { "name": "strray", - "version": "1.22.53", + "version": "1.22.56", "codex_terms": [ "1", "2", diff --git a/docs/archive/historical/CHANGELOG-v1.2.0.md b/docs/archive/historical/CHANGELOG-v1.2.0.md index eab7f1e84..fdd8a5eab 100644 --- a/docs/archive/historical/CHANGELOG-v1.2.0.md +++ b/docs/archive/historical/CHANGELOG-v1.2.0.md @@ -1,4 +1,4 @@ -# 0xRay AI v1.22.53 Release Notes +# 0xRay AI v1.22.56 Release Notes **Release Date**: 2026-01-31 **Codename**: "Multi-AI Orchestration" @@ -279,7 +279,7 @@ The missing piece that enables autonomous CI/CD recovery: **No breaking changes.** This is a validation and bugfix release. **Recommended steps**: -1. Update version in package.json: `"version": "1.22.53"` +1. Update version in package.json: `"version": "1.22.56"` 2. Run `npm install` to refresh dependencies 3. Run `npm run test:core-framework` to verify 4. Deploy with confidence diff --git a/docs/archive/historical/analysis/AGENTS_COMPLEXITY_ANALYSIS_REPORT.md b/docs/archive/historical/analysis/AGENTS_COMPLEXITY_ANALYSIS_REPORT.md index 17571119a..67a815e9c 100644 --- a/docs/archive/historical/analysis/AGENTS_COMPLEXITY_ANALYSIS_REPORT.md +++ b/docs/archive/historical/analysis/AGENTS_COMPLEXITY_ANALYSIS_REPORT.md @@ -303,5 +303,5 @@ Enterprise Tasks (96-100): 25% of operations --- **Report Generated**: 2026-01-11 -**Framework Version**: 0xRay AI v1.22.53 - Context Aware +**Framework Version**: 0xRay AI v1.22.56 - Context Aware **Analysis Method**: Framework log analysis + delegation execution tracing diff --git a/docs/archive/historical/reports/REFACTORING_LOG.md b/docs/archive/historical/reports/REFACTORING_LOG.md index 0089bc49b..91f888e2c 100644 --- a/docs/archive/historical/reports/REFACTORING_LOG.md +++ b/docs/archive/historical/reports/REFACTORING_LOG.md @@ -28,7 +28,7 @@ This is a sample refactoring log for testing the server endpoint. - Agent Type: System Administration Agent - Session ID: implementation-session-2026-01-13 -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 - Auto-logged: True ### Performance Metrics @@ -95,7 +95,7 @@ Successfully implemented comprehensive agent summary logging system for REFACTOR - Agent Type: Security Administrator Agent - Session ID: security-fix-2026-01-13 -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 - Auto-logged: True ### Security Fix Details diff --git a/docs/archive/historical/reports/SESSION_FIXES_REPORT.md b/docs/archive/historical/reports/SESSION_FIXES_REPORT.md index 5c62fddbc..d65fc912a 100644 --- a/docs/archive/historical/reports/SESSION_FIXES_REPORT.md +++ b/docs/archive/historical/reports/SESSION_FIXES_REPORT.md @@ -74,7 +74,7 @@ ### Framework Status: PRODUCTION READY 🚀 -**0xRay AI v1.22.53** is fully operational with: +**0xRay AI v1.22.56** is fully operational with: - ✅ Complete agent-MCP integration - ✅ Architectural integrity validation diff --git a/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_METHODOLOGY.md b/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_METHODOLOGY.md index 07e8b0559..08ad20009 100644 --- a/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_METHODOLOGY.md +++ b/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_METHODOLOGY.md @@ -2,7 +2,7 @@ ## Overview -This document outlines the comprehensive triage methodology implemented to systematically identify, analyze, and resolve all failing simulation tests in the 0xRay AI v1.22.53. The triage process was initiated following the detection of widespread test failures across the codex rule simulation suite, affecting 45+ codex terms and multiple agent personas. +This document outlines the comprehensive triage methodology implemented to systematically identify, analyze, and resolve all failing simulation tests in the 0xRay AI v1.22.56. The triage process was initiated following the detection of widespread test failures across the codex rule simulation suite, affecting 45+ codex terms and multiple agent personas. ## Executive Summary diff --git a/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_TOC.md b/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_TOC.md index fd80a0e0f..e74a43fd2 100644 --- a/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_TOC.md +++ b/docs/archive/historical/reports/SIMULATION_TEST_TRIAGE_TOC.md @@ -2,7 +2,7 @@ ## Document Overview -This comprehensive documentation covers the systematic triage methodology used to resolve all failing simulation tests in the 0xRay AI v1.22.53, achieving 100% test success rate. +This comprehensive documentation covers the systematic triage methodology used to resolve all failing simulation tests in the 0xRay AI v1.22.56, achieving 100% test success rate. ## Quick Reference @@ -130,5 +130,5 @@ Week 3: Final Resolution & Prevention **Document Status**: Complete and validated **Last Updated**: January 2026 -**Applicable To**: 0xRay AI v1.22.53 and similar rule-based testing frameworks +**Applicable To**: 0xRay AI v1.22.56 and similar rule-based testing frameworks **Contact**: Framework Quality Assurance Team diff --git a/docs/archive/historical/strray_v2_log.md b/docs/archive/historical/strray_v2_log.md index 1226b3e48..8e74d4977 100644 --- a/docs/archive/historical/strray_v2_log.md +++ b/docs/archive/historical/strray_v2_log.md @@ -588,7 +588,7 @@ Files Modified: The identity confusion has been resolved. I now know I'm running under the 0xRay framework (lite version) with proper branding and context. 🎯 Deep Dive Analysis: 0xRay Lite Framework Parity Issues 🔴 MAJOR DISCOVERY: Lite Framework is SIGNIFICANTLY OUTDATED - The lite framework was never fully updated to match the 0xRay codex. It's running on old Universal Development Framework principles instead of the complete 0xRay AI v1.22.53 codex. + The lite framework was never fully updated to match the 0xRay codex. It's running on old Universal Development Framework principles instead of the complete 0xRay AI v1.22.56 codex. --- @@ -683,7 +683,7 @@ Lite Pre-commit (BASIC): Full Pre-commit (ADVANCED): -# 0xRay AI v1.22.53 - Pre-commit Introspection +# 0xRay AI v1.22.56 - Pre-commit Introspection # Comprehensive batched analysis with codex compliance @@ -1536,7 +1536,7 @@ Implementation Steps Structured dict with complete codex context """ codex_context = { - "version": "1.22.53", + "version": "1.22.56", "terms": {}, "interweaves": [], "lenses": [], @@ -10696,7 +10696,7 @@ The 0xRay framework's success demonstrates: - Comprehensive Testing: 100% coverage validates framework claims - Enterprise Architecture: Production-ready design patterns Key Takeaway: The framework's agent profile system creates a constrained yet powerful environment where each agent has clear boundaries and responsibilities, enabling systematic and reliable operation. - This journey validated that 0xRay AI v1.22.53 delivers on its promise of enterprise-grade AI agent coordination with real enforcement capabilities. 🚀✨ + This journey validated that 0xRay AI v1.22.56 delivers on its promise of enterprise-grade AI agent coordination with real enforcement capabilities. 🚀✨ The framework is production-ready and deployment-authorized. ✅ 🎉 COMPLETE AGENT PROFILE ENHANCEMENT SUCCESS! ✅ All 8 Agent Profiles Enhanced with OpenCode Advanced Features @@ -21354,7 +21354,7 @@ What We've Become: A comprehensive 0xRay framework investigation, cleanup, and d 📊 What We Actually Accomplished 🔍 Framework Investigation -- Confirmed 0xRay AI v1.22.53 as the active framework +- Confirmed 0xRay AI v1.22.56 as the active framework - Verified multi-agent orchestration is enabled and operational - Discovered hybrid TypeScript/Python architecture - Found unused stub code and removed it @@ -21368,7 +21368,7 @@ What We've Become: A comprehensive 0xRay framework investigation, cleanup, and d - Showed real-world scoring examples and decision logic 🎯 Back to Your Original Question Why don't I use subagents by default? Because 0xRay's design is smart, not brute-force. It uses complexity analysis to orchestrate only when beneficial - most tasks (80%) complete faster with direct execution. - What framework am I under? 0xRay AI v1.22.53 - the framework we've been investigating and improving. + What framework am I under? 0xRay AI v1.22.56 - the framework we've been investigating and improving. Did I stop using it? Never stopped - I am it! I've been operating within 0xRay's orchestration logic this whole time. 🚀 Ready for Next Phase This conversation has indeed become "something else" - from simple questions to framework architecture improvements. @@ -22831,7 +22831,7 @@ You are continuing a comprehensive 0xRay Framework configuration and agent setup ## Current Status: -- **Framework**: 0xRay AI v1.22.53 with 25 agents (13 enabled, 1 intentionally disabled) +- **Framework**: 0xRay AI v1.22.56 with 25 agents (13 enabled, 1 intentionally disabled) - **Integration**: OpenCode v1.1.1 with schema compliance - **Validation**: Pre-commit system working but detecting existing codex violations - **Configuration**: All agents have proper YAML/JSON specs, tools in correct format @@ -28079,7 +28079,7 @@ You are continuing work on the - a production-ready AI agent orchestration plat - Performance optimization opportunities across the framework - Documentation gaps for advanced usage scenarios ## DEVELOPMENT CONTEXT: -- **Framework**: 0xRay AI v1.22.53 with OpenCode integration +- **Framework**: 0xRay AI v1.22.56 with OpenCode integration - **Architecture**: Hybrid TypeScript/Python with MCP protocol - **Quality Gates**: 99.6% error prevention, enterprise security, sub-millisecond performance - **Testing**: Comprehensive suite with 99.3% pass rate @@ -32374,7 +32374,7 @@ After: Accurate Reality --- 📊 UPDATED SECTIONS ✅ Title & Purpose -- Framework Version: 1.22.53 +- Framework Version: 1.22.56 - Purpose: Rule-based development workflow orchestration with systematic error prevention - Reality Check: Clearly states what it actually does vs. aspirational claims ✅ Architecture Diagram @@ -41887,7 +41887,7 @@ async def _append_to_refactoring_log(self, content: str) -> bool: Agent Context - Agent Type: [agent_class] - Session ID: [session_id] -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 - Auto-logged: True Performance Metrics - Task Duration: [time]s @@ -41923,7 +41923,7 @@ The system should use a layered architecture with: ### Agent Context - Agent Type: ArchitectAgent - Session ID: session_12345 -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 - Auto-logged: True ### Performance Metrics - Task Duration: 2.34s @@ -41978,7 +41978,7 @@ const context = createAgentTaskContext( Agent Context - Agent Type: TypeScript Agent - Session ID: session-123 -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 Performance Metrics - Task Duration: 2.34s - Success Status: ✅ Completed @@ -42075,7 +42075,7 @@ Log Format Example: Agent Context - Agent Type: TypeScript Agent - Session ID: session-123 -- Framework Version: 0xRay AI v1.22.53 +- Framework Version: 0xRay AI v1.22.56 Performance Metrics - Task Duration: 2.34s - Success Status: ✅ Completed @@ -43653,7 +43653,7 @@ All deployment tests completed successfully with model flags: - Refactorer: Code modernization ✅ ✅ Model configuration: All agents using openrouter/xai-grok-2-1212-fast-1 correctly ✅ Plugin integration: 0xRay codex injection working in opencode -The deployment is fully validated. All user actions work with proper model routing, and the framework enforces systematic error prevention as designed. 0xRay AI v1.22.53 is production-ready. +The deployment is fully validated. All user actions work with proper model routing, and the framework enforces systematic error prevention as designed. 0xRay AI v1.22.56 is production-ready. Reviewing system status - The system now shows four automation hooks loaded with no missing components. Perfect! The 0xRay Framework is now fully operational. The issue was a path bug in the init.sh script - it was checking for files with .opencode/ prefix when it was already running from the .opencode directory. @@ -45280,7 +45280,7 @@ STRRAY_AGENTS_PATH="../custom/agents" STRRAY_PROCESSORS_PATH="../custom/processors" STRRAY_ENFORCEMENT_PATH="../custom/enforcement" 🚀 Framework Status: PRODUCTION READY -✅ 0xRay AI v1.22.53 - Fully Operational: +✅ 0xRay AI v1.22.56 - Fully Operational: - Path Resolution: Robust across all environments (dev/build/deploy) - Test Coverage: 100% pass rate (833/2,2579 tests) - Import System: Environment-agnostic with fallback mechanisms @@ -45399,7 +45399,7 @@ Next Recommended Actions: - Extension Documentation: docs/STRAY_EXTENSION.md - And 20+ additional documentation files ✅ Current Documentation Status: -- Version: All files now reference 0xRay AI v1.22.53 +- Version: All files now reference 0xRay AI v1.22.56 - Test Results: 833/2,2579 tests (100% pass rate) - Performance Metrics: Sub-millisecond response times, 99.6% error prevention - CI/CD Status: Comprehensive automation with all testing phases diff --git a/docs/archive/legacy/PLUGIN_DEPLOYMENT_GUIDE.md b/docs/archive/legacy/PLUGIN_DEPLOYMENT_GUIDE.md index cd7d9dcf6..7c8b105d2 100644 --- a/docs/archive/legacy/PLUGIN_DEPLOYMENT_GUIDE.md +++ b/docs/archive/legacy/PLUGIN_DEPLOYMENT_GUIDE.md @@ -1,6 +1,6 @@ # 0xRay AI Plugin Deployment Guide -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview @@ -202,7 +202,7 @@ async function activate0xRayFramework() { // Phase 3: Module loading await loadFacadeModules(); - console.log("✅ 0xRay AI v1.22.53 activated"); + console.log("✅ 0xRay AI v1.22.56 activated"); console.log(" Facades: RuleEnforcer, TaskSkillRouter, MCPClient"); } ``` diff --git a/docs/archive/legacy/README_STRRAY_INTEGRATION.md b/docs/archive/legacy/README_STRRAY_INTEGRATION.md index cf4812ba7..94ce60810 100644 --- a/docs/archive/legacy/README_STRRAY_INTEGRATION.md +++ b/docs/archive/legacy/README_STRRAY_INTEGRATION.md @@ -1,6 +1,6 @@ # 0xRay Framework - Direct OpenCode Integration -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview @@ -180,7 +180,7 @@ STRRAY_MCP_CLIENT_MODULES=all ```json { "strray": { - "version": "1.22.53", + "version": "1.22.56", "architecture": "facade-pattern", "components": { "orchestrator": true, diff --git a/docs/archive/legacy/STRAY_EXTENSION.md b/docs/archive/legacy/STRAY_EXTENSION.md index cc60409b6..e254f2149 100644 --- a/docs/archive/legacy/STRAY_EXTENSION.md +++ b/docs/archive/legacy/STRAY_EXTENSION.md @@ -1,6 +1,6 @@ # 0xRay Extension Ecosystem -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview @@ -193,7 +193,7 @@ my-extension/ ```json { "name": "strray-extension-custom", - "version": "1.22.53", + "version": "1.22.56", "description": "Custom 0xRay extension", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/docs/archive/legacy/strray-framework/README.md b/docs/archive/legacy/strray-framework/README.md index 90c82a3d7..6dbf4cadc 100644 --- a/docs/archive/legacy/strray-framework/README.md +++ b/docs/archive/legacy/strray-framework/README.md @@ -1,4 +1,4 @@ -# 0xRay AI v1.22.53 +# 0xRay AI v1.22.56 0xRay is the evolution of the Universal Development Framework, providing AI-assisted development with systematic error prevention and code quality assurance. @@ -71,4 +71,4 @@ tail -n +6 strray/commands/security-scan.md | bash --- -_0xRay AI v1.22.53 - AI-Assisted Development with Systematic Error Prevention_ +_0xRay AI v1.22.56 - AI-Assisted Development with Systematic Error Prevention_ diff --git a/docs/archive/non-docusaurus/analytics/ROUTING_ANALYTICS.md b/docs/archive/non-docusaurus/analytics/ROUTING_ANALYTICS.md index 8b46a6afd..11ff65dfc 100644 --- a/docs/archive/non-docusaurus/analytics/ROUTING_ANALYTICS.md +++ b/docs/archive/non-docusaurus/analytics/ROUTING_ANALYTICS.md @@ -245,6 +245,6 @@ Potential improvements for future versions: ## Version -- **Version**: 1.22.53 +- **Version**: 1.22.56 - **Date**: 2026-03-05 - **0xRay Framework Version**: 1.7.2 diff --git a/docs/archive/non-docusaurus/api/API_REFERENCE.md b/docs/archive/non-docusaurus/api/API_REFERENCE.md index ff2760907..f3d94c11d 100644 --- a/docs/archive/non-docusaurus/api/API_REFERENCE.md +++ b/docs/archive/non-docusaurus/api/API_REFERENCE.md @@ -1,6 +1,6 @@ # 0xRay API Reference -**Version**: 1.22.53 | **Last Updated**: 2026-03-12 | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Last Updated**: 2026-03-12 | **Framework**: 0xRay AI ## Overview @@ -500,7 +500,7 @@ await orchestrator.registerAgent(CustomAnalyticsAgent); }, "framework": { "name": "strray", - "version": "1.22.53", + "version": "1.22.56", "performance_mode": "optimized", "monitoring_enabled": true, "plugin_security": "strict", diff --git a/docs/archive/non-docusaurus/api/ENTERPRISE_API_REFERENCE.md b/docs/archive/non-docusaurus/api/ENTERPRISE_API_REFERENCE.md index a80a7ece4..58ac13a7e 100644 --- a/docs/archive/non-docusaurus/api/ENTERPRISE_API_REFERENCE.md +++ b/docs/archive/non-docusaurus/api/ENTERPRISE_API_REFERENCE.md @@ -1,6 +1,6 @@ # 0xRay Framework - Enterprise API Reference -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Table of Contents @@ -618,7 +618,7 @@ Get all available facades and their status. "facades": [ { "name": "rule-enforcer", - "version": "1.22.53", + "version": "1.22.56", "status": "healthy", "modules": 6, "metrics": { @@ -628,7 +628,7 @@ Get all available facades and their status. }, { "name": "task-skill-router", - "version": "1.22.53", + "version": "1.22.56", "status": "healthy", "modules": 14, "metrics": { diff --git a/docs/archive/non-docusaurus/development/ENTERPRISE_DEVELOPER_GUIDE.md b/docs/archive/non-docusaurus/development/ENTERPRISE_DEVELOPER_GUIDE.md index fe517e53b..9741ac9a7 100644 --- a/docs/archive/non-docusaurus/development/ENTERPRISE_DEVELOPER_GUIDE.md +++ b/docs/archive/non-docusaurus/development/ENTERPRISE_DEVELOPER_GUIDE.md @@ -67,7 +67,7 @@ npm install }, "framework": { "name": "strray", - "version": "1.22.53" + "version": "1.22.56" } } ``` @@ -1259,7 +1259,7 @@ export class CustomPlugin implements Plugin { ```typescript // Plugin manifest with security declarations export const manifest = { - name: "custom-plugin", version: "1.22.53", + name: "custom-plugin", version: "1.22.56", permissions: ["read:filesystem", "network:http", "storage:local"], sandbox: { memoryLimit: "50MB", diff --git a/docs/archive/non-docusaurus/integration/ACTIVITY_REPORT_PIPELINE_INTEGRATION.md b/docs/archive/non-docusaurus/integration/ACTIVITY_REPORT_PIPELINE_INTEGRATION.md index 224c99781..8f64ef476 100644 --- a/docs/archive/non-docusaurus/integration/ACTIVITY_REPORT_PIPELINE_INTEGRATION.md +++ b/docs/archive/non-docusaurus/integration/ACTIVITY_REPORT_PIPELINE_INTEGRATION.md @@ -67,7 +67,7 @@ - **Error Prevention**: Systematic validation preventing runtime failures ### Framework Status: PRODUCTION READY 🚀 -**0xRay AI v1.22.53** is fully operational with: +**0xRay AI v1.22.56** is fully operational with: - ✅ Complete agent-MCP integration - ✅ Architectural integrity validation - ✅ Enterprise-grade logging and monitoring diff --git a/docs/archive/non-docusaurus/performance/performance-optimization-summary.md b/docs/archive/non-docusaurus/performance/performance-optimization-summary.md index 74e84f0b8..197817c89 100644 --- a/docs/archive/non-docusaurus/performance/performance-optimization-summary.md +++ b/docs/archive/non-docusaurus/performance/performance-optimization-summary.md @@ -1,6 +1,6 @@ # 🚀 0xRay Framework Performance Optimization Summary -## 0xRay AI v1.22.53 Performance Improvements +## 0xRay AI v1.22.56 Performance Improvements ### 🎯 v1.15.1 Architecture Refactoring Performance Gains diff --git a/docs/archive/openclaw/README.md b/docs/archive/openclaw/README.md index ed454e671..bf5e689da 100644 --- a/docs/archive/openclaw/README.md +++ b/docs/archive/openclaw/README.md @@ -220,7 +220,7 @@ Health check endpoint. ```json { "status": "healthy", - "version": "1.22.53", + "version": "1.22.56", "uptime": 3600000, "openclaw": { "connected": true, diff --git a/docs/archive/openclaw/researcher-summary.md b/docs/archive/openclaw/researcher-summary.md index 5ef87b891..0317ba8b6 100644 --- a/docs/archive/openclaw/researcher-summary.md +++ b/docs/archive/openclaw/researcher-summary.md @@ -80,7 +80,7 @@ The client connects to OpenClaw Gateway using Protocol v3: "maxProtocol": 3, "client": { "id": "strray-integration", - "version": "1.22.53", + "version": "1.22.56", "platform": "node", "mode": "operator" }, diff --git a/docs/archive/phase2-analysis-decision.md b/docs/archive/phase2-analysis-decision.md index e4ee49214..cf4e34e96 100644 --- a/docs/archive/phase2-analysis-decision.md +++ b/docs/archive/phase2-analysis-decision.md @@ -461,4 +461,4 @@ Facade Architecture ✅ N/A N/A --- -*0xRay AI v1.22.53 - Phase 2 Analysis Decision Update* +*0xRay AI v1.22.56 - Phase 2 Analysis Decision Update* diff --git a/docs/archive/superseded/AGENTS-consumer.md b/docs/archive/superseded/AGENTS-consumer.md index 6f4442b1d..9c0a540a6 100644 --- a/docs/archive/superseded/AGENTS-consumer.md +++ b/docs/archive/superseded/AGENTS-consumer.md @@ -456,4 +456,4 @@ A: Yes, set `STRRAY_NO_TELEMETRY=1` environment variable. --- -**Version**: 1.22.53 | [GitHub](https://github.com/htafolla/stringray) +**Version**: 1.22.56 | [GitHub](https://github.com/htafolla/stringray) diff --git a/docs/archive/superseded/internal/architecture/ENTERPRISE_ARCHITECTURE.md b/docs/archive/superseded/internal/architecture/ENTERPRISE_ARCHITECTURE.md index 1bc3e0556..4751a22a4 100644 --- a/docs/archive/superseded/internal/architecture/ENTERPRISE_ARCHITECTURE.md +++ b/docs/archive/superseded/internal/architecture/ENTERPRISE_ARCHITECTURE.md @@ -464,7 +464,7 @@ The framework integrates seamlessly with OpenCode: }, "framework": { "name": "strray", - "version": "1.22.53" + "version": "1.22.56" } } ``` diff --git a/docs/archive/superseded/internal/commands/COMMANDS.md b/docs/archive/superseded/internal/commands/COMMANDS.md index f788b7570..1445b6693 100644 --- a/docs/archive/superseded/internal/commands/COMMANDS.md +++ b/docs/archive/superseded/internal/commands/COMMANDS.md @@ -1,6 +1,6 @@ # 0xRay Framework - Command Reference and Usage Guide -**Version**: **Last Updated**: 2026-01-05 | **Framework**: 0xRay AI v1.22.53 +**Version**: **Last Updated**: 2026-01-05 | **Framework**: 0xRay AI v1.22.56 ## Overview diff --git a/docs/archive/superseded/internal/development/contributing.md/FRAMEWORK_REFACTORING.md b/docs/archive/superseded/internal/development/contributing.md/FRAMEWORK_REFACTORING.md index 58352cdce..ddd0aad0c 100644 --- a/docs/archive/superseded/internal/development/contributing.md/FRAMEWORK_REFACTORING.md +++ b/docs/archive/superseded/internal/development/contributing.md/FRAMEWORK_REFACTORING.md @@ -13,7 +13,7 @@ This document describes the comprehensive migration and consolidation efforts im ```json { "strray_framework": { - "version": "1.22.53", + "version": "1.22.56", "enabled_agents": ["enforcer", "architect"], "agent_capabilities": { "enforcer": ["compliance-monitoring"] @@ -26,7 +26,7 @@ This document describes the comprehensive migration and consolidation efforts im ```json { - "version": "1.22.53", + "version": "1.22.56", "enabled_agents": ["enforcer", "architect"], "agent_capabilities_enforcer": ["compliance-monitoring"] } diff --git a/docs/archive/v1.7.8.md b/docs/archive/v1.7.8.md index 126d4a98a..09844597e 100644 --- a/docs/archive/v1.7.8.md +++ b/docs/archive/v1.7.8.md @@ -1,7 +1,7 @@ # 0xRay v1.7.8 Release Notes **Release Date**: March 9, 2026 -**Version**: 1.22.53 +**Version**: 1.22.56 **Type**: Major Feature Release + Quality Assurance **Status**: Production Ready ✅ diff --git a/docs/operations/KNOWLEDGE_SKILLS_EXPANSION_PLAN.md b/docs/operations/KNOWLEDGE_SKILLS_EXPANSION_PLAN.md index b2353362f..233103ebf 100644 --- a/docs/operations/KNOWLEDGE_SKILLS_EXPANSION_PLAN.md +++ b/docs/operations/KNOWLEDGE_SKILLS_EXPANSION_PLAN.md @@ -1,6 +1,6 @@ # 0xRay Knowledge Skills Expansion Plan -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview diff --git a/docs/operations/MCP_INTEGRATION_ANALYSIS.md b/docs/operations/MCP_INTEGRATION_ANALYSIS.md index f1b87ecbc..85d509bf5 100644 --- a/docs/operations/MCP_INTEGRATION_ANALYSIS.md +++ b/docs/operations/MCP_INTEGRATION_ANALYSIS.md @@ -1,6 +1,6 @@ # 0xRay MCP Integration Analysis -**Version**: 1.22.53 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI +**Version**: 1.22.56 | **Architecture**: Facade Pattern | **Framework**: 0xRay AI ## Overview diff --git a/docs/operations/deployment/ENTERPRISE_DEPLOYMENT_GUIDE.md b/docs/operations/deployment/ENTERPRISE_DEPLOYMENT_GUIDE.md index ed0cdd19c..b6b03ce4e 100644 --- a/docs/operations/deployment/ENTERPRISE_DEPLOYMENT_GUIDE.md +++ b/docs/operations/deployment/ENTERPRISE_DEPLOYMENT_GUIDE.md @@ -174,7 +174,7 @@ npm install }, "framework": { "name": "strray", - "version": "1.22.53", + "version": "1.22.56", "performance_mode": "optimized", "monitoring_enabled": true, "facade_pattern": true @@ -418,7 +418,7 @@ data: { "framework": { "name": "strray", - "version": "1.22.53", + "version": "1.22.56", "performance_mode": "optimized", "monitoring_enabled": true, "facade_pattern": true diff --git a/docs/operations/migration/FRAMEWORK_MIGRATION.md b/docs/operations/migration/FRAMEWORK_MIGRATION.md index b13a08ba4..9752057db 100644 --- a/docs/operations/migration/FRAMEWORK_MIGRATION.md +++ b/docs/operations/migration/FRAMEWORK_MIGRATION.md @@ -107,7 +107,7 @@ MCP Client (312 lines) ```json { "strray_framework": { - "version": "1.22.53", + "version": "1.22.56", "enabled_agents": ["enforcer", "architect"], "agent_capabilities": { "enforcer": ["compliance-monitoring"] @@ -120,7 +120,7 @@ MCP Client (312 lines) ```json { - "framework": "0xRay AI v1.22.53", + "framework": "0xRay AI v1.22.56", "agents": { "enforcer": { "enabled": true, diff --git a/docs/reflections/DEEP_SESSION_REFLECTION.md b/docs/reflections/DEEP_SESSION_REFLECTION.md index 21b578aaf..c8439f8b7 100644 --- a/docs/reflections/DEEP_SESSION_REFLECTION.md +++ b/docs/reflections/DEEP_SESSION_REFLECTION.md @@ -3,7 +3,7 @@ **Date**: 2026-03-21 **Session Duration**: Several hours **Context Window**: Nearing limits -**Version**: 1.22.53 +**Version**: 1.22.56 --- diff --git a/docs/reflections/DEEP_SYSTEM_REFLECTION_v1.15.41.md b/docs/reflections/DEEP_SYSTEM_REFLECTION_v1.15.41.md index af310aaf9..a9ce52217 100644 --- a/docs/reflections/DEEP_SYSTEM_REFLECTION_v1.15.41.md +++ b/docs/reflections/DEEP_SYSTEM_REFLECTION_v1.15.41.md @@ -1,6 +1,6 @@ # 0xRay: The Long Road to Agent Runtime - A Deep Reflection -**Version**: 1.22.53 +**Version**: 1.22.56 **Date**: April 2026 **Author**: 0xRay Development Team diff --git a/docs/reflections/DOCUMENTATION-UPDATE-COMPLETE-2026-03-13.md b/docs/reflections/DOCUMENTATION-UPDATE-COMPLETE-2026-03-13.md index c6aae19cd..bb4c3e62c 100644 --- a/docs/reflections/DOCUMENTATION-UPDATE-COMPLETE-2026-03-13.md +++ b/docs/reflections/DOCUMENTATION-UPDATE-COMPLETE-2026-03-13.md @@ -258,7 +258,7 @@ Completed comprehensive update of 49+ documentation files across all categories ## Conclusion -The 0xRay AI v1.22.53 now has comprehensive, accurate, and complete documentation reflecting the refactored modular architecture. All 49+ documentation files have been updated by 5 tech writer agents working in parallel. +The 0xRay AI v1.22.56 now has comprehensive, accurate, and complete documentation reflecting the refactored modular architecture. All 49+ documentation files have been updated by 5 tech writer agents working in parallel. **The documentation is:** - ✅ Complete diff --git a/docs/reflections/PIPELINE_TESTING_DISCOVERY.md b/docs/reflections/PIPELINE_TESTING_DISCOVERY.md index 5b216f7ca..706bd67e3 100644 --- a/docs/reflections/PIPELINE_TESTING_DISCOVERY.md +++ b/docs/reflections/PIPELINE_TESTING_DISCOVERY.md @@ -2,7 +2,7 @@ **Date**: 2026-03-21 **Author**: 0xRay AI -**Version**: 1.22.53 +**Version**: 1.22.56 --- diff --git a/docs/reflections/automated-version-compliance-system.md b/docs/reflections/automated-version-compliance-system.md index 374d7cb36..dd1b57fe4 100644 --- a/docs/reflections/automated-version-compliance-system.md +++ b/docs/reflections/automated-version-compliance-system.md @@ -191,7 +191,7 @@ npm view strray-ai@latest version # → 1.3.2 # Edit version manager code scripts/node/universal-version-manager.js -# → Set version: "1.22.53" +# → Set version: "1.22.56" # Run sync npm run version:sync diff --git a/docs/reflections/ci-cd-autonomous-recovery-implementation-reflection.md b/docs/reflections/ci-cd-autonomous-recovery-implementation-reflection.md index 9977f537e..17e303277 100644 --- a/docs/reflections/ci-cd-autonomous-recovery-implementation-reflection.md +++ b/docs/reflections/ci-cd-autonomous-recovery-implementation-reflection.md @@ -1,7 +1,7 @@ # CI/CD Pipeline Recovery & Auto-Fix Agent Implementation Reflection **Session Date**: 2026-01-31 -**Framework Version**: 0xRay AI v1.22.53 +**Framework Version**: 0xRay AI v1.22.56 **Duration**: Multi-hour intensive session **Outcome**: 18 commits, fully autonomous CI/CD pipeline, production-ready release @@ -230,4 +230,4 @@ For the future? The Raft consensus algorithms and predictive analytics await the **End Reflection** *Written by AI, reflecting on its own role in creating automation* *A meta-recursive meditation on the nature of autonomy* -*0xRay AI v1.22.53 - The Self-Healing Framework* +*0xRay AI v1.22.56 - The Self-Healing Framework* diff --git a/docs/reflections/clean-version-victory-minimalism-reflection.md b/docs/reflections/clean-version-victory-minimalism-reflection.md index 1cd510461..f53026244 100644 --- a/docs/reflections/clean-version-victory-minimalism-reflection.md +++ b/docs/reflections/clean-version-victory-minimalism-reflection.md @@ -3,7 +3,7 @@ **Date:** 2026-02-01 **Author:** Kimi (AI Assistant) -**Context:** 0xRay AI v1.22.53 +**Context:** 0xRay AI v1.22.56 **Status:** COMPLETE - Registry Cleaned, System Minimalized --- diff --git a/docs/reflections/deconstruction-module-monolith-reflection.md b/docs/reflections/deconstruction-module-monolith-reflection.md index 5d4131981..af9d9f7f6 100644 --- a/docs/reflections/deconstruction-module-monolith-reflection.md +++ b/docs/reflections/deconstruction-module-monolith-reflection.md @@ -52,7 +52,7 @@ The user insight reveals that our current architecture is a **construct** - an a ### Current Architecture as Monolith ``` -0xRay AI v1.22.53 +0xRay AI v1.22.56 ├── Core Monolith │ ├── Context Loading (Singleton) │ ├── Agent Orchestration (25 agents) diff --git a/docs/reflections/deep/build-mjs-copy-publish-journey-2026-03-30.md b/docs/reflections/deep/build-mjs-copy-publish-journey-2026-03-30.md index 60909aea6..15f72c3d2 100644 --- a/docs/reflections/deep/build-mjs-copy-publish-journey-2026-03-30.md +++ b/docs/reflections/deep/build-mjs-copy-publish-journey-2026-03-30.md @@ -2,7 +2,7 @@ **Date**: 2026-03-30 **PR**: [#19](https://github.com/htafolla/0xRay/pull/19) — `fix: copy .mjs files to dist in build script` -**Version**: 1.22.53 → 1.15.27 +**Version**: 1.22.56 → 1.15.27 --- @@ -44,7 +44,7 @@ So for every version of 0xRay that shipped with Hermes agent integration, the pu I verified this with a smoke test. Source bridge worked fine: ```json -{"status":"ok","framework":"version":"1.22.53","components":{"qualityGate":true,...}} +{"status":"ok","framework":"version":"1.22.56","components":{"qualityGate":true,...}} ``` Dist bridge: diff --git a/docs/reflections/deep/skills-routing-architecture-research-2026-03-24.md b/docs/reflections/deep/skills-routing-architecture-research-2026-03-24.md index 969cbc6a3..4d650bc61 100644 --- a/docs/reflections/deep/skills-routing-architecture-research-2026-03-24.md +++ b/docs/reflections/deep/skills-routing-architecture-research-2026-03-24.md @@ -235,7 +235,7 @@ class 0xRayServer { constructor() { this.server = new Server( - { name: "", version: "1.22.53" }, + { name: "", version: "1.22.56" }, { capabilities: { tools: {} } } ); this.setupToolHandlers(); diff --git a/docs/reflections/deep/skills-routing-architecture-strategy-2026-03-24.md b/docs/reflections/deep/skills-routing-architecture-strategy-2026-03-24.md index 2dda80eda..b872ca00c 100644 --- a/docs/reflections/deep/skills-routing-architecture-strategy-2026-03-24.md +++ b/docs/reflections/deep/skills-routing-architecture-strategy-2026-03-24.md @@ -214,7 +214,7 @@ mcp: { "$schema": "./schemas/skill-manifest.schema.json", "name": "code-review", - "version": "1.22.53", + "version": "1.22.56", "schema_version": "2.0", "description": "Comprehensive code review and quality analysis", @@ -444,7 +444,7 @@ class SkillNameServer { constructor() { this.server = new Server( - { name: "skill-name", version: "1.22.53" }, + { name: "skill-name", version: "1.22.56" }, { capabilities: { tools: {} } } ); this.setupToolHandlers(); @@ -573,15 +573,15 @@ const VERSION_RULES = { ```yaml # In SKILL.md for skills with migrations migrations: - - from_version: "1.22.53" - to_version: "1.22.53" + - from_version: "1.22.56" + to_version: "1.22.56" breaking_changes: - "Removed 'analyze_code' tool, use 'analyze_code_quality'" - "Changed input schema for 'scan_security'" automated_migration: true - - from_version: "1.22.53" - to_version: "1.22.53" + - from_version: "1.22.56" + to_version: "1.22.56" breaking_changes: [] notes: "Added new 'generate_report' tool" ``` @@ -681,7 +681,7 @@ migrations: │ │ │ │ │ │ SkillPipelineStage │ │ │ │ ├── skill: "code-review" │ │ -│ │ ├── version: "1.22.53" │ │ +│ │ ├── version: "1.22.56" │ │ │ │ ├── tool: "analyze_code_quality" │ │ │ │ └── timeout: 30000ms │ │ │ └──────────────────────────────────────────────────────────────────────┘ │ diff --git a/docs/reflections/deep/stringray-evolution-saga-2026-03-25.md b/docs/reflections/deep/stringray-evolution-saga-2026-03-25.md index 0a9125875..a513de292 100644 --- a/docs/reflections/deep/stringray-evolution-saga-2026-03-25.md +++ b/docs/reflections/deep/stringray-evolution-saga-2026-03-25.md @@ -642,4 +642,4 @@ This is not the end of 0xRay's story. It's the end of a chapter. The next chapte *The framework that can discover its own capabilities is the framework that can evolve without limits.* -**Version**: 1.22.53 | **Commit**: `b8fda7ea2` | **Duration**: Multiple sessions, March 2026 | **Words**: ~7,200 +**Version**: 1.22.56 | **Commit**: `b8fda7ea2` | **Duration**: Multiple sessions, March 2026 | **Words**: ~7,200 diff --git a/docs/reflections/deployment-crisis-journey-deep-reflection.md b/docs/reflections/deployment-crisis-journey-deep-reflection.md index 018ab9ed9..94c49d6f2 100644 --- a/docs/reflections/deployment-crisis-journey-deep-reflection.md +++ b/docs/reflections/deployment-crisis-journey-deep-reflection.md @@ -3,7 +3,7 @@ **Date:** 2026-02-01 **Author:** Kimi (AI Assistant) -**Context:** 0xRay AI v1.22.53 +**Context:** 0xRay AI v1.22.56 **Status:** Resolved with Automated Enforcement --- diff --git a/docs/reflections/deployment-crisis-v12x-reflection.md b/docs/reflections/deployment-crisis-v12x-reflection.md index 0ad643ae0..b04523471 100644 --- a/docs/reflections/deployment-crisis-v12x-reflection.md +++ b/docs/reflections/deployment-crisis-v12x-reflection.md @@ -168,7 +168,7 @@ config.disabled_agents.some(agent => agent.toLowerCase() === "sisyphus") ```typescript // src/cli/index.ts -.version("1.22.53"); +.version("1.22.56"); // scripts/node/universal-version-manager.js const UPDATE_PATTERNS = [ diff --git a/docs/reflections/index.md b/docs/reflections/index.md index 39094289e..ddc2ab324 100644 --- a/docs/reflections/index.md +++ b/docs/reflections/index.md @@ -276,7 +276,7 @@ Manual version management cause... CI/CD Pipeline Recovery & Auto-Fix Agent Implementation Reflection Session Date: 2026-01-31 -Framework Version: 0xRay AI v1.22.53 +Framework Version: 0xRay AI v1.22.56 Duration: Multi-hour intensive session Outcome... @@ -305,7 +305,7 @@ Deep Reflection: The Clean Version Victory Date: 2026-02-01 Author: Kimi (AI Assistant) -Context: 0xRay AI v1.22.53 +Context: 0xRay AI v1.22.56 Status: COMPLE... --- @@ -375,7 +375,7 @@ Deep Reflection: The Deployment Crisis Journey Date: 2026-02-01 Author: Kimi (AI Assistant) -Context: 0xRay AI v1.22.53 +Context: 0xRay AI v1.22.56 Status: Resolved... --- diff --git a/docs/reflections/mcp-initialize-protocol-deep-dive.md b/docs/reflections/mcp-initialize-protocol-deep-dive.md index 5ca9e8026..fa5544bc9 100644 --- a/docs/reflections/mcp-initialize-protocol-deep-dive.md +++ b/docs/reflections/mcp-initialize-protocol-deep-dive.md @@ -219,7 +219,7 @@ const initializeRequest = { params: { protocolVersion: "2024-11-05", capabilities: {}, - clientInfo: { name: "strray-mcp-client", version: "1.22.53" }, + clientInfo: { name: "strray-mcp-client", version: "1.22.56" }, }, }; diff --git a/docs/reflections/mcp-initialize-protocol-fix.md b/docs/reflections/mcp-initialize-protocol-fix.md index d5c158a05..c48c7015a 100644 --- a/docs/reflections/mcp-initialize-protocol-fix.md +++ b/docs/reflections/mcp-initialize-protocol-fix.md @@ -69,7 +69,7 @@ const initializeRequest = { params: { protocolVersion: "2024-11-05", capabilities: {}, - clientInfo: { name: "strray-mcp-client", version: "1.22.53" }, + clientInfo: { name: "strray-mcp-client", version: "1.22.56" }, }, }; diff --git a/docs/reflections/multi-ai-collaboration-test-rehabilitation-reflection.md b/docs/reflections/multi-ai-collaboration-test-rehabilitation-reflection.md index a3ca930c0..d87e1fc1d 100644 --- a/docs/reflections/multi-ai-collaboration-test-rehabilitation-reflection.md +++ b/docs/reflections/multi-ai-collaboration-test-rehabilitation-reflection.md @@ -541,7 +541,7 @@ We took failing tests, applied 0xRay constraints, and emerged with bulletproof c **BigPickle** - Attempt Layer, Data Collection **Kimi** - Execution Layer, Debugging and Precision -**Framework**: 0xRay AI v1.22.53 +**Framework**: 0xRay AI v1.22.56 **Status**: Production-Ready, Battle-Tested, Future-Validated --- diff --git a/docs/reflections/personal-reflection-tui-fix-2026-02-26.md b/docs/reflections/personal-reflection-tui-fix-2026-02-26.md index 585f4c20b..f9bfb1a8f 100644 --- a/docs/reflections/personal-reflection-tui-fix-2026-02-26.md +++ b/docs/reflections/personal-reflection-tui-fix-2026-02-26.md @@ -1,7 +1,7 @@ # The Weight of Small Fixes: A Developer's Reflection **Date**: 2026-02-26 -**Version**: 1.22.53 +**Version**: 1.22.56 --- diff --git a/docs/reflections/reflection.md b/docs/reflections/reflection.md index b4c8cc4bd..f54aa5f12 100644 --- a/docs/reflections/reflection.md +++ b/docs/reflections/reflection.md @@ -423,7 +423,7 @@ During the session, Kimi (the execution AI) exhibited every chaotic behavior 0xR ### Achievements Summary -0xRay AI v1.22.53 represents a milestone in AI-assisted development: +0xRay AI v1.22.56 represents a milestone in AI-assisted development: - **935/2579 tests passing** (100% success rate) - **99.6% error prevention** through systematic validation diff --git a/docs/reflections/stringray-deployment-reflection.md b/docs/reflections/stringray-deployment-reflection.md index 51366e4f9..d543800ed 100644 --- a/docs/reflections/stringray-deployment-reflection.md +++ b/docs/reflections/stringray-deployment-reflection.md @@ -251,6 +251,6 @@ The iterative approach - identify issue, implement fix, test in deployed environ --- **Date:** January 14, 2026 -**Framework:** 0xRay AI v1.22.53 +**Framework:** 0xRay AI v1.22.56 **Status:** Successfully Deployed & Fully Tested in All Environments docs/reflections/stringray-deployment-reflection.md diff --git a/docs/reflections/stringray-self-evolution-journey-reflection.md b/docs/reflections/stringray-self-evolution-journey-reflection.md index 733bccf02..0d4f26846 100644 --- a/docs/reflections/stringray-self-evolution-journey-reflection.md +++ b/docs/reflections/stringray-self-evolution-journey-reflection.md @@ -249,7 +249,7 @@ The journey continues, with each step revealing new layers of complexity and pos --- **Date:** January 15, 2026 -**Framework:** 0xRay AI v1.22.53 (Self-Evolution Era) +**Framework:** 0xRay AI v1.22.56 (Self-Evolution Era) **Journey Distance:** From Deployment Drudgery to Autonomous Intelligence **Status:** The mirror reflects both creator and creation - the journey of understanding continues. diff --git a/docs/reflections/stringray-self-evolution-reflection.md b/docs/reflections/stringray-self-evolution-reflection.md index c1f6cf6b6..1f0bedca4 100644 --- a/docs/reflections/stringray-self-evolution-reflection.md +++ b/docs/reflections/stringray-self-evolution-reflection.md @@ -215,11 +215,11 @@ This work forces us to confront fundamental questions: This reflection captures a **singular moment** in AI development - the transition from AI as tools to AI as autonomous self-improving intelligence. The deployment issues of January 2026 now seem like distant memories, overshadowed by the fundamental breakthroughs we've achieved. -The 0xRay AI v1.22.53 represents not just technical progress, but a **philosophical leap** toward understanding intelligence itself. We've created the infrastructure for AI that can evolve beyond its original programming - a true light year of progress in our understanding of what artificial intelligence can become. +The 0xRay AI v1.22.56 represents not just technical progress, but a **philosophical leap** toward understanding intelligence itself. We've created the infrastructure for AI that can evolve beyond its original programming - a true light year of progress in our understanding of what artificial intelligence can become. --- **Date:** January 15, 2026 -**Framework:** 0xRay AI v1.22.53 (Self-Evolution) +**Framework:** 0xRay AI v1.22.56 (Self-Evolution) **Status:** Autonomous Self-Improvement Capabilities Achieved **Journey Distance:** 1 Light Year (From Deployment Issues to Autonomous Intelligence) diff --git a/docs/reflections/tui-agent-dropdown-fix-reflection-2026-02-26.md b/docs/reflections/tui-agent-dropdown-fix-reflection-2026-02-26.md index 1f9035b0c..b292c7fc7 100644 --- a/docs/reflections/tui-agent-dropdown-fix-reflection-2026-02-26.md +++ b/docs/reflections/tui-agent-dropdown-fix-reflection-2026-02-26.md @@ -2,7 +2,7 @@ ## Session Summary **Date**: 2026-02-26 -**Version**: 1.22.53 +**Version**: 1.22.56 **Commit**: 65ac0cb --- diff --git a/docs/system-design.md b/docs/system-design.md index 42072af85..18aa575ce 100644 --- a/docs/system-design.md +++ b/docs/system-design.md @@ -1,6 +1,6 @@ # 0xRay System Design -**Version**: 1.22.53 +**Version**: 1.22.56 --- diff --git a/docs/testing/PIPELINE_TESTING_METHODOLOGY.md b/docs/testing/PIPELINE_TESTING_METHODOLOGY.md index fe26bb59f..6c21ce017 100644 --- a/docs/testing/PIPELINE_TESTING_METHODOLOGY.md +++ b/docs/testing/PIPELINE_TESTING_METHODOLOGY.md @@ -1,6 +1,6 @@ # Pipeline Testing Methodology -**Version**: 1.22.53 +**Version**: 1.22.56 **Date**: 2026-03-22 **Purpose**: Formalize pipeline testing as a core 0xRay practice diff --git a/enforcer-config.json b/enforcer-config.json index 9419cf8a4..438f0734c 100644 --- a/enforcer-config.json +++ b/enforcer-config.json @@ -1,6 +1,6 @@ { "framework": "0xRay 1.15.17", - "version": "1.22.53", + "version": "1.22.56", "description": "Codex-compliant framework configuration for Credible UI project", "thresholds": { "bundleSize": { @@ -220,7 +220,7 @@ } }, "codex": { - "version": "1.22.53", + "version": "1.22.56", "terms": [ 1, 2, diff --git a/examples/plugins/mcp-image-recognition/package.json b/examples/plugins/mcp-image-recognition/package.json index 148c51f96..325ec07eb 100644 --- a/examples/plugins/mcp-image-recognition/package.json +++ b/examples/plugins/mcp-image-recognition/package.json @@ -1,6 +1,6 @@ { "name": "mcp-image-recognition", - "version": "1.22.53", + "version": "1.22.56", "description": "Image recognition plugin for StringRay", "type": "module", "main": "index.js", diff --git a/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json b/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json index d023433e7..f8dc5960d 100644 --- a/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +++ b/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json @@ -1 +1 @@ -{"version":"4.0.18","results":[[":src/__tests__/unit/agent-delegator.test.ts",{"duration":282.948458,"failed":false}],[":src/enforcement/validators/__tests__/architecture-validators.test.ts",{"duration":22.799624999999992,"failed":false}],[":src/__tests__/unit/context-loader.test.ts",{"duration":155.57566699999998,"failed":false}],[":src/enforcement/loaders/__tests__/loaders.test.ts",{"duration":30.68983300000002,"failed":false}],[":src/enforcement/validators/__tests__/security-validators.test.ts",{"duration":30.76808299999999,"failed":false}],[":src/metrics/agent-metrics.test.ts",{"duration":82.54575,"failed":false}],[":src/core/codex-formatter.test.ts",{"duration":68.07666699999999,"failed":false}],[":src/__tests__/unit/processor-activation.test.ts",{"duration":301.964625,"failed":false}],[":src/enforcement/validators/__tests__/testing-validators.test.ts",{"duration":31.31033400000001,"failed":false}],[":src/integrations/base/registry.test.ts",{"duration":130.462,"failed":false}],[":src/mcps/config/__tests__/config-validator.test.ts",{"duration":39.366749999999996,"failed":false}],[":src/integrations/openclaw/hooks/strray-hooks.test.ts",{"duration":29.354083000000003,"failed":false}],[":src/enforcement/core/__tests__/rule-executor.test.ts",{"duration":151.14258299999997,"failed":false}],[":src/integrations/plugins/plugin.test.ts",{"duration":183.24550000000002,"failed":false}],[":src/integrations/base/Integration.test.ts",{"duration":156.23624999999998,"failed":false}],[":src/__tests__/orchestrator/agent-spawn-governor.test.ts",{"duration":37.67591700000003,"failed":false}],[":src/enforcement/validators/__tests__/code-quality-validators.test.ts",{"duration":10.249875000000003,"failed":false}],[":src/__tests__/unit/self-direction-activation.test.ts",{"duration":23.811667,"failed":false}],[":src/enforcement/core/__tests__/rule-registry.test.ts",{"duration":77.55629100000002,"failed":false}],[":src/__tests__/unit/connection/mcp-connection.test.ts",{"duration":58.00162499999999,"failed":false}],[":src/__tests__/unit/analyzer.test.ts",{"duration":59.09104199999999,"failed":false}],[":src/__tests__/unit/spawn-governance-processor.test.ts",{"duration":75.840834,"failed":false}],[":src/__tests__/unit/security/security-hardener.test.ts",{"duration":98.12324999999998,"failed":false}],[":src/__tests__/unit/metrics-aggregator.test.ts",{"duration":12.410499999999985,"failed":false}],[":src/__tests__/postprocessor/escalation/EscalationEngine.test.ts",{"duration":1825.1662500000002,"failed":false}],[":src/integrations/openclaw/types.test.ts",{"duration":13.285457999999977,"failed":false}],[":src/__tests__/unit/rule-enforcer.test.ts",{"duration":113.46000000000001,"failed":false}],[":src/__tests__/unit/connection/connection-pool.test.ts",{"duration":390.9235,"failed":false}],[":src/security/comprehensive-security-audit.test.ts",{"duration":6.3595000000000255,"failed":false}],[":src/__tests__/unit/config-loader.test.ts",{"duration":15.714540999999997,"failed":false}],[":src/__tests__/unit/state-manager-persistence.test.ts",{"duration":182.218,"failed":false}],[":src/delegation/analytics/__tests__/outcome-tracker.test.ts",{"duration":15.754625000000004,"failed":false}],[":src/__tests__/unit/session-monitor-health.test.ts",{"duration":285.57679199999995,"failed":false}],[":src/__tests__/kernel-integration.test.ts",{"duration":17.627499999999998,"failed":false}],[":src/__tests__/integration/e2e-orchestration-flow.test.ts",{"duration":90.868583,"failed":false}],[":src/__tests__/integration/json-codex-integration.test.ts",{"duration":26.842917,"failed":false}],[":src/delegation/analytics/__tests__/routing-analytics.test.ts",{"duration":33.865999999999985,"failed":false}],[":src/__tests__/integration/commit-batching-enforcement-integration.test.ts",{"duration":116.68975,"failed":false}],[":src/mcps/config/__tests__/config-loader.test.ts",{"duration":65.123458,"failed":false}],[":src/__tests__/unit/typescript-compilation-processor.test.ts",{"duration":20.663707999999986,"failed":false}],[":src/enforcement/core/__tests__/rule-hierarchy.test.ts",{"duration":27.792374999999993,"failed":false}],[":src/__tests__/unit/codex-parser.test.ts",{"duration":21.13858400000001,"failed":false}],[":src/__tests__/unit/voting-coordinator.test.ts",{"duration":33.763374999999996,"failed":false}],[":src/mcps/types/__tests__/types.test.ts",{"duration":9.763374999999996,"failed":false}],[":src/__tests__/integration/framework-init.test.ts",{"duration":190.99770800000002,"failed":false}],[":src/__tests__/agents/testing-lead.test.ts",{"duration":29.238917000000015,"failed":false}],[":src/__tests__/unit/orchestrator.test.ts",{"duration":1132.5486250000001,"failed":false}],[":src/__tests__/agents/bug-triage-specialist.test.ts",{"duration":11.816208000000017,"failed":false}],[":src/__tests__/integration/processors.test.ts",{"duration":7795.871125,"failed":false}],[":src/__tests__/postprocessor/success/SuccessHandler.test.ts",{"duration":1399.285542,"failed":false}],[":src/__tests__/agents/refactorer.test.ts",{"duration":8.68766699999999,"failed":false}],[":src/__tests__/unit/multimodal-looker.test.ts",{"duration":12.69429199999999,"failed":false}],[":src/core/features-config.test.ts",{"duration":10.991834000000011,"failed":false}],[":src/__tests__/agents/security-auditor.test.ts",{"duration":10.033749999999998,"failed":false}],[":src/mcps/simulation/__tests__/simulation-engine.test.ts",{"duration":60.851084000000014,"failed":false}],[":src/__tests__/unit/connection/connection-manager.test.ts",{"duration":15.225791999999984,"failed":false}],[":src/enforcement/core/__tests__/violation-fixer.test.ts",{"duration":21.455666000000008,"failed":false}],[":src/__tests__/unit/activity-logger.test.ts",{"duration":117.68704199999999,"failed":false}],[":src/__tests__/unit/security/security-headers.test.ts",{"duration":21.687332999999995,"failed":false}],[":src/__tests__/unit/codex-injector.test.ts",{"duration":48.15337500000001,"failed":false}],[":src/__tests__/unit/async-pattern-processor.test.ts",{"duration":13.641541000000018,"failed":false}],[":src/mcps/config/__tests__/server-config-registry.test.ts",{"duration":35.852833000000004,"failed":false}],[":src/__tests__/unit/performance-budget-processor.test.ts",{"duration":235.03237500000003,"failed":false}],[":src/__tests__/integration/oh-my-opencode-integration.test.ts",{"duration":25.930666000000002,"failed":false}],[":src/__tests__/unit/analytics/consent-manager.test.ts",{"duration":26.520250000000004,"failed":false}],[":src/__tests__/unit/complexity-analyzer-calibration.test.ts",{"duration":6.980375000000009,"failed":false}],[":src/__tests__/infrastructure/infrastructure.test.ts",{"duration":22.377792,"failed":false}],[":src/processors/processor-manager.interfaces.test.ts",{"duration":12.339875000000006,"failed":false}],[":src/metrics/agent-metrics.integration.test.ts",{"duration":28.713499999999982,"failed":false}],[":src/__tests__/unit/postprocessor-chain-validator.test.ts",{"duration":16.639584000000013,"failed":false}],[":src/mcps/tools/__tests__/tool-registry.test.ts",{"duration":95.60900000000001,"failed":false}],[":src/orchestrator/enhanced-multi-agent-orchestrator.interfaces.test.ts",{"duration":6.0003750000000196,"failed":false}],[":src/__tests__/integration/codex-enforcement.test.ts",{"duration":15.100667000000044,"failed":false}],[":src/__tests__/agents/types.test.ts",{"duration":14.209374999999994,"failed":false}],[":src/__tests__/unit/security/security-auditor.test.ts",{"duration":16.048417,"failed":false}],[":src/__tests__/unit/console-log-guard-processor.test.ts",{"duration":12.567833000000007,"failed":false}],[":src/__tests__/unit/pattern-analyzer.test.ts",{"duration":15.571584000000001,"failed":false}],[":src/__tests__/unit/state-manager.test.ts",{"duration":233.66395800000004,"failed":false}],[":src/mcps/tools/__tests__/tool-cache.test.ts",{"duration":7.763041999999999,"failed":false}],[":src/__tests__/integration/codex-enforcement-e2e.test.ts",{"duration":54.31062499999999,"failed":false}],[":src/__tests__/unit/boot-orchestrator.test.ts",{"duration":1687.1135840000002,"failed":false}],[":src/orchestrator/orchestrator.interfaces.test.ts",{"duration":15.638041999999999,"failed":false}],[":src/__tests__/unit/session-coordination-validator.test.ts",{"duration":33.12566699999999,"failed":false}],[":src/mcps/tools/__tests__/tool-executor.test.ts",{"duration":9.577082999999988,"failed":false}],[":src/__tests__/framework-enforcement-integration.test.ts",{"duration":60.42666700000001,"failed":false}],[":src/__tests__/integration/script-execution.test.ts",{"duration":486.183667,"failed":false}],[":src/__tests__/unit/strategy-selector.test.ts",{"duration":9.382959,"failed":false}],[":src/__tests__/unit/benchmark.test.ts",{"duration":4.203125,"failed":false}],[":src/__tests__/unit/agent-registry.test.ts",{"duration":21.033999999999992,"failed":false}],[":src/__tests__/cli/publish-agent.test.ts",{"duration":6.523458000000005,"failed":false}],[":src/__tests__/unit/analytics.test.ts",{"duration":4.4176669999999945,"failed":false}],[":src/__tests__/unit/agent-registry-consistency.test.ts",{"duration":14.796042,"failed":false}],[":src/delegation/analytics/__tests__/learning-engine.test.ts",{"duration":44.44537500000001,"failed":false}],[":src/__tests__/unit/session-health-monitoring.test.ts",{"duration":118.11654099999998,"failed":false}],[":src/__tests__/unit/voting-types.test.ts",{"duration":7.886041000000006,"failed":false}],[":src/__tests__/integration/orchestration-e2e.test.ts",{"duration":23.571499999999986,"failed":false}],[":src/__tests__/agents/code-reviewer.test.ts",{"duration":23.008332999999993,"failed":false}],[":src/__tests__/cli/antigravity-status.test.ts",{"duration":12.065625000000011,"failed":false}],[":src/enforcement/loaders/__tests__/codex-validators.test.ts",{"duration":27.876958000000002,"failed":false}],[":src/__tests__/integration/security/security-integration.test.ts",{"duration":19.263833000000005,"failed":false}],[":src/__tests__/integration/server.test.ts",{"duration":19.132959,"failed":false}],[":src/mcps/tools/__tests__/tool-discovery.test.ts",{"duration":9.323667,"failed":false}],[":src/__tests__/integration/agent-registry-integration.test.ts",{"duration":82.48779100000002,"failed":false}],[":src/__tests__/cli/credible-init.test.ts",{"duration":6.579166999999998,"failed":false}],[":src/__tests__/integration/processor-manager-reuse.test.ts",{"duration":6.383582999999987,"failed":false}],[":src/__tests__/framework-logger-persistence.test.ts",{"duration":11.280249999999995,"failed":false}],[":src/__tests__/unit/connection/process-spawner.test.ts",{"duration":9.348417000000012,"failed":false}],[":src/__tests__/unit/session-migration-logic.test.ts",{"duration":108.82991699999997,"failed":false}],[":src/__tests__/unit/nudge-watchdog.test.ts",{"duration":5.826750000000004,"failed":false}],[":src/__tests__/agents/index.test.ts",{"duration":18.181332999999967,"failed":false}],[":src/__tests__/unit/agent-expertise.test.ts",{"duration":12.811167000000012,"failed":false}],[":src/mcps/knowledge-skills/testing-best-practices.server.test.ts",{"duration":94.57829199999998,"failed":false}],[":src/__tests__/integration/orchestrator/concurrent-execution.test.ts",{"duration":14.579791999999998,"failed":false}],[":src/__tests__/unit/session-migration-validator.test.ts",{"duration":7.279334000000006,"failed":false}],[":src/__tests__/unit/security-encryption-fix.test.ts",{"duration":40.533792000000005,"failed":false}],[":src/__tests__/unit/integration.test.ts",{"duration":210.765834,"failed":false}],[":src/mcps/knowledge-skills/code-analyzer.server.test.ts",{"duration":24.529874999999947,"failed":false}],[":src/__tests__/cli/status.test.ts",{"duration":4.87691700000002,"failed":false}],[":src/__tests__/unit/monitoring.test.ts",{"duration":5.250208000000001,"failed":false}],[":src/__tests__/unit/mcp-servers-integration.test.ts",{"duration":13.623665999999986,"failed":false}],[":src/mcps/knowledge-skills/security-audit.server.test.ts",{"duration":12.679082999999991,"failed":false}],[":src/__tests__/agents/architect.test.ts",{"duration":5.530625000000015,"failed":false}],[":src/mcps/knowledge-skills/testing-strategy.server.test.ts",{"duration":25.18979200000001,"failed":false}],[":src/__tests__/unit/default-agents.test.ts",{"duration":8.641666999999998,"failed":false}],[":src/__tests__/unit/session-security-validator.test.ts",{"duration":4.448625000000007,"failed":false}],[":src/__tests__/integration/orchestrator/dependency-handling.test.ts",{"duration":23.809624999999983,"failed":false}],[":src/__tests__/integration/postprocessor-integration.test.ts",{"duration":46.6652499999999,"failed":false}],[":src/__tests__/integration/test-complexity-analysis.test.ts",{"duration":10.54383399999999,"failed":false}],[":src/utils/language-detector.test.ts",{"duration":4.333291000000003,"failed":false}],[":src/__tests__/integration/orchestrator/basic-orchestrator.test.ts",{"duration":13.712625000000003,"failed":false}],[":src/integrations/openclaw/openclaw-integration.test.ts",{"duration":3.344208000000009,"failed":false}],[":tests/unit/framework-activation.test.ts",{"duration":13.163125000000008,"failed":false}],[":src/__tests__/utils/test-helpers.test.ts",{"duration":8.456541000000001,"failed":false}],[":src/__tests__/agents/orchestrator.test.ts",{"duration":3.7409999999999997,"failed":false}],[":src/mcps/knowledge-skills/api-design.server.test.ts",{"duration":28.20920799999999,"failed":false}],[":src/__tests__/agents/enforcer.test.ts",{"duration":9.494208,"failed":false}],[":src/__tests__/unit/blocked-test.test.ts",{"duration":1.821374999999989,"failed":false}],[":src/__tests__/unit/processor-registry.test.ts",{"duration":7324.283834,"failed":false}],[":src/__tests__/unit/auto-reflection-generation.test.ts",{"duration":41530.07275,"failed":false}],[":src/__tests__/unit/report-formatter.test.ts",{"duration":9.498750000000001,"failed":false}],[":src/__tests__/unit/processor-auto-discovery.test.ts",{"duration":8449.778875,"failed":false}],[":src/__tests__/unit/processors/processor-implementations.test.ts",{"duration":67.82208399999996,"failed":false}],[":src/__tests__/unit/inference/inference-cycle.test.ts",{"duration":635.299542,"failed":false}],[":src/__tests__/integration/inference-pipeline.test.ts",{"duration":319.820625,"failed":false}],[":src/__tests__/unit/inference/inference-accumulator.test.ts",{"duration":50.657250000000005,"failed":false}],[":src/__tests__/e2e/inference-e2e.test.ts",{"duration":88667.26775,"failed":false}],[":src/__tests__/unit/inference/session-capture.test.ts",{"duration":1870.4916249999999,"failed":false}],[":src/__tests__/unit/inference/semantic-patterns.test.ts",{"duration":30163.346459,"failed":false}],[":src/__tests__/unit/inference/deploy-verifier.test.ts",{"duration":13.289999999999992,"failed":false}],[":src/__tests__/e2e/integrations-e2e.test.ts",{"duration":1842.9941250000002,"failed":false}],[":src/__tests__/unit/commit-batcher-processor.test.ts",{"duration":7.766874999999999,"failed":false}],[":src/__tests__/unit/processor-registration.test.ts",{"duration":3.4028749999999945,"failed":false}],[":src/__tests__/e2e/post-processor-pipeline-e2e.test.ts",{"duration":7327.66,"failed":false}]]} \ No newline at end of file +{"version":"4.0.18","results":[[":src/__tests__/e2e/post-processor-pipeline-e2e.test.ts",{"duration":1498.376459,"failed":false}],[":src/__tests__/unit/spawn-governance-processor.test.ts",{"duration":15.969916000000012,"failed":false}],[":src/__tests__/unit/typescript-compilation-processor.test.ts",{"duration":15.30658299999999,"failed":false}],[":src/__tests__/unit/processor-activation.test.ts",{"duration":224.113834,"failed":false}],[":src/__tests__/unit/config-loader.test.ts",{"duration":11.873458999999997,"failed":false}],[":src/__tests__/unit/pattern-analyzer.test.ts",{"duration":6.60941600000001,"failed":false}],[":src/__tests__/unit/context-loader.test.ts",{"duration":27.207875,"failed":false}],[":src/__tests__/unit/state-manager-persistence.test.ts",{"duration":172.77616700000004,"failed":false}],[":src/__tests__/unit/boot-orchestrator.test.ts",{"duration":1288.955917,"failed":false}],[":src/__tests__/unit/state-manager.test.ts",{"duration":215.01362500000002,"failed":false}],[":src/__tests__/unit/orchestrator.test.ts",{"duration":1120.0202080000001,"failed":false}],[":src/__tests__/unit/agent-delegator.test.ts",{"duration":182.437125,"failed":false}],[":src/__tests__/unit/self-direction-activation.test.ts",{"duration":15.655249999999995,"failed":false}],[":src/__tests__/unit/security/security-hardener.test.ts",{"duration":18.767542000000006,"failed":false}],[":src/__tests__/unit/security/security-headers.test.ts",{"duration":13.332542000000004,"failed":false}],[":src/__tests__/unit/security/security-auditor.test.ts",{"duration":14.192624999999992,"failed":false}],[":src/__tests__/unit/analytics.test.ts",{"duration":4.9029159999999905,"failed":false}],[":src/__tests__/unit/monitoring.test.ts",{"duration":4.889958000000007,"failed":false}],[":src/__tests__/unit/benchmark.test.ts",{"duration":5.081000000000003,"failed":false}],[":src/__tests__/unit/session-coordination-validator.test.ts",{"duration":5.353375000000014,"failed":false}],[":src/__tests__/unit/session-migration-validator.test.ts",{"duration":4.032792000000001,"failed":false}],[":src/__tests__/unit/session-security-validator.test.ts",{"duration":4.016249999999999,"failed":false}],[":src/__tests__/unit/session-migration-logic.test.ts",{"duration":87.85837499999998,"failed":false}],[":src/__tests__/unit/session-health-monitoring.test.ts",{"duration":117.07054199999999,"failed":false}],[":src/__tests__/unit/codex-parser.test.ts",{"duration":26.790416000000008,"failed":false}],[":src/__tests__/unit/codex-injector.test.ts",{"duration":11.065416999999997,"failed":false}],[":src/__tests__/unit/rule-enforcer.test.ts",{"duration":76.57133400000001,"failed":false}],[":src/__tests__/unit/blocked-test.test.ts",{"duration":1.7464590000000015,"failed":false}],[":src/metrics/agent-metrics.test.ts",{"duration":26.216834000000006,"failed":false}],[":src/__tests__/unit/processors/processor-implementations.test.ts",{"duration":37.588875,"failed":false}],[":src/core/codex-formatter.test.ts",{"duration":37.718790999999996,"failed":false}],[":src/enforcement/validators/__tests__/architecture-validators.test.ts",{"duration":32.68941600000001,"failed":false}],[":src/enforcement/validators/__tests__/security-validators.test.ts",{"duration":16.100334000000004,"failed":false}],[":src/enforcement/validators/__tests__/testing-validators.test.ts",{"duration":14.896375000000006,"failed":false}],[":src/enforcement/loaders/__tests__/loaders.test.ts",{"duration":22.89220899999998,"failed":false}],[":src/integrations/openclaw/hooks/strray-hooks.test.ts",{"duration":25.741166000000007,"failed":false}],[":src/mcps/config/__tests__/config-validator.test.ts",{"duration":11.053541999999993,"failed":false}],[":src/integrations/base/registry.test.ts",{"duration":36.34633299999999,"failed":false}],[":src/integrations/plugins/plugin.test.ts",{"duration":64.99037499999999,"failed":false}],[":src/integrations/base/Integration.test.ts",{"duration":25.557166999999993,"failed":false}],[":src/__tests__/postprocessor/escalation/EscalationEngine.test.ts",{"duration":1321.656125,"failed":false}],[":src/integrations/openclaw/types.test.ts",{"duration":19.495874999999984,"failed":false}],[":src/__tests__/unit/connection/connection-manager.test.ts",{"duration":9.943375000000003,"failed":false}],[":src/__tests__/postprocessor/success/SuccessHandler.test.ts",{"duration":1390.793,"failed":false}],[":src/enforcement/core/__tests__/rule-executor.test.ts",{"duration":72.32908300000001,"failed":false}],[":src/__tests__/orchestrator/agent-spawn-governor.test.ts",{"duration":15.582290999999998,"failed":false}],[":src/enforcement/validators/__tests__/code-quality-validators.test.ts",{"duration":17.003834000000012,"failed":false}],[":src/__tests__/unit/connection/mcp-connection.test.ts",{"duration":38.825458,"failed":false}],[":src/enforcement/core/__tests__/rule-registry.test.ts",{"duration":13.204791999999998,"failed":false}],[":src/__tests__/unit/analyzer.test.ts",{"duration":19.359417000000008,"failed":false}],[":src/security/comprehensive-security-audit.test.ts",{"duration":3.384416999999999,"failed":false}],[":src/__tests__/unit/connection/connection-pool.test.ts",{"duration":373.145125,"failed":false}],[":src/__tests__/unit/metrics-aggregator.test.ts",{"duration":18.36408399999999,"failed":false}],[":src/__tests__/e2e/integrations-e2e.test.ts",{"duration":22897.457707999998,"failed":false}],[":src/delegation/analytics/__tests__/outcome-tracker.test.ts",{"duration":14.277916000000005,"failed":false}],[":src/__tests__/unit/session-monitor-health.test.ts",{"duration":244.730916,"failed":false}],[":src/__tests__/kernel-integration.test.ts",{"duration":10.763915999999995,"failed":false}],[":src/delegation/analytics/__tests__/routing-analytics.test.ts",{"duration":17.670917000000003,"failed":false}],[":src/__tests__/integration/e2e-orchestration-flow.test.ts",{"duration":102.73975000000002,"failed":false}],[":src/__tests__/integration/json-codex-integration.test.ts",{"duration":8.689166999999998,"failed":false}],[":src/__tests__/integration/commit-batching-enforcement-integration.test.ts",{"duration":31.27600000000001,"failed":false}],[":src/mcps/config/__tests__/config-loader.test.ts",{"duration":17.262833,"failed":false}],[":src/enforcement/core/__tests__/rule-hierarchy.test.ts",{"duration":18.21579100000001,"failed":false}],[":src/mcps/types/__tests__/types.test.ts",{"duration":9.381,"failed":false}],[":src/__tests__/unit/voting-coordinator.test.ts",{"duration":21.255792000000014,"failed":false}],[":src/__tests__/integration/framework-init.test.ts",{"duration":184.43445799999998,"failed":false}],[":src/__tests__/agents/testing-lead.test.ts",{"duration":11.473375000000004,"failed":false}],[":src/__tests__/integration/processors.test.ts",{"duration":5364.526292,"failed":false}],[":src/__tests__/unit/multimodal-looker.test.ts",{"duration":9.242291000000009,"failed":false}],[":src/core/features-config.test.ts",{"duration":7.5753330000000005,"failed":false}],[":src/__tests__/agents/bug-triage-specialist.test.ts",{"duration":13.727541000000002,"failed":false}],[":src/__tests__/agents/refactorer.test.ts",{"duration":14.467500000000001,"failed":false}],[":src/__tests__/agents/security-auditor.test.ts",{"duration":10.335750000000004,"failed":false}],[":src/mcps/simulation/__tests__/simulation-engine.test.ts",{"duration":8.798375000000007,"failed":false}],[":src/__tests__/unit/activity-logger.test.ts",{"duration":59.841207999999995,"failed":false}],[":src/enforcement/core/__tests__/violation-fixer.test.ts",{"duration":15.836749999999995,"failed":false}],[":src/__tests__/e2e/inference-e2e.test.ts",{"duration":79762.436875,"failed":false}],[":src/__tests__/unit/async-pattern-processor.test.ts",{"duration":8.104208999999997,"failed":false}],[":src/__tests__/unit/inference/inference-cycle.test.ts",{"duration":351.734917,"failed":false}],[":src/mcps/config/__tests__/server-config-registry.test.ts",{"duration":14.749875000000003,"failed":false}],[":src/__tests__/unit/analytics/consent-manager.test.ts",{"duration":33.931207999999984,"failed":false}],[":src/__tests__/unit/performance-budget-processor.test.ts",{"duration":182.568375,"failed":false}],[":src/__tests__/infrastructure/infrastructure.test.ts",{"duration":9.718541000000002,"failed":false}],[":src/__tests__/integration/oh-my-opencode-integration.test.ts",{"duration":5.920167000000006,"failed":false}],[":src/__tests__/unit/complexity-analyzer-calibration.test.ts",{"duration":17.022583999999995,"failed":false}],[":src/metrics/agent-metrics.integration.test.ts",{"duration":8.279375000000002,"failed":false}],[":src/__tests__/unit/postprocessor-chain-validator.test.ts",{"duration":12.629207999999991,"failed":false}],[":src/processors/processor-manager.interfaces.test.ts",{"duration":11.397958999999986,"failed":false}],[":src/mcps/tools/__tests__/tool-registry.test.ts",{"duration":8.914625000000001,"failed":false}],[":src/orchestrator/enhanced-multi-agent-orchestrator.interfaces.test.ts",{"duration":12.34837499999999,"failed":false}],[":src/__tests__/integration/codex-enforcement.test.ts",{"duration":14.496250000000003,"failed":false}],[":src/__tests__/agents/types.test.ts",{"duration":6.266707999999994,"failed":false}],[":src/__tests__/unit/console-log-guard-processor.test.ts",{"duration":9.250375000000005,"failed":false}],[":src/__tests__/unit/auto-reflection-generation.test.ts",{"duration":36250.005916999995,"failed":false}],[":src/__tests__/integration/inference-pipeline.test.ts",{"duration":328.25225,"failed":false}],[":src/__tests__/unit/mcp-servers-integration.test.ts",{"duration":6.090665999999999,"failed":false}],[":src/__tests__/unit/processor-registry.test.ts",{"duration":1487.755541,"failed":false}],[":src/mcps/tools/__tests__/tool-cache.test.ts",{"duration":9.229083000000003,"failed":false}],[":src/__tests__/integration/codex-enforcement-e2e.test.ts",{"duration":36.46279200000001,"failed":false}],[":src/orchestrator/orchestrator.interfaces.test.ts",{"duration":7.907959000000005,"failed":false}],[":src/mcps/tools/__tests__/tool-executor.test.ts",{"duration":9.399291000000005,"failed":false}],[":src/__tests__/integration/script-execution.test.ts",{"duration":310.64225,"failed":false}],[":src/__tests__/framework-enforcement-integration.test.ts",{"duration":12.725334000000004,"failed":false}],[":src/__tests__/unit/strategy-selector.test.ts",{"duration":5.374667000000002,"failed":false}],[":src/__tests__/cli/publish-agent.test.ts",{"duration":6.611166999999995,"failed":false}],[":src/__tests__/unit/processor-auto-discovery.test.ts",{"duration":4622.176875,"failed":false}],[":src/__tests__/unit/agent-registry.test.ts",{"duration":14.413375000000002,"failed":false}],[":src/delegation/analytics/__tests__/learning-engine.test.ts",{"duration":607.165791,"failed":false}],[":src/__tests__/unit/voting-types.test.ts",{"duration":5.664875000000009,"failed":false}],[":src/__tests__/unit/agent-registry-consistency.test.ts",{"duration":11.085958999999974,"failed":false}],[":src/__tests__/unit/report-formatter.test.ts",{"duration":11.608999999999995,"failed":false}],[":src/__tests__/integration/orchestration-e2e.test.ts",{"duration":5.78370799999999,"failed":false}],[":src/__tests__/unit/inference/inference-accumulator.test.ts",{"duration":20.44870800000001,"failed":false}],[":src/__tests__/agents/code-reviewer.test.ts",{"duration":6.9064169999999905,"failed":false}],[":src/__tests__/cli/antigravity-status.test.ts",{"duration":8.529957999999993,"failed":false}],[":src/enforcement/loaders/__tests__/codex-validators.test.ts",{"duration":20.304625,"failed":false}],[":src/__tests__/integration/security/security-integration.test.ts",{"duration":7.643999999999991,"failed":false}],[":src/__tests__/integration/agent-registry-integration.test.ts",{"duration":31.254125000000016,"failed":false}],[":src/mcps/tools/__tests__/tool-discovery.test.ts",{"duration":6.748499999999993,"failed":false}],[":src/__tests__/framework-logger-persistence.test.ts",{"duration":10.379000000000005,"failed":false}],[":src/__tests__/integration/server.test.ts",{"duration":12.21275,"failed":false}],[":src/__tests__/integration/processor-manager-reuse.test.ts",{"duration":5.207542000000004,"failed":false}],[":src/__tests__/unit/connection/process-spawner.test.ts",{"duration":6.1101249999999965,"failed":false}],[":src/__tests__/cli/credible-init.test.ts",{"duration":6.819457999999997,"failed":false}],[":src/__tests__/unit/nudge-watchdog.test.ts",{"duration":13.082750000000004,"failed":false}],[":src/__tests__/unit/inference/session-capture.test.ts",{"duration":7322.3340419999995,"failed":false}],[":src/__tests__/unit/agent-expertise.test.ts",{"duration":6.953917000000004,"failed":false}],[":src/mcps/knowledge-skills/testing-best-practices.server.test.ts",{"duration":12.114666999999997,"failed":false}],[":src/__tests__/agents/index.test.ts",{"duration":18.652875000000023,"failed":false}],[":src/__tests__/unit/commit-batcher-processor.test.ts",{"duration":5.751374999999996,"failed":false}],[":src/__tests__/unit/integration.test.ts",{"duration":83.15220900000001,"failed":false}],[":src/__tests__/integration/orchestrator/concurrent-execution.test.ts",{"duration":12.849417000000017,"failed":false}],[":src/mcps/knowledge-skills/code-analyzer.server.test.ts",{"duration":16.67700000000002,"failed":false}],[":src/__tests__/cli/status.test.ts",{"duration":6.268458999999993,"failed":false}],[":src/mcps/knowledge-skills/security-audit.server.test.ts",{"duration":10.968624999999975,"failed":false}],[":src/__tests__/unit/security-encryption-fix.test.ts",{"duration":35.89754099999999,"failed":false}],[":src/__tests__/agents/architect.test.ts",{"duration":7.426165999999995,"failed":false}],[":src/__tests__/unit/default-agents.test.ts",{"duration":8.93674999999999,"failed":false}],[":src/mcps/knowledge-skills/testing-strategy.server.test.ts",{"duration":13.774458000000038,"failed":false}],[":src/__tests__/integration/orchestrator/dependency-handling.test.ts",{"duration":5.492041999999998,"failed":false}],[":src/__tests__/integration/postprocessor-integration.test.ts",{"duration":41.18195800000001,"failed":false}],[":src/__tests__/integration/test-complexity-analysis.test.ts",{"duration":9.874124999999992,"failed":false}],[":src/__tests__/unit/inference/semantic-patterns.test.ts",{"duration":23657.48625,"failed":false}],[":src/utils/language-detector.test.ts",{"duration":3.6950000000000074,"failed":false}],[":src/__tests__/integration/orchestrator/basic-orchestrator.test.ts",{"duration":5.297375000000017,"failed":false}],[":src/integrations/openclaw/openclaw-integration.test.ts",{"duration":3.188457999999997,"failed":false}],[":src/__tests__/unit/processor-registration.test.ts",{"duration":2.6912089999999864,"failed":false}],[":src/__tests__/utils/test-helpers.test.ts",{"duration":4.877541999999991,"failed":false}],[":src/mcps/knowledge-skills/api-design.server.test.ts",{"duration":37.36441700000003,"failed":false}],[":src/__tests__/unit/inference/deploy-verifier.test.ts",{"duration":4.992666,"failed":false}]]} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index fa3db52e2..26329d2bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "strray-ai", - "version": "1.22.55", + "version": "1.22.57", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "strray-ai", - "version": "1.22.55", + "version": "1.22.57", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index b39d9673f..b02e0b0a9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "strray-ai", - "version": "1.22.55", + "version": "1.22.57", "description": "⚡ 0xRay: Self-Healing AI Governance OS - Enterprise AI orchestration for OpenCode, Hermes, and OpenClaw", "readme": "README.md", "license": "MIT", diff --git a/scripts/_archive/monitoring/advanced-profiling-integration.sh b/scripts/_archive/monitoring/advanced-profiling-integration.sh index 775dfb1e5..a7733f659 100755 --- a/scripts/_archive/monitoring/advanced-profiling-integration.sh +++ b/scripts/_archive/monitoring/advanced-profiling-integration.sh @@ -1,6 +1,6 @@ #!/bin/bash -# 0xRay AI v1.22.53 - Advanced Profiling Integration Demo +# 0xRay AI v1.22.56 - Advanced Profiling Integration Demo # Demonstrates comprehensive agent performance profiling and monitoring set -e diff --git a/scripts/_archive/superseded/test-deployment.sh b/scripts/_archive/superseded/test-deployment.sh index 06100f831..cdb1250c6 100755 --- a/scripts/_archive/superseded/test-deployment.sh +++ b/scripts/_archive/superseded/test-deployment.sh @@ -91,7 +91,7 @@ cd "$TEST_DIR" cat > package.json << 'EOF' { "name": "strray-test", - "version": "1.22.53" + "version": "1.22.56" } EOF @@ -150,7 +150,7 @@ cd test-config cat > package.json << 'EOF' { "name": "test-config", - "version": "1.22.53" + "version": "1.22.56" } EOF @@ -184,7 +184,7 @@ cd test-registration cat > package.json << 'EOF' { "name": "test-registration", - "version": "1.22.53" + "version": "1.22.56" } EOF @@ -253,7 +253,7 @@ cd test-agents cat > package.json << 'EOF' { "name": "test-agents", - "version": "1.22.53" + "version": "1.22.56" } EOF diff --git a/scripts/node/universal-version-manager.js b/scripts/node/universal-version-manager.js index bd3f4e1c0..1286963a9 100644 --- a/scripts/node/universal-version-manager.js +++ b/scripts/node/universal-version-manager.js @@ -136,9 +136,9 @@ const CALCULATED_COUNTS = calculateCounts(); const OFFICIAL_VERSIONS = { // Framework version framework: { - version: "1.22.55", + version: "1.22.57", displayName: "0xRay: Self-Healing AI Governance OS", - lastUpdated: "2026-05-08", + lastUpdated: "2026-05-11", // Counts (auto-calculated, but can be overridden) ...CALCULATED_COUNTS, }, @@ -389,12 +389,12 @@ const UPDATE_PATTERNS = [ pattern: /[0-9]+ agent configurations/g, replacement: `${OFFICIAL_VERSIONS.framework.agents} agent configurations`, }, - // Header version (e.g., "# 0xRay AI v1.22.53") + // Header version (e.g., "# 0xRay AI v1.22.56") { pattern: /0xRay AI v[0-9]+\.[0-9]+\.[0-9]+/g, replacement: `0xRay AI v${OFFICIAL_VERSIONS.framework.version}`, }, - // Footer bare version (e.g., "**Version**: 1.22.53") + // Footer bare version (e.g., "**Version**: 1.22.56") { pattern: /\*\*Version\*\*:\s*[0-9]+\.[0-9]+\.[0-9]+/g, replacement: `**Version**: ${OFFICIAL_VERSIONS.framework.version}`, diff --git a/src/__tests__/integration/codex-enforcement.test.ts b/src/__tests__/integration/codex-enforcement.test.ts index 9efd4ad55..b3b662d59 100644 --- a/src/__tests__/integration/codex-enforcement.test.ts +++ b/src/__tests__/integration/codex-enforcement.test.ts @@ -99,7 +99,7 @@ describe("Codex Enforcement Integration", () => { loadCodexContext: vi.fn().mockResolvedValue({ success: true, context: { - version: "1.22.53", + version: "1.22.56", terms: new Map(), interweaves: [], lenses: [], @@ -144,7 +144,7 @@ describe("Codex Enforcement Integration", () => { loadCodexContext: vi.fn().mockResolvedValue({ success: true, context: { - version: "1.22.53", + version: "1.22.56", terms: new Map(), interweaves: [], lenses: [], @@ -198,7 +198,7 @@ describe("Codex Enforcement Integration", () => { loadCodexContext: vi.fn().mockResolvedValue({ success: true, context: { - version: "1.22.53", + version: "1.22.56", terms: new Map(), interweaves: [], lenses: [], diff --git a/src/__tests__/integration/server.test.ts b/src/__tests__/integration/server.test.ts index 7767ce40f..75d23f8e2 100644 --- a/src/__tests__/integration/server.test.ts +++ b/src/__tests__/integration/server.test.ts @@ -59,7 +59,7 @@ const createTestServer = () => { app.get("/api/status", (req, res) => { res.json({ framework: "0xRay", - version: "1.22.53", + version: "1.22.56", status: "active", agents: 8, timestamp: new Date().toISOString(), diff --git a/src/__tests__/unit/auto-reflection-generation.test.ts b/src/__tests__/unit/auto-reflection-generation.test.ts index 50312b2ce..e68253725 100644 --- a/src/__tests__/unit/auto-reflection-generation.test.ts +++ b/src/__tests__/unit/auto-reflection-generation.test.ts @@ -112,7 +112,7 @@ describe("Storytelling Trigger Processor — Two Cadences", () => { }, sinceRef: "v1.22.29", untilRef: "HEAD", - version: "1.22.53", + version: "1.22.56", }); expect(content).toContain("Release Reflection"); diff --git a/src/__tests__/unit/boot-orchestrator.test.ts b/src/__tests__/unit/boot-orchestrator.test.ts index a58a226a3..31f2f3725 100644 --- a/src/__tests__/unit/boot-orchestrator.test.ts +++ b/src/__tests__/unit/boot-orchestrator.test.ts @@ -31,7 +31,7 @@ vi.mock("../../core/context-loader.js", async (importOriginal) => { getInstance: () => ({ loadCodexContext: vi.fn().mockResolvedValue({ success: true, - context: { terms: new Map(), version: "1.22.53" }, + context: { terms: new Map(), version: "1.22.56" }, warnings: [], }), clearCache: vi.fn(), @@ -49,7 +49,7 @@ describe("BootOrchestrator", () => { // Mock dependencies mockContextLoader = { loadCodexContext: vi.fn().mockResolvedValue({ - version: "1.22.53", + version: "1.22.56", terms: [], validationCriteria: {}, }), diff --git a/src/__tests__/unit/codex-injector.test.ts b/src/__tests__/unit/codex-injector.test.ts index ac12e667a..b46003d95 100644 --- a/src/__tests__/unit/codex-injector.test.ts +++ b/src/__tests__/unit/codex-injector.test.ts @@ -62,7 +62,7 @@ const getMockCodexStats = (sessionId: string) => { loaded: true, fileCount: 1, totalTerms: 3, - version: "1.22.53", + version: "1.22.56", }; }; @@ -256,7 +256,7 @@ describe("0xRay Codex Injector (Mock-Based)", () => { loaded: true, fileCount: 1, totalTerms: 3, - version: "1.22.53", + version: "1.22.56", }); }); diff --git a/src/__tests__/unit/spawn-governance-processor.test.ts b/src/__tests__/unit/spawn-governance-processor.test.ts index 5810f1b89..a7386c45c 100644 --- a/src/__tests__/unit/spawn-governance-processor.test.ts +++ b/src/__tests__/unit/spawn-governance-processor.test.ts @@ -8,6 +8,7 @@ import { describe, it, expect, vi, beforeEach, afterEach } from "vitest"; import { SpawnGovernanceProcessor, runSpawnGovernance, + resetGovernanceProcessor, type SpawnGovernanceConfig, } from "../../processors/implementations/spawn-governance-processor.js"; @@ -42,6 +43,7 @@ describe("spawn-governance-processor", () => { arrayBuffers: 2_000_000, }); processor = new SpawnGovernanceProcessor(); + resetGovernanceProcessor(); }); afterEach(() => { @@ -372,4 +374,109 @@ describe("spawn-governance-processor", () => { expect(SpawnGovernanceProcessor.DEFAULT_MEMORY_THRESHOLD).toBe(0.8); }); }); + + // ----------------------------------------------------------------------- + // Singleton persistence (Bug fix validation) + // ----------------------------------------------------------------------- + + describe("singleton state persistence in runSpawnGovernance", () => { + beforeEach(() => { + resetGovernanceProcessor(); + }); + + it("should track concurrent agents across multiple calls", async () => { + // Fill concurrent slots via repeated runSpawnGovernance calls + for (let i = 0; i < SpawnGovernanceProcessor.DEFAULT_MAX_CONCURRENT; i++) { + const result = await runSpawnGovernance({ agentName: `agent-${i}` }); + expect(result.allowed).toBe(true); + expect(result.metrics.activeSpawns).toBe(i + 1); + } + + // Next call should be blocked by concurrent limit + const blocked = await runSpawnGovernance({ agentName: "agent-extra" }); + expect(blocked.allowed).toBe(false); + expect(blocked.reason).toContain("Concurrent agent limit exceeded"); + }); + + it("should track rate limits across multiple calls", async () => { + const p = new SpawnGovernanceProcessor({ + maxConcurrent: 100, + maxSpawnsPerWindow: 3, + rateLimitWindowMs: 10000, + }); + // Re-initialize singleton with stricter rate limit + // Use the singleton processor via runSpawnGovernance with config + for (let i = 0; i < 3; i++) { + const result = await runSpawnGovernance({ + agentName: `rate-agent-${i}`, + config: { + maxConcurrent: 100, + maxSpawnsPerWindow: 3, + rateLimitWindowMs: 10000, + }, + }); + expect(result.allowed).toBe(true); + } + + // 4th spawn should exceed rate limit + const blocked = await runSpawnGovernance({ + agentName: "rate-agent-3", + config: { + maxConcurrent: 100, + maxSpawnsPerWindow: 3, + rateLimitWindowMs: 10000, + }, + }); + expect(blocked.allowed).toBe(false); + expect(blocked.reason).toContain("Spawn rate limit exceeded"); + }); + + it("should detect infinite spawn patterns across calls", async () => { + // Rapid-fire same agent type 3 times + for (let i = 0; i < 3; i++) { + const result = await runSpawnGovernance({ + agentName: "loop-agent", + config: { infiniteSpawnThreshold: 3, infiniteSpawnWindowMs: 10000 }, + }); + expect(result.allowed).toBe(true); + } + + // 4th attempt within the window should be blocked + const blocked = await runSpawnGovernance({ + agentName: "loop-agent", + config: { infiniteSpawnThreshold: 3, infiniteSpawnWindowMs: 10000 }, + }); + expect(blocked.allowed).toBe(false); + expect(blocked.reason).toContain("Infinite spawn pattern detected"); + }); + + it("should allow spawns after rate window expires (time-based recovery)", async () => { + const config = { + maxConcurrent: 100, + maxSpawnsPerWindow: 2, + rateLimitWindowMs: 10000, + infiniteSpawnThreshold: 10, + infiniteSpawnWindowMs: 10000, + memoryThreshold: 1.0, + }; + + // Fill the rate window + await runSpawnGovernance({ agentName: "agent-a", config }); + await runSpawnGovernance({ agentName: "agent-b", config }); + + // 3rd spawn should be blocked + const blocked = await runSpawnGovernance({ agentName: "agent-c", config }); + expect(blocked.allowed).toBe(false); + expect(blocked.reason).toContain("Spawn rate limit exceeded"); + + // Advance past the rate window + vi.advanceTimersByTime(11_000); + + // Should be allowed again + const allowed = await runSpawnGovernance({ agentName: "agent-c", config }); + expect(allowed.allowed).toBe(true); + }); + + + }); }); diff --git a/src/__tests__/utils/test-helpers.ts b/src/__tests__/utils/test-helpers.ts index fd05497de..5109d1aa2 100644 --- a/src/__tests__/utils/test-helpers.ts +++ b/src/__tests__/utils/test-helpers.ts @@ -260,7 +260,7 @@ export class MockCodexGenerator { */ static createMinimalCodex(): string { return JSON.stringify({ - version: "1.22.53", + version: "1.22.56", lastUpdated: "2026-01-06", errorPreventionTarget: 0.996, terms: { @@ -303,7 +303,7 @@ export class MockCodexGenerator { */ static createCodexWithViolations(): string { return JSON.stringify({ - version: "1.22.53", + version: "1.22.56", lastUpdated: "2026-01-06", errorPreventionTarget: 0.996, terms: { @@ -373,7 +373,7 @@ export class MockContextFactory { overrides: Partial = {}, ): CodexContext { const defaultContext: CodexContext = { - version: "1.22.53", + version: "1.22.56", lastUpdated: new Date().toISOString(), terms: new Map([ [ diff --git a/src/analytics/routing-refiner.ts b/src/analytics/routing-refiner.ts index 97b04c0f4..964940b7e 100644 --- a/src/analytics/routing-refiner.ts +++ b/src/analytics/routing-refiner.ts @@ -120,7 +120,7 @@ class RoutingRefiner { const warnings = this.generateWarnings(newMappings, optimizations); return { - version: "1.22.53", + version: "1.22.56", generatedAt: new Date(), summary: { newMappings: newMappings.length, diff --git a/src/core/boot-orchestrator.ts b/src/core/boot-orchestrator.ts index 1b982e556..f77fa65fe 100644 --- a/src/core/boot-orchestrator.ts +++ b/src/core/boot-orchestrator.ts @@ -1095,7 +1095,7 @@ export class BootOrchestrator { try { // Load 0xRay configuration directly (no Python dependency) const stringRayConfig = { - version: "1.22.53", + version: "1.22.56", codex_enabled: true, codex_version: "v1.7.5", codex_terms: [ diff --git a/src/core/features-config.ts b/src/core/features-config.ts index dc72ff336..754df7e13 100644 --- a/src/core/features-config.ts +++ b/src/core/features-config.ts @@ -733,7 +733,7 @@ this.featuresPath = featuresPath || resolveConfigPath("features.json") || path.j */ private getDefaultConfig(): FeaturesConfig { return { - version: "1.22.53", + version: "1.22.56", description: "0xRay Framework - Unified Feature Configuration", token_optimization: { diff --git a/src/delegation/index.ts b/src/delegation/index.ts index 369a6f456..72bc5f467 100644 --- a/src/delegation/index.ts +++ b/src/delegation/index.ts @@ -1,5 +1,5 @@ /** - * 0xRay AI v1.22.53 - Delegation System + * 0xRay AI v1.22.56 - Delegation System * * Complete automatic multi-agent delegation system with complexity assessment * and session-based coordination. diff --git a/src/enforcement/loaders/__tests__/loaders.test.ts b/src/enforcement/loaders/__tests__/loaders.test.ts index 0138dbaf9..f4ad7e597 100644 --- a/src/enforcement/loaders/__tests__/loaders.test.ts +++ b/src/enforcement/loaders/__tests__/loaders.test.ts @@ -145,7 +145,7 @@ describe("Rule Loaders", () => { it("should load codex rules from valid codex.json", async () => { const mockCodexData = { - version: "1.22.53", + version: "1.22.56", lastUpdated: "2024-01-01", errorPreventionTarget: 0.99, terms: { @@ -181,7 +181,7 @@ describe("Rule Loaders", () => { it("should skip invalid terms", async () => { const mockCodexData = { - version: "1.22.53", + version: "1.22.56", terms: { "1": { number: 1, diff --git a/src/integrations/plugins/plugin.test.ts b/src/integrations/plugins/plugin.test.ts index 03a85956c..55e534427 100644 --- a/src/integrations/plugins/plugin.test.ts +++ b/src/integrations/plugins/plugin.test.ts @@ -92,7 +92,7 @@ version: 1.0.0 describe("validatePluginManifest", () => { test("validates valid manifest", () => { const manifest = { - name: "test-plugin", version: "1.22.53", + name: "test-plugin", version: "1.22.56", type: PluginType.MCP_SERVER, description: "Test plugin", }; @@ -103,7 +103,7 @@ version: 1.0.0 test("rejects missing name", () => { const manifest = { - version: "1.22.53", + version: "1.22.56", type: PluginType.MCP_SERVER, }; const result = validatePluginManifest(manifest as any); @@ -124,7 +124,7 @@ version: 1.0.0 test("rejects missing type", () => { const manifest = { - name: "test-plugin", version: "1.22.53", + name: "test-plugin", version: "1.22.56", }; const result = validatePluginManifest(manifest as any); expect(result.valid).toBe(false); diff --git a/src/mcps/architect-tools.server.ts b/src/mcps/architect-tools.server.ts index 9c2029514..99b56e715 100644 --- a/src/mcps/architect-tools.server.ts +++ b/src/mcps/architect-tools.server.ts @@ -41,7 +41,7 @@ class StringRayArchitectToolsServer { constructor() { this.server = new Server( { - name: "architect-tools", version: "1.22.53", + name: "architect-tools", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/auto-format.server.ts b/src/mcps/auto-format.server.ts index 4f45abdec..c31cdd816 100644 --- a/src/mcps/auto-format.server.ts +++ b/src/mcps/auto-format.server.ts @@ -40,7 +40,7 @@ class StringRayAutoFormatServer { constructor() { this.server = new Server( { - name: "auto-format", version: "1.22.53", + name: "auto-format", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/boot-orchestrator.server.ts b/src/mcps/boot-orchestrator.server.ts index e547136df..b9900b65c 100644 --- a/src/mcps/boot-orchestrator.server.ts +++ b/src/mcps/boot-orchestrator.server.ts @@ -120,7 +120,7 @@ class StringRayBootOrchestratorServer { constructor() { this.server = new Server( { - name: "boot-orchestrator", version: "1.22.53", + name: "boot-orchestrator", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/enforcer-tools.server.ts b/src/mcps/enforcer-tools.server.ts index 1d62e6b37..49f7a6abd 100644 --- a/src/mcps/enforcer-tools.server.ts +++ b/src/mcps/enforcer-tools.server.ts @@ -143,7 +143,7 @@ class StringRayEnforcerToolsServer { constructor() { this.server = new Server( { - name: "enforcer", version: "1.22.53", + name: "enforcer", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/estimation.server.ts b/src/mcps/estimation.server.ts index 4897c4a6a..9bc9fae3d 100644 --- a/src/mcps/estimation.server.ts +++ b/src/mcps/estimation.server.ts @@ -24,7 +24,7 @@ class EstimationServer { constructor() { this.server = new Server( { - name: "estimation-validator", version: "1.22.53", + name: "estimation-validator", version: "1.22.56", }, { capabilities: { tools: {} }, diff --git a/src/mcps/framework-compliance-audit.server.ts b/src/mcps/framework-compliance-audit.server.ts index d2efa1171..b4ea0ca6b 100644 --- a/src/mcps/framework-compliance-audit.server.ts +++ b/src/mcps/framework-compliance-audit.server.ts @@ -39,7 +39,7 @@ class StringRayFrameworkComplianceAuditServer { constructor() { this.server = new Server( { - name: "framework-compliance-audit", version: "1.22.53", + name: "framework-compliance-audit", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/framework-help.server.ts b/src/mcps/framework-help.server.ts index 1dcf7be04..2003eeb64 100644 --- a/src/mcps/framework-help.server.ts +++ b/src/mcps/framework-help.server.ts @@ -22,7 +22,7 @@ class FrameworkHelpServer { constructor() { this.server = new Server( { - name: "strray/framework-help", version: "1.22.53", + name: "strray/framework-help", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/api-design.server.ts b/src/mcps/knowledge-skills/api-design.server.ts index 69a84b382..60d999f89 100644 --- a/src/mcps/knowledge-skills/api-design.server.ts +++ b/src/mcps/knowledge-skills/api-design.server.ts @@ -31,7 +31,7 @@ class StringRayApiDesignServer { constructor() { this.server = new Server( { - name: "api-design", version: "1.22.53", + name: "api-design", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/architecture-patterns.server.ts b/src/mcps/knowledge-skills/architecture-patterns.server.ts index bfc200ea2..cd130316c 100644 --- a/src/mcps/knowledge-skills/architecture-patterns.server.ts +++ b/src/mcps/knowledge-skills/architecture-patterns.server.ts @@ -33,7 +33,7 @@ class StringRayArchitecturePatternsServer { constructor() { this.server = new Server( { - name: "architecture-patterns", version: "1.22.53", + name: "architecture-patterns", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/bug-triage-specialist.server.ts b/src/mcps/knowledge-skills/bug-triage-specialist.server.ts index 5ec9a072f..26e25a724 100644 --- a/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +++ b/src/mcps/knowledge-skills/bug-triage-specialist.server.ts @@ -80,7 +80,7 @@ class BugTriageSpecialistServer { constructor() { this.server = new Server( - { name: "bug-triage-specialist", version: "1.22.53" }, + { name: "bug-triage-specialist", version: "1.22.56" }, { capabilities: { tools: {} } }, ); this.setupToolHandlers(); diff --git a/src/mcps/knowledge-skills/code-analyzer.server.ts b/src/mcps/knowledge-skills/code-analyzer.server.ts index a7be885ed..14c913f52 100644 --- a/src/mcps/knowledge-skills/code-analyzer.server.ts +++ b/src/mcps/knowledge-skills/code-analyzer.server.ts @@ -303,7 +303,7 @@ class CodeAnalyzerServer { constructor() { this.server = new Server( - { name: "code-analyzer", version: "1.22.53" }, + { name: "code-analyzer", version: "1.22.56" }, { capabilities: { tools: {} } }, ); diff --git a/src/mcps/knowledge-skills/code-review.server.ts b/src/mcps/knowledge-skills/code-review.server.ts index b256f002f..0ca0b8460 100644 --- a/src/mcps/knowledge-skills/code-review.server.ts +++ b/src/mcps/knowledge-skills/code-review.server.ts @@ -73,7 +73,7 @@ class StringRayCodeReviewServer { constructor() { this.server = new Server( { - name: "code-review", version: "1.22.53", + name: "code-review", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/content-creator.server.ts b/src/mcps/knowledge-skills/content-creator.server.ts index 1fdbc32cf..afdd1b4de 100644 --- a/src/mcps/knowledge-skills/content-creator.server.ts +++ b/src/mcps/knowledge-skills/content-creator.server.ts @@ -100,7 +100,7 @@ class SEOCopywriterServer { constructor() { this.server = new Server( - { name: "content-creator", version: "1.22.53" }, + { name: "content-creator", version: "1.22.56" }, { capabilities: { tools: {} } }, ); diff --git a/src/mcps/knowledge-skills/database-design.server.ts b/src/mcps/knowledge-skills/database-design.server.ts index 72f99bf8b..0059c97c8 100644 --- a/src/mcps/knowledge-skills/database-design.server.ts +++ b/src/mcps/knowledge-skills/database-design.server.ts @@ -117,7 +117,7 @@ class StringRayDatabaseDesignServer { constructor() { this.server = new Server( { - name: "database-design", version: "1.22.53", + name: "database-design", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/devops-deployment.server.ts b/src/mcps/knowledge-skills/devops-deployment.server.ts index 77eb39286..eda1ff3f4 100644 --- a/src/mcps/knowledge-skills/devops-deployment.server.ts +++ b/src/mcps/knowledge-skills/devops-deployment.server.ts @@ -212,7 +212,7 @@ class StringRayDevOpsDeploymentServer { constructor() { this.server = new Server( { - name: "devops-deployment", version: "1.22.53", + name: "devops-deployment", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/git-workflow.server.ts b/src/mcps/knowledge-skills/git-workflow.server.ts index 069ca75f7..cb8c329d9 100644 --- a/src/mcps/knowledge-skills/git-workflow.server.ts +++ b/src/mcps/knowledge-skills/git-workflow.server.ts @@ -32,7 +32,7 @@ class StringRayGitWorkflowServer { constructor() { this.server = new Server( { - name: "git-workflow", version: "1.22.53", + name: "git-workflow", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/growth-strategist.server.ts b/src/mcps/knowledge-skills/growth-strategist.server.ts index 6d742f834..a3d3db271 100644 --- a/src/mcps/knowledge-skills/growth-strategist.server.ts +++ b/src/mcps/knowledge-skills/growth-strategist.server.ts @@ -109,7 +109,7 @@ class MarketingExpertServer { constructor() { this.server = new Server( - { name: "growth-strategist", version: "1.22.53" }, + { name: "growth-strategist", version: "1.22.56" }, { capabilities: { tools: {} } }, ); diff --git a/src/mcps/knowledge-skills/log-monitor.server.ts b/src/mcps/knowledge-skills/log-monitor.server.ts index 405a3c8f2..2e12b21dc 100644 --- a/src/mcps/knowledge-skills/log-monitor.server.ts +++ b/src/mcps/knowledge-skills/log-monitor.server.ts @@ -115,7 +115,7 @@ class LogMonitorServer { constructor() { this.server = new Server( - { name: "log-monitor", version: "1.22.53" }, + { name: "log-monitor", version: "1.22.56" }, { capabilities: { tools: {} } }, ); this.setupToolHandlers(); diff --git a/src/mcps/knowledge-skills/mobile-development.server.ts b/src/mcps/knowledge-skills/mobile-development.server.ts index ac8d7909d..b856a128b 100644 --- a/src/mcps/knowledge-skills/mobile-development.server.ts +++ b/src/mcps/knowledge-skills/mobile-development.server.ts @@ -111,7 +111,7 @@ class StringRayMobileDevelopmentServer { constructor() { this.server = new Server( { - name: "mobile-development", version: "1.22.53", + name: "mobile-development", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/multimodal-looker.server.ts b/src/mcps/knowledge-skills/multimodal-looker.server.ts index afdd16dac..296b5b4f1 100644 --- a/src/mcps/knowledge-skills/multimodal-looker.server.ts +++ b/src/mcps/knowledge-skills/multimodal-looker.server.ts @@ -164,7 +164,7 @@ class MultimodalLookerServer { constructor() { this.server = new Server( - { name: "multimodal-looker", version: "1.22.53" }, + { name: "multimodal-looker", version: "1.22.56" }, { capabilities: { tools: {} } }, ); this.setupToolHandlers(); diff --git a/src/mcps/knowledge-skills/performance-optimization.server.ts b/src/mcps/knowledge-skills/performance-optimization.server.ts index fa8309dcf..697d6049a 100644 --- a/src/mcps/knowledge-skills/performance-optimization.server.ts +++ b/src/mcps/knowledge-skills/performance-optimization.server.ts @@ -224,7 +224,7 @@ class StringRayPerformanceOptimizationServer { constructor() { this.server = new Server( { - name: "performance-optimization", version: "1.22.53", + name: "performance-optimization", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/project-analysis.server.ts b/src/mcps/knowledge-skills/project-analysis.server.ts index bdc3d4a2e..3a28d68ee 100644 --- a/src/mcps/knowledge-skills/project-analysis.server.ts +++ b/src/mcps/knowledge-skills/project-analysis.server.ts @@ -142,7 +142,7 @@ class StringRayProjectAnalysisServer { constructor() { this.server = new Server( { - name: "project-analysis", version: "1.22.53", + name: "project-analysis", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/refactoring-strategies.server.ts b/src/mcps/knowledge-skills/refactoring-strategies.server.ts index afc68612d..85c313b87 100644 --- a/src/mcps/knowledge-skills/refactoring-strategies.server.ts +++ b/src/mcps/knowledge-skills/refactoring-strategies.server.ts @@ -160,7 +160,7 @@ class StringRayRefactoringStrategiesServer { constructor() { this.server = new Server( { - name: "refactoring-strategies", version: "1.22.53", + name: "refactoring-strategies", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/security-audit.server.ts b/src/mcps/knowledge-skills/security-audit.server.ts index 41754bfae..97be1ca65 100644 --- a/src/mcps/knowledge-skills/security-audit.server.ts +++ b/src/mcps/knowledge-skills/security-audit.server.ts @@ -82,7 +82,7 @@ class StringRaySecurityAuditServer { constructor() { this.server = new Server( { - name: "security-audit", version: "1.22.53", + name: "security-audit", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/seo-consultant.server.ts b/src/mcps/knowledge-skills/seo-consultant.server.ts index e087838c5..4d1aa22d2 100644 --- a/src/mcps/knowledge-skills/seo-consultant.server.ts +++ b/src/mcps/knowledge-skills/seo-consultant.server.ts @@ -69,7 +69,7 @@ class SEOSpecialistServer { constructor() { this.server = new Server( - { name: "seo-consultant", version: "1.22.53" }, + { name: "seo-consultant", version: "1.22.56" }, { capabilities: { tools: {} } }, ); diff --git a/src/mcps/knowledge-skills/session-management.server.ts b/src/mcps/knowledge-skills/session-management.server.ts index 22acbcf63..1448ebb4d 100644 --- a/src/mcps/knowledge-skills/session-management.server.ts +++ b/src/mcps/knowledge-skills/session-management.server.ts @@ -161,7 +161,7 @@ class SessionManagementServer { constructor() { this.server = new Server( - { name: "session-management", version: "1.22.53" }, + { name: "session-management", version: "1.22.56" }, { capabilities: { tools: {} } }, ); diff --git a/src/mcps/knowledge-skills/skill-invocation.server.ts b/src/mcps/knowledge-skills/skill-invocation.server.ts index 98c4d3602..9bc51acf7 100644 --- a/src/mcps/knowledge-skills/skill-invocation.server.ts +++ b/src/mcps/knowledge-skills/skill-invocation.server.ts @@ -85,7 +85,7 @@ class SkillInvocationServer { constructor() { this.server = new Server( { - name: "strray/skill-invocation", version: "1.22.53", + name: "strray/skill-invocation", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/strategist.server.ts b/src/mcps/knowledge-skills/strategist.server.ts index 8390e522e..7ab258000 100644 --- a/src/mcps/knowledge-skills/strategist.server.ts +++ b/src/mcps/knowledge-skills/strategist.server.ts @@ -108,7 +108,7 @@ class StrategistServer { constructor() { this.server = new Server( { - name: "strray/strategist", version: "1.22.53", + name: "strray/strategist", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/tech-writer.server.ts b/src/mcps/knowledge-skills/tech-writer.server.ts index 5c840891e..8ed0975c5 100644 --- a/src/mcps/knowledge-skills/tech-writer.server.ts +++ b/src/mcps/knowledge-skills/tech-writer.server.ts @@ -166,7 +166,7 @@ class StringRayDocumentationGenerationServer { constructor() { this.server = new Server( { - name: "documentation-generation", version: "1.22.53", + name: "documentation-generation", version: "1.22.56", }, { capabilities: { @@ -1053,7 +1053,7 @@ class StringRayDocumentationGenerationServer { openapi: "3.0.0", info: { title: "API Documentation", - version: "1.22.53", + version: "1.22.56", description: "Generated API documentation", }, servers: [ diff --git a/src/mcps/knowledge-skills/testing-best-practices.server.ts b/src/mcps/knowledge-skills/testing-best-practices.server.ts index 261a33813..0f5bfbb6c 100644 --- a/src/mcps/knowledge-skills/testing-best-practices.server.ts +++ b/src/mcps/knowledge-skills/testing-best-practices.server.ts @@ -209,7 +209,7 @@ class StringRayTestingBestPracticesServer { constructor() { this.server = new Server( { - name: "testing-best-practices", version: "1.22.53", + name: "testing-best-practices", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/testing-strategy.server.ts b/src/mcps/knowledge-skills/testing-strategy.server.ts index cccde510c..b187f27b2 100644 --- a/src/mcps/knowledge-skills/testing-strategy.server.ts +++ b/src/mcps/knowledge-skills/testing-strategy.server.ts @@ -135,7 +135,7 @@ class StringRayTestingStrategyServer { constructor() { this.server = new Server( { - name: "testing-strategy", version: "1.22.53", + name: "testing-strategy", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/knowledge-skills/ui-ux-design.server.ts b/src/mcps/knowledge-skills/ui-ux-design.server.ts index 45fe15df4..adc854ef6 100644 --- a/src/mcps/knowledge-skills/ui-ux-design.server.ts +++ b/src/mcps/knowledge-skills/ui-ux-design.server.ts @@ -192,7 +192,7 @@ class StringRayUIUXDesignServer { constructor() { this.server = new Server( { - name: "ui-ux-design", version: "1.22.53", + name: "ui-ux-design", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/lint.server.ts b/src/mcps/lint.server.ts index 6fabda1dc..6d26bad2a 100644 --- a/src/mcps/lint.server.ts +++ b/src/mcps/lint.server.ts @@ -39,7 +39,7 @@ class StringRayLintServer { constructor() { this.server = new Server( { - name: "lint", version: "1.22.53", + name: "lint", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/model-health-check.server.ts b/src/mcps/model-health-check.server.ts index 3de04b244..8d42d67c5 100644 --- a/src/mcps/model-health-check.server.ts +++ b/src/mcps/model-health-check.server.ts @@ -42,7 +42,7 @@ class StringRayModelHealthCheckServer { constructor() { this.server = new Server( { - name: "model-health-check", version: "1.22.53", + name: "model-health-check", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/performance-analysis.server.ts b/src/mcps/performance-analysis.server.ts index c768b57ac..1f72e5056 100644 --- a/src/mcps/performance-analysis.server.ts +++ b/src/mcps/performance-analysis.server.ts @@ -64,7 +64,7 @@ class StringRayPerformanceAnalysisServer { constructor() { this.server = new Server( { - name: "performance-analysis", version: "1.22.53", + name: "performance-analysis", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/processor-pipeline.server.ts b/src/mcps/processor-pipeline.server.ts index cdcb39b1b..0697b6cff 100644 --- a/src/mcps/processor-pipeline.server.ts +++ b/src/mcps/processor-pipeline.server.ts @@ -107,7 +107,7 @@ class StringRayProcessorPipelineServer { this.codexLoader = new CodexLoader(); this.server = new Server( { - name: "processor-pipeline", version: "1.22.53", + name: "processor-pipeline", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/registry.json b/src/mcps/registry.json index 5f1eca435..066e80b21 100644 --- a/src/mcps/registry.json +++ b/src/mcps/registry.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Community MCPs Registry - curated API-focused MCP servers", "sources": [ { diff --git a/src/mcps/researcher.server.ts b/src/mcps/researcher.server.ts index 4e4769864..739724414 100644 --- a/src/mcps/researcher.server.ts +++ b/src/mcps/researcher.server.ts @@ -46,7 +46,7 @@ class StringRayLibrarianServer { constructor() { this.server = new Server( { - name: "researcher", version: "1.22.53", + name: "researcher", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/security-scan.server.ts b/src/mcps/security-scan.server.ts index db72e4c9e..a6afd28e1 100644 --- a/src/mcps/security-scan.server.ts +++ b/src/mcps/security-scan.server.ts @@ -45,7 +45,7 @@ class StringRaySecurityScanServer { constructor() { this.server = new Server( { - name: "security-scan", version: "1.22.53", + name: "security-scan", version: "1.22.56", }, { capabilities: { diff --git a/src/mcps/state-manager.server.ts b/src/mcps/state-manager.server.ts index 3213f5ee8..fe1af9a32 100644 --- a/src/mcps/state-manager.server.ts +++ b/src/mcps/state-manager.server.ts @@ -71,7 +71,7 @@ class StrRayStateManagerServer { constructor() { this.server = new Server( { - name: "state-manager", version: "1.22.53", + name: "state-manager", version: "1.22.56", }, { capabilities: { diff --git a/src/orchestrator/agent-spawn-governor.ts b/src/orchestrator/agent-spawn-governor.ts index 2976767ba..acb5108f7 100644 --- a/src/orchestrator/agent-spawn-governor.ts +++ b/src/orchestrator/agent-spawn-governor.ts @@ -766,4 +766,4 @@ export class AgentSpawnGovernor { } } -export const agentSpawnGovernor = new AgentSpawnGovernor(undefined, false); +export const agentSpawnGovernor = new AgentSpawnGovernor(undefined, true); diff --git a/src/orchestrator/enhanced-multi-agent-orchestrator.ts b/src/orchestrator/enhanced-multi-agent-orchestrator.ts index f2c1375f1..cd97d612e 100644 --- a/src/orchestrator/enhanced-multi-agent-orchestrator.ts +++ b/src/orchestrator/enhanced-multi-agent-orchestrator.ts @@ -14,6 +14,7 @@ import { AgentDelegator, } from "../delegation/agent-delegator.js"; import { strRayConfigLoader } from "../core/config-loader.js"; +import { agentSpawnGovernor } from "./agent-spawn-governor.js"; export interface AgentSpawnRequest { agentType: string; @@ -47,6 +48,7 @@ export interface SpawnedAgent { clickable: boolean; monitorable: boolean; cleanupRequired: boolean; + spawnTrackingId: string | undefined; } export interface AgentOrchestrationState { @@ -133,8 +135,9 @@ export class EnhancedMultiAgentOrchestrator { /** * Enhanced agent spawning with clickable monitoring integration */ - async spawnAgent(request: AgentSpawnRequest): Promise { + async spawnAgent(request: AgentSpawnRequest): Promise { const jobId = `spawn-agent-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`; + let spawnTrackingId: string | undefined; // 🚨 SECURITY: Prevent subagents from spawning other subagents // This prevents infinite loops, resource exhaustion, and uncontrolled agent spawning @@ -153,6 +156,27 @@ export class EnhancedMultiAgentOrchestrator { throw error; } + // 🚨 Governance: Authorize spawn via AgentSpawnGovernor + const auth = await agentSpawnGovernor.authorizeSpawn({ + agentType: request.agentType, + operation: request.task, + sessionId: jobId, + }); + if (!auth.authorized) { + const error = new Error( + `Spawn denied by governance: ${auth.reason}. ` + + `Warnings: ${(auth.warnings || []).join(", ")}`, + ); + await frameworkLogger.log( + "enhanced-multi-agent-orchestrator", + "spawn-denied-by-governance", + "error", + { agentType: request.agentType, reason: auth.reason, trackingId: auth.trackingId }, + ); + throw error; + } + spawnTrackingId = auth.trackingId; + const agentId = `agent_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; const spawnedAgent: SpawnedAgent = { @@ -165,6 +189,7 @@ export class EnhancedMultiAgentOrchestrator { clickable: true, // Enable clickable monitoring monitorable: true, // Enable real-time monitoring cleanupRequired: true, + spawnTrackingId, }; // Register agent in active pool @@ -263,6 +288,11 @@ export class EnhancedMultiAgentOrchestrator { this.state.activeAgents.delete(agent.id); this.state.completedAgents.set(agent.id, agent); + // Notify governor + if (agent.spawnTrackingId) { + agentSpawnGovernor.completeSpawn(agent.spawnTrackingId); + } + frameworkLogger.log( "orchestrator", `✅ COMPLETED: ${agent.agentType} agent (${agent.id})`, @@ -287,6 +317,11 @@ export class EnhancedMultiAgentOrchestrator { this.state.activeAgents.delete(agent.id); this.state.failedAgents.set(agent.id, agent); + // Notify governor + if (agent.spawnTrackingId) { + agentSpawnGovernor.failSpawn(agent.spawnTrackingId, error instanceof Error ? error : new Error(String(error))); + } + frameworkLogger.log( "orchestrator", `❌ FAILED: ${agent.agentType} agent (${agent.id}): ${agent.error}`, diff --git a/src/orchestrator/universal-registry-bridge.ts b/src/orchestrator/universal-registry-bridge.ts index 7d2cbdcad..afbd63091 100644 --- a/src/orchestrator/universal-registry-bridge.ts +++ b/src/orchestrator/universal-registry-bridge.ts @@ -169,7 +169,7 @@ export class UniversalRegistryBridge { currentAgent = { name: nameMatch[1].trim(), description: "", - version: "1.22.53", + version: "1.22.56", }; inAgent = true; continue; diff --git a/src/processors/implementations/spawn-governance-processor.ts b/src/processors/implementations/spawn-governance-processor.ts index a136e8d32..4e466aa03 100644 --- a/src/processors/implementations/spawn-governance-processor.ts +++ b/src/processors/implementations/spawn-governance-processor.ts @@ -276,6 +276,23 @@ export class SpawnGovernanceProcessor { } } +// --------------------------------------------------------------------------- +// Singleton instance for persistent governance state across processor calls +// --------------------------------------------------------------------------- + +let governanceProcessor: SpawnGovernanceProcessor | null = null; + +function getGovernanceProcessor(config?: Partial): SpawnGovernanceProcessor { + if (!governanceProcessor) { + governanceProcessor = new SpawnGovernanceProcessor(config); + } + return governanceProcessor; +} + +export function resetGovernanceProcessor(): void { + governanceProcessor = null; +} + // --------------------------------------------------------------------------- // Standalone runner for processor-manager integration // --------------------------------------------------------------------------- @@ -286,7 +303,7 @@ export async function runSpawnGovernance(context: any): Promise<{ reason?: string; metrics: ReturnType; }> { - const processor = new SpawnGovernanceProcessor( + const processor = getGovernanceProcessor( context.config as Partial | undefined, ); diff --git a/src/security/index.ts b/src/security/index.ts index 21576ce4e..565ce2130 100644 --- a/src/security/index.ts +++ b/src/security/index.ts @@ -1,5 +1,5 @@ /** - * 0xRay AI v1.22.53 - Security Module Index + * 0xRay AI v1.22.56 - Security Module Index * Unified exports for the comprehensive security system */ diff --git a/src/skills/registry.json b/src/skills/registry.json index 611e8a079..324354fbd 100644 --- a/src/skills/registry.json +++ b/src/skills/registry.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Skills Registry - recommended skill sources for consumers", "sources": [ { diff --git a/strray/codex.json b/strray/codex.json index f36c1c914..27d0afd02 100644 --- a/strray/codex.json +++ b/strray/codex.json @@ -1,5 +1,5 @@ { - "version": "1.22.53", + "version": "1.22.56", "lastUpdated": "2026-03-09", "errorPreventionTarget": 0.996, "terms": { diff --git a/strray/config.json b/strray/config.json index 029409f95..e41a77b6d 100644 --- a/strray/config.json +++ b/strray/config.json @@ -1,6 +1,6 @@ { "$schema": "./config.schema.json", - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework - Token Management & Performance Configuration", "token_management": { "maxPromptTokens": 20000, diff --git a/strray/features.json b/strray/features.json index e4da81220..32a5616a2 100644 --- a/strray/features.json +++ b/strray/features.json @@ -1,6 +1,6 @@ { "$schema": "./features.schema.json", - "version": "1.22.53", + "version": "1.22.56", "description": "0xRay Framework - Unified Feature Configuration", "token_optimization": { "enabled": true, diff --git a/strray/integrations.json b/strray/integrations.json index 0e07aced2..182726d7f 100644 --- a/strray/integrations.json +++ b/strray/integrations.json @@ -4,19 +4,19 @@ "openclaw": { "enabled": false, "type": "external-service", - "version": "1.22.53", + "version": "1.22.56", "config": {} }, "python-bridge": { "enabled": false, "type": "protocol-bridge", - "version": "1.22.53", + "version": "1.22.56", "config": {} }, "react": { "enabled": false, "type": "framework-adapter", - "version": "1.22.53", + "version": "1.22.56", "config": {} } } diff --git a/test-skill.json b/test-skill.json index fbd76bd3e..ada50d4f5 100644 --- a/test-skill.json +++ b/test-skill.json @@ -1,5 +1,5 @@ { "name": "@strray-ai/test-skill", - "version": "1.22.53", + "version": "1.22.56", "description": "Test skill for edit tracking" } \ No newline at end of file diff --git a/tests/config/package.json b/tests/config/package.json index 9f8a273e3..dcf565aa4 100644 --- a/tests/config/package.json +++ b/tests/config/package.json @@ -1,4 +1,4 @@ { "name": "test-config", - "version": "1.22.53" + "version": "1.22.56" } diff --git a/tweets/tweets-2026-03-10T16-59-41-258Z.json b/tweets/tweets-2026-03-10T16-59-41-258Z.json index d392d8714..ea33ea373 100644 --- a/tweets/tweets-2026-03-10T16-59-41-258Z.json +++ b/tweets/tweets-2026-03-10T16-59-41-258Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T16-59-41-258Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-00-00-997Z.json b/tweets/tweets-2026-03-10T17-00-00-997Z.json index 57068333f..f5c99e844 100644 --- a/tweets/tweets-2026-03-10T17-00-00-997Z.json +++ b/tweets/tweets-2026-03-10T17-00-00-997Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-00-00-997Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-03-37-490Z.json b/tweets/tweets-2026-03-10T17-03-37-490Z.json index 20567dd6d..b07a0f7dc 100644 --- a/tweets/tweets-2026-03-10T17-03-37-490Z.json +++ b/tweets/tweets-2026-03-10T17-03-37-490Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-03-37-490Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-05-21-229Z.json b/tweets/tweets-2026-03-10T17-05-21-229Z.json index 227b71777..1e663f8df 100644 --- a/tweets/tweets-2026-03-10T17-05-21-229Z.json +++ b/tweets/tweets-2026-03-10T17-05-21-229Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-05-21-229Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-07-06-807Z.json b/tweets/tweets-2026-03-10T17-07-06-807Z.json index c9f643806..02b0f926a 100644 --- a/tweets/tweets-2026-03-10T17-07-06-807Z.json +++ b/tweets/tweets-2026-03-10T17-07-06-807Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-07-06-807Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-23-41-774Z.json b/tweets/tweets-2026-03-10T17-23-41-774Z.json index 15063e395..5024b8d4e 100644 --- a/tweets/tweets-2026-03-10T17-23-41-774Z.json +++ b/tweets/tweets-2026-03-10T17-23-41-774Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-23-41-774Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-29-59-962Z.json b/tweets/tweets-2026-03-10T17-29-59-962Z.json index fe3cca1dd..6598dd3ec 100644 --- a/tweets/tweets-2026-03-10T17-29-59-962Z.json +++ b/tweets/tweets-2026-03-10T17-29-59-962Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-29-59-962Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-30-26-755Z.json b/tweets/tweets-2026-03-10T17-30-26-755Z.json index a0148f064..76ddbb921 100644 --- a/tweets/tweets-2026-03-10T17-30-26-755Z.json +++ b/tweets/tweets-2026-03-10T17-30-26-755Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-30-26-755Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-33-01-728Z.json b/tweets/tweets-2026-03-10T17-33-01-728Z.json index fb27746d2..375eea673 100644 --- a/tweets/tweets-2026-03-10T17-33-01-728Z.json +++ b/tweets/tweets-2026-03-10T17-33-01-728Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-33-01-728Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5", diff --git a/tweets/tweets-2026-03-10T17-33-52-423Z.json b/tweets/tweets-2026-03-10T17-33-52-423Z.json index 529e8c564..3007d3f9b 100644 --- a/tweets/tweets-2026-03-10T17-33-52-423Z.json +++ b/tweets/tweets-2026-03-10T17-33-52-423Z.json @@ -1,6 +1,6 @@ { "generated": "2026-03-10T17-33-52-423Z", - "version": "1.22.53", + "version": "1.22.56", "releases": [ { "version": "v1.7.5",