Skip to content

Lethe 0.3.0

Choose a tag to compare

@mentholmike mentholmike released this 30 May 00:53
· 83 commits to main since this release

Lethe 0.3.0 — reliability, auth, and deployment hardening

This release closes the main reliability gap in the memory path and makes Lethe safer to deploy as a persistent agent memory service.

Highlights

  • Restored project-scoped events: re-enabled the project-scoped events migration and added compatibility for existing DBs that already recorded the legacy migration marker.
  • CI gate before images: container publishing now depends on go test ./... and go vet ./....
  • Bearer auth support: LETHE_API_KEY / --api-key enables Authorization: Bearer <token> enforcement for API, UI, and SSE.
  • Safer no-key local mode: no-key mode allows trusted loopback/private/local Docker clients and rejects public-network clients.
  • Quieter OpenClaw plugin: fixed first-run bootstrap URL (/api/sessions) and disabled noisy automatic tool-call/thread event logging by default via autoLog: false while preserving checkpoints.
  • Live/SSE hardening: heartbeat pings, no premature write timeout on streams, and safer broadcaster shutdown behavior.
  • Migration hardening: transactional migration execution, canonical version recording, and unique session_key index.
  • Docker/runtime polish: Go 1.25 builder, reproducible go mod tidy -diff, non-root runtime with writable /data, and docs aligned around port 18483.

Images

docker pull ghcr.io/openlethe/lethe:0.3.0
docker pull ghcr.io/openlethe/lethe:latest

Both tags point to the same multi-arch image:

sha256:e9c5ce6c11d5df214963730b0b451c4023da045caab9ace0349dcf99506ab50c

Upgrade notes

Before upgrading an existing SQLite DB:

  1. Stop active writers if possible.
  2. Make a DB backup.
  3. Start the new image.
  4. Run PRAGMA integrity_check; and a simple event/checkpoint write smoke test.

This release adds migration 007_unique_session_key.sql; if you have duplicate non-null session_key rows, clean them up before upgrading.

Verification performed

  • go test ./...
  • go vet ./...
  • source plugin npm ci && npm run build
  • plugin smoke: bootstrap uses /api/sessions, checkpoints write, autoLog=false does not POST events
  • Docker image build
  • isolated container tests for migrations, event writes, checkpoints, SSE heartbeat, auth/no-key local mode, and /data permissions