From 974062f16169f6d07f2289564be6d72610b8770e Mon Sep 17 00:00:00 2001 From: erdgeist Date: Tue, 4 Aug 2026 05:40:54 +0200 Subject: Witness every promotion and demotion made through the roles form --- app/models/node_action.rb | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'app/models/node_action.rb') diff --git a/app/models/node_action.rb b/app/models/node_action.rb index 0167762b..bfa469b1 100644 --- a/app/models/node_action.rb +++ b/app/models/node_action.rb @@ -105,6 +105,12 @@ class NodeAction < ApplicationRecord # otp_disable is self-service; otp_reset and all three account # verbs are an administrator acting on someone else, so actor and # participant differ: + # "redaktion_grant" / "redaktion_revoke" / "admin_grant" / + # "admin_revoke" -- role changes. Both pairs come from + # User#grant_* / #revoke_*, so the roles form reaches them through + # update_roles! rather than writing the attribute: witnessing is the + # reason the form does not touch roles directly. Alumni changes record + # as user_deactivate / user_reactivate, not as a role verb. # "target_login" -- flat string, the affected account's login # # "event_create" / "event_update" / "event_destroy" (calendar -- cgit v1.3