Summary
Engram v1.15.1 is a patch release for the issue #296 recovery path: local import reliability, canonical project locking, and stable TUI ordering.
Fixes
Local sync import reliability
engram sync --importnow imports local chunks through the dependency-safe mutation path.- Local chunks are converted to ordered mutations before apply, so sessions are applied before observations/prompts.
- Cross-chunk dependencies can now progress even when the manifest lists dependent observations before their sessions.
- Missing dependencies now fail with a clearer dependency-safe stall error instead of only surfacing a raw SQLite FK failure.
Canonical project write lock
- Added repo-scoped
.engram/config.jsonsupport withproject_name. - Write tools use the configured project from the repo root and ignore agent-supplied project drift.
- Invalid config fails writes loudly instead of silently falling back.
Example:
{
"project_name": "sias-app"
}Stable recent ordering
- Recent observations now sort by creation time with a deterministic ID tie-breaker.
- Recent sessions now sort by latest session/observation time with deterministic tie-breakers.
- This makes TUI “latest” views match creation time instead of appearing ID-driven.
What is intentionally not included
This patch does not implement the full persistence RFC from #296. It does not replace all IDs, remove chunk sync, add cloud/local inserted timestamps, or add a sync conflict DLQ. Those remain design topics.
Upgrade
brew update
brew upgrade engramAfter upgrading, if you use Claude Code hooks, rerun:
engram setup claude