zeroclaw/.github/workflows
Chummy b442a07530
fix(memory): prevent autosave key collisions across runtime flows
Fixes #221 - SQLite Memory Override bug.

This PR resolves memory overwrite behavior in autosave paths by replacing fixed memory keys with unique keys, and improves short-horizon recall quality in channel runtime.

**Root Cause**
SQLite memory uses a unique constraint on `memories.key` and writes with `ON CONFLICT(key) DO UPDATE`.
Several autosave paths reused fixed keys (or sender-stable keys), so newer messages overwrote earlier conversation entries.

**Changes**
- Channel runtime: autosave key changed from `channel_sender` to `channel_sender_messageId`
- Added memory-context injection before provider calls (aligned with agent loop behavior)
- Agent loop: autosave keys changed from fixed `user_msg`/`assistant_resp` to UUID-suffixed keys
- Gateway: Webhook/WhatsApp autosave keys changed to UUID-suffixed keys

All CI checks passing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 22:55:52 -05:00
..
auto-response.yml chore(ci): establish PR governance for agent collaboration (#177) 2026-02-15 12:41:16 -05:00
ci.yml fix(memory): prevent autosave key collisions across runtime flows 2026-02-15 22:55:52 -05:00
docker.yml chore(ci): document and harden workflow pipeline (#241) 2026-02-15 20:42:47 -05:00
labeler.yml chore(ci): establish PR governance for agent collaboration (#177) 2026-02-15 12:41:16 -05:00
release.yml chore(ci): document and harden workflow pipeline (#241) 2026-02-15 20:42:47 -05:00
security.yml chore(ci): document and harden workflow pipeline (#241) 2026-02-15 20:42:47 -05:00
stale.yml chore(ci): establish PR governance for agent collaboration (#177) 2026-02-15 12:41:16 -05:00
workflow-sanity.yml chore(ci): document and harden workflow pipeline (#241) 2026-02-15 20:42:47 -05:00