v1.15.5

Gentleman-Programming/engramv1.15.5May 4, 2026by github-actions[bot]

Upgrading?

Release notes summary

Fixed the `mem_save` prompt capture release to ensure correct session activity tracking and nil-safe handling. Clarified prompt-capture documentation and added regression coverage for failure paths.

Key Highlights

  • `mem_save` now records save activity against the resolved `session_id`.
  • Reusable handler paths tolerate missing `SessionActivity` without panicking.
  • Prompt capture failures remain best-effort and do not fail the observation save.

Full Release Notes

## What's New

This release fixes the cloud recovery parity gap where mutation-backed current state could be visible in cloud/dashboard data but missing from fresh chunk/manifest recovery.

## Changes

### Bug Fixes
- **Mutation-to-chunk materialization**: accepted mutation pushes now also create compatible `cloud_chunks` payloads for sessions, observations, and prompts.
- **Fresh recovery parity**: chunk/manifest bootstrap can recover entities that arrived through the mutation path after this release.
- **Automatic startup repair**: `engram cloud serve` now materializes existing mutation-only rows for every `ENGRAM_CLOUD_ALLOWED_PROJECTS` entry at startup.
- **Explicit repair command**: added `engram cloud repair materialize-mutations --project <project> (--dry-run|--apply)` for operator verification and re-runs.
- **Legacy schema compatibility**: cloud migrations now handle older Postgres schemas missing modern `cloud_chunks.payload`, count columns, `cloud_mutations.project`, and text `cloud_project_controls.updated_by`.

### Validation
- Postgres-backed backfill tests ran against Docker Postgres (not skipped).
- Full Go suite and server E2E tests passed.

## Operator Notes

After upgrading and restarting `engram cloud serve`, automatic repair runs for allowed projects. To verify manually:

```bash
ENGRAM_DATABASE_URL='postgres://...' engram cloud repair materialize-mutations --project sias-app --dry-run
```

A healthy post-repair run should report no remaining planned chunks, or existing mutations as already materialized.

## Upgrade

```bash
brew upgrade engram
```

## Links
- PR: https://github.com/Gentleman-Programming/engram/pull/322
- Issue: https://github.com/Gentleman-Programming/engram/issues/321

Related Repositories