NoMethodError (metodo non definito `id' per # Guardian…

Ho ricevuto questi messaggi per alcuni giorni. Sembra che tutto funzioni, ma certamente non so cosa stia succedendo sotto il cofano. Dovrei preoccuparmi o fare qualcosa? Deriva da un tentativo di eliminare un post anonimo?

Discourse è stato aggiornato circa 10 ore fa…

Messaggio (16 copie segnalate)

NoMethodError (metodo non definito `id' per #<Guardian::AnonymousUser:0x00007f5fe7ae9ea0>)
lib/guardian.rb:624:in `is_my_own?'
lib/guardian/post_guardian.rb:262:in `can_delete_post_action?'
app/controllers/application_controller.rb:422:in `block in with_resolved_locale'
app/controllers/application_controller.rb:422:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/middleware/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:387:in `call'
lib/middleware/gtm_script_nonce_injector.rb:10:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/request_tracker.rb:233:in `call'

Backtrace

lib/guardian.rb:624:in `is_my_own?'
lib/guardian/post_guardian.rb:262:in `can_delete_post_action?'
plugins/discourse-reactions/app/controllers/discourse_reactions/custom_reactions_controller.rb:230:in `format_like_user'
plugins/discourse-reactions/app/controllers/discourse_reactions/custom_reactions_controller.rb:236:in `block in format_likes_users'
activerecord (7.0.7) lib/active_record/relation/delegation.rb:88:in `each'
activerecord (7.0.7) lib/active_record/relation/delegation.rb:88:in `each'
plugins/discourse-reactions/app/controllers/discourse_reactions/custom_reactions_controller.rb:236:in `map'
plugins/discourse-reactions/app/controllers/discourse_reactions/custom_reactions_controller.rb:236:in `format_likes_users'
plugins/discourse-reactions/app/controllers/discourse_reactions/custom_reactions_controller.rb:160:in `post_reactions_users'
actionpack (7.0.7) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

Env

HTTP HOSTS: foorumi.katiska.eu
1 Mi Piace

Potrei sbagliarmi, ma sembra che un utente in modalità anonima stia avendo problemi a eliminare un post?

Sono abbastanza sicuro che non esista un caso del genere. Scommetterei che deve essere qualche processo automatico in background, e non riesco a capirlo nemmeno io.

Sul mio forum il post anonimo avviene quasi mai e anche allora era da parte di utenti regolari. C’è una piccola possibilità che abbia cancellato alcuni argomenti vecchi e non pertinenti, ma non ricordo che ci fossero anonimi. E sì, il mio forum ha così poco traffico che posso fare affidamento sulla mia memoria piuttosto che su SQL :rofl:

Ho avuto un utente che per qualche motivo non ha confermato l’email e il sistema ha eliminato il suo account qualche giorno fa. Tutto quello che ha fatto è stato mettere “mi piace”, nient’altro. E ora ho la sensazione (mi dispiace di non poter dare informazioni più concrete) che l’errore abbia iniziato a comparire nello stesso momento.

1 Mi Piace

È collegato in qualche modo a Discourse Reactions, quindi l’assegnazione di Mi piace potrebbe essere rilevante.

Come sono riusciti a interagire senza prima verificare la loro email/attivare il loro account?

Ottima domanda.

Avevo installato Disable Email Verification for Discourse Plugin ma era disattivato in quel momento. Potrebbe esserci una fuga di notizie? Ma comunque… non seguo le regole comuni perché non ho problemi di spam (un vantaggio quando si fa parte di una minoranza linguistica…) quindi do TL1 subito dopo la registrazione, quindi anche questo potrebbe rompere le cose?

Quindi… c’è qualcosa da qualche parte dove posso iniziare a scavare? E la domanda più importante: il mondo finirà se non farò niente?

1 Mi Piace

Potrebbe avere a che fare con quel TL1 automatico, ma anche con disable email verification. Ho questi diversi tentativi con lo stesso utente ogni volta:

id: 606
username: saja
name: Saja
created_at: 2023-10-28 14:34:13 UTC
trust_level: 1
last_seen_at: 
last_emailed_at:

2.11., 28.10., 12.10. e 27.9. La cosa strana è che il log dell’amministratore non mostra alcun indirizzo IP per quell’utente. Ogni altra cancellazione per account non attivati mostra l’IP.

Sembra che sia collegato in qualche modo all’impostazione allow_anonymous_likes.

Ho provato un po’ per vedere se riesco a innescare lo stesso errore, ma entrando in Modalità Anonima e aggiungendo/rimuovendo Mi piace/Reazioni e poi eliminando i post non l’ha innescato. Ho anche disattivato allow_anonymous_likes a metà e non c’è stato alcun conflitto, ha semplicemente impedito la rimozione. Ha anche rispettato l’impostazione post undo action window mins.

Non sono sicuro. :thinking:

1 Mi Piace

Ehi, scusa se potrebbe essere collegato al mio plugin. Potresti provare a disabilitarlo e vedere se questo risolve il problema? Non ho avuto molto tempo per lavorarci, ma se è correlato al mio plugin fammelo sapere e ci darò un’occhiata. Voglio fornire il maggior supporto possibile agli utenti del mio plugin.

Tienilo abilitato qui e non ho problemi tranne quelli esplicitamente menzionati nel thread. (Anche se non ho il TL1 automatico che hai tu)