[1.51.0] — 2026-06-13
Added
-
Automated SDK publishing to PyPI, npm, and Go module tags (#92)
-
Formal SLO definitions, runbooks, Go benchmarks, k6 load test (#94)
-
graph: Cognitive Graph layer via Apache AGE (experimental spike)
-
ci: Add 14-phase automated bug hunt pipeline (#127)
Changed
-
ci: Update coverage badge [skip ci]
-
ci: Update coverage badge [skip ci]
-
deps: Bump actions/setup-go from 5 to 6 (#100)
-
deps: Bump github/codeql-action from 3 to 4 (#99)
-
deps: Bump actions/setup-node from 4 to 6 (#98)
-
ci: Update coverage badge [skip ci]
-
ci: Update coverage badge [skip ci]
-
deps: Bump actions/setup-python from 5 to 6 (#97)
-
deps: Bump actions/checkout from 4 to 6 (#96)
-
ci: Update coverage badge [skip ci]
-
Improve CODEOWNERS with more granular rules and comments (#107)
-
Add massive realistic multi-agent workload test (real agent usage scenario) (#110)
-
Coverage 30.3%→44.3% — handler/webhook DB interfaces, integration tests, fix 4 bugs, exclude protobuf (#115)
-
ci: Update coverage badge [skip ci]
-
Translate entire repo from Italian to English (#117)
-
ci: Update coverage badge [skip ci]
-
handler: Extract shared helpers — ageNotAvailable, tenantID, parseLinkTypes, timed, graphError (#118)
-
Increase coverage from 39.4% to 41.1% — unit tests for 7 packages (#121)
-
ci: Update coverage badge [skip ci]
-
k8s: Remove leftover test-write probe file from PR #4 (#122)
-
docker: Document Dockerfile variants and clarify role of each (#125)
-
k8s: Consolidate manifests under deploy/k8s/{base,overlays} (#124)
-
version: Align in-code version references with v1.50.0 tag (#123)
-
deps: Bump go.opentelemetry.io/otel/trace from 1.43.0 to 1.44.0 (#141)
-
deps: Bump go.opentelemetry.io/otel/sdk from 1.43.0 to 1.44.0 (#138)
-
deps: Bump github.com/redis/go-redis/v9 from 9.19.0 to 9.20.0 (#140)
-
deps: Bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#135)
-
deps: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp (#137)
-
deps: Bump github.com/jackc/pgx/v5 from 5.9.2 to 5.10.0 (#139)
-
deps: Bump actions/checkout from 4 to 6 (#131)
-
ci: Update coverage badge [skip ci]
-
deps: Bump docker/build-push-action from 6 to 7 (#134)
-
ci: Update coverage badge [skip ci]
-
deps: Bump docker/login-action from 3 to 4 (#130)
-
deps: Bump docker/setup-qemu-action from 3 to 4 (#132)
-
deps: Bump docker/setup-buildx-action from 3 to 4 (#133)
-
ci: Update coverage badge [skip ci]
Documentation
-
Add CODE_OF_CONDUCT.md (Contributor Covenant) and improve link in CONTRIBUTING.md (#101)
-
Add GitHub issue templates (bug, feature, security) + config.yml (#103)
-
Add AGENTS.md with PCMI-specific rules for AI coding agents (#104)
-
Add runbook for API key rotation (#108)
-
citation: Add CITATION.cff for paper and software citation (#126)
-
README v2 — compelling rewrite with benchmarks, integrations, and honest comparison (#142)
Fixed
-
helm: Sync Chart.yaml appVersion to v1.50.0
-
test: Allow total to increase between pagination pages under parallel CI
-
Raise coverage thresholds to 60% global + complete OpenAPI spec (14 missing routes) (#93)
-
Remove orphaned root scripts + add interactive quickstart demo (#95)
-
Fix Quickstart section in README.md
Restored Quickstart section in README with instructions and requirements.
-
Add nil guards for RedisClient and store/merge results (#128)
-
ci: Install hadolint from GitHub release binary (#143)
-
ci: Unblock daily scheduled bug-hunt job (#145)
-
worker: Enforce expires_at TTL and repair contradiction detection (#144)
-
ci: Restore SDK publish workflow and honest install docs (#146)
Ci
- Production-grade coverage sticky comment system (addresses points 1-8) (#119)
[1.50.0] — 2026-05-25
1.1
- Distillation Engine – tabella e worker base
Added
-
v1.12.0: Distilled knowledge versioning
-
v1.12.0: Pruning worker for superseded memories
-
v1.12.0: Webhook notifications on Redis events
-
v1.12.0: Encrypted sensitive memory content
-
v1.12.0: Embedding migration API and Kubernetes manifests
-
v1.18.0: Orchestrator examples and optional PostgreSQL read replica
-
v1.19.0: Memory path compaction and leaner CI smoke
-
v1.20.0: GRPC batch/stream retrieve and OpenTelemetry
-
v1.21.0: GRPC BatchStore, version package, readonly parity
-
v1.22.0: GRPC retrieve parity with REST filters
-
v1.23.0: OpenTelemetry for worker and Init service name
-
worker: Prometheus /metrics and redis event counters
-
v1.24.0: GRPC store parity with REST + integration tests
-
v1.25.0: GRPC store client embedding vector + HTTP-only API docs
-
v1.26.0: GRPC retrieve response parity with REST MemoryEntry
-
v1.27.0: SDK HTTP-only docs and client parity polish
-
v1.28.0: GRPC GetMemory/Compact, SDK admin, CI sdk-smoke
-
v1.29.0: GRPC parity for operational HTTP APIs
-
v1.31.0: Distillation E2E test, report fix, LIMIT 100
-
sprint1: Centralized config with fail-fast validation + K8s HPA/PDB/resource limits
-
v1.33.0: Security hardening — govulncheck, TLS, per-role rate limiting
-
v1.34.0: Bounded distillation concurrency + distillation metrics
-
distillation-e2e: Dynamic sharding + docs
-
observability: Separate API/worker images, Trivy scan, Grafana dashboard, alert rules
-
devx: Run CI workflows locally with act
-
grpc: TLS for gRPC server, Helm chart, CodeQL, and K8s hardening
-
Admin UI, embedding factory, cursor helpers, proto contracts
-
Wire memory cursor pagination and gRPC admin/metrics servers
-
Unified synthetic data CLI and E2E script cleanup
-
event: Add Redis Streams durable event bus
-
embedding: Circuit breaker for OpenAI embedding
-
ratelimit: Distributed sliding-window limits via Redis
-
webhook: HMAC-SHA256 signed deliveries (PCMI-006) CI_start
-
MCP stdio server for AI agents (v1.41.0) CI_start
-
sessions: Add agent session and working memory layer (PCMI-010)
-
PCMI-011: Content-hash deduplication at ingest (v1.44.0)
-
pagination: Cursor-based list endpoints (PCMI-014, v1.47.0)
-
PCMI-016: AI framework examples for LangChain, LlamaIndex, AutoGen, CrewAI (v1.49.0)
-
Address 10 missing features identified in codebase audit
-
Release pipeline — GitHub Releases + ghcr.io container image (#90)
CI_start
- Trigger full PR pipeline after coverage fix
Changed
-
Test finale v.1.1 ok
-
Test
-
Test
-
v1.12.0: CI smoke tests and docs for release
-
Drop flaky high-volume metrics scrape test
-
Add local_smoke_orchestration script for replica and Temporal
-
Ignore Python pycache under repo
-
v1.32.0: Add go test -race to CI and expand unit test coverage
-
Extend coverage to service, middleware, handler, worker
-
config: Add unit and integration tests for centralized config
-
deps: Bump actions/checkout from 4 to 6
-
deps: Bump golangci/golangci-lint-action from 7 to 9
-
deps: Bump docker/setup-buildx-action from 3 to 4
-
deps: Bump actions/setup-go from 5 to 6
-
deps: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
-
deps: Bump github.com/prometheus/client_golang
-
deps: Bump github.com/gofiber/fiber/v2 from 2.52.12 to 2.52.13
-
deps: Bump google.golang.org/grpc from 1.80.0 to 1.81.1
-
deps: Bump github.com/alicebob/miniredis/v2 from 2.34.0 to 2.38.0
-
deps: Bump github.com/jackc/pgx/v5 from 5.7.2 to 5.9.2
-
Add config .env drift guard and gRPC port resolution tests
-
ci: Update coverage badge [skip ci]
-
deps: Bump github.com/pgvector/pgvector-go from 0.3.0 to 0.4.0
-
deps: Bump marocchino/sticky-pull-request-comment from 2 to 3
-
deps: Bump docker/setup-buildx-action from 3 to 4
-
deps: Bump actions/upload-artifact from 4 to 7
-
deps: Bump actions/github-script from 7 to 9
-
deps: Bump actions/checkout from 4 to 6
-
deps: Bump github.com/valyala/fasthttp from 1.51.0 to 1.71.0
-
Add ready, stats route, links list, and webhook coverage
-
Cover events ingest, links list, and summarize handlers
-
Add history, lineage, audit, and distilled handler coverage
-
worker: Fix expiry integration runOnce call signature
-
worker: Cover distillation constructor and Start shutdown
-
Test
-
Add branch verification script for config-env cleanup
-
config: Add getenv invariant + wire CI/local audit step
-
Test CI_start
-
Cover admin UI, embedding setup, cursor retrieve, and proto contracts
-
Integration coverage for admin/embedding/cursor and document SSE httptest pitfall
-
Expand gRPC admin/metrics and repository cursor integration
-
Test python fix
-
event: Improve stream coverage and sync Helm appVersion
-
stream: Fix race in integration publish/consume test
-
version: Bump to v1.35.0
-
ci: Trigger full GitHub Actions CI_start
-
repository: CI_start raise coverage above 70% floor
-
ci: Trigger full GitHub Actions CI_start
-
Hardening tests and redis nil guards (PCMI-004 follow-up)
-
Add edge-case tests for key lifecycle and admin paths
-
ci: Auto-free 5432/6379 before compose and act
-
PCMI-009: Add manual smoke script for importance retrieve ranking
-
Raise repository and service coverage above CI floor
-
Expand test-full-real with sessions smoke and MCP unit
-
test: Make smoke_sessions.sh executable
-
dedup: Edge cases and smoke script
-
Add CODEOWNERS for main branch review policy
-
PCMI-015: API versioning policy, git-cliff, and release workflow (v1.48.0)
-
ci: Enterprise pipeline structure with shared scripts
-
ci: Update coverage badge [skip ci]
-
stress: Massive concurrent test suite + fix 2 production race conditions
-
make: Add distill target
-
make: Add distill-stress target
-
ci: Update coverage badge [skip ci]
Documentation
-
v1.30.0: Guida completa, diagrammi e indice documentazione
-
readme: Add distillation pipeline section + link to docs/distillation-tests.md
-
ci: Add full real-world validation target
-
Document sprint 1–2 features and validation commands
-
Document cursor pagination and list response fields
-
Record applied main branch protection state
Fixed
-
Retrieve query - risolto errore tipo parametro
-
v1.1: Embedding provider - cast corretto EmbeddingModel
-
v1.1: Retrieve con LIKE per path matching stabile
-
v1.1: Retrieve con ltree <@ stabile
-
v1.1: Retrieve con cast path::text LIKE per compatibilità stabile
-
Use valid CREATE POLICY syntax in migration 003
-
Default empty metadata on memory store
-
Scan nullable embeddings on memory retrieve
-
v1.12.0: Mount migration 008 in docker compose
-
v1.14.0: Register memory wildcard route after specific paths.
-
v1.14.0: Serve Prometheus /metrics via fasthttpadaptor.
-
ci: V1.14 metrics smoke greps HELP lines after a store.
-
v1.14.0: Expose /metrics via direct Prometheus text encoding.
-
v1.15.0: Mount migration 011 in docker-compose for E2E
-
v1.15.0: Lineage routes outside /memories wildcard, CI metrics grep
-
ci: GRPC version check, rate limit in E2E, metrics smoke
-
v1.15.0: Lineage SQL column and promhttp metrics handler
-
metrics: Dedicated registry and disable OpenMetrics timestamps
-
ci: Scrape /metrics without gzip for grep checks
-
metrics: Drop HTTP vec counters causing duplicate scrape errors
-
smoke: Resilient pip for Temporal and skip venv when deps exist
-
telemetry: Use noop.TracerProvider for staticcheck SA1019
-
test: Report x→y con atteso z e verifica esplicita PASS/FAIL
-
test: Conteggio 429 senza doppio zero da grep -c
-
lint: Move distillationBatchSize to distillation_helpers.go
-
lint: Remove unused readBodyJSON helper and storePath field
-
deps: Upgrade Go to 1.25 + golang.org/x/net@v0.53.0
-
ci: Add feat/* branch trigger + fix EXPECT_VERSION to v1.33.0
-
deps: Upgrade vulnerable dependencies to clear govulncheck
-
ci: Upgrade golangci-lint v2.1.6→v2.12.2 for Go 1.25 compat
-
docker: Upgrade base image golang:1.24-alpine → golang:1.25-alpine
-
ci: Repair trivy tag, redis pubsub race, and local act workflow
-
act: Skip trivy-images steps under act, chain make act-trivy in act-all
-
act: Stub integration-smoke under ACT + host parity script
-
scripts: Wait for Postgres initdb in act_integration_smoke_host
-
act: Preflight frees 5432/6379 before act push
-
scripts: Robust Postgres wait in act_integration_smoke_host
-
scripts: Portable expires_at in ci_integration_smoke on macOS
-
Fix act makefile
-
Fix coverage pr
-
Fix gorutine
-
test: Stabilize SSE integration test under -race
-
test: Wait for SSE GET before POST in EventStream integration test
-
test: Skip flaky SSE httptest on GitHub Actions
-
handler: Restore SSE Redis subscribe lifecycle for /v1/events
-
test: Skip adaptor SSE httptest on GHA only
-
ci: Make CodeQL SARIF upload opt-in via CODEQL_UPLOAD_SARIF
-
Fix makefile and testing scripts
-
Fix docs
-
Fix docs
-
config: Load EVENT_BACKEND via config package
-
config: Satisfy lint on rate limit validation
-
webhook: Align outbound HMAC with timestamped payload
-
test: Align RotateAPIKey calls with lifecycle API
-
mcp: Read env via internal/config for audit
-
distill-smoke: Publish refine events on Redis Streams
-
pagination: Restore CI failures on pagination branch
-
pagination: Restore audit total for smoke and SDK compat
-
pagination: Restore admin tenants total for smoke Phase G
-
pagination: Integration tests and related reliability fixes
-
ci: Expect API version v1.47.0 in integration smoke
-
ci: Open coverage badge PR instead of pushing to main
-
ci: Restore direct coverage badge push to main
-
ci: Run CI on push to feat/** branches
-
6 bugs found in autonomous bug hunt (BUG-FIX-1..6)
-
worker: Use ltree <@ to exclude .distilled paths in distillation query
-
3 more bugs found in round-2 analysis (BUG-FIX-7, BUG-FIX-11)
-
Review follow-ups for missing-features branch
-
config: Route MIGRATIONS_DIR through config.Load() to satisfy os.Getenv audit
-
Fix tests
-
test: Relax bus stress timing and cap integration DB pool size
-
Restore Dockerfile accidentally emptied
Security
-
trivy: Use aquasec/trivy:latest directly instead of broken trivy-action@v0.28.0
-
trivy: Use aquasec/trivy:latest directly instead of broken trivy-action
-
E2e TLS handshake test, CodeQL config, SECURITY.md, Helm values schema
Add
- Docs imgs
Ci
-
Aggiunta GitHub Actions per test completo v1.1
-
Fix GitHub Actions - crea .env da secrets (locale non toccato)
-
Add GitHub Actions workflow for Go build and integration tests
-
Include metadata in integration smoke store payload
-
E2E tests for SSE events and distillation dedup
-
Wait for embeddings before semantic retrieve E2E
-
Run pipeline only when commit message contains CI_start
Cmd
- Wire api and worker entrypoints to centralized config
Config
- Add OPENAI_BASE_URL and align RATE_LIMIT_RPM default
Crypto
- Configure encryption key at startup instead of getenv
Grpc
- Resolve listen port from config, not GRPC_PORT env
Middleware
- Apply rate limits from config
Service
- Drive summarize LLM settings from config
Telemetry
- Read OTLP endpoints and service name from config
V.1.3
- Start add redis
V1.1
-
Aggiunta Background Embedding Generator
-
Working embedding
-
Embedding background worker con OpenAI provider reale
-
Hybrid retrieve con cosine similarity sugli embedding
-
Aggiunto Distillation Engine base
V1.10.0
-
Temporal rollback API endpoint
-
Audit log API endpoint
-
Per-API-key rate limiting middleware
-
Golangci-lint CI, OpenAPI/SDK, integration smoke tests
-
Fix rate limiter deps and golangci Go version
-
Fix errcheck findings for golangci-lint
V1.11.0
-
Event ingest, history API, agent scopes, embedding spaces
-
Fix retrieve SQL placeholders and compose migration 007
-
Fix scope filter SQL for empty agent/space params
V1.14.0
-
Migration, BM25 hybrid rank, get-by-path and export repos.
-
Batch, import/export, admin API, and GET memory by path.
-
GRPC server, consolidation worker, and Prometheus metrics.
-
Docs, OpenAPI, SDKs, CI smokes, and docker-compose.
V1.15.0
- Refine API, lineage, memory links, stats, tags, and TTL expiry
V1.16.0
- Developer documentation (CODEBASE, MIGRATIONS, Godoc, SDK README)
V1.2
- Memory_service pubblica evento memory.stored
V1.3
- Distributed Event Bus with Redis Pub/Sub + Health endpoint
V1.4
- Multi-tenant Isolation + Tenant Context Propagation
V1.5
-
RBAC + API Keys Authentication
-
RBAC + API Key Authentication System
V1.7.0
-
Multi-tenant memory API with hybrid retrieval
-
Tenant-aware embedding and distillation workers
-
Worker SQL helpers and multi-tenant migration fixes
-
OpenAPI, SDKs, docker-compose, and integration test scripts
V1.7.1
-
SSE events stream, distillation dedup, and CI smoke tests
-
Return empty distilled entries array in API
V1.9.0
-
Temporal append-only store and memory.updated events
-
RBAC write guard and store version in API response
-
SDK as_of, OpenAPI sync, and CI temporal smoke
-
Fix default retrieve SQL parameter indexing
-
Cast as_of placeholders to timestamptz in retrieve
-
Use FTS as hybrid rank boost, not hard filter
-
Mount FTS migration in docker compose
Webhook
- Take max delivery attempts from config
Worker
- Load distillation, pruning, and expiry settings from config