From 8fe9e3c3fef0049df82281a62afe35dda516dfe2 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Fri, 18 Sep 2026 17:48:26 -0400 Subject: fix: close combat ghost, admin traversal, login throttle, journal double-pay, and quality/economy gaps --- internal/admin/api_triggers.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'internal/admin/api_triggers.go') diff --git a/internal/admin/api_triggers.go b/internal/admin/api_triggers.go index 08e2855..299ca10 100644 --- a/internal/admin/api_triggers.go +++ b/internal/admin/api_triggers.go @@ -152,6 +152,9 @@ func (s *AdminServer) handleTriggerByID(w http.ResponseWriter, r *http.Request) FilePath: newPath, OldContent: oldContent, NewContent: triggerData, + // A PUT to a missing trigger creates it; undo must delete the + // file rather than overwrite it with the nil before-image. + IsCreate: findErr != nil, } if findErr == nil && newSubdir != oldDir { // A kind change moves the file between subdirectories. Record the @@ -184,6 +187,9 @@ func (s *AdminServer) handleTriggerByID(w http.ResponseWriter, r *http.Request) Description: "Delete trigger " + id, FilePath: path, OldContent: oldContent, + // Redo of a delete must delete again, not write the nil + // new-content image over the file. + IsDelete: true, }) s.rebuildTriggerIndex() writeJSON(w, map[string]any{"ok": true}) -- cgit v1.2.3