This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+14 more
ReleasePort's take
Moderate signalRelease v13.1.0 adds a full server‑beta event pipeline and related API endpoints while fixing two critical bugs in Postgres error handling and session start concurrency.
Why it matters: Patch immediately: `resolveServerSession` no longer escapes Postgres errors causing HTML 500 responses, and concurrent `/v1/sessions/start` calls now avoid 500 failures. Deploy v13.1.0 to eliminate these regressions.
Summary
AI summaryAdded full server‑beta event pipeline with API key auth, three AI providers, and legacy compat shims.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Server-beta event pipeline with Postgres + BullMQ from agent_event to observation. Server-beta event pipeline with Postgres + BullMQ from agent_event to observation. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Feature | Medium |
API endpoints for events, sessions start/end, generation-job list/retry/cancel, and MCP routes. API endpoints for events, sessions start/end, generation-job list/retry/cancel, and MCP routes. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Feature | Medium |
Legacy compatibility shims map existing worker payloads to new event/job model. Legacy compatibility shims map existing worker payloads to new event/job model. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`POST /v1/sessions/start` handles concurrent same `externalSessionId` race without returning 500. `POST /v1/sessions/start` handles concurrent same `externalSessionId` race without returning 500. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`resolveServerSession` no longer escapes Postgres errors and returns HTML 500s. `resolveServerSession` no longer escapes Postgres errors and returns HTML 500s. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Prevents `resolveServerSession` from leaking Postgres errors and returning HTML 500 responses. Prevents `resolveServerSession` from leaking Postgres errors and returning HTML 500 responses. Source: granite4.1:30b@2026-05-24-audit Confidence: low |
— |
Full changelog
Server-beta event pipeline (phases 4–13)
This release lands the full server-beta track developed on server-beta-phase-4-event-pipeline — a self-contained Postgres + BullMQ event-to-observation pipeline with API-key auth, team/project scope, audit log, three AI providers (Anthropic, OpenAI, Google), a dedicated MCP server, legacy compat adapters for existing worker clients, a Docker/Compose stack, and a generation-job retry/cancel surface.
Highlights
- Event pipeline:
agent_event→observation_generation_jobs(outbox) → BullMQ worker →observationrow. Idempotent enqueue, request-id propagation end-to-end, structured audit log. - API surface:
POST /v1/events,POST /v1/sessions/start,POST /v1/sessions/:id/end, generation-job list/retry/cancel, MCP routes, scoped reads. - Legacy compat:
/api/sessions/observationsand/api/sessions/summarizeshims map legacy worker payloads into the new event/job model without touching worker code. Both shims now wrap session lookup in their try/catch so Postgres failures return structured JSON, andresolveServerSessionsurvives TOCTOU races via 23505 catch-and-refetch. - POST /v1/sessions/start also catches 23505 on concurrent start with the same
externalSessionIdand refetches the winning row instead of returning 500. - Generation providers: Anthropic, OpenAI, and Google with per-team-project scope enforcement and error classification.
- Docker / Compose stack and
bin/server-beta-clifor local operator workflows.
Bug fixes
resolveServerSessionPostgres errors no longer escapeasyncHandler.catch(next)and return HTML 500s to legacy clients.POST /v1/sessions/startno longer returns 500 to the loser of a concurrent same-externalSessionIdrace.
Full PR thread: #2383.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About claude-mem
A Claude Code plugin that automatically captures everything Claude does during your coding sessions, compresses it with AI (using Claude's agent-sdk), and injects relevant context back into future sessions.
Related context
Beta — feedback welcome: [email protected]