mirror of
https://github.com/discourse/discourse.git
synced 2026-08-11 02:59:07 +08:00
Previously, clicking Approve on a user's admin profile 500'd with `Reviewable::InvalidAction` when that user had a non-pending `ReviewableUser` (e.g., after `UserDestroyer.destroy` was rescued because the user had posts), and toggling on `must_approve_users` also skipped those users — leaving them permanently un-approvable from the admin UI. This change gates the `:approve_user` action on `guardian.can_approve?(target)` instead of `status == "pending"`, fixes the auto-approval initializer to only skip users with a *pending* reviewable, and centralizes `updatable_reviewable_scores` so re-approval correctly flips `disagreed` scores back to `agreed`. https://meta.discourse.org/t/403620 --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| config | ||
| admin_controller_spec.rb | ||
| api_controller_spec.rb | ||
| backups_controller_spec.rb | ||
| badges_controller_spec.rb | ||
| color_schemes_controller_spec.rb | ||
| dashboard_controller_spec.rb | ||
| email_controller_spec.rb | ||
| email_logs_controller_spec.rb | ||
| email_styles_controller_spec.rb | ||
| email_templates_controller_spec.rb | ||
| embeddable_hosts_controller_spec.rb | ||
| embedding_controller_spec.rb | ||
| emojis_controller_spec.rb | ||
| form_templates_controller_spec.rb | ||
| groups_controller_spec.rb | ||
| impersonate_controller_spec.rb | ||
| permalinks_controller_spec.rb | ||
| plugins_controller_spec.rb | ||
| problem_checks_controller_spec.rb | ||
| reports_controller_spec.rb | ||
| robots_txt_controller_spec.rb | ||
| screened_emails_controller_spec.rb | ||
| screened_ip_addresses_controller_spec.rb | ||
| screened_urls_controller_spec.rb | ||
| search_controller_spec.rb | ||
| search_logs_spec.rb | ||
| site_settings_controller_spec.rb | ||
| site_texts_controller_spec.rb | ||
| staff_action_logs_controller_spec.rb | ||
| themes_controller_spec.rb | ||
| unknown_reviewables_controller_spec.rb | ||
| user_fields_controller_spec.rb | ||
| users_controller_spec.rb | ||
| versions_controller_spec.rb | ||
| watched_words_controller_spec.rb | ||
| web_hooks_controller_spec.rb | ||