Skip to content

chore(main): release 4.1.0 - #520

Merged
dfrostar merged 1 commit into
mainfrom
release-please--branches--main
Sep 18, 2026
Merged

dfrostar merged 1 commit into
mainfrom
release-please--branches--main

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

🤖 I have created a release beep boop

4.1.0 (2026-09-18)

Features

  • memory: decision memory layer with commit-level invalidation (220a6fa)
  • memory: eval harness + MCP tools for decision memory (e14ddfa)
  • memory: tests/memory/ suite + register memory MCP tools (3664062)

Bug Fixes

  • add ensure_test_chapters() to all tests using CHAPTERS_DIR (bbd2451)
  • CI failures — black formatting + remove hardcoded paths (1198ce0)
  • dedicated prose fixture for pipeline integration tests (b8e3737)
  • memory: update() referenced nonexistent files attr — silent no-op (066a48b)
  • parity gate faithfulness floor 0.0 -> -0.10 (6ab2082)
  • remove erroneous .neuralmind.yaml from code fixture (2a31413)
  • resolve remaining CI lint failures and Windows checkout error (edab170)
  • reword absolute claim on measure-your-own page (f6f3d71)
  • site: bump deps to clear Dependabot alerts + add cognition icon (4881eab)
  • test_pipeline_integration — portable paths, prose mode, self-contained chapters (7e4bec8)
  • update parity gate unit test for new -0.10 floor (a1174f3)
  • widen self-benchmark faithfulness floor from +0.000 to -0.100 (23a5122)

This PR was generated with Release Please. See documentation.

@github-actions
github-actions Bot requested a review from dfrostar as a code owner September 16, 2026 20:45
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 9 times, most recently from 3987f5d to 8be925d Compare September 17, 2026 02:35
@github-actions

Copy link
Copy Markdown
Contributor Author

Backend parity gate — graphify vs built-in tree-sitter

✅ PASS — the built-in backend must stay within tolerance of graphify on the reference fixture.

Metric graphify built-in
code nodes 65 79
mean reduction 4.94× 6.30×
faithfulness delta -0.061 -0.054
fact recall 0.527 0.451
grounding 0.889 0.843

Gate checks

  • reduction within tolerance of graphify — built-in 6.30× ≥ 3.71× (graphify 4.94× − 25%)
  • reduction ≥ absolute floor — built-in 6.30× ≥ floor 4.00×
  • faithfulness delta within tolerance of graphify — built-in -0.054 ≥ -0.161 (graphify -0.061 − 0.10)
  • faithfulness delta ≥ absolute floor — built-in -0.054 ≥ floor -0.100
  • fact recall within tolerance of graphify — built-in 0.451 ≥ 0.427 (graphify 0.527 − 0.10)

Tolerances: reduction within 25% (floor 4.0×), faithfulness within 0.10 (floor -0.10). Override via NEURALMIND_PARITY_* env vars.

Automated by evals/parity/run.py — reproduce locally with python -m evals.parity.run.

Multi-language structural parity

Language graphify symbols built-in covers dangling
typescript 54 54 (100%) 0
go 45 45 (100%) 0
rust 49 49 (100%) 0
java 52 52 (100%) 0
c 47 47 (100%) 0
cpp 51 51 (100%) 0
csharp 52 52 (100%) 0
ruby 46 46 (100%) 0
php 54 54 (100%) 0
  • typescript: symbol coverage ≥ floor — 54/54 graphify symbols (100%) ≥ 90%
  • typescript: no dangling edges — 0 dangling edge(s)
  • go: symbol coverage ≥ floor — 45/45 graphify symbols (100%) ≥ 90%
  • go: no dangling edges — 0 dangling edge(s)
  • rust: symbol coverage ≥ floor — 49/49 graphify symbols (100%) ≥ 90%
  • rust: no dangling edges — 0 dangling edge(s)
  • java: symbol coverage ≥ floor — 52/52 graphify symbols (100%) ≥ 90%
  • java: no dangling edges — 0 dangling edge(s)
  • c: symbol coverage ≥ floor — 47/47 graphify symbols (100%) ≥ 90%
  • c: no dangling edges — 0 dangling edge(s)
  • cpp: symbol coverage ≥ floor — 51/51 graphify symbols (100%) ≥ 90%
  • cpp: no dangling edges — 0 dangling edge(s)
  • csharp: symbol coverage ≥ floor — 52/52 graphify symbols (100%) ≥ 90%
  • csharp: no dangling edges — 0 dangling edge(s)
  • ruby: symbol coverage ≥ floor — 46/46 graphify symbols (100%) ≥ 90%
  • ruby: no dangling edges — 0 dangling edge(s)
  • php: symbol coverage ≥ floor — 54/54 graphify symbols (100%) ≥ 90%
  • php: no dangling edges — 0 dangling edge(s)

Coverage floor: 90% of graphify's per-language symbols (no gold-fact set exists for TS/Go, so parity is structural).

Optional SCIP precision pass

  • precision: SCIP corrects the heuristic call edge — run() → A.handle under SCIP (heuristic wrongly linked B.handle)
  • precision: strict no-op when disabled — graph unchanged when NEURALMIND_PRECISION is unset

Off by default (NEURALMIND_PRECISION); proven on tests/fixtures/scip_precision to replace a heuristic call edge with the compiler-accurate one a SCIP index resolves.

@github-actions

Copy link
Copy Markdown
Contributor Author

NeuralMind self-benchmark

Status: PASS — floor , measured 5.1×.

Phase 1 — Reduction on committed fixture

  • Average reduction: 5.1×
  • Top-k retrieval hit rate: 66.7%
  • Naive baseline: 89,984 tokens (all fixture files concatenated)
  • NeuralMind total: 17,812 tokens across 19 queries
  • Estimated monthly savings @ 100 queries/day on Claude 3.5 Sonnet: ~$34.19
# Query Shape Naive NeuralMind Ratio Hit
1 auth-flow cross-file 4,736 974 4.9× 33.3%
2 api-endpoints focused 4,736 978 4.8× 100.0%
3 billing-flow cross-file 4,736 1,019 4.6× 33.3%
4 user-storage cross-file 4,736 914 5.2× 50.0%
5 jwt-verify focused 4,736 821 5.8× 100.0%
6 stripe-webhook focused 4,736 949 5.0× 100.0%
7 create-user cross-file 4,736 880 5.4× 50.0%
8 refund focused 4,736 1,028 4.6× 0.0%
9 db-choice identity 4,736 1,012 4.7× 100.0%
10 invoice-send cross-file 4,736 947 5.0× 50.0%
11 debug-login-silent focused 4,736 852 5.6× 100.0%
12 debug-webhook-reject focused 4,736 916 5.2× 100.0%
13 debug-invoice-missing cross-file 4,736 870 5.4× 50.0%
14 debug-token-expire focused 4,736 1,038 4.6× 100.0%
15 refactor-add-user-field cross-file 4,736 919 5.2× 50.0%
16 refactor-swap-database focused 4,736 928 5.1× 100.0%
17 refactor-add-mfa cross-file 4,736 915 5.2× 50.0%
18 next-after-jwt-change cross-file 4,736 833 5.7× 50.0%
19 next-after-charge-change cross-file 4,736 1,019 4.6× 50.0%

Phase 2 — Synapse recall A/B (same warm graph, recall off vs on)

  • Synapse edges after seeding co-editing sessions: 2954
  • Top-k hit rate: 71.9% off → 80.7% on (Δ +8.8 points, mean of 3 runs)
  • Per-run deltas: +8.8, +8.8, +8.8 points — published because this metric moves between runs, and a mean that hides its own spread is how a directional claim gets decided by luck.
  • Reduction ratio: 5.2× off → 5.2× on (Δ +0.03× — budget-neutral by design)

The Hebbian synapse layer is now the single learning measurement (the old
learned_patterns reranker was removed). The hit-rate delta shows associative recall
surfacing co-edited modules a purely textual search ranks lower; the near-zero reduction
delta confirms it does so without spending extra tokens (recalled nodes displace the
weakest hits, not add to them).

Assumptions

  • Baseline: every .py file in tests/fixtures/sample_project/ concatenated.
  • Tokenizer: tiktoken GPT-4o encoding (per-model breakdown in multi_model.json if generated).
  • Pricing: Claude 3.5 Sonnet input @ $3.0/MTok.
  • Regression floor: — well below NeuralMind's typical 12–50× on real repos.

Per-model token reduction

Model Tokenizer Naive NeuralMind Ratio Source
GPT-4o / GPT-4o-mini tiktoken o200k_base 4,739 927 5.1× measured
GPT-4 / GPT-3.5-turbo tiktoken cl100k_base 4,710 918 5.1× measured
Claude 3.5 Sonnet estimated: GPT-4o × 1.08 — install anthropic for an exact count 5,118 1,001 5.1× estimated
Llama 3 (70B) estimated: GPT-4o × 1.22 — Llama tokenizer requires model weights; estimate based on published vocab ratios 5,781 1,130 5.1× estimated

Rows marked measured use the provider's real tokenizer. Rows marked
estimated apply a published vocab-size correction to the GPT-4o count —
honest approximations, not hardcoded claims.

NeuralMind retrieval-quality eval

Suite Queries MRR Answerability Recall@5 Precision@5 Gate
c 10 0.650 90% 0.900 0.205 PASS
cpp 10 0.725 100% 1.000 0.293 PASS
csharp 5 1.000 100% 1.000 0.463 PASS
go 19 0.939 100% 0.956 0.404 PASS
java 19 0.886 100% 0.904 0.350 PASS
php 4 0.875 100% 1.000 0.479 PASS
python 19 0.974 100% 0.912 0.413 PASS
ruby 4 0.875 100% 1.000 0.467 PASS
rust 19 0.974 100% 0.956 0.361 PASS
typescript 19 0.895 100% 0.912 0.372 PASS

Query category coverage (PRD 2):

  • c: architecture: 10
  • cpp: architecture: 10
  • csharp: architecture: 5
  • go: architecture: 10, bug-localization: 4, refactor: 3, next-edit: 2
  • java: architecture: 10, bug-localization: 4, refactor: 3, next-edit: 2
  • php: architecture: 4
  • python: architecture: 10, bug-localization: 4, refactor: 3, next-edit: 2
  • ruby: architecture: 4
  • rust: architecture: 10, bug-localization: 4, refactor: 3, next-edit: 2
  • typescript: architecture: 10, bug-localization: 4, refactor: 3, next-edit: 2

go vs baseline:

  • mrr: 0.939 (▼ -0.011)
  • answerability: 1.000 (= +0.000)
  • recall@1: 0.614 (▼ -0.003)
  • recall@3: 0.886 (▲ +0.053)
  • recall@5: 0.956 (▲ +0.123)

python vs baseline:

  • mrr: 0.974 (▲ +0.074)
  • answerability: 1.000 (= +0.000)
  • recall@1: 0.667 (▲ +0.150)
  • recall@3: 0.860 (▲ +0.026)
  • recall@5: 0.912 (▲ +0.079)

typescript vs baseline:

  • mrr: 0.895 (▼ -0.005)
  • answerability: 1.000 (= +0.000)
  • recall@1: 0.570 (▼ -0.013)
  • recall@3: 0.860 (▲ +0.060)
  • recall@5: 0.912 (▲ +0.112)

Overall: PASS


Automated by .github/workflows/ci-benchmark.yml — regenerate locally with python -m tests.benchmark.run and neuralmind benchmark --quality.

@github-actions

Copy link
Copy Markdown
Contributor Author

NeuralMind CI Compliance Check

Framework: all
Changed files: 7
Files with annotations: 0

Summary: No compliance annotations affected by this diff.

@github-actions github-actions Bot changed the title chore(main): release 4.0.1 chore(main): release 4.1.0 Sep 18, 2026
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 2 times, most recently from b8f0004 to d29a04b Compare September 18, 2026 12:45
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch from d29a04b to 5fb1a09 Compare September 18, 2026 15:47
@dfrostar
dfrostar merged commit 0dde42c into main Sep 18, 2026
3 checks passed
@dfrostar
dfrostar deleted the release-please--branches--main branch September 18, 2026 15:47
@github-actions

Copy link
Copy Markdown
Contributor Author

🤖 Created releases:

🌻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant