From 0717caea5c216357197b9eb73e44143be2d73da7 Mon Sep 17 00:00:00 2001 From: bensig Date: Thu, 9 Apr 2026 08:26:47 -0700 Subject: [PATCH] fix: make drawer_id deterministic for idempotent writes Remove datetime.now() from drawer_id hash so same content + wing + room always produces the same ID. This enables the idempotency check that returns "already_exists" on duplicate writes. --- mempalace/mcp_server.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mempalace/mcp_server.py b/mempalace/mcp_server.py index 520394d..d06e0c7 100644 --- a/mempalace/mcp_server.py +++ b/mempalace/mcp_server.py @@ -330,7 +330,7 @@ def tool_add_drawer( if not col: return _no_palace() - drawer_id = f"drawer_{wing}_{room}_{hashlib.sha256((content[:100] + datetime.now().isoformat()).encode()).hexdigest()[:24]}" + drawer_id = f"drawer_{wing}_{room}_{hashlib.sha256((wing + room + content[:100]).encode()).hexdigest()[:24]}" _wal_log( "add_drawer",