Changelog#
Źródło prawdy: CHANGELOG.md w repo. Ta strona to zrzut na moment publikacji — w razie rozjazdu ufaj repo.
Unreleased#
v1.4.0 — 2026-04-19#
Added#
- Production sprint phases 1.1–3.2 (10 PRs, #119–#126):
- Phase 1.1 — graceful SIGTERM/SIGINT drain
- Phase 1.2 — scheduled backup + restore-drill + observability
- Phase 1.3 — provider cost-cap as observable feature
- Phase 2.1 — per-provider circuit breaker with observable state
- Phase 2.2 — concurrent-turn admission with user-visible queue
- Phase 2.3 — self-modify boot-failure auto-revert
- Phase 3.1 — live Telegram smoke test (CLI + CI)
- Phase 3.2 — chain schema migration framework
- Phase L (#149/PR #162): offline-invariant gate — lightweight PR-time test (
tests/integration/offline-invariant.test.ts) + heavy nightly acceptance (.github/workflows/offline-acceptance.ymlrunningscripts/rc-drill.shin fresh isolated env). CI-enforces that Memphis remains operable without any remote-provider keys. - Phase A3 (PR #163): Rust sanitizer workflow — ASan on
memphis-vault, UBSan onmemphis-core, TSan onmemphis-core. workflow_dispatch + Sundays 03:00 UTC. - L3 ToolRegistry incremental polish (PR #164): added optional
inputSchema?: z.ZodTypeAnyfield toToolMetainterface; pilot 5 tier-0 tools (memphis_journal, memphis_recall, memphis_search, memphis_decide, memphis_health) now expose strict Zod schemata for surface-side input validation. - Bilingual install + debug guides (PR #170, PR #171):
docs/operator/install.{en,pl}.md+docs/operator/debug.{en,pl}.md— canonical EN + PL entry points consolidating 5 prior install docs and adding a Symptom→Diagnosis→Fix tree covering 36 runtime issues across 8 categories. - Example installation walkthrough (PR #172):
docs/operator/example-installation/— 7 sanitized files showing happy-path install + first-run + chat + vault setup + health snapshot + timing baseline (Intel i3-2120 reference). - Crate READMEs + docs index (PR #173): 7 new crate READMEs + rewritten
docs/README.mdindex after the 4-bucket reorganization. - Dependency audit doc (PR #174):
docs/dev/dependencies.md— exhaustive list of system / npm / cargo deps with rationale per package.
Fixed#
- Codex Round 5 + Round 6 bundled hotfixes (#118, #127): 26 review findings closed across the production sprint.
- Security scan sprint 2026-04-17 — two bundled hotfixes (#141, #146) closed 20 findings total: SSRF in
memphis_web_fetch(HIGH),npm auditupgrades (HIGH),curl/wget --outputarbitrary file write (HIGH),operator.jsonPBKDF2 file mode 0o600 (HIGH), sync-manager unsigned-block rejection (HIGH), dashboard XSS escape (MED), dashboard/api/dataBearer token auth (MED), MCP transport loopback fail-closed (LOW), apps/manifest shell-quote (LOW),two_factor.rsResult error propagation (LOW), vault rotation tmp-file fsync before rename (LOW), and others. - Audit-trail hygiene (2026-04-19 sprint): closed 15 OPEN security issues that were already fixed in PR #141 / PR #146 but had no
Closes #Ntrailer (#129–#140, #143–#145). - Format drift recovery (PR #166):
prettier --write .on 328 files to recover the nightly-crystal "Format check" gate that had been failing for 8 consecutive days (2026-04-12 → 2026-04-19). - runtime-health defensive fix (PR #162):
resolveSqlitePathnow handles undefinedDATABASE_URLgracefully instead of crashing on.startsWith(surfaced while writing the Phase L offline-invariant test). - CI hygiene (PR #165): bumped
actions/checkout+actions/setup-nodefrom v4 to v5 intelegram-smoke.ymlto align with the rest of the workflow suite.
Changed#
- Docs reorganization (PR #169):
docs/reorganized into 4 thematic subdirs —operator/(47 files),dev/(28 files),agents/(1 file),historical/(15 files). Pure relocations, no content modified. - Repo root cleanup (PR #168): 12 stale
.mdfiles moved from repo root todocs/archive/2026-04-19-root-cleanup/. Root now has 13 operational/canonical files only. - Version sync (PR #167): CHANGELOG + README brought into sync with
package.jsonafter a 3-way drift; this v1.4.0 entry follows that sync. .gitignore(PR #174): formalized_Watra/,watra.zip,.claude/scheduled_tasks.lock,*.tmp,data/security-audit-archives/,data/vault-bak-*/patterns that had been ad-hoc'd for weeks.
v1.3.0 - 2026-04-06#
Added#
- Native Anthropic provider with OAuth + API key auth.
- Full autonomy mode — all tools auto-approved without passphrase.
- One-liner
curl | bashinstaller + post-install user flow. memphis_testtool (#52, #64) andgrep/glob/gittools (#51, #53, #55) with expanded exec-policy allowlist.- Voice messages (STT/TTS) for Telegram +
/evolvecommand. - Google Cloud TTS fallback for Polish voice.
- Bulletproof self-modify + cron tool + watchdog restart + file logging.
- MiniMax-M2.7 maxOutputTokens 4096 → 32768, context 204800.
Fixed#
- Atomic chain writes + propagate parse errors to prevent genesis overwrite (#70).
- Suppress restart timer under vitest to prevent uncaught exit.
- Self-modify path validation false positives (doctor-v2 ta8).
- Elevate
memphis_git,code_read,grep,glob,web_fetchto tier 2 (vault passphrase required). - Trust mode set command parser +
memphis_code_read/execin Rust operator. run_sudostrips-Ewhen already root; remove dead tier-gate.
Refactored#
chain-file-ioextracted for shared block primitives.
v1.2.4 - 2026-04-04#
Fixed#
npm publishidempotent on 409 Conflict to handle concurrent / re-run release jobs.
v1.2.3 - 2026-04-03#
Fixed#
- Critical: Add
sanitize_for_json()in Rust operator (provider.rs) to fix DeepSeek 400 on TUI path. Previously sanitization only existed in TypeScript providers, but TUI uses Rust operator directly which bypassed it.
v1.2.2 - 2026-04-03#
Fixed#
- DeepSeek API 400 "unexpected end of hex escape" by adding
sanitizeForJsonRequest()to sanitize invalid\xescape sequences in all provider message content. - Provider stream JSON parsing crash ("expected value at line 1 column 1") by skipping empty SSE data payloads and SSE comment lines.
- Unhandled exception when LLM returns malformed JSON in
function.argumentsfield — now safely falls back to empty object. - Debug output verbosity in DeepSeek stream parsing (removed verbose eprintln statements).
v1.2.1 - 2026-04-02#
Fixed#
- Treat bounded
local-fallbackruntime as operational health after a clean first-run so RC/release drills do not fail closed just because Ollama is unavailable. - Align the SQLite bootstrap schema-version assertion with the migrated runtime schema.
v1.2.0 - 2026-04-01#
Added#
- Cross-surface conversation identity so local operator and aliased chat surfaces can converge on one canonical conversation.
- Surface policy controls and operator UX for tiered chat surfaces with visible health and release gates.
- First-run status planning, runtime migration truth, and release acceptance coverage for
v1.2.0. - Repo-local Node and Rust launchers plus release smoke coverage for Rust workspace validation.
Changed#
- Release smoke now includes Rust workspace tests, isolated RC drill validation, and downloader-safe install checks.
- Prompt-risk handling degrades tools, recall, fetch, and durable writes before unsafe content can cross runtime boundaries.
- Runtime repair rebuilds embeddings from chain truth with chain-scoped memory IDs and canonical conversation mapping.
Fixed#
- Cross-user memory recall leakage in the gateway in-process memory client.
- Tool policy bypass between HTTP/chat runtime and SQLite-backed operator permissions.
- Cross-chain durable memory ID collisions and semantic recall chain-filter drift.
- Dashboard
/api/statuscontract and auth mismatches. - Curl-less bootstrap/install and TUI host stdout pollution that were breaking release drills.
v1.1.1 - 2026-04-01#
Added#
- Cognitive Architecture documentation (
docs/COGNITIVE-ARCHITECTURE.md) - Auto-approve Tier 2 tools in balanced cognitive mode
- Auto-obtain passphrase from secure file for self-modification
- Minimax added to provider cascade (Tier 3)
Changed#
- Gateway max_tool_calls increased from 16 to 64 for complex tasks
- Soul manifest preserves evolution settings including passphraseHash on ensureSoulManifest
- Onboarding always recommends 'memphis init' regardless of .env presence
- CLI dispatcher registers operator, evolve, secret, explain handlers
- Trust-cli tests updated for default 2 trustRules
Fixed#
- Corrupted files restored: soul.rs (Rust core), dispatcher.ts, telegram.handler.ts, manifest.ts
- GLM provider can now be fully disabled via GLM_ENABLED=false
- Provider cascade tier numbers corrected after adding minimax
- Legacy block shape migration for soul chain (run
memphis repair runtimeif needed)
v1.1.0 - 2026-03-30#
Added#
- Complete User Guide (
docs/USER-GUIDE.md) covering all operator workflows - Upgrade Guide (
docs/UPGRADE.md) with v1.0.1 to v1.1.0 migration path - Vault-first secret resolution for MiniMax, DeepSeek, GLM provider API keys
- Vault-first resolution for Pinata (IPFS) and alerting (PagerDuty, OpsGenie) secrets
- PULSE heartbeat watchdog startup in bootstrap with system chain health events
- System chain writes for boot events and health state changes
- Cognitive mode change events written to system chain and PULSE log
- TUI status bar shows cognitive mode (A-E) and PULSE health status
- TUI overview screen shows cognitive mode and PULSE health
/v1/cognitive/statusHTTP endpoint for cognitive mode, PULSE, and provider infocollectiveandpatternsadded to KNOWN_CHAINS in soul manifest- CHANGELOG.md v1.1.0 entry
Changed#
- TUI status bar format:
[Mode:A] provider/model · PULSE:healthy · session:id - README rewritten with cleaner Quick Start, feature table, architecture diagram
- Troubleshooting guide enhanced with quick decision tree and systemd fix
- Error messages: "Run memphis init" replaces "Run npm run bootstrap first"
- Telegram send tool uses
MEMPHIS_TELEGRAM_BOT_TOKENwith legacy fallback - Provider system file header moved below imports (lint fix)
Fixed#
- 5 test failures: updated expected messages and blocked command test
- ESLint errors: unused imports, import ordering, dead code removal
- Rust TUI: removed dead code (
render_view,separator,AppView) - Rust build: 0 warnings across entire workspace
- Pre-existing lint error in
providers/index.ts(import group ordering)
Removed#
- Dead
computeBlockHashfunction in chain-adapter.ts - Dead
render_viewmethod andAppViewstruct in TUI - Unused
InteractionSummaryimport in soul/memory.ts
v1.0.1 - 2026-03-28#
- docs(cli): remove nonexistent gateway control commands
- docs(release): align final runtime contract
- feat(runtime): finalize local-first convergence
- test(cognitive): deflake model-c persistence coverage
- fix(ci): restore TypeScript test green
- chore(repo): snapshot remaining local updates
- docs(memory): add morning handoff snapshot
- feat(knowledge): add runtime seam and TUI query path
- fix(tui): close operator-proof and release-gate hardening
- fix(tui-host): support apps show --file on host path
- feat(tui): ship host-first Rust operator cockpit
- chore(openclaw): archive deprecated plugin and remove active doc path
- ... plus 2 additional commits.
v1.0.0 - 2026-03-27#
- fix(release): build package artifact in validator test
- chore(release): v1.0.0-rc.1
- fix(release): derive runtime version from package metadata
- chore(release): converge rc candidate path
- chore(release): harden fresh-env rc proof
- refactor(tui): archive legacy ts console
- chore(release): add rc drill and close release truth
- feat(runtime): close provider and prompt-security parity
- feat(tui): land native rust chat runtime
- feat(tui): move rust console onto native operator seam
- docs(roadmap): rebase rust tui around native operator seam
- feat(tui): start rust console foundation
- ... plus 136 additional commits.
v1.0.0-rc.1 - 2026-03-27#
- fix(release): derive runtime version from package metadata
- chore(release): converge rc candidate path
- chore(release): harden fresh-env rc proof
- refactor(tui): archive legacy ts console
- chore(release): add rc drill and close release truth
- feat(runtime): close provider and prompt-security parity
- feat(tui): land native rust chat runtime
- feat(tui): move rust console onto native operator seam
- docs(roadmap): rebase rust tui around native operator seam
- feat(tui): start rust console foundation
- feat(chain): ship export and execute branch cleanup
- docs(memory): refresh sprint progress snapshot
- ... plus 134 additional commits.
Changelog#
All notable changes to this project are documented in this file.
The format follows Keep a Changelog principles and semantic versioning intent.
v0.4.2 - 2026-03-25#
Added#
SyncTransportinterface for transport-agnostic sync protocolWebSocketTransportwith B1/B2 bug fixes (readyState check, listener cleanup)MatrixTransportfor Matrix-based federation (Phase 1-2)MatrixClient,MatrixRoomfederation module for Matrix homeserver integration
Fixed#
leaveRoomURL bug (was/join/{room}/leave, correct:/rooms/{room}/leave)WebSocketTransport.close()vsonMessage()race condition (memory leak)MatrixTransportmessage handler cleanup inclose()
Security#
- Matrix Federation infrastructure (Phase 1-2) — self-hosted only, no external providers
- TODO: Add HMAC-SHA256 signing for federation (Phase 2)
Notes#
- Matrix Federation v1: room-based sync via Matrix homeservers
- EC1-EC4 edge cases documented as TODOs (room discovery, reconnect, token refresh, dedupe)
v0.4.0 - 2026-03-24#
Added#
- Tag-based recall filtering for user-scoped memory (Sprint 13)
- Ollama embedding provider with nomic-embed-text 768-dim support
- MiniMax-M2.7 cloud provider with OpenAI-compatible endpoint routing
- Persistent file-based sessions in gateway (FileSessionStore wired in bootstrap)
- SOUL_PROVIDER env var for gateway provider override
- Ollama model, MiniMax, and SOUL_PROVIDER vars in .env.example
Changed#
- Default MiniMax model: abab5.5-chat → MiniMax-M2.7
- TUI left panel width: 68% → 78% for longer responses
- TUI scrollback buffer: 260 → 500 lines
- TUI stream animation limit: 720 → 2000 chars
Fixed#
- TUI flickering: cursor-home instead of full screen clear
- CaseChainAdapter now respects RUST_CHAIN_ENABLED=false (was ignoring it)
- Rust case_append return format mismatch (chain[] vs block)
- Stale version references in INSTALL.md and NPM-INSTALL.md
v0.3.5 - 2026-03-23#
Added#
- 10 env-configurable operational thresholds (chain rotation, snapshot pruning, heartbeat, reflection, rate limits)
MEMPHIS_TELEGRAM_TOKEN_OVERRIDEfor emergency alerting when vault is unavailable- Vault V1→V2 migration audit logging via
writeSecurityAudit() - Task queue HTTP endpoints (
GET /api/tasks/status,GET /api/tasks/pending) - Trust-root downgrade rejection (
evaluateTrustRootDowngrade()) providers healthsubcommand (space-separated, replaces colon syntax)
Changed#
- SystemD defaults: CPUQuota 200%→100%, MemoryMax 2G→1G (safe for 1-core/2GB VPS)
- Setup wizard validates provider connectivity before writing .env
- Ollama setup checks if configured embed model is pulled locally
- Bootstrap script shows prominent warning when new secrets are generated
- Provider health TUI hook returns
unknowninstead of fakehealthy - Version bump 0.3.4→0.3.5 across all source files and docs
Fixed#
- Stale
v0.2.0-beta.1version references in INSTALL.md, NPM-INSTALL.md, API-REFERENCE.md - README roadmap aligned with Phase A–H completion status
- CLI completion scripts now list
providers healthas subcommand
v0.3.4 - 2026-03-21#
- Merge the release-preflight fixes from PR #11.
- Switch release publishing to the package-first GitHub Release + GitHub Packages path.
- Keep the active operator/runtime docs aligned with the current memphis release flow.
v0.3.3 - 2026-03-21#
- Fix GitHub Actions workflow versions and release packaging path.
[0.3.1] - 2026-03-21#
Changed#
- Release prep: aligned package versioning and publication docs for the current
memphisrepository. - Hardened release and publish gates to require explicit tags and the current release smoke path.
[0.3.0-beta.3] - 2026-03-11#
Fixed#
- process.argv undefined in test environments (fixes 27 failing tests)
- Vault cache key collision causing data corruption
- QueryBatcher race condition in concurrent flush operations
- Backup command routing (list/verify now work correctly)
- --help flag safety (no destructive actions)
Added#
- Security audit logging for /api/decide, /api/recall, /v1/vault/* endpoints
- Global rate limiting in gateway (100 req/min)
- HNSW graph traversal search algorithm (5-6x faster)
- Memory usage optimization (119MB → 97MB, -18%)
- Debug command documentation (docs/DEBUG-COMMANDS.md)
- CLI command matrix (docs/CLI-COMMAND-MATRIX.md)
- Performance tuning guide (docs/PERFORMANCE-TUNING.md)
Changed#
- Node.js requirement standardized to >=20
- Documentation consolidated (single QUICKSTART.md)
- Chain routing consolidated to storage handler
- Debug handler consistency improved
Performance#
- Query latency: 0.533ms → 0.102ms (5x faster)
- Embed search: 0.611ms → 0.102ms (6x faster)
- Memory RSS: 119MB → 97.4MB (under 100MB target)
Tests#
- 307/307 passing (100%)
- Added regression tests for P0 bugs
- Added security coverage tests
- Added performance benchmark tests
[1.0.0] - 2026-03-11#
Added#
- Production documentation suite:
- professional landing README
- formal contributing guide
- security policy and disclosure process
- consolidated version changelog
- Release-ready operator and quality gate documentation references.
- Hardened contribution workflow with 3 commits + 1 PR discipline.
Changed#
- Documentation baseline moved from sprint notes to release-grade docs.
- Project positioning clarified as production local-first cognitive memory runtime.
Security#
- Formalized security reporting path and supported-version statement.
- Consolidated encryption and security control descriptions.
Breaking changes#
- None.
[0.2.0-rc.2] - 2026-03#
Added#
- Post-release freeze and release checklist artifacts.
- Additional closure and proof validation scripts.
Changed#
- Release hardening and operational readiness for production transition.
Breaking changes#
- None documented.
[0.2.0-rc.1] - 2026-03#
Added#
- Native closure and sovereignty smoke coverage expansion.
- External host proof and ledger status flows.
Changed#
- Maturity of phase-based release gates.
Breaking changes#
- None documented.
[0.2.0-beta.1] - 2026-03-11#
Added#
- Multi-agent sync MVP (
memphis sync:*) for chain export, import, push, and pull workflows. - Multi-tier caching for semantic retrieval and embedding-heavy paths.
- One-line installer (
scripts/install.sh) and initial installation docs for Linux/macOS/WSL. - Expanded user documentation (quickstart, install guides, OpenClaw integration).
Changed#
- Stabilized plugin packaging and install flow (
openclaw.extensions, plugin build path fixes). - Documentation baseline upgraded for beta readiness (README/INSTALL/NPM flow).
Security#
- P0 security hardening pass for timing-attack and DoS-risk reduction.
- Chain integrity and rollback/graceful degradation protections promoted in runtime behavior.
Full feature delta since [0.1.0-alpha.1]#
- Rust N-API bridge integration with chain runtime and broad test coverage.
- Vault cryptography path: Argon2id + AES-256-GCM foundation and recovery/DID work.
- Embedding/vector retrieval stack with cosine similarity, LRU/TTL caching, and benchmarks.
- Multi-turn ask→persist→recall flow with session recall APIs.
- HTTP API + MCP server tracks with expanded smoke/test scripts.
- Runtime hardening: policy controls, rate limiting, status/health observability, structured logging.
- Multi-agent sync MVP and beta-grade install/documentation pipeline.
Breaking changes#
- None.
[0.1.0-alpha.4] - 2026-03#
Added#
- Sprint 3 capabilities:
- ask→persist→recall flow
- session APIs (
GET /v1/sessions, events recall) - provider failover cooldown policy
- ops status endpoints (
/v1/ops/status,/ops/status)
Breaking changes#
- None documented.
[0.1.0-alpha.3] - 2026-03#
Added#
- Sprint 2 capabilities:
- CLI unification and entrypoint simplification
- gateway integration with unified
AppErrormapping - provider runtime policy module for decentralized adapters
- metrics collection and
/metricsendpoints
Breaking changes#
- None documented.
[0.1.0-alpha.2] - 2026-03#
Added#
- Blueprint port baseline from primary reference artifacts.
- Core TypeScript runtime modules and migration safety scaffolding.
- Rust workspace and initial NAPI bridge exposure.
Breaking changes#
- None documented.
[0.1.0-alpha.1] - 2026-03#
Added#
- Initial
@memphis-chains/memphispackage scaffold. - TypeScript project, build/test/lint toolchain, and CLI bin wiring.
- Early docs and release/planning artifacts.
Breaking changes#
- Initial pre-release baseline.