agentic-qe 3.7.7 → 3.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/helpers/statusline-v3.cjs +13 -1
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +19 -0
- package/README.md +36 -0
- package/dist/cli/bundle.js +1033 -147
- package/dist/coordination/complexity-composition/index.d.ts +2 -0
- package/dist/coordination/complexity-composition/index.d.ts.map +1 -0
- package/dist/coordination/complexity-composition/index.js +2 -0
- package/dist/coordination/complexity-composition/index.js.map +1 -0
- package/dist/coordination/complexity-composition/team-composer.d.ts +72 -0
- package/dist/coordination/complexity-composition/team-composer.d.ts.map +1 -0
- package/dist/coordination/complexity-composition/team-composer.js +221 -0
- package/dist/coordination/complexity-composition/team-composer.js.map +1 -0
- package/dist/coordination/consensus/consensus-engine.d.ts +10 -1
- package/dist/coordination/consensus/consensus-engine.d.ts.map +1 -1
- package/dist/coordination/consensus/consensus-engine.js +31 -1
- package/dist/coordination/consensus/consensus-engine.js.map +1 -1
- package/dist/coordination/consensus/index.d.ts +1 -0
- package/dist/coordination/consensus/index.d.ts.map +1 -1
- package/dist/coordination/consensus/index.js +4 -0
- package/dist/coordination/consensus/index.js.map +1 -1
- package/dist/coordination/consensus/interfaces.d.ts +5 -0
- package/dist/coordination/consensus/interfaces.d.ts.map +1 -1
- package/dist/coordination/consensus/interfaces.js +1 -0
- package/dist/coordination/consensus/interfaces.js.map +1 -1
- package/dist/coordination/consensus/sycophancy-scorer.d.ts +62 -0
- package/dist/coordination/consensus/sycophancy-scorer.d.ts.map +1 -0
- package/dist/coordination/consensus/sycophancy-scorer.js +200 -0
- package/dist/coordination/consensus/sycophancy-scorer.js.map +1 -0
- package/dist/coordination/fleet-tiers/tier-selector.d.ts +20 -0
- package/dist/coordination/fleet-tiers/tier-selector.d.ts.map +1 -1
- package/dist/coordination/fleet-tiers/tier-selector.js +31 -0
- package/dist/coordination/fleet-tiers/tier-selector.js.map +1 -1
- package/dist/coordination/fleet-tiers/types.d.ts +2 -0
- package/dist/coordination/fleet-tiers/types.d.ts.map +1 -1
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.d.ts +65 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.d.ts.map +1 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.js +189 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.js.map +1 -0
- package/dist/domains/test-generation/blind-review/index.d.ts +2 -0
- package/dist/domains/test-generation/blind-review/index.d.ts.map +1 -0
- package/dist/domains/test-generation/blind-review/index.js +2 -0
- package/dist/domains/test-generation/blind-review/index.js.map +1 -0
- package/dist/domains/test-generation/gates/index.d.ts +2 -0
- package/dist/domains/test-generation/gates/index.d.ts.map +1 -0
- package/dist/domains/test-generation/gates/index.js +2 -0
- package/dist/domains/test-generation/gates/index.js.map +1 -0
- package/dist/domains/test-generation/gates/test-quality-gate.d.ts +85 -0
- package/dist/domains/test-generation/gates/test-quality-gate.d.ts.map +1 -0
- package/dist/domains/test-generation/gates/test-quality-gate.js +320 -0
- package/dist/domains/test-generation/gates/test-quality-gate.js.map +1 -0
- package/dist/domains/test-generation/interfaces.d.ts +3 -0
- package/dist/domains/test-generation/interfaces.d.ts.map +1 -1
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.d.ts +68 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.d.ts.map +1 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.js +225 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.js.map +1 -0
- package/dist/domains/test-generation/pattern-injection/index.d.ts +2 -0
- package/dist/domains/test-generation/pattern-injection/index.d.ts.map +1 -0
- package/dist/domains/test-generation/pattern-injection/index.js +2 -0
- package/dist/domains/test-generation/pattern-injection/index.js.map +1 -0
- package/dist/domains/test-generation/services/test-generator.d.ts +6 -0
- package/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
- package/dist/domains/test-generation/services/test-generator.js +29 -0
- package/dist/domains/test-generation/services/test-generator.js.map +1 -1
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts +8 -2
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts.map +1 -1
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js +62 -38
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js.map +1 -1
- package/dist/learning/experience-capture.d.ts +12 -2
- package/dist/learning/experience-capture.d.ts.map +1 -1
- package/dist/learning/experience-capture.js +28 -35
- package/dist/learning/experience-capture.js.map +1 -1
- package/dist/learning/experience-consolidation.d.ts +74 -0
- package/dist/learning/experience-consolidation.d.ts.map +1 -0
- package/dist/learning/experience-consolidation.js +403 -0
- package/dist/learning/experience-consolidation.js.map +1 -0
- package/dist/mcp/bundle.js +1939 -274
- package/dist/routing/calibration/ema-calibrator.d.ts +93 -0
- package/dist/routing/calibration/ema-calibrator.d.ts.map +1 -0
- package/dist/routing/calibration/ema-calibrator.js +140 -0
- package/dist/routing/calibration/ema-calibrator.js.map +1 -0
- package/dist/routing/calibration/index.d.ts +2 -0
- package/dist/routing/calibration/index.d.ts.map +1 -0
- package/dist/routing/calibration/index.js +2 -0
- package/dist/routing/calibration/index.js.map +1 -0
- package/dist/routing/escalation/auto-escalation-tracker.d.ts +62 -0
- package/dist/routing/escalation/auto-escalation-tracker.d.ts.map +1 -0
- package/dist/routing/escalation/auto-escalation-tracker.js +116 -0
- package/dist/routing/escalation/auto-escalation-tracker.js.map +1 -0
- package/dist/routing/escalation/index.d.ts +2 -0
- package/dist/routing/escalation/index.d.ts.map +1 -0
- package/dist/routing/escalation/index.js +2 -0
- package/dist/routing/escalation/index.js.map +1 -0
- package/dist/routing/index.d.ts +4 -0
- package/dist/routing/index.d.ts.map +1 -1
- package/dist/routing/index.js +4 -0
- package/dist/routing/index.js.map +1 -1
- package/dist/routing/routing-config.d.ts +4 -0
- package/dist/routing/routing-config.d.ts.map +1 -1
- package/dist/routing/routing-config.js +2 -0
- package/dist/routing/routing-config.js.map +1 -1
- package/dist/routing/routing-feedback.d.ts +35 -2
- package/dist/routing/routing-feedback.d.ts.map +1 -1
- package/dist/routing/routing-feedback.js +97 -3
- package/dist/routing/routing-feedback.js.map +1 -1
- package/dist/routing/types.d.ts +2 -0
- package/dist/routing/types.d.ts.map +1 -1
- package/dist/routing/types.js.map +1 -1
- package/dist/workers/workers/learning-consolidation.d.ts.map +1 -1
- package/dist/workers/workers/learning-consolidation.js +32 -0
- package/dist/workers/workers/learning-consolidation.js.map +1 -1
- package/package.json +1 -1
|
@@ -308,7 +308,19 @@ function getLearningMetrics(projectDir) {
|
|
|
308
308
|
// V3 trajectories (new V3 trajectory tracking)
|
|
309
309
|
const trajectories = parseInt(sqlite3Query(dbPath, 'SELECT COUNT(*) FROM qe_trajectories')) || 0;
|
|
310
310
|
// Captured experiences (task execution captures)
|
|
311
|
-
|
|
311
|
+
// Use SUM(consolidation_count) for monotonically non-decreasing counter:
|
|
312
|
+
// - New experience → +1
|
|
313
|
+
// - Merge A into B → A excluded (consolidated_into set), B's count += A's count → net 0
|
|
314
|
+
// - Archive → row stays, still counted → net 0
|
|
315
|
+
// Falls back to COUNT(*) if consolidation columns not yet added
|
|
316
|
+
let capturedExp = 0;
|
|
317
|
+
const consolidatedQuery = sqlite3Query(dbPath,
|
|
318
|
+
"SELECT COALESCE(SUM(consolidation_count), COUNT(*)) FROM captured_experiences WHERE consolidated_into IS NULL OR consolidated_into = 'archived'", '__FAIL__');
|
|
319
|
+
if (consolidatedQuery !== '__FAIL__') {
|
|
320
|
+
capturedExp = parseInt(consolidatedQuery) || 0;
|
|
321
|
+
} else {
|
|
322
|
+
capturedExp = parseInt(sqlite3Query(dbPath, 'SELECT COUNT(*) FROM captured_experiences')) || 0;
|
|
323
|
+
}
|
|
312
324
|
// Memory entries with learning data (MCP-stored experiences)
|
|
313
325
|
const memoryLearning = parseInt(sqlite3Query(dbPath, "SELECT COUNT(*) FROM memory_entries WHERE key LIKE 'learning%' OR key LIKE 'phase2/learning%'")) || 0;
|
|
314
326
|
// QE pattern usage (hook-recorded outcomes from aqe hooks post-task/post-edit)
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,25 @@ All notable changes to the Agentic QE project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.7.8] - 2026-03-04
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Loki-Mode adversarial quality gates (ADR-074)** — 7 new features to catch sycophantic AI outputs, hollow tests, and routing drift. All enabled by default (opt-out via config flags):
|
|
13
|
+
- **Anti-sycophancy scorer**: Detects rubber-stamp consensus via Jaccard similarity, confidence uniformity, and reasoning overlap across model votes
|
|
14
|
+
- **Test quality gates**: Catches tautological assertions (`expect(true).toBe(true)`), empty test bodies, and missing source imports in generated tests
|
|
15
|
+
- **Blind review orchestrator**: Runs N parallel test generators with varied temperatures, deduplicates results via Jaccard similarity
|
|
16
|
+
- **EMA calibration**: Exponential moving average tracks per-agent accuracy and derives dynamic voting weights, with SQLite state persistence
|
|
17
|
+
- **Edge-case injection**: Queries historical patterns from the learning store and injects proven edge cases into test generation prompts
|
|
18
|
+
- **Complexity-driven team composition**: Maps 8-dimension complexity analysis (AST + security + concurrency + API surface) to agent team composition
|
|
19
|
+
- **Auto-escalation tracker**: Consecutive failures auto-promote agent tier; consecutive successes auto-demote for cost optimization
|
|
20
|
+
- **Smart experience consolidation** — Replace destructive pruning with intelligent consolidation that preserves high-value learning patterns while managing memory growth
|
|
21
|
+
- **Multi-language test generation plan** — Architecture decision records (ADR-075 through ADR-079) for unified test framework type system, Tree-sitter WASM parser, compilation validation loop, backward-compatible API, and language-specific path resolution
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- **Loki-mode features enabled by default** — All 6 config flags (`enableSycophancyCheck`, `enableTestQualityGate`, `enableEdgeCaseInjection`, `enableEMACalibration`, `enableAutoEscalation`, `enableComplexityComposition`) default to `true` for immediate quality improvement
|
|
26
|
+
|
|
8
27
|
## [3.7.7] - 2026-03-02
|
|
9
28
|
|
|
10
29
|
### Added
|
package/README.md
CHANGED
|
@@ -94,6 +94,7 @@ For client-specific setup examples, see [Platform Setup Guide](docs/platform-set
|
|
|
94
94
|
- ✅ **OpenCode Support** (v3.7.1): 59 agent configs, 86 skill configs (78 QE + 8 general dev), 5 tool wrappers, SSE/WS/HTTP transport, output compaction, graceful degradation, `aqe init --with-opencode` auto-provisioning
|
|
95
95
|
- ✅ **AWS Kiro Support** (v3.7.2): 87 agent configs, 86 skill configs, 5 event-driven hooks, 2 steering files, MCP config, `aqe init --with-kiro` auto-provisioning
|
|
96
96
|
- ✅ **Multi-Platform Support** (v3.7.4): 8 new platform integrations — GitHub Copilot, Cursor, Cline, Kilo Code, Roo Code, OpenAI Codex CLI, Windsurf, Continue.dev — with JSON/TOML/YAML config generation, behavioral rules, and `aqe platform list/setup/verify` CLI
|
|
97
|
+
- ✅ **Loki-Mode Quality Gates** (v3.7.7): Anti-sycophancy scoring, test quality gates, blind review, EMA calibration, edge-case injection, complexity-driven composition, auto-escalation — enabled by default (opt-out)
|
|
97
98
|
- ✅ **V2 Backward Compatibility**: All V2 agents map to V3 equivalents
|
|
98
99
|
- ✅ **78 QE Skills**: 46 Tier 3 verified + 32 additional QE skills (QCSD swarms, n8n testing, enterprise integration, qe-* domains)
|
|
99
100
|
|
|
@@ -299,6 +300,41 @@ aqe learning stats
|
|
|
299
300
|
|
|
300
301
|
---
|
|
301
302
|
|
|
303
|
+
### 🛡️ Loki-Mode Quality Gates (v3.7.7)
|
|
304
|
+
|
|
305
|
+
V3.7.7 adds **7 adversarial quality features** inspired by loki-mode — designed to catch sycophantic AI outputs, hollow tests, and routing drift. All features are **enabled by default** (opt-out via config flags).
|
|
306
|
+
|
|
307
|
+
| Feature | Config Flag | Description |
|
|
308
|
+
|---------|------------|-------------|
|
|
309
|
+
| **Anti-Sycophancy Scorer** | `enableSycophancyCheck` | Detects rubber-stamp consensus via Jaccard similarity, confidence uniformity, and reasoning overlap |
|
|
310
|
+
| **Test Quality Gates** | `enableTestQualityGate` | Catches tautological assertions (`expect(true).toBe(true)`), empty test bodies, and missing source imports |
|
|
311
|
+
| **Blind Review** | N/A (API option) | Runs N parallel test generators with varied temperatures, deduplicates via Jaccard |
|
|
312
|
+
| **EMA Calibration** | `enableEMACalibration` | Exponential moving average tracks per-agent accuracy, derives dynamic voting weights |
|
|
313
|
+
| **Edge-Case Injection** | `enableEdgeCaseInjection` | Queries historical patterns and injects proven edge cases into test generation prompts |
|
|
314
|
+
| **Complexity Composition** | `enableComplexityComposition` | Maps 8-dimension complexity (AST + security + concurrency) to agent team composition |
|
|
315
|
+
| **Auto-Escalation** | `enableAutoEscalation` | Consecutive failures auto-promote agent tier; consecutive successes auto-demote |
|
|
316
|
+
|
|
317
|
+
```typescript
|
|
318
|
+
// All features are ON by default. To disable specific features:
|
|
319
|
+
const config: Partial<RoutingConfig> = {
|
|
320
|
+
enableEMACalibration: false, // Disable EMA voting weights
|
|
321
|
+
enableAutoEscalation: false, // Disable auto tier promotion
|
|
322
|
+
};
|
|
323
|
+
|
|
324
|
+
const consensusConfig: Partial<ConsensusEngineConfig> = {
|
|
325
|
+
enableSycophancyCheck: false, // Disable rubber-stamp detection
|
|
326
|
+
};
|
|
327
|
+
|
|
328
|
+
const testConfig: Partial<TestGeneratorConfig> = {
|
|
329
|
+
enableTestQualityGate: false, // Disable tautology detection
|
|
330
|
+
enableEdgeCaseInjection: false, // Disable pattern injection
|
|
331
|
+
};
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
> See [docs/loki-mode-features.md](docs/loki-mode-features.md) for detailed usage examples and configuration reference.
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
302
338
|
### 🌙 Dream Cycles & Neural Learning
|
|
303
339
|
|
|
304
340
|
V3 introduces **Dream cycles** for neural consolidation and continuous improvement:
|