From 69235cac5b3da5ff0dc20310e7474cabd8e63ba3 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Tue, 15 Sep 2026 20:14:02 -0400 Subject: feat: route all html editor API mutations through single owner task --- internal/admin/undo.go | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'internal/admin/undo.go') diff --git a/internal/admin/undo.go b/internal/admin/undo.go index 0f9744c..98d8d9a 100644 --- a/internal/admin/undo.go +++ b/internal/admin/undo.go @@ -61,6 +61,10 @@ type UndoInfo struct { RedoSize int `json:"redo_size"` } +// UndoStack protects history with a mutex, not live game state. Production +// callers must execute Push/Undo/Redo/Clear within the editor's owner task. +// Undo/Redo and the subsequent rebuildAfterUndo are one task, not separate +// dispatches; migrateRoomIDs is an owner-only callback. type UndoStack struct { mu sync.Mutex dataDir string -- cgit v1.2.3