compound-agent 1.3.2 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +78 -2
- package/dist/cli.js +1596 -478
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +270 -36
- package/dist/index.js +781 -66
- package/dist/index.js.map +1 -1
- package/docs/research/AgenticAiCodebaseGuide.md +1206 -0
- package/docs/research/BuildingACCompilerAnthropic.md +116 -0
- package/docs/research/HarnessEngineeringOpenAi.md +220 -0
- package/docs/research/code-review/systematic-review-methodology.md +409 -0
- package/docs/research/index.md +64 -0
- package/docs/research/learning-systems/knowledge-compounding-for-agents.md +695 -0
- package/docs/research/property-testing/property-based-testing-and-invariants.md +742 -0
- package/docs/research/tdd/test-driven-development-methodology.md +547 -0
- package/docs/research/test-optimization-strategies.md +401 -0
- package/package.json +9 -5
package/CHANGELOG.md
CHANGED
|
@@ -9,11 +9,80 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [1.4.0] - 2026-02-22
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- **Plugin manifest**: Corrected repository URL from `compound_agent` to `learning_agent`
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- **Version consolidation**: Roll-up release of v1.3.7–v1.3.9 production readiness fixes (test pipeline hardening, data integrity, two-phase vector search, FTS5 sanitization)
|
|
21
|
+
|
|
22
|
+
## [1.3.9] - 2026-02-22
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
|
|
26
|
+
- **Integration test pipeline reliability**: Moved `pnpm build` from vitest globalSetup to npm script pre-step, eliminating EPERM errors from tsx/IPC conflicts inside vitest's process
|
|
27
|
+
- **Fail-fast globalSetup**: Missing `dist/cli.js` now throws a clear error instead of cascading 68+ test failures
|
|
28
|
+
- **Integration pool isolation**: Changed from `threads` to `forks` for integration tests — proper process isolation for subprocess-spawning tests
|
|
29
|
+
- **Timeout safety net**: Added `testTimeout: 30_000` to fallback vitest.config.ts, preventing 5s default under edge conditions
|
|
30
|
+
|
|
31
|
+
## [1.3.8] - 2026-02-22
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
|
|
35
|
+
- **Integration test reliability**: Dynamic assertion on workflow command count instead of hardcoded magic number; 30s test timeout for integration suite; conditional build in global-setup; 30s timeout on all bare `execSync` calls in init tests
|
|
36
|
+
- **Data integrity**: Indexing pipeline wraps delete/upsert/hash-set in a single transaction for atomic file re-indexing
|
|
37
|
+
- **FTS5 sanitization**: Extended regex to strip parentheses, colons, and braces in addition to existing special chars
|
|
38
|
+
- **Safe JSON.parse**: `rowToMemoryItem` now uses `safeJsonParse` with fallbacks instead of bare `JSON.parse`
|
|
39
|
+
- **ENOENT on schema migration**: `unlinkSync` in lessons DB wrapped in try/catch (matches knowledge DB pattern)
|
|
40
|
+
- **Worktree hook support**: `getGitHooksDir` resolves `.git` file (`gitdir:` reference) in worktrees
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
|
|
44
|
+
- **Two-phase vector search**: Knowledge vector search loads only IDs + embeddings in phase 1, hydrates full text for top-k only in phase 2 (reduces memory from O(n * text) to O(n * embedding) + O(k * text))
|
|
45
|
+
- **Deduplicated FTS5 search**: `searchKeyword` and `searchKeywordScored` share a single `executeFtsQuery` helper
|
|
46
|
+
- **Removed redundant COUNT pre-checks**: FTS5 naturally returns empty on empty tables
|
|
47
|
+
- **Extracted chunk count helpers**: `getChunkCount` / `getChunkCountByFilePath` replace raw SQL in `knowledge.ts` and `indexing.ts`
|
|
48
|
+
- **Immutable extension sets**: `SUPPORTED_EXTENSIONS` typed as `ReadonlySet`; new `CODE_EXTENSIONS` constant replaces hardcoded array in chunking
|
|
49
|
+
- **`test:all` builds first**: Script now runs `pnpm build` before model download and test run
|
|
50
|
+
- **Test describe label**: Fixed misleading `'when stop_hook_active is false'` to match actual test condition
|
|
51
|
+
|
|
52
|
+
### Added
|
|
53
|
+
|
|
54
|
+
- `filesErrored` field in `IndexResult` to track file read failures during indexing
|
|
55
|
+
- `tsx` added to devDependencies (was used but not declared)
|
|
56
|
+
|
|
57
|
+
## [1.3.7] - 2026-02-22
|
|
58
|
+
|
|
59
|
+
### Fixed
|
|
60
|
+
|
|
61
|
+
- **Flaky tests**: Hardened auto-sync, init, and stop-audit tests with proper subprocess timeouts, guard assertions, and path resolution fixes
|
|
62
|
+
- **Conditional expects**: Replaced silent-pass `if (condition) { expect() }` patterns with explicit `it.runIf`/`it.skipIf` in model.test.ts
|
|
63
|
+
- **Singleton test timing**: Replaced `setTimeout(50)` with deterministic microtask yield in nomic-singleton.test.ts
|
|
64
|
+
|
|
65
|
+
### Changed
|
|
66
|
+
|
|
67
|
+
- **Test pipeline**: Split vitest workspace into unit/integration/embedding projects; `test:fast` now runs in ~12s (was ~107s)
|
|
68
|
+
- **Export tests**: Consolidated 27 individual export-existence tests into 7 grouped assertions in index.test.ts
|
|
69
|
+
|
|
70
|
+
### Added
|
|
71
|
+
|
|
72
|
+
- `pnpm test:unit` and `pnpm test:integration` scripts for targeted test execution
|
|
73
|
+
- Integration tags on 8 CLI test files outside `src/cli/`
|
|
74
|
+
|
|
75
|
+
## [1.3.3] - 2026-02-21
|
|
76
|
+
|
|
77
|
+
### Changed
|
|
78
|
+
|
|
79
|
+
- **Banner audio**: Rewritten as vaporwave composition with PolyBLEP anti-aliased sawtooth synthesis, biquad filters, Schroeder reverb, and delay. E minor ambiguity resolves to E major at bloom, synced 300ms ahead of the visual climax (neural brain lighting up). Post-animation reverb tail holds 1.8s for natural dissolution.
|
|
80
|
+
|
|
12
81
|
## [1.3.2] - 2026-02-21
|
|
13
82
|
|
|
14
83
|
### Added
|
|
15
84
|
|
|
16
|
-
- **Banner audio**: Pure TypeScript WAV synthesis
|
|
85
|
+
- **Banner audio**: Pure TypeScript WAV synthesis during the tendril animation. Cross-platform: `afplay` (macOS), `aplay` (Linux), PowerShell (Windows). Silently skips if player unavailable. Zero dependencies.
|
|
17
86
|
- **Test coverage**: 19 new tests for `ca about` command, changelog extraction/escaping, and `--update` doc migration path
|
|
18
87
|
|
|
19
88
|
### Fixed
|
|
@@ -632,7 +701,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
632
701
|
- Vitest test suite
|
|
633
702
|
- tsup build configuration
|
|
634
703
|
|
|
635
|
-
[Unreleased]: https://github.com/Nathandela/learning_agent/compare/v1.
|
|
704
|
+
[Unreleased]: https://github.com/Nathandela/learning_agent/compare/v1.4.0...HEAD
|
|
705
|
+
[1.4.0]: https://github.com/Nathandela/learning_agent/compare/v1.3.9...v1.4.0
|
|
706
|
+
[1.3.9]: https://github.com/Nathandela/learning_agent/compare/v1.3.8...v1.3.9
|
|
707
|
+
[1.3.8]: https://github.com/Nathandela/learning_agent/compare/v1.3.3...v1.3.8
|
|
708
|
+
[1.3.7]: https://github.com/Nathandela/learning_agent/compare/v1.3.3...v1.3.7
|
|
709
|
+
[1.3.3]: https://github.com/Nathandela/learning_agent/compare/v1.3.2...v1.3.3
|
|
710
|
+
[1.3.2]: https://github.com/Nathandela/learning_agent/compare/v1.3.1...v1.3.2
|
|
711
|
+
[1.3.1]: https://github.com/Nathandela/learning_agent/compare/v1.3.0...v1.3.1
|
|
636
712
|
[1.3.0]: https://github.com/Nathandela/learning_agent/compare/v1.2.11...v1.3.0
|
|
637
713
|
[1.2.11]: https://github.com/Nathandela/learning_agent/compare/v1.2.10...v1.2.11
|
|
638
714
|
[1.2.10]: https://github.com/Nathandela/learning_agent/compare/v1.2.9...v1.2.10
|