Post con media incorporata permette conflitti di gruppo con il flusso di moderazione: non mostrare fallisce con ActiveRecord::RecordInvalid

C’è un conflitto tra “Gruppi autorizzati per i post con media incorporati” e il flusso di lavoro per mostrare nuovamente i post.

Se un post viene creato da un utente che non fa parte dei gruppi autorizzati per i media e successivamente viene nascosto (tramite segnalazioni), quando un moderatore modifica il post nascosto e aggiunge media, il tentativo di mostrare nuovamente il post fallirà con:

ActiveRecord::RecordInvalid
Validation failed: Sorry, you can't embed media items in a post.

Il processo per mostrare nuovamente il post riesegue la convalida dei media utilizzando le autorizzazioni dell’autore originale, non quelle del moderatore, causando il fallimento del ripristino.


Passaggi per Riprodurre

  1. Configurare Gruppi autorizzati per i post con media incorporati, escludendo gli utenti con bassa fiducia.
  2. Utilizzare un utente non incluso nei gruppi autorizzati per creare un post.
  3. Far sì che il post venga nascosto tramite segnalazioni di sistema. (Non ne sono del tutto sicuro: sembra che i post possano essere nascosti solo tramite segnalazioni, non manualmente dallo staff? Lo staff può nascondere argomenti ma non singoli post. Per favore, correggimi se sbaglio.)
  4. Un moderatore modifica il post nascosto e inserisce media (immagini/video).
  5. Tentare di mostrare nuovamente il post (tramite l’interfaccia utente o tramite post.unhide! nella console Rails).
  6. L’operazione fallisce con:

ActiveRecord::RecordInvalid Validation failed: Sorry, you can't embed media items in a post.