Skip to content

Releases: Hidden-History/ai-memory

v2.2.3 — Complete Langfuse Observability Pipeline

15 Mar 11:05
ab5fb89

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45
  • feat: v2.1.0 — Langfuse V3 migration, data quality, observability by @Hidden-History in #52
  • ci: bump actions/upload-artifact from 4 to 7 in the actions-all group by @dependabot[bot] in #46
  • deps: bump the pip-minor-patch group with 5 updates by @dependabot[bot] in #47
  • deps: update numpy requirement from <2.0.0,>=1.26.0 to >=1.26.0,<3.0.0 by @dependabot[bot] in #49
  • deps: update pytest-rerunfailures requirement from <15.0.0,>=14.0.0 to >=14.0.0,<17.0.0 by @dependabot[bot] in #51
  • fix: make Grafana E2E tests resilient to CI no-data state by @Hidden-History in #54
  • deps: update pytest-randomly requirement from <4.0.0,>=3.15.0 to >=3.15.0,<5.0.0 by @dependabot[bot] in #50
  • deps: update isort requirement from <8.0.0,>=5.13.0 to >=5.13.0,<9.0.0 by @dependabot[bot] in #48
  • diag: include ConsoleMessage.location in E2E console error output by @Hidden-History in #55
  • fix: filter grafana-lokiexplore-app /react/jsx-runtime 404 from E2E console tests by @Hidden-History in #56
  • feat: agent-activated bootstrap + Parzival v2 injection architecture by @Hidden-History in #53
  • feat: v2.2.1 Triple Fusion Hybrid Search + Prometheus Init Container (PLAN-013, BLK-021) by @Hidden-History in #57
  • feat: Parzival gap remediation + AI Memory optimization (PLAN-013–017 + P15) by @Hidden-History in #60
  • deps: bump the pip-minor-patch group across 1 directory with 3 updates by @dependabot[bot] in #62
  • feat: LLM-as-judge evaluation pipeline + observability cleanup (v2.2.3) by @Hidden-History in #63
  • feat(evaluator): complete Langfuse observability pipeline (v2.2.3B) by @Hidden-History in #64

📝 Full Changelog

Full Changelog: fd8cd44...v2.2.3

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


Complete Langfuse Observability Pipeline

All 6 LLM-as-judge evaluators now run automatically, scoring both individual observations and full traces. The evaluation pipeline is fully operational with automated scheduling, retry logic, and observation-level granularity.

Highlights

  • Observation-level evaluation — EV-01 through EV-04 score individual Langfuse spans (retrieval relevance, injection value, capture completeness, classification accuracy)
  • Automated scheduling — New evaluator-scheduler Docker container runs evaluations daily at 05:00 UTC via croniter
  • Exponential backoff retry — Provider retries on HTTP 500/502/503/429 and network errors with configurable max_retries and jitter
  • 12 evaluator definition files — 6 YAML configs + 6 prompt templates, filters aligned to actual codebase event_types
  • Score config idempotencycreate_score_configs.py with pre-check and --cleanup-duplicates (archive-based)
  • Ollama cloud auto-detection — Automatically uses https://ollama.com/v1 when OLLAMA_API_KEY is set
  • CodeQL compliance — All 7 HIGH log injection findings in monitoring/main.py resolved

Upgrade Instructions

  1. Pull and run installer:

    cd /path/to/your/ai-memory-clone
    git pull origin main
    ./scripts/install.sh /path/to/your-project
    # Select Option 1
  2. Build and start the evaluator-scheduler:

    cd ~/.ai-memory/docker
    unset QDRANT_API_KEY
    docker compose -f docker-compose.yml -f docker-compose.langfuse.yml build evaluator-scheduler
    docker compose -f docker-compose.yml -f docker-compose.langfuse.yml --profile langfuse up -d evaluator-scheduler
  3. Create score configs (one-time):

    source .venv/bin/activate && cd ~/.ai-memory
    set -a && source docker/.env && set +a && unset QDRANT_API_KEY
    python scripts/create_score_configs.py

Resolves

TD-280, TD-281, TD-282, TD-283, TD-287, TD-288, TD-100, BUG-217

Full Changelog: v2.2.2...v2.2.3

v2.2.2 — AI Memory System Optimization (PLAN-015)

14 Mar 00:01
e0ecf2d

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45
  • feat: v2.1.0 — Langfuse V3 migration, data quality, observability by @Hidden-History in #52
  • ci: bump actions/upload-artifact from 4 to 7 in the actions-all group by @dependabot[bot] in #46
  • deps: bump the pip-minor-patch group with 5 updates by @dependabot[bot] in #47
  • deps: update numpy requirement from <2.0.0,>=1.26.0 to >=1.26.0,<3.0.0 by @dependabot[bot] in #49
  • deps: update pytest-rerunfailures requirement from <15.0.0,>=14.0.0 to >=14.0.0,<17.0.0 by @dependabot[bot] in #51
  • fix: make Grafana E2E tests resilient to CI no-data state by @Hidden-History in #54
  • deps: update pytest-randomly requirement from <4.0.0,>=3.15.0 to >=3.15.0,<5.0.0 by @dependabot[bot] in #50
  • deps: update isort requirement from <8.0.0,>=5.13.0 to >=5.13.0,<9.0.0 by @dependabot[bot] in #48
  • diag: include ConsoleMessage.location in E2E console error output by @Hidden-History in #55
  • fix: filter grafana-lokiexplore-app /react/jsx-runtime 404 from E2E console tests by @Hidden-History in #56
  • feat: agent-activated bootstrap + Parzival v2 injection architecture by @Hidden-History in #53
  • feat: v2.2.1 Triple Fusion Hybrid Search + Prometheus Init Container (PLAN-013, BLK-021) by @Hidden-History in #57
  • feat: Parzival gap remediation + AI Memory optimization (PLAN-013–017 + P15) by @Hidden-History in #60

📝 Full Changelog

Full Changelog: fd8cd44...v2.2.2

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


AI Memory System Optimization (PLAN-015)

9 work packages delivering unified behavior specification, per-collection confidence gating, freshness injection blocking, error-to-fix linkage, remembrance protection, and best practices auto-activation. 97 files modified with 4 adversarial review cycles (48 findings fixed). 2378 tests pass on Python 3.10/3.11/3.12.

Added

  • Per-collection confidence thresholds: Tier 2 injection uses collection-specific thresholds (conventions: 0.65, code-patterns: 0.55, discussions: 0.60)
  • 4-tier gating model: HARD SKIP / SOFT SKIP / SOFT GATE / FULL — graduated injection with hard floor at 0.45
  • Freshness injection blocking: STALE and EXPIRED code patterns blocked from injection (score penalty 0.0)
  • Error-to-fix linkage: Errors and fixes linked via deterministic error_group_id (SHA-256) with two-phase retrieval
  • Best practices auto-activation: Retrieves relevant best practices on error or 3+ edits to same file (confidence gate 0.6)
  • Remembrance protection: Frequently-retrieved memories (access_count >= 3) exempt from temporal decay
  • Agent-scoped compact restore: Named agents get their own cross-session memories filtered by agent_id
  • Freshness metrics: 4 Prometheus metrics (status gauge, scan counter, blocked injections, scan duration)
  • Unified Behavior Specification: AI-Memory-Behavior-Spec-V1.md — single source of truth for all memory system behavior

Changed

  • max_retrievals default increased from 5 to 10
  • Code chunk size increased from 512 to 1024 tokens
  • Prose overlap corrected to 15% per spec
  • Metrics prefix standardized to ai_memory_

Fixed

  • Hook exit codes: all hooks exit 0 on failure (§1.2 Principle 4)
  • Error pattern false positives: pattern matching replaces substring matching
  • Tier 2 type filtering: excludes user_message, error_pattern from injection
  • Dead code removal: ~175 lines removed from session_start.py
  • Langfuse V3 compliance: zero V2 violations across 31 files

Upgrade Instructions

cd /path/to/your/ai-memory-clone
git pull origin main
./scripts/install.sh /path/to/your-project
# Select Option 1 (Add project to existing installation)

Full changelog: See CHANGELOG.md for complete details including deprecation notices.

v2.2.1 — Triple Fusion Hybrid Search + Prometheus Init Container

10 Mar 04:14
3bd31ca

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45
  • feat: v2.1.0 — Langfuse V3 migration, data quality, observability by @Hidden-History in #52
  • ci: bump actions/upload-artifact from 4 to 7 in the actions-all group by @dependabot[bot] in #46
  • deps: bump the pip-minor-patch group with 5 updates by @dependabot[bot] in #47
  • deps: update numpy requirement from <2.0.0,>=1.26.0 to >=1.26.0,<3.0.0 by @dependabot[bot] in #49
  • deps: update pytest-rerunfailures requirement from <15.0.0,>=14.0.0 to >=14.0.0,<17.0.0 by @dependabot[bot] in #51
  • fix: make Grafana E2E tests resilient to CI no-data state by @Hidden-History in #54
  • deps: update pytest-randomly requirement from <4.0.0,>=3.15.0 to >=3.15.0,<5.0.0 by @dependabot[bot] in #50
  • deps: update isort requirement from <8.0.0,>=5.13.0 to >=5.13.0,<9.0.0 by @dependabot[bot] in #48
  • diag: include ConsoleMessage.location in E2E console error output by @Hidden-History in #55
  • fix: filter grafana-lokiexplore-app /react/jsx-runtime 404 from E2E console tests by @Hidden-History in #56
  • feat: agent-activated bootstrap + Parzival v2 injection architecture by @Hidden-History in #53
  • feat: v2.2.1 Triple Fusion Hybrid Search + Prometheus Init Container (PLAN-013, BLK-021) by @Hidden-History in #57

📝 Full Changelog

Full Changelog: fd8cd44...v2.2.1

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Triple Fusion Hybrid Search (PLAN-013)

Dense vectors augmented with BM25 sparse vectors and optional ColBERT late interaction reranking via Qdrant's native RRF fusion. 4-path search composition with automatic fallback. RRF score normalization to [0.5, 0.95] range for compatibility with existing confidence thresholds.

  • BM25 sparse vectors: All 5 collections gain BM25/IDF sparse embeddings via fastembed Qdrant/bm25 model
  • ColBERT late interaction reranking (opt-in): COLBERT_RERANKING_ENABLED=true adds ColBERT multi-vector reranking
  • 4-path search composition: hybrid+decay → hybrid-only → decay-only → plain dense — automatic fallback
  • Turnkey enablement: enable-hybrid-search.sh handles pre-flight checks, container rebuild, migration, and verification
  • Migration script: migrate_v221_hybrid_vectors.py — idempotent, resumable migration for existing data

Langfuse Visibility (PLAN-014)

  • Trace tags: All 93 trace emit calls include semantic tags for Langfuse dashboard filtering
  • Skill tracing: 9 Python-based skills instrumented with Langfuse trace events
  • Embedding GENERATION traces: Dense, sparse, and ColBERT API calls emit Langfuse GENERATION observations

Prometheus Init Container (BLK-021)

  • Root cause: prom/prometheus:v2.55.1 is BusyBox-based (not Alpine) — apk add fails, no package manager available
  • Fix: Python 3.12-alpine init container generates web.yml (bcrypt hash) and prometheus.yml (env var substitution) before Prometheus starts via depends_on: service_completed_successfully
  • Removed: Custom Dockerfile and docker-entrypoint.sh — Prometheus now uses stock image
  • Security: Atomic file writes, stale config cleanup, world-readable permissions for nobody user (65534)

Additional Fixes

  • Installer Option 1 Docker sync: Add-project mode now copies Docker files alongside hooks/scripts/skills
  • 16 tech debt items resolved: TD-187/188/197/208/209/215/216/225/242/247/248/260/261 + TD-003/058/109
  • 3-tier soft confidence gating and configurable score gap threshold for injection quality
  • discussion memory type: New MemoryType for general discussion points (total types: 31)

Upgrade Instructions

1. Update code and reinstall

cd /path/to/your/ai-memory-clone
git pull origin main
./scripts/install.sh /path/to/your-project
# Select Option 1 (Add project to existing installation)
# This updates hooks, scripts, skills, AND Docker files

2. Recreate Prometheus (required — fixes health check 401s)

cd ~/.ai-memory/docker
unset QDRANT_API_KEY
docker compose --profile monitoring up -d --force-recreate prometheus-init prometheus

This starts the new init container which generates web.yml with a fresh bcrypt hash from PROMETHEUS_ADMIN_PASSWORD. No image rebuild required — uses stock Prometheus image.

3. Enable hybrid search (optional)

unset QDRANT_API_KEY && ~/.ai-memory/scripts/enable-hybrid-search.sh

Or equivalently:

unset QDRANT_API_KEY && ~/.ai-memory/scripts/stack.sh enable-hybrid

This handles everything automatically: pre-flight checks, embedding container rebuild, config update, data migration, and verification.

4. Optional — ColBERT reranking

Add to ~/.ai-memory/docker/.env before running enable-hybrid-search.sh:

COLBERT_ENABLED=true
COLBERT_RERANKING_ENABLED=true

Notes

  • No Qdrant schema changes required — sparse vectors are added alongside existing dense vectors
  • Plain dense search continues to work without migration
  • Installer Option 1 now syncs Docker files alongside hooks, scripts, and skills

Full Changelog

See CHANGELOG.md for complete details.

v2.2.0: Parzival V2 Agent-Activated Injection Architecture

08 Mar 09:11
9c965c6

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45
  • feat: v2.1.0 — Langfuse V3 migration, data quality, observability by @Hidden-History in #52
  • ci: bump actions/upload-artifact from 4 to 7 in the actions-all group by @dependabot[bot] in #46
  • deps: bump the pip-minor-patch group with 5 updates by @dependabot[bot] in #47
  • deps: update numpy requirement from <2.0.0,>=1.26.0 to >=1.26.0,<3.0.0 by @dependabot[bot] in #49
  • deps: update pytest-rerunfailures requirement from <15.0.0,>=14.0.0 to >=14.0.0,<17.0.0 by @dependabot[bot] in #51
  • fix: make Grafana E2E tests resilient to CI no-data state by @Hidden-History in #54
  • deps: update pytest-randomly requirement from <4.0.0,>=3.15.0 to >=3.15.0,<5.0.0 by @dependabot[bot] in #50
  • deps: update isort requirement from <8.0.0,>=5.13.0 to >=5.13.0,<9.0.0 by @dependabot[bot] in #48
  • diag: include ConsoleMessage.location in E2E console error output by @Hidden-History in #55
  • fix: filter grafana-lokiexplore-app /react/jsx-runtime 404 from E2E console tests by @Hidden-History in #56
  • feat: agent-activated bootstrap + Parzival v2 injection architecture by @Hidden-History in #53

📝 Full Changelog

Full Changelog: fd8cd44...v2.2.0

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Agent-Activated Architecture — Cross-session memory moves from automatic ambient injection to agent-activated retrieval via skills. Sessions start clean — no Qdrant noise on startup or resume.

Key Changes

  • No ambient injection: resume outputs nothing; compact restores session summary only (non-Parzival) or rich context (Parzival)
  • SessionStart matcher: Simplified to resume|compact for ALL states (startup trigger removed)
  • Parzival V2 deployment: Thin-shim architecture via _ai-memory/ deployable package — 17 skills, 9 commands, 3 agents
  • PCB step-file workflows: Structured session start, status, blocker, decision, verify, team prompt, handoff, and closeout workflows
  • Constraint re-injection: Behavioral constraints auto-loaded on compact and via skill
  • Installer V2 pipeline: 7 new functions, V1-to-V2 migration, stale matcher cleanup
  • V1 fully removed: commands/parzival/, agents/parzival/, deploy_parzival_commands() all deleted

Bug Fixes

  • BUG-206: SessionStart hook no longer injects noise on resume/compact
  • BUG-207: Stale startup|clear triggers removed from matcher
  • FAIL-03: merge_settings.py no longer preserves stale startup matcher on upgrade
  • FAIL-06: GC-13 constraint synced to source repo
  • FAIL-07: install.sh V1 skill cleanup covers all 13 legacy names

Verification

  • 2,116 unit tests pass
  • 314-test verification report: 297 PASS, 0 blocking issues
  • 3 adversarial review rounds passed
  • Langfuse verified: 1,043 traces, all hook types, 0 flush errors

Upgrade Notes

Existing installations should run the installer (Option 1: Add project to existing installation) to get V2 deployment. The installer automatically:

  1. Strips startup from SessionStart matcher
  2. Removes V1 directories (commands/parzival/, agents/parzival/)
  3. Deploys _ai-memory/ package with Parzival V2 content
  4. Cleans up 13 legacy V1 skill names

Full Changelog: v2.1.0...v2.2.0

v2.1.0 — Langfuse V3 Migration & Observability

06 Mar 20:56
83035ec

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45
  • feat: v2.1.0 — Langfuse V3 migration, data quality, observability by @Hidden-History in #52

📝 Full Changelog

Full Changelog: fd8cd44...v2.1.0

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


v2.1.0 — Langfuse V3 Migration & Observability

Full Langfuse V3 SDK migration, agent identity metadata, content limit standardization, and infrastructure hardening.

Highlights

  • Langfuse V3 SDK: All 19 hook scripts + 2 service modules migrated from V2 to V3 patterns (get_client(), @observe(), shutdown())
  • Agent Identity (DEC-038): CLAUDE_AGENT_NAME/CLAUDE_AGENT_ROLE env vars propagated through 17 hook scripts for per-agent trace filtering
  • TRACE_CONTENT_MAX: Standardized from mixed 300/2000 to 10000 across 18 files
  • ClickHouse Memory Cap: Explicit 16 GiB limit (down from unlimited default) for OOM prevention
  • Graceful Shutdown: atexit handlers on classification worker, GitHub sync, and code sync services

Stats

  • 86 files changed, 1479 insertions, 611 deletions
  • 12 commits across Python 3.10/3.11/3.12
  • 2115 unit tests pass, 9/9 CI jobs green
  • 8 tech debt items resolved (TD-236/238/239/240/241/243/245/246)

Upgrade

Non-breaking release. No migration required.

git pull origin main
pip install -e .

Optional new env vars: CLAUDE_AGENT_NAME, CLAUDE_AGENT_ROLE, LANGFUSE_FLUSH_TIMEOUT_SECONDS

See CHANGELOG.md for full details.

v2.0.9 — Injection Quality + Langfuse Observability

02 Mar 21:25
b99b510

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44
  • Add Langfuse observability and improve Parzival context injection by @Hidden-History in #45

📝 Full Changelog

Full Changelog: fd8cd44...v2.0.9

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Injection quality sprint (PLAN-010) + Langfuse observability + installer fixes.

Highlights

  • Dedicated github collection — eliminates 79.6% noise from discussions collection
  • Structured error detection — eliminates 100% false positives in code-patterns
  • Langfuse trace visibility restored — full pipeline content visible (TRACE_CONTENT_MAX=10000)
  • Parzival layered priority bootstrap — L1-L4 deterministic + semantic retrieval
  • Installer Option 1 fix — recursive copy now works correctly (BUG-205)

Added

  • New github Qdrant collection with 7 GitHub-specific indexes
  • 7 emit_trace_event() calls across search, injection, and session pipelines
  • Parzival layered priority bootstrap (L1 handoff, L2 decisions, L3 insights, L4 GitHub)
  • Content quality gate (skip messages under 4 words or low-value patterns)

Fixed

  • BUG-200: Error pattern capture false positives
  • BUG-201: Tier 2 injection missing type filter
  • BUG-204: 15 hardcoded [:300] truncations removed from hook scripts
  • BUG-205: Installer Option 1 recursive copy + chmod
  • TD-237: Classifier LLM prompt includes error_pattern type
  • CodeQL: Removed partial API key logging (CWE-117)
  • Migration renames remaining error_fix → error_pattern

Upgrade Instructions

See CHANGELOG.md for complete upgrade path:

  1. Installer Option 1 (code-only update)
  2. Rebuild classifier-worker container (and github-sync if used)
  3. Run migration script (migrate_v209_github_collection.py)

Full Changelog: v2.0.8...v2.0.9

v2.0.8: Multi-Project Sync + Credential Hardening

28 Feb 22:29
102f32f

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37
  • Housekeeping sprint: CI fixes, security, Dependabot, branding by @Hidden-History in #42
  • chore(deps): bump the actions-all group with 2 updates by @dependabot[bot] in #41
  • chore(deps): update bcrypt requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 by @dependabot[bot] in #30
  • deps: Bump the pip-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #43
  • feat: PLAN-009 multi-project sync + AI issue triage by @Hidden-History in #44

📝 Full Changelog

Full Changelog: fd8cd44...v2.0.8

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Multi-Project Sync (PLAN-009)

Prometheus-style projects.d/ directory discovery for managing multiple repositories and Jira instances from a single AI Memory installation.

  • Per-project YAML configs with discover_projects() and register_project_sync()
  • Per-repo GitHub sync state files with collision-safe naming
  • Per-instance Jira sync state files for multi-Jira support
  • Branch parameter propagated through all sync engines
  • Legacy GITHUB_REPO env var fallback for backward compatibility
  • 52 new tests

AI Issue Triage (GitHub Actions)

Multi-model Ollama consensus triage for new issues — 3 analysis + 3 classification passes with 2/3 majority vote. Bot filter prevents cost amplification. Graceful degradation when no API key is configured.

Security

  • QDRANT_API_KEY moved from settings.json to settings.local.json (gitignored) — fixes #38
  • Project ID detected from git remote instead of folder name — fixes #39

Bug Fixes

  • BUG-193: Installer import_user_env() stripped quotes from .env values
  • BUG-194: create_agent_id_index() failed when docker/.env missing
  • BUG-195: settings.local.json not in .gitignore
  • BUG-196: Embedding container missing PYTHONPATH
  • SPEC-021: SessionStart trace coverage gaps
  • 3 CI fixes (BUG-128/129/130), BSD sed compatibility, Compose v5 compatibility

Changed

  • All memory commands renamed to aim- prefix (e.g., /memory-status/aim-status)
  • Installer set_env_value() rewritten for BSD sed compatibility
  • Sync engine constructors now accept per-project parameters

Dependencies

  • bcrypt <5.0.0 → <6.0.0, pydantic-settings 2.12→2.13, anthropic 0.77→0.80, ruff 0.14→0.15, and others

Stats

49 commits, 139 files changed, +7,104/-1,558 lines. 2,139 tests pass (0 failures). 16/16 containers healthy. Verified by Parzival — AI Memory Oversight Agent (PM #132).

Full changelog: v2.0.7...v2.0.8

v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management

24 Feb 14:19
a68a6a0

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35
  • v2.0.7: Langfuse LLM Observability (Optional) + Unified Stack Management by @Hidden-History in #37

📝 Full Changelog

Full Changelog: fd8cd44...v2.0.7

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Langfuse LLM Observability (Optional)

Full pipeline tracing for your AI Memory system — entirely opt-in via LANGFUSE_ENABLED=true.

  • 9-step pipeline tracing: Every memory operation traced from capture through classification (1_capture9_classify)
  • Session grouping: Traces grouped by Claude Code session ID for conversation-level visibility
  • File-based trace buffer: ~5ms overhead per event — traces written to disk, flushed asynchronously
  • Kill-switch control: LANGFUSE_ENABLED=false disables all tracing with zero overhead
  • Custom model registration: Cost tracking for ollama and openrouter models
  • Grafana integration: LLM Observability dashboard row with Langfuse deeplinks
  • 7 new Docker services: Langfuse Web, Worker, PostgreSQL, ClickHouse, Redis, MinIO, Trace Flush Worker

Langfuse is entirely optional. AI Memory works fully without it. Core system: 8 services, 16 GiB RAM. With Langfuse: 15 services, 32 GiB RAM.

Unified Stack Management

New scripts/stack.sh v1.1.0 — single command to manage the full Docker stack:

./scripts/stack.sh start    # Start all enabled services
./scripts/stack.sh stop     # Graceful shutdown (correct ordering)
./scripts/stack.sh status   # Container health, ports, volumes
./scripts/stack.sh restart  # Full cycle
./scripts/stack.sh nuke     # Remove everything (with confirmation)

Bug Fixes

20 bugs fixed (BUG-131 through BUG-151): 8 Langfuse install bugs, 3 auth/config fixes, 3 runtime fixes, 2 pipeline span fixes, 3 deployment fixes, 1 stack management fix.

Documentation

  • New: docs/LANGFUSE-INTEGRATION.md — comprehensive setup, architecture, and troubleshooting guide
  • Updated: CHANGELOG, INSTALL.md, README.md, docker/README.md with stack.sh references and Langfuse optionality callouts
  • Adversarial doc review: 12 findings caught and fixed

Stats

  • 92 commits, 263 files changed, +49,557/-1,691 lines
  • Includes v2.0.6 foundation (18 specs, 42 bug fixes, Parzival integration)
  • 4 new specs: SPEC-019 (Infrastructure), SPEC-020 (SDK), SPEC-021 (Pipeline), SPEC-022 (Session + Grafana)
  • 0 open bugs, 0 active blockers

Full changelog: v2.0.6...v2.0.7

v2.0.6: LLM-Native Temporal Memory

22 Feb 16:02

Choose a tag to compare

📚 Documentation

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🧪 Tests

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🐳 Docker

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.5: CI hardening, batch storage compliance, and Jira Cloud integration by @Hidden-History in #31
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

🪝 Hooks

  • fix: Sprint 2026-02-02 - BUG-054, BUG-051, BUG-058 + backup scripts by @Hidden-History in #18
  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

📊 Monitoring

  • feat: v2.0.3 parallel sprint - tech debt, bugs, BP compliance by @Hidden-History in #19
  • v2.0.4 Cleanup Sprint + TECH-DEBT-151 Chunking Fixes by @Hidden-History in #28
  • v2.0.6: LLM-Native Temporal Memory — Decay, Freshness, GitHub Sync, Parzival by @Hidden-History in #34

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17
  • fix(ci): resolve BUG-064 and BUG-065 broken community workflow actions by @Hidden-History in #32
  • fix(ci): fix claude-assistant.yml curl timeout killing retry loop by @Hidden-History in #35

📝 Full Changelog

Full Changelog: fd8cd44...v2.0.6

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


[2.0.6] - 2026-02-17

LLM-Native Temporal Memory: Decay scoring, freshness detection, progressive injection,
GitHub enrichment, security scanning, and Parzival session agent integration.

Added

Temporal Memory (Phase 1a)

  • Exponential decay scoring via Qdrant Formula Query API (SPEC-001)
  • Audit trail with tamper-detection (SPEC-002)
  • GitHub sync engine with PR/issue/commit/CI ingestion (SPEC-003)
  • Source authority classification (SPEC-004)
  • Content deduplication and versioning (SPEC-005)
  • Memory type routing for collection/type assignment (SPEC-006)
  • Token budget management for context injection (SPEC-007)
  • Docker infrastructure, install script, Grafana dashboard, CLI, and collection setup (SPEC-008)

Security & Injection (Phase 1b+1c)

  • 3-layer security scanning pipeline: regex + detect-secrets + SpaCy NER (SPEC-009)
  • Dual embedding routing for prose vs code content (SPEC-010)
  • SOPS+age encryption for secrets management (SPEC-011)
  • Progressive context injection with 3-tier bootstrap (SPEC-012)
  • Freshness detection with git blame integration (SPEC-013)

Skills & Integration (Phase 1d)

  • 5 new skills: /memory-purge, /search-github, /github-sync, /pause-updates, /memory-refresh (SPEC-014)
  • 2 Parzival skills: /parzival-save-handoff, /parzival-save-insight for cross-session memory (SPEC-015)
  • Post-sync freshness feedback loop for merged PRs (SPEC-014)
  • Parzival session agent integration with Qdrant-backed memory (SPEC-015)
  • Parzival session pipeline: enhanced bootstrap, GitHub enrichment, closeout dual-write (SPEC-016)
  • 3 upgraded skills: /memory-status (4 new sections), /search-memory (decay scores), /save-memory (agent types) (SPEC-017)

Release Engineering (Phase 1d)

  • v2.0.5 → v2.0.6 migration script with auto-backup (SPEC-018)
  • Historical handoff ingestion (57+ sessions → Qdrant) (SPEC-018)
  • 6 cross-phase E2E integration tests (SPEC-018)
  • 3 new docs: GITHUB-INTEGRATION.md, TEMPORAL-FEATURES.md, PARZIVAL-SESSION-GUIDE.md (SPEC-018)

Parzival Integration (PLAN-007)

  • 37 oversight templates now tracked in git (templates/oversight/) — fixed .gitignore root-anchor pattern
  • CLAUDE-PARZIVAL-SECTION.md template moved to templates/ root for user CLAUDE.md integration
  • 8 POV reference docs added to docs/parzival/ (deprecating standalone POV repo)
  • Backup-on-overwrite for Parzival commands during re-install (.bak.YYYYMMDDHHMMSS)
  • Agent files always deploy latest version on re-install (system-owned files)

Fixed

Install #7 Bug Fixes (BUG-112 through BUG-115)

  • BUG-112 (HIGH): Code blob sync hangs indefinitely — Added total timeout, per-file timeout via asyncio.wait_for(), circuit breaker, and progress logging every 10 files.

  • BUG-113 (MEDIUM): Embedding service timeouts with no retry — Added retry with full-jitter exponential backoff (AWS formula).

  • BUG-114 (LOW): indexed_vectors_count=0 appeared broken — Documented as expected behavior.

  • BUG-115 (LOW): install.sh initial sync has no timeout — Wrapped sync call with timeout command.

  • BUG-104 through BUG-108: Collection setup errors, embedding model download, broken symlinks, Parzival commands, agent deployment fixes

  • DOC-001: Verification doc references wrong config field name

  • BUG-103: PyYAML missing from test dependencies

  • TECH-DEBT-156 through TECH-DEBT-165: Dead code, path injection, test markers, PII coverage, filename mismatch, regex false positives, import overhead, sequential loop, docstring, parameter fixes

Install #11 Bug Fix (BUG-116)

  • BUG-116 (HIGH): schema.py passed is_tenant=True as direct kwarg — fixed for qdrant-client >=1.14

Install #12 Bug Sprint (BUG-118-125 + TD-167/168/170)

  • BUG-118 (HIGH): SessionStart matcher hardcoded — Parzival sessions require "startup" in matcher
  • BUG-119 (MEDIUM): write_health_file() only called after first github-sync cycle
  • BUG-120 (HIGH): Parzival env vars missing from settings.json
  • BUG-121 (MEDIUM): pre_compact_save.py no SecurityScanner call — OWASP LLM08 gap fixed
  • BUG-122 (MEDIUM): Embedding readiness gate fired after Jira sync
  • BUG-124 (LOW): Grafana start_period insufficient for 2GB Docker systems
  • BUG-125 (MEDIUM): process_retry_queue.py never retried — Added drain_pending_queue()
  • TD-167: Replaced estimate_tokens() with count_tokens() (tiktoken-based)
  • TD-168: Refactored duplicated lock cleanup into helper
  • TD-170: CHANGELOG.md now deployed to install directory

Install #14 Bug Sprint (BUG-126)

  • BUG-126 (HIGH): settings.local.json overrides stale QDRANT_API_KEY
  • Fixed unbound $LOG_FILE variable in install.sh
  • Fixed stale test assertions and env isolation

BUG-127 Field Gap Fix

  • BUG-127 (HIGH): v2.0.6 payload fields only populated in migration script — fixed across all 8 storage paths

Documentation Accuracy Sprint

  • 51 documentation accuracy fixes across 6 files

Changed

  • Decay half-lives adjusted: agent_handoff 30→180d, added agent_insight 180d, agent_task 14d
  • Installer: POSIX arithmetic, safe glob expansion, error handling improvements
  • INSTALL.md: Added SOPS+age prerequisite section

Install #18 Test Results: 190/195 PASS (97.4%), 12/13 release gates passed
Full changelog: https://github.com/Hidden-History/ai-memory/blob/main/CHANGELOG.md

v2.0.5 — Jira Cloud Integration & Grafana Dashboard Overhaul

12 Feb 12:12

Choose a tag to compare

📚 Documentation

🧪 Tests

🐳 Docker

🪝 Hooks

📊 Monitoring

⚙️ Other Changes

  • fix(ci): align black version and fix macOS installation tests by @Hidden-History in #7
  • chore(deps): bump the pip-minor-patch group with 7 updates by @dependabot[bot] in #8
  • chore(deps): update structlog requirement from <25.0.0,>=24.0.0 to >=24.0.0,<26.0.0 by @dependabot[bot] in #9
  • chore(deps-dev): update isort requirement from <6.0.0,>=5.13.0 to >=5.13.0,<8.0.0 by @dependabot[bot] in #11
  • chore(deps): bump the actions-all group with 10 updates by @dependabot[bot] in #17

📝 Full Changelog

Full Changelog: fd8cd44...v2.0.5

🙏 Contributors

Thank you to all contributors who made this release possible!

@Hidden-History, @dependabot[bot]


What's New

Jira Cloud Integration

  • Jira API client — Async httpx with Basic Auth, token-based pagination, rate limiting
  • ADF converter — Atlassian Document Format → plain text for embedding
  • Sync engine — Full and incremental sync with SHA256 dedup, per-issue fail-open error handling
  • Semantic search — Vector similarity against jira-data collection with project/type/status/priority/author filters
  • /jira-sync skill — Incremental, full, per-project sync, and status check
  • /search-jira skill — Semantic search with filters and issue lookup mode
  • jira-data collection — Conditional fourth collection for Jira issues and comments
  • 182 unit tests covering all Jira components

New Skills

  • /save-memory — Manually save current session to memory

Observability

  • Activity logging added to search and health functions

Bug Fixes (15 bugs)

Grafana Dashboard Overhaul (BUG-083/084/085)

  • 79 queries across 7 dashboards migrated from broken increase() to changes() for Pushgateway push-once semantics
  • BUG-083: or(vector()) duplicate series in memory-operations panels
  • BUG-084: Hook Activity increase() always returning zero
  • BUG-085: NFR Performance increase() broken on histogram buckets
  • Systemic fix across all remaining dashboards (system-health, memory-overview, memory-performance, classifier-health)

Other Fixes

  • BUG-082: grouping_key added to all 16 pushadd_to_gateway calls
  • BUG-081: SessionStart matcher upgrade path in merge_settings.py
  • BUG-080: Pushgateway named volume for data persistence
  • BUG-079: --build flag for docker compose up
  • BUG-078: SessionStart matcher narrowed to resume|compact
  • BUG-077: Streamlit columns IndexError on fresh install
  • BUG-076: jira-data collection in metrics reporting
  • BUG-075: AST chunker byte-offset encoding fix
  • BUG-073: jira_sync added to source_hook validation whitelist
  • BUG-072: JQL date format (ISO 8601 → Jira format)
  • BUG-071: Jira GET endpoint (POST → GET for search)
  • BUG-070: Activity log read-only container guard
  • BUG-069: JIRA_PROJECTS written as JSON array for Pydantic Settings v2

Infrastructure

  • Recovery script (recover_hook_guards.py) — Scans and repairs BUG-066 guards with manifest support and multi-path project search
  • Install script hardenedset -e protection, Jira auto-discovery, installed project manifest
  • CI — Docker services and cleanup for E2E test job
  • Security — Hardened AI code review workflow with 7 robustness fixes

Stats

  • 58 files changed, +9,615 / -361 lines
  • 61/61 comprehensive tests pass
  • 8/8 Docker services healthy
  • 4 Qdrant collections verified
  • 10 Grafana dashboards operational

Full Changelog: v2.0.4...v2.0.5