Review feedback submitted through the public form at /forms/, and maintain the notification recipient list. This is separate from harassment reports - see the Harassment Admin Guide for those.
feedback.view_feedbacksubmission permission (superusers have everything). The notification email links to /admin/feedback/feedbacksubmission/<id>/, which needs at least that permission to open: a recipient whose account is not staff, or whose group lacks the permission, gets a permission error from the link even though the email arrived./admin/feedback/feedbacksubmission/<id>/.No feedback recipients configured) so a misconfigured association is visible to operators./forms/. This needs staff access plus the feedback.view_feedbackformsettings/feedback.change_feedbackformsettings permissions.ENABLE_LANGUAGE_FEATURES), the change form shows a tab per language so each translation of the text can be edited separately. That flag defaults to off and means the site runs Swedish only: the change form then shows a single Introduktionstext field, the Swedish column (intro_text_sv) the public page actually reads. Edit that field; any other intro_text column the admin used to list was not the one taking effect.CAPTCHA_SITE_KEY and TURNSTILE_SECRET_KEY. core/utils.validate_captcha treats an empty TURNSTILE_SECRET_KEY as “captcha disabled” and accepts every submission, so an association that never configured the secret gets no bot protection on this form (or on the harassment form or member signup, which share the same check). That fail-open default is deliberate and used by development and the test suite, so treat it as a deployment setting to verify, not as a bug in the form./forms/ at runtime. Navigation is database driven, so an editor adds a static URL entry (or a link from a static page) pointing at /forms/ in the admin. scripts/generate_dynamic_fixtures.py seeds a Feedback navigation entry for local development only; dev fixtures are not loaded in production, so the entry has to be created per association.