zara-memory: reject duplicate projection cleanup identities #106

Closed
opened 2026-09-08 02:02:59 +00:00 by nsaspy · 0 comments
Owner

Problem

MemoryService.forget() bounds and validates backend projection_ids, but accepts duplicate IDs. Duplicate cleanup identities make deletion evidence ambiguous and can hide a backend that reports repeated cleanup instead of distinct projections.

Slice

  • deterministic RED coverage for duplicate projection cleanup IDs;
  • reject duplicates after shape/bound validation;
  • preserve existing 64-ID and 128-character bounds;
  • exact-head compatibility, registry, plugin and Nix gates before merge.

Dependency-ready correctness slice within #7. No parallel memory backend or unsupported forgetting semantics.

## Problem `MemoryService.forget()` bounds and validates backend `projection_ids`, but accepts duplicate IDs. Duplicate cleanup identities make deletion evidence ambiguous and can hide a backend that reports repeated cleanup instead of distinct projections. ## Slice - deterministic RED coverage for duplicate projection cleanup IDs; - reject duplicates after shape/bound validation; - preserve existing 64-ID and 128-character bounds; - exact-head compatibility, registry, plugin and Nix gates before merge. Dependency-ready correctness slice within #7. No parallel memory backend or unsupported forgetting semantics.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/zara-plugins#106
No description provided.