From 0b71e0be60ecaeebc3c326ea5dcc09a7a48140c8 Mon Sep 17 00:00:00 2001 From: cdeust Date: Wed, 1 Jul 2026 00:32:29 +0200 Subject: [PATCH] =?UTF-8?q?chore(release):=20v3.25.0=20=E2=80=94=20headles?= =?UTF-8?q?s=20wiki-authoring=20hardening=20+=20active=20forgetting?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps version across pyproject/server/manifest/marketplace/plugin manifests and records the 3.25.0 CHANGELOG section covering #67–#72: - feat: active forgetting module (#69), safe headless drain (#70), full zetetic agent roster for wiki authoring (#72) - fix: Windows portability (#68), subscription-default billing (#71), variadic --add-dir prompt-swallow root cause (#72) - deps: pydantic-settings 2.14.0→2.14.2 security patch (#67) Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_019o58McF4LRfvGNNXaqG2Au --- .claude-plugin/marketplace.json | 4 +-- .claude-plugin/plugin.json | 2 +- CHANGELOG.md | 44 +++++++++++++++++++++++++++++++++ manifest.json | 2 +- pyproject.toml | 2 +- server.json | 4 +-- 6 files changed, 51 insertions(+), 7 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index da3bc592..362e2f32 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -6,14 +6,14 @@ }, "metadata": { "description": "Persistent memory and cognitive profiling plugins for Claude Code", - "version": "3.24.1" + "version": "3.25.0" }, "plugins": [ { "name": "cortex", "source": "./", "description": "Persistent memory and cognitive profiling for Claude Code — thermodynamic memory with heat/decay, intent-aware retrieval, biological plasticity, codebase intelligence, and cognitive profiling. 43 MCP tools (46 with the optional automatised-pipeline + prd-spec-generator integrations) with enriched schemas (visualization extracted to the standalone cortex-viz MCP). PostgreSQL + pgvector in CLI mode; automatic SQLite fallback in Cowork/sandboxed mode. v3.17.0 — autonomous per-project wiki: SessionStart auto-spawns a 6-hour consolidate cycle; a headless `claude -p` worker drains the curation-gap queue, calls codebase-intelligence MCP tools to ground each section in the real call graph, and authors missing anchor pages (architecture / services / api / data-flow / operations / decisions / PRD) per project from the source tree. 15 canonical scopes × 13 file sections; per-project dashboards under `wiki/_dashboards/`. Mermaid diagrams have a 🔍 lens with zoom + pan. Workflow graph with caller-qualified CALLS chains rendering full method-to-method dependencies (native tree-sitter, no AP required). Side panel humanized for non-technical users. Ingests codebase analysis (ai-automatised-pipeline) and PRDs (prd-spec-generator) into wiki + memory + knowledge graph. Docker image available.", - "version": "3.24.1", + "version": "3.25.0", "author": { "name": "Clement Deust", "email": "admin@ai-architect.tools" diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 46231458..80e49738 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "cortex", "description": "Persistent memory for Claude Code — remembers across sessions automatically. Install and forget. Scientific retrieval backed by 72 published references.", - "version": "3.24.1", + "version": "3.25.0", "author": { "name": "Clement Deust", "email": "admin@ai-architect.tools" diff --git a/CHANGELOG.md b/CHANGELOG.md index 901c9813..6f351c79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,50 @@ adheres to [Semantic Versioning](https://semver.org/). ## [Unreleased] +## [3.25.0] - 2026-07-01 + +Headless wiki-authoring hardened end-to-end (subscription billing, full zetetic +agent roster, anti-recursion guard) plus the active-forgetting memory module and +Windows portability fixes. + +### Added +- **Active forgetting (Module #6).** `core/active_forgetting.py` + + `handlers/consolidation/forgetting.py`: two independent Drosophila dopaminergic + forgetting circuits — permanent Rac1 trace erosion (chronic interference × + stage vulnerability) and transient DAMB retrieval block (Davis & Zhong 2017, + Sabandal et al. 2021). Shipped with a falsification harness left failing where + the model genuinely diverges from biology. (#69) +- **Safe headless wiki-authoring drain.** Async `claude -p` invocation + (`asyncio.create_subprocess_exec` + `wait_for`) that no longer blocks the event + loop; per-cycle concurrency / wall-clock / USD budget via `CORTEX_HEADLESS_*` + knobs (defaults 4 / 300s / $5); anti-fabrication `Scope.groundable` filter so + non-derivable scopes (prd/decisions/changelog/roadmap/accessibility/ + localization) are never authored from scratch. (#70) +- **Full zetetic agent roster for wiki authoring.** Two-mode argv + (`claude_cli._build_argv`, gated on `CORTEX_HEADLESS_AGENTS`, default on): + agents mode loads the user roster only (`--setting-sources user`, project/local + excluded so a malicious repo cannot inject settings/hooks) with a hard + `--disallowedTools Write,Edit,Bash,NotebookEdit` deny ceiling that propagates to + delegated subagents; solo mode falls back to `--safe-mode`. New + `hooks/_headless_guard.py` no-ops every Cortex hook under + `CORTEX_HEADLESS_AUTHORING_CHILD=1`, stopping consolidation→authoring recursion + and memory pollution. (#72) + +### Fixed +- **Windows cross-platform portability.** macOS/Linux compatibility preserved. (#68) +- **Headless drain billing.** The drain now uses a logged-in Claude subscription + by default with API billing as explicit opt-in; previously `--bare` forced + `ANTHROPIC_API_KEY` and the fail-closed guard skipped the whole drain on + subscription-only machines. (#71) +- **Silent drain failure since 3.24 (root cause).** The variadic `--add-dir` + swallowed the trailing positional prompt, so every drain with a `source_root` + failed silently; the prompt is now passed via STDIN. (#72) + +### Changed +- Bump `pydantic-settings` 2.14.0 → 2.14.2 (upstream security patch: + `NestedSecretsSettingsSource` no longer follows symlinks outside + `secrets_dir`). (#67) + ## [3.24.1] - 2026-06-23 Cross-backend `recall` fix — PostgreSQL users could not use `recall`. diff --git a/manifest.json b/manifest.json index 0d341607..21800c10 100644 --- a/manifest.json +++ b/manifest.json @@ -133,5 +133,5 @@ "type": "string" } }, - "version": "3.24.1" + "version": "3.25.0" } diff --git a/pyproject.toml b/pyproject.toml index 69a4a94d..e7a97155 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "hypermnesia-mcp" -version = "3.24.1" +version = "3.25.0" description = "Scientifically-grounded memory system based on computational neuroscience research" readme = "README.md" license = "MIT" diff --git a/server.json b/server.json index bc3dd08d..3f890393 100644 --- a/server.json +++ b/server.json @@ -6,12 +6,12 @@ "url": "https://github.com/cdeust/Cortex", "source": "github" }, - "version": "3.24.1", + "version": "3.25.0", "packages": [ { "registry_type": "pypi", "identifier": "hypermnesia-mcp", - "version": "3.24.1", + "version": "3.25.0", "transport": { "type": "stdio" }