Brain export v3.0 (25 tables), witness chain v3 with Ed25519 signing,
streaming for large tables, RVF freeze/derive/indexStats, npm packaging fix.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
TypeScript was an external ESM dependency loaded at bundle startup,
crashing `aqe --version` when typescript isn't installed (global
installs). Now lazy-loaded via createRequire Proxy — only triggers
when AST parsing features are used.
Also adds isolated install verification to /release skill (steps 8e
and 15) to catch missing externals before they reach users.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
AWS Kiro IDE integration, hono security patch, README Kiro section,
model mapping fix, version string updates across codebase.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Wire OpenCode assets into aqe init with --with-opencode flag,
update README and CHANGELOG with new instructions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Test Generation (Issue #295):
- Fix Python regex matching `{` from TS imports as dependency
- Filter tests to exported functions/classes only (jest, vitest, pytest, mocha)
- Replace undefined mockXxx variables with safe inline values
- Add void return type handling across all generators
- Fix pattern-matcher generateMockValue bare variable fallback
- Write generated test files to disk instead of only printing to stdout
- Wrap undefined-param tests in try-catch instead of assuming toThrow()
Cloud Sync:
- Fix pg module loading in esbuild bundle (createRequire vs dynamic import)
- Separate pg-not-found from connection-failure error handling
- Fix JSON source paths resolving to wrong directory
Data Protection:
- Add comprehensive data protection rules to CLAUDE.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: resolve issues #284-#288 — HNSW dimension mismatch, real security scanning, hooks directory
- Fix HNSW 128→768 dimension mismatch across 13 source files and 5 test files
that caused native SIGABRT crashes in ruvector-gnn (#284, #285)
- Add dimension guard in unified-memory-hnsw.ts to skip mismatched vectors
- Rewrite security scan to perform real SAST file analysis instead of
returning hardcoded fake findings (#287)
- Add Cobertura XML parser, fix secret detection regex, broaden CORS
detection patterns (#286)
- Replace fake MCP handlers with real implementations (#286)
- Create .claude/hooks/ directory and install hook assets in init
phase 07-hooks.ts (#288)
- Remove dangerous uncaughtException handler from protocol-server.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore(release): bump version to v3.6.12
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: prevent SQLite corruption from concurrent writers — centralized safe-db opener
Root cause: 40+ places opened memory.db with `new Database()` without WAL mode
or busy_timeout. When 10 Claude Code hooks spawn separate processes that
concurrently write to the DB, rollback journal mode causes page-level corruption.
Fix: Created v3/src/shared/safe-db.ts with openDatabase() that enforces
WAL + busy_timeout=5000 on every open. Replaced all 28 direct new Database()
calls across v3/src (22 files), hooks (1 file), helpers (2 files), and
scripts (2 files). Only remaining direct call is the UnifiedMemoryManager
singleton which already sets WAL + busy_timeout itself.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: resolve 5 critical issues from #292 — test gen, dimensions, coverage, security, hooks
Issue 1: test_generate_enhanced returned placeholder stubs (add() === null)
- Agent Booster was intercepting generate-tests tasks via func-to-arrow detection
- Added task-type blocklist to prevent Booster from hijacking domain tasks
- Fixed mapToResult to use real testCode from domain service instead of V2 stubs
- Added extractAssertionsFromCode() to parse real vitest/jest assertions
- Added testCode pass-through in task executor result mapping
- Added uncaughtException/unhandledRejection handlers in MCP entry
- Wrapped feedback loop init in defensive try/catch
Issue 2: CLI test generate vector dimension mismatch 768 vs 128
- Changed embeddingDim from 128 to 768 in 6 locations across
decision-transformer, coordinator, test-prioritizer, feature-flags,
shard-embeddings
Issue 3: MCP coverage_analyze_sublinear returned empty coverageByFile
- Added automatic coverage collection when no data exists
- Detects test runner from package.json (vitest/jest/nyc)
- Runs tests with --coverage flag, re-checks for data
- Returns informative warning if collection fails
- Added per-file coverage mapping in result
Issue 4: Security scan missed secrets in JS/TS files and known CVEs
- Changed cross-lang pattern loop from otherFiles to filesToScan
- Added known-CVE checking for python-jose and python-multipart
- Added generic SECRET assignment pattern to security-patterns.ts
Issue 5: aqe init --auto hooks not wired to settings.json
- Added post-write verification after settings.json write
- Logs warning if AQE hooks not detected after write
Also added Bug Fix Verification rules to CLAUDE.md.
Closes#292
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore(release): bump version to v3.6.13
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* fix: resolve issues #284-#288 — HNSW dimension mismatch, real security scanning, hooks directory
- Fix HNSW 128→768 dimension mismatch across 13 source files and 5 test files
that caused native SIGABRT crashes in ruvector-gnn (#284, #285)
- Add dimension guard in unified-memory-hnsw.ts to skip mismatched vectors
- Rewrite security scan to perform real SAST file analysis instead of
returning hardcoded fake findings (#287)
- Add Cobertura XML parser, fix secret detection regex, broaden CORS
detection patterns (#286)
- Replace fake MCP handlers with real implementations (#286)
- Create .claude/hooks/ directory and install hook assets in init
phase 07-hooks.ts (#288)
- Remove dangerous uncaughtException handler from protocol-server.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore(release): bump version to v3.6.12
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: prevent SQLite corruption from concurrent writers — centralized safe-db opener
Root cause: 40+ places opened memory.db with `new Database()` without WAL mode
or busy_timeout. When 10 Claude Code hooks spawn separate processes that
concurrently write to the DB, rollback journal mode causes page-level corruption.
Fix: Created v3/src/shared/safe-db.ts with openDatabase() that enforces
WAL + busy_timeout=5000 on every open. Replaced all 28 direct new Database()
calls across v3/src (22 files), hooks (1 file), helpers (2 files), and
scripts (2 files). Only remaining direct call is the UnifiedMemoryManager
singleton which already sets WAL + busy_timeout itself.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Version bump, changelog, release docs, and test fix for mechanical
transform scoring tests to align with the new conditional override.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(kernel): resolve relative dbPath to prevent split-brain dual-database writes
UnifiedPersistenceManager and HybridMemoryBackend pass static relative path
'.agentic-qe/memory.db' to UnifiedMemoryManager, which overrides the resolved
absolute path in the constructor via spread. When CWD differs from project root
(e.g. tests running from v3/), this creates a duplicate database at
v3/.agentic-qe/memory.db, splitting dream/concept data from patterns/KV data.
Fix: resolve any relative dbPath through findProjectRoot() in the constructor,
ensuring all callers converge on the single project-root database.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* release(v3.6.8): fix MCP auto-init, experience persistence, DB isolation, and missing deps
- Fleet auto-initializes on MCP server startup (no manual fleet_init needed)
- ExperienceReplay unified to read from captured_experiences table
- Data migrator writes to captured_experiences instead of removed experiences table
- Added fast-json-patch and jose to root package.json (fixes#262)
- Wrapped MinCut dispose saveSnapshot in try/catch for test resilience
- Kernel initializes UnifiedPersistence with temp DB for in-memory backend
- All 6 MCP handler test files use memoryBackend:'memory' and resetUnifiedPersistence()
- domain-handlers and wrapped-domain-handlers use beforeAll to prevent OOM
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: add RVF integration plan, ADRs, and benchmark script
- RVF integration implementation plan and Six Hats analyses
- Phase 0 gate report for RVF integration readiness
- ADR-065: RVF integration hybrid architecture
- ADR-066: RVF pattern store progressive HNSW
- ADR-067: Agent memory branching with RVF copy-on-write
- AQE baseline benchmark script
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(tests): restore fleet after dispose in wrapped-domain-handlers beforeAll tests
The "not initialized" tests call disposeFleet() but with beforeAll the
fleet is only initialized once. Subsequent tests failed because the
fleet was never re-initialized. Add handleFleetInit() after each
dispose-based test to restore state for later tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
The `@ruvector/gnn-*` optional dependencies had missing version fields
in both lockfiles, causing `npm ci` to crash with `Invalid Version: `.
Also fixed `@claude-flow/browser` version range from `^3.0.0` to
`^3.0.0-alpha.1` to match the only published version.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes#243 (agent parse errors on helper/README files) and #244 (YAML
parser returns {} for empty arrays causing TypeError in mergeConfigs).
- Move helpers install to .claude/helpers/v3/ to avoid claude doctor
parsing .md reference files as agent definitions
- Write agents index to .claude/docs/ instead of .claude/agents/v3/
- Add post-parse normalization for known array fields in YAML parser
- Add Array.isArray guard in mergeConfigs for disabled domains
- Update helper path references in quality-criteria-service and agents
- Add 2 regression tests for Issue #244 scenarios
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
ADR-064 Agent Teams integration, distributed tracing, competing hypotheses,
dynamic scaling, federation mailbox, circuit breakers, task DAG scheduling,
HNSW graph indexing, pattern training pipeline, and Devils Advocate agent.
Also restructured README with separate release notes, fixed release skill
with real CLI commands and npm scripts.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add three AISP-inspired ADR implementations wired to user-facing surfaces,
and fix the test suite to run reliably with a 3-batch architecture.
ADR-059: Ghost Intent Coverage — detect untested behavioral intents via
CLI --ghost flag and MCP gaps tool.
ADR-060: Semantic Anti-Drift Middleware — auto-registered in kernel init
with cosine similarity event pipeline validation.
ADR-061: Asymmetric Learning Rates — 10:1 penalty-to-reward ratio wired
to test execution outcomes and learning stats display.
Test suite: split into fast/heavy/mcp batches to avoid vitest module
transform overhead (14s/file at 316+ files) and MCP fleet init deadlock.
12,764 tests pass across 377 files.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v3.5.1 includes:
- Security: tar>=7.5.7 override fixing 6 HIGH severity Dependabot alerts
- Documentation: v3.5.0 release highlights added to READMEs
- skills-manifest.json updated to v1.3.0 with 67 QE skills breakdown
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Lock files for reproducible builds after adding @claude-flow/guidance
dependency in the governance integration (ADR-058).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- OpenRouter: use mockResolvedValue instead of Once to handle retries
- Ollama: update expectation for connection failure (listModels catches errors)
- Memory: check path contains components instead of exact equality
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Security update to fix prototype pollution vulnerability in baseUnset function.
Closes#199
Co-Authored-By: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>