|
2 | 2 |
|
3 | 3 | All notable changes to Noumenon are documented in this file. |
4 | 4 |
|
5 | | -## 0.1.0 — 2026-03-27 — Initial Public Release |
| 5 | +## 0.2.0 |
| 6 | + |
| 7 | +### Features |
| 8 | + |
| 9 | +- **Introspect** — Autonomous self-improvement loop. An LLM optimizer |
| 10 | + analyzes benchmark gaps and proposes changes to prompts, example queries, |
| 11 | + Datalog rules, source code, and ML model hyperparameters. Improvements are |
| 12 | + kept; regressions are reverted automatically. Inspired by Karpathy's |
| 13 | + autoresearch. See [reports/introspect-development-2026-03-28.md](reports/introspect-development-2026-03-28.md). |
| 14 | +- **ML query routing model** — On-device feedforward network predicts which |
| 15 | + Datalog queries to try for a given question. Trained via introspect, runs at |
| 16 | + zero token cost. Integrated into the ask agent as optional hints. |
| 17 | +- **Multi-repo evaluation** — Introspect evaluates across multiple repos to |
| 18 | + prevent overfitting prompts to a single codebase. |
| 19 | +- **Async MCP introspect** — `noumenon_introspect_start`, `_status`, `_stop` |
| 20 | + tools for background optimization runs. |
| 21 | +- **Internal meta database** — Dedicated Datomic database (`noumenon-internal`) |
| 22 | + for cross-repo introspect history, with 5 named Datalog queries. |
| 23 | +- **Ask agent improvements** — Prompt caching (Anthropic API), parallel tool |
| 24 | + execution, column headers in query results, iteration-aware budget warnings, |
| 25 | + partial answers on budget exhaustion with resumable sessions. |
| 26 | +- **Issue reference extraction** — Commits now extract issue refs (`#123`, |
| 27 | + `PROJ-456`, URLs) into `:commit/issue-refs`. |
| 28 | +- **Scoped re-analysis** — `--reanalyze` flag for `analyze` command supports |
| 29 | + `all`, `prompt-changed`, `model-changed`, and `stale` modes. |
| 30 | + |
| 31 | +### Fixes |
| 32 | + |
| 33 | +- Pin Clojure 1.12.3 in deps.edn to fix uberjar compilation (tools.build |
| 34 | + resolves 1.11.2 transitively, breaking AOT with neanderthal). |
| 35 | +- Python relative import handling in `enrich`. |
| 36 | +- Rust `use` statement capture alongside `mod` declarations. |
| 37 | +- Analysis prompt improvements: tighter confidence scoring, segment naming, |
| 38 | + call-names accuracy, safety concern calibration. |
| 39 | +- Ask agent prompt hardening against hedge paragraphs and answer quality issues. |
| 40 | +- Numerous introspect robustness fixes (path traversal blocking, TOCTOU |
| 41 | + mitigation, exception recovery, formatting-preserving revert). |
| 42 | + |
| 43 | +### CLI Commands |
| 44 | + |
| 45 | +Added `introspect` subcommand with `--max-iterations`, `--max-hours`, |
| 46 | +`--max-cost`, `--target`, `--eval-runs`, `--git-commit`, and `--verbose` flags. |
| 47 | + |
| 48 | +### Dependencies |
| 49 | + |
| 50 | +- Added `uncomplicate/deep-diamond` 0.43.0 and `uncomplicate/neanderthal` 0.61.0 |
| 51 | + (ML model training). |
| 52 | +- Pinned `org.clojure/clojure` 1.12.3. |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +## 0.1.0 |
6 | 57 |
|
7 | 58 | First public release of Noumenon, a Datomic-backed knowledge graph for |
8 | 59 | AI-assisted codebase understanding. |
@@ -42,10 +93,3 @@ AI-assisted codebase understanding. |
42 | 93 | `digest`, `import`, `analyze`, `enrich`, `update`, `watch`, `query`, `ask`, |
43 | 94 | `show-schema`, `status`, `list-databases`, `serve`, `benchmark` |
44 | 95 |
|
45 | | -### Supported Languages |
46 | | - |
47 | | -| Tier | Languages | |
48 | | -|------|-----------| |
49 | | -| Full (deterministic imports) | Clojure | |
50 | | -| Import extraction | Elixir, Erlang, Python, JavaScript/TypeScript, Rust, Java | |
51 | | -| Analysis only | All languages with text files | |
|
0 commit comments