compound-agent 1.3.3 → 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 +71 -1
- package/dist/cli.js +1373 -364
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +264 -30
- 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,6 +9,69 @@ 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
|
+
|
|
12
75
|
## [1.3.3] - 2026-02-21
|
|
13
76
|
|
|
14
77
|
### Changed
|
|
@@ -638,7 +701,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
638
701
|
- Vitest test suite
|
|
639
702
|
- tsup build configuration
|
|
640
703
|
|
|
641
|
-
[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
|
|
642
712
|
[1.3.0]: https://github.com/Nathandela/learning_agent/compare/v1.2.11...v1.3.0
|
|
643
713
|
[1.2.11]: https://github.com/Nathandela/learning_agent/compare/v1.2.10...v1.2.11
|
|
644
714
|
[1.2.10]: https://github.com/Nathandela/learning_agent/compare/v1.2.9...v1.2.10
|